VERBRUIK ; Water, gas en elektriciteitsverbruik [ 04/08/99 11:39 AM ] ; MAIL(Date) New I,R,Next Set:'$G(Date) Date=+$H Do NIEUW^vhScherm("VERBRUIK") Quit:'%SC Set Next=$$CALCDATE^vhLib.DataTypes($H,"W","FD","+1") Set R=^vhMAIL("D",MailId,"R",1),$P(R,D,2)=Next,^vhMAIL("D",MailId,"R",1)=R Set ^vhMAIL("D",MailId,"N",3)="\\S\\"_Next_",1" For I=1:1 Quit:'$D(LD("B",I)) Do .If $P(LD("B",I),"`",2)'="A" Set $P(LD("B",I),"`",3)="HD" Quit ; VORIG(Date,Meter) New Vorig,Piece Set:'Date Date=+$H Set Piece=$F("WGDN",Meter)-1 Set Date=$O(^VERBRUIK("NOORD",Date),-1) Set:Date Vorig=$P(^VERBRUIK("NOORD",Date),D,Piece) Quit Date_D_$G(Vorig) ; VOLGEND(Date,Meter) New Volgend,Piece Set:'Date Date=+$H Set Piece=$F("WGDN",Meter)-1 Set Date=$O(^VERBRUIK("NOORD",Date)) Set:Date Volgend=$P(^VERBRUIK("NOORD",Date),D,Piece) Quit Date_D_$G(Volgend) ; VVCHECK(Value,Date,Meter) New Vorig,Volgend,Extract,Decimal,Eenheid Set Eenheid=$$EENHEID(Meter) Set:'Date Date=+$H Set Extract=$F("WGDN",Meter)-1,Decimal=$E("4200",Extract) Set Vorig=$P($$VORIG(Date,Meter),D,2),Volgend=$P($$VOLGEND(Date,Meter),D,2) If Vorig,ValueVolgend Set sEr="Mag niet groter zijn dan "_$$EXTNUM^vhLib.DataTypes(Volgend,0,".T",Decimal)_Eenheid Quit ; VVHELP(Date,Meter,PrevNext) New Vorig,Volgend,Extract,Decimal,Help,Eenheid Set PrevNext=$G(PrevNext,"PN"),Eenheid=$$EENHEID(Meter) Set:'Date Date=+$H Set Extract=$F("WGDN",Meter)-1,Decimal=$E("4200",Extract) Set (Vorig,Volgend)="" Set:PrevNext["P" Vorig=$$VORIG(Date,Meter) Set:PrevNext["N" Volgend=$$VOLGEND(Date,Meter) Set Help="" If $P(Vorig,D,2) Do .Set Help="stand op "_$$EXTDATE^vhLib.DataTypes($P(Vorig,D))_" : " .Set Help=Help_$$EXTNUM^vhLib.DataTypes($P(Vorig,D,2),0,".T",Decimal)_Eenheid If $P(Volgend,D,2) Do .Set:$L(Help) Help=Help_" - " .Set Help=Help_"stand op "_$$EXTDATE^vhLib.DataTypes($P(Volgend,D))_" : " .Set Help=Help_$$EXTNUM^vhLib.DataTypes($P(Volgend,D,2),0,".T",Decimal)_Eenheid Quit Help ; EENHEID(Meter) New Piece,Eenheid Set Piece=$F("WGDN",Meter)-1,Eenheid=$P("m³\m³\kw\kw",D,Piece) Quit Eenheid ; VERSCHIL(Piece,X) Set:'X X=$P(sFL(1),D,Piece) Quit $S('X:"",1:X-$P(sFL(2),D,Piece)) ; VALDATE If X'=")",X'="(" Do Quit:'X .Set X=$$INTDATE^vhLib.DataTypes(X) Set:'X sEr=-1 Else Do .If X=")" Set X=$O(^VERBRUIK("NOORD",Date)) Set:'X X=+$H .Else If X="(" Set X=$O(^VERBRUIK("NOORD",Date),-1) Set:'X X=Date If X'=Date Do .If X Set sFL(1)=$G(^VERBRUIK("NOORD",X)),sFL(2)=$S($D(^VERBRUIK("NOORD")):^($O(^VERBRUIK("NOORD",X),-1)),1:""),Date=X,sEr=-1 .Else Set sFL(1)="",sFL(2)=$S($D(^VERBRUIK("NOORD")):^VERBRUIK("NOORD",Date),1:""),X=Date .Set X=$$EXTDATE^vhLib.DataTypes(X) .New X .Do REPAINT^vhScherm("1;3;5;7;9;11;13;15;17;19;21;23;25") Quit ; PRINT(FromDate,ToDate) New (FromDate,ToDate) Set FromDate=$G(FromDate),ToDate=$G(ToDate) Set:'FromDate FromDate=$O(^VERBRUIK("NOORD",0)) Set:'ToDate ToDate=$O(^VERBRUIK("NOORD",""),-1) Do .New FromDate,ToDate .Do INIT^vhTERMINA Set %J=$$%J^vhRtn1() Kill ^HULP(%J) Set Date=FromDate-1,Count=0 For Set Date=$O(^VERBRUIK("NOORD",Date)) Quit:Date>ToDate!'Date Do .Set Huidig=^VERBRUIK("NOORD",Date) .If $D(Vorig) Do ..For I=1:1:4 Set $P(Versch,D,I)=$P(Huidig,D,I)-$P(Vorig,D,I) ..Set R="| "_$J("",9)_"| +"_$$EXTNUM^vhLib.DataTypes($P(Versch,D),14,".T",4) ..Set R=R_"| +"_$$EXTNUM^vhLib.DataTypes($P(Versch,D,2),16,".T",2) ..Set R=R_"| +"_$$EXTNUM^vhLib.DataTypes($P(Versch,D,3),13,".T",0) ..Set R=R_"| +"_$$EXTNUM^vhLib.DataTypes($P(Versch,D,4),13,".T",0)_"|" ..Set Count=Count+1,^HULP(%J,Count)=R ..Set R="|"_$J("",10)_"| -------------- | ---------------- | ------------- | ------------- |" ..Set Count=Count+1,^HULP(%J,Count)=R .Set R="| "_$$EXTDATE^vhLib.DataTypes(Date)_" |"_$$EXTNUM^vhLib.DataTypes($P(Huidig,D),16,".T",4) .Set R=R_"|"_$$EXTNUM^vhLib.DataTypes($P(Huidig,D,2),18,".T",2) .Set R=R_"|"_$$EXTNUM^vhLib.DataTypes($P(Huidig,D,3),15,".T",0) .Set R=R_"|"_$$EXTNUM^vhLib.DataTypes($P(Huidig,D,4),15,".T",0)_"|" .Set Count=Count+1,^HULP(%J,Count)=R,Vorig=Huidig Do INIT^PROC("VERBRUIK","OVERZ") Set OVERZ(11)=OVERZ(11)_"\van "_$$EXTDATE^vhLib.DataTypes(FromDate) Set:ToDate'=FromDate OVERZ(11)=OVERZ(11)_" tot "_$$EXTDATE^vhLib.DataTypes(ToDate) Do ^OUTPUT("SP") Kill ^HULP(%J) Quit ; LIST New Do INIT^vhTERMINA Do INIT^vhPRINTER("","B","","") Quit:'$D(Print) ;Write @FS132 Do TITEL Set (Date,LCount)=0,PrevDate=$o(^VERBRUIK("WEST",0)) Set R=^VERBRUIK("WEST",PrevDate),OWater=$P(R,D),OGas=$P(R,D,2),OElektr1=$P(R,D,3),OElektr2=$P(R,D,4) For Set Date=$o(^VERBRUIK("WEST",Date)) Quit:Date="" Do .Set LCount=LCount+1 .If LCount>40 Do LINE Write # Do TITEL Set LCount=1 .Set R=^VERBRUIK("WEST",Date),Water=$P(R,D),Gas=$P(R,D,2),Elektr1=$P(R,D,3),Elektr2=$P(R,D,4) .Write !,"| ",$$EXTDATE^vhLib.DataTypes(Date)," |",$J(Date-PrevDate,6)," |" .Write $$EXTNUM^vhLib.DataTypes(Water,12,"T.",4),"|" .Write $$EXTNUM^vhLib.DataTypes(Water-OWater,8,"T.",4),"|" .Write $$EXTNUM^vhLib.DataTypes(Water-OWater/$S(Date-PrevDate:Date-PrevDate,1:1),8,"T.",4),"|" .Write $$EXTNUM^vhLib.DataTypes(Gas,12,"T.",2),"|" .Write $$EXTNUM^vhLib.DataTypes(Gas-OGas,10,"T.",2),"|" .Write $$EXTNUM^vhLib.DataTypes(Gas-OGas/$S(Date-PrevDate:Date-PrevDate,1:1),8,"T.",2),"|" .Write $$EXTNUM^vhLib.DataTypes(Elektr1,9,"T.",0),"|" .Write $$EXTNUM^vhLib.DataTypes(Elektr1-OElektr1,7,"T.",0),"|" .Write $$EXTNUM^vhLib.DataTypes(Elektr1-OElektr1/$S(Date-PrevDate:Date-PrevDate,1:1),6,"T.",0),"|" .Write $$EXTNUM^vhLib.DataTypes(Elektr2,9,"T.",0),"|" .Write $$EXTNUM^vhLib.DataTypes(Elektr2-OElektr2,7,"T.",0),"|" .Write $$EXTNUM^vhLib.DataTypes(Elektr2-OElektr2/$S(Date-PrevDate:Date-PrevDate,1:1),6,"T.",0),"|" .Set PrevDate=Date,OWater=Water,OGas=Gas,OElektr1=Elektr1,OElektr2=Elektr2 Do LINE Write # Do CLOSE^vhPRINTER Quit ; TITEL Do LINE Write !,"| Datum | Dagen | Water | Verbr | /dag | Gas | Verbr | /dag |" Write " E dag | Verbr | /dag | E Nacht | Verbr | /dag |" Do LINE Quit ; LINE Write !,"|----------|-------|------------|--------|--------|------------|----------|--------|" Write "---------|-------|------|---------|-------|------|" Quit ;