KPSWPGR G BEGIN ;STOCKWAARDE PER GROEP ; [ 08/16/2002 3:54 PM ] ; Dit is een BATCH programma dat 's nachts kan draaien T1 ;"2;C;L;6;; |;;$S($L(X):$$DISPLS^KLASS(X),1:$P(FL(3),D,1))\3;N;R;12;;|\4;N;R;12;;|\10;N;R;12;;|\9;N;R;12;" T2 ;"Klass.";C;L;6;; |\"Stock";C;R;12;;|\"Niet Stock";C;R;12;;|\"Werkvloer";C;R;12;;|\"Totaal";C;R;12;; T3 ;2;C;L;6;; ||;;$$DISPLS^KLASS(X)\3;N;R;12;;|\5;N;R;12;;|\7;N;R;4;;||\4;N;R;12;;|\6;N;R;12;;|\8;N;R;4 T4 ;"Klass.";C;L;6;; ||\"Stock";C;R;12;;|\"GWVStock";C;R;12;;|\"RoS";C;R;4;;||\"Niet Stock";C;R;12;;|\"GWV-NStock";C;R;12;;|\"RoNS";C;R;4;; ; S1 N R S PSN=$P(^KPR(PR,1),D,20) ;,R=$$LEVPR^KPRIJS(,PR),PPL=$P(R,D,13) S K=$O(^("J")) I $E(K,1)="J" S K=^(K) S PPL=$J($P(K,D,23),0,4) Q ; BEGIN Kill Stock S K=$P($T(+1),U,2)_QN_" " S FP=203+$L(K) W @F61,@F11,@F1,@F,@F5 S FP=202 W @F,@F4,K,@F5 Set Round=$$MUNT^vhRtn1(,4) Set T=0,FP=2403 W @F,"Produkten verwerkt :" Set Dev=$$OPEN^vhDEV(,"TESTTRANS2.txt","W") use Dev Set HG=-1 L1 Set HG=$N(^KPH(HG)) Goto L4:HG=-1 Set G=$N(^(HG,-1)) L2 Goto L1:G=-1 Set Stock(HG,G)=0_D_0_D_0_D_0 Set G=$N(^(G)) Goto L2 L4 Set PR=999 L5 Set PR=$N(^KPR(PR)) Goto List:PR=-1 ;Set T=T+1 If '(T#10) S FP=2424 W @F,T If $$ISORGAL^ORGALUX(PR),$D(^PRLINK("D",PR)) Goto L5 ; Indien orgalux en het is een moederproduct dan product niet opnemen in de stock Goto L5:$E($P(^KPR(PR,2),D,25))=6 Set GWV=$P(^KPR(PR,1),D,21),GWV=$P(GWV,"#",1)+$P(GWV,"#",2) Set K=$N(^("I")) G L5:$E(K)'="I" Set Klas=$P(^(K),D,1,2) Set P=$N(^("J")) G L5:$E(P)'="J" Set P=^(P) Set HGr=$P(Klas,D,1) Set Gr=$P(Klas,D,2) ;Set PPL=$P(P,D,23)/($P(P,D,21)/100+1) D S1 Write PR,$C(9),$P(^KPR(PR,0),D,20),$C(9),$TR(PPL,".",","),$C(9),$P(^(0),D,14),! If $P(^KPR(PR,1),D,20) Do . Set $P(Stock(HGr,Gr),D,1)=$P(Stock(HGr,Gr),D,1)+($P(^(0),D,14)*PPL) . Set $P(Stock(HGr,Gr),D,3)=$P(Stock(HGr,Gr),D,3)+(GWV*PPL) Else Do . Set $P(Stock(HGr,Gr),D,2)=$P(Stock(HGr,Gr),D,2)+($P(^(0),D,14)*PPL) . Set $P(Stock(HGr,Gr),D,4)=$P(Stock(HGr,Gr),D,4)+(GWV*PPL) Set $P(Stock(HGr,Gr),D,8)=$P(Stock(HGr,Gr),D,8)+($P($G(^PRSTOCK("D",PR)),D,5)*PPL) Goto L5 List Close Dev Set (TST,TNS,TWV,TOT)=0 Set (T,HG)="" F S HG=$O(Stock(HG)) Q:HG="" D .Set GR="" F S GR=$O(Stock(HG,GR)) Q:GR="" D ..Set T=T+1,Stock(T)=HG_D_GR_D_Stock(HG,GR) ..Set:+$P(Stock(T),"\",3) $P(Stock(T),"\",7)=$P(Stock(T),"\",5)*48/$P(Stock(T),"\",3) ..Set:+$P(Stock(T),"\",4) $P(Stock(T),"\",8)=$P(Stock(T),"\",6)*48/$P(Stock(T),"\",4) ..Set $P(Stock(T),"\",9)=$P(Stock(T),"\",3)+$P(Stock(T),"\",4)+$P(Stock(T),"\",10) ..Set TST=TST+$P(Stock(T),"\",3),TNS=TNS+$P(Stock(T),"\",4),TWV=TWV+$P(Stock(T),"\",10) ..Kill Stock(HG,GR) ; Subtotaal Set T=T+1,Stock(T)="" Set T=T+1,Stock(T)="Subtotaal" Set $P(Stock(T),"\",3)=TST,$P(Stock(T),"\",4)=TNS,$P(Stock(T),"\",9)=TNS+TST+TWV,$P(Stock(T),"\",10)=TWV Do BON Set T=T+1,Stock(T)="" Set T=T+1,Stock(T)="Bon" Set $P(Stock(T),"\",3)=BST,$P(Stock(T),"\",4)=BNS,$P(Stock(T),"\",9)=BNS+BST Set T=T+1,Stock(T)="" Set T=T+1,Stock(T)="Totaal" Set $P(Stock(T),"\",3)=TST,$P(Stock(T),"\",4)=TNS,$P(Stock(T),"\",9)=TNS+TST+TWV,$P(Stock(T),"\",10)=TWV SHOW Set DL(1)="LD",LD(1)="Stock",LD(3)=4,LD(8)=$P($T(T2),U,2,99),LD(11)="Stockwaarde" Xecute "Set LD(2)="_$P($T(T1),U,2,99) Do ^OUTPUT("","-","S") G YZ ; BON S FP=2424 W @F,"BON's " S KC=0,US="F",(BST,BNS,BON,Cnt)=0 BON41 S KC=$O(^KUL(KC)) Q:KC="" S UR=0 BON43 S UR=$O(^KUL(KC,US,UR)) G BON41:UR="" S UZ=100 BON45 S UZ=$O(^KUL(KC,US,UR,UZ)) G BON43:'UZ S K=^(UZ),PR=$P(K,D,2) G BON45:'PR,BON45:'$D(^KPR(PR)),BON45:$E($P(^KPR(PR,2),D,25))=6 S UA=$P(K,D,3) D S1 ; S K=UA*PPL*(10**Round)+.99999\1/(10**Round) I PSN S BST=BST+K,TST=TST+K E S BNS=BNS+K,TNS=TNS+K G BON45 TList Set HG=-1 Write !,"HG",$C(9),"Groep",$C(9),"Stock",$C(9),"Niet-Stock",$C(9),"WVK STOCK",$C(9),"WVK KOM" Li1 Set HG=$N(Stock(HG)) Goto YZ:HG=-1 Set G=-1 Li2 Set G=$N(Stock(HG,G)) Goto Li1:G=-1 Write !,HG,$C(9),G,$C(9),$J($P(Stock(HG,G),D,1),0,2),$C(9),$J($P(Stock(HG,G),D,2),0,2),$C(9),$J($P(Stock(HG,G),D,3),0,2),$C(9),$J($P(Stock(HG,G),D,4),0,2) Goto Li2 YZ Quit ;