PVOMZ ;Omzet met gemodifieerde lijstomzet voor premie VTW. [ 11/29/2003 8:10 AM ] d ^cA604 Set %J=$$%J^vhRtn1() Kill ^HULP(%J) Set KLNr=1 Set KLCnt=0,KLVw=0 For Set KLNr=$O(^KSTKL(KLNr)) Quit:KLNr="" Do .Set KLCnt=KLCnt+1 .If '(KLCnt#10) Write @F11,KLCnt,"/",KLVw .Set Maand=1 .Set Regio=0 .Set:$D(^KK1(KLNr)) Regio=+$P(^KKL(^KK1(KLNr),0),D,20) .Set KLVw=KLVw+1 .For Set Maand=$O(^KSTKL(KLNr,0,Maand)) Quit:Maand="" Do ..Set MOmz=$P(^(Maand),D,3),MLOmz=$P(^(Maand),D,6) ..Set (Omz,LOmz,XOmz)=0 ..Set PRNr=1 ..For Set PRNr=$O(^KSTKL(KLNr,PRNr)) Quit:PRNr="" Do:$D(^(PRNr,Maand)) ...Set POmz=$P(^(Maand),D,3),PLOmz=$P(^(Maand),D,6) ...Set PXOmz=PLOmz ...Set:PLOmz*(1-.30)>POmz PXOmz=$J(POmz/(1-.30),0,2) ...;Write !,POmz,?20,PLOmz,?40,PXOmz ...Set Omz=Omz+POmz ...Set LOmz=LOmz+PLOmz ...Set XOmz=XOmz+PXOmz ..;If MOmz>Omz Do ; De totale omzet moet nog rechtgezet worden voor de verwijderde produkten ..Do ...Set POmz=MOmz-Omz ...Set PLOmz=MLOmz-LOmz ...Set PXOmz=PLOmz ...Set:PLOmz*(1-.30)>POmz PXOmz=$J(POmz/(1-.30),0,2) ...Set Omz=Omz+POmz ...Set LOmz=LOmz+PLOmz ...Set XOmz=XOmz+PXOmz ..; ..Set Rec=$G(^HULP(%J,Regio,Maand)) ..Set $P(Rec,D,1)=$P(Rec,D,1)+Omz ..Set $P(Rec,D,2)=$P(Rec,D,2)+LOmz ..Set $P(Rec,D,3)=$P(Rec,D,3)+XOmz ..Set ^HULP(%J,Regio,Maand)=Rec WRITE Write !,"TRANSFER" Read K u 0:(::::4096) Set Maand=1 For Set Maand=$O(^HULP(%J,9,Maand)) Quit:Maand="" Do .Write !,Maand .For Regio=0,1,3,4,9 Do ..Set Rec=$G(^HULP(%J,Regio,Maand)) ..Write $C(9),$J($P(Rec,D,3),0,0),$C(9),$J($P(Rec,D,1),0,0) Write !,"~~~",! Q