HDSTCKMB Do MAIN ;[ 12/20/2001 4:14 PM ] Quit MAIN ;Statistiek portefeuille [ 11/13/2001 2:49 PM ] New %J,LD,LEVNr,Input Set %J=$$%J^vhRtn1() Kill ^HULP(%J) Do REFETCH TEST For Do Quit:Input="-"!(Input="CANC") .Set Input=$$SCROLL^vhLIST(.LD) .If Input="COM" Set Input="" Do CALL^vhMenu("HADSTOCK") .Do EXEC^vhMenu("HADSTOCK",.Input) Quit REFETCH Do INIT Do SELECTIE Do GETDATA Do FETCH Do REFRESH Quit INIT Do INIT^vhLIST("HADSTOCK","OVZ",.LD) Set Maanden=12 Set Datum=$h Set ZaagMm=10 Set AfvalPct=1.1 Kill Data Quit REFRESH Write @F11,@F1 Do DISPLAY^vhScherm("HADSTOCK") Do WRITE^vhLIST(.LD) Quit SELECTIE Do DISPLAY^vhScherm("HADSTOCK"),FIELD^vhScherm("HADSTOCK","MAAND") Do DISPLAY^vhScherm("HADSTOCK") Quit GETDATA Do MB5 Quit FETCH Do ToList Quit MB5 ;NEW PROGRAM [ 11/13/2001 2:49 PM ] ;************ Main **********; Set PRNr=0 Set PRcntr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr="" Do . If (PRcntr#100=0) Do disp("Produkten : "_PRcntr,5,22) . Set PRcntr=PRcntr+1 . Set GenPRNr=$P(^KPR(PRNr,0),D,3) . If '((GenPRNr=57791)!(GenPRNr=51240)) Quit . Do HSTORIEK Quit ;************Historiek**********; HSTORIEK Set Maand=$$CALCDATE^vhDTyp(Datum,"M",-Maanden) For Set Maand=$$CALCDATE^vhDTyp(Maand,"M",+1) Quit:Maand>+Datum Do . Set BDtm=$$EXTDATE^vhDTyp($$CALCDATE^vhDTyp(Maand,"M","FD"),"DSN2") . Set EDtm=$$EXTDATE^vhDTyp($$CALCDATE^vhDTyp(Maand,"M","LD"),"DSN2") . Set Qty=$$HISTO^STAT(PRNr,BDtm,EDtm,1) . Do GetProd($$EXTDATE^vhDTyp(Maand,"DM4")) Quit ;***************************************************************; disp(str,x,y) Set FP=y*100+x Write @F,@FDL,str Quit GetProd(Type) Do GetData If Gemaakt=0 Do . Quit Do WriteRec(Type) Quit WriteRec(Type) If '(Profiel?3E1"-"2E) Quit If (Hoogte<0)!(Breedte<0)!(Qty<0) Quit Set Rec=$G(Data("P",Profiel,Type)) Set $P(Rec,D,1)=$P(Rec,D,1) Set $P(Rec,D,2)=$P(Rec,D,2)+((((Hoogte+Breedte+ZaagMm)*2)*AfvalPct)*Qty) Set $P(Rec,D,3)=$P(Rec,D,3)+Qty Set Data("P",Profiel,Type)=Rec Quit GetData Set Profiel=$P(^KPR(PRNr,"G"),D,2) Set Hoogte=$P(^KPR(PRNr,"G"),D,8) Set Breedte=$P(^KPR(PRNr,"G"),D,9) Set Gemaakt=$P(^KPR(PRNr,"G"),D,11) Quit ToList Set Tp=0 Set LstIndex=1 Kill List Set List=0 For Set Tp=$O(Data(Tp)) Quit:Tp="" Do . Set Produkt=0 . For Set Produkt=$O(Data(Tp,Produkt)) Quit:Produkt="" Do .. Set Rec=$G(List(LstIndex)) .. Set $P(Rec,D,1)=Tp .. Set $P(Rec,D,2)=Produkt .. Set Dtm=$$EXTDATE^vhDTyp(Datum,"DM4") .. Set DezeM=Data(Tp,Produkt,Dtm) .. Set Dtm=$$EXTDATE^vhDTyp($$CALCDATE^vhDTyp(Datum,"M",-1),"DM4") .. Set VorigeM=Data(Tp,Produkt,Dtm) .. Set ToeLev=$G(Data(Tp,Produkt,"T"),"0\0\0") .. If '(($P(Rec,D,3)=0)&($P(Rec,D,4)=0)&($P(Rec,D,5)=0)) Do ... Set List($$SORTKEY(Tp,Produkt))=Rec Do RENUMBER^vhLIST(.LD) Quit SORTKEY(Type,Prfl) New Key If Type="P" Do . Set Key=$P(^RES("HAD","PI","PROFIEL","D",$P(Rec,D,2)),"`",1) . Set Key=$E(1000+Key,2,4) . Set Key="1"_Key_Prfl Else Do . Set Key="2000"_Prfl Quit Key