#include Prod.Product BLCSBFAKVerschillenMail ;Blum Vervoer-Factuurlijst [ 09/06/2002 1:00 PM ] Verwerk(LC,lbVRF) Do InitBody(LC,lbVRF) Do Header(LC,lbVRF) Set AantalVerschillen=$$VerzamelVerschillen(LC,lbVRF) Quit:'AantalVerschillen ; geen verschillen dus geen mail Do EndBody Do MailVerschillen(LC,lbVRF) Quit InitBody(LC,lbVRF) #define fmtBeginHtml "" #define fmtBeginTable "" #define fmtReferentie(%Txt) $C(10,13)_"

"_%Txt_"

" Set strmBody=##class(%GlobalCharacterStream).%New() ;header van de HTML-pagina Do strmBody.Write($$$fmtBeginHtml) Do strmBody.Write($$$fmtReferentie("Blum vervoerslijst(en): "_$$ListToPieces^vhLib(lbVRF,","))) Do strmBody.Write($$$fmtBeginTable) Quit EndBody #define fmtEndHtml "" #define fmtEndTable "
" Do strmBody.Write($$$fmtEndTable) Do strmBody.Write($$$fmtEndHtml) Quit VerzamelVerschillen(LC,lbVRF) New FAKNr,Cnt,VRF,FAKNr,LijnNr,PRNr,Rec,FakRec,LijnVerschil Set Cnt=0 For I=1:1:$LL(lbVRF) Do . Set VRF=$LG(lbVRF,I) . Quit:'VRF Quit:'$D(^Verv(LC,"D",VRF)) . Set FAKNr="" . For Set FAKNr=$O(^Verv(LC,"D",VRF,FAKNr)) Quit:FAKNr="" Do . . Set FakRec=^(FAKNr) . . Set LijnNr="" . . If $P(FakRec,"\",7) For Set LijnNr=$O(^Verv(LC,"D",VRF,FAKNr,LijnNr)) Quit:LijnNr="" Do . . . Set Rec=^(LijnNr) . . . Quit:'$L($P(Rec,"\",17)) . . . Set PRNr=$P(Rec,"\",7) . . . If PRNr,$D(^KPR(PRNr)) Do . . . . Set BlumPrijs=+$J($P(Rec,"\",14)/$P(Rec,"\",12),0,2) . . . . Set VHPrijs=$P(Rec,"\",22) . . . . Set LijnVerschil=$S(VHPrijs>BlumPrijs:VHPrijs-BlumPrijs,1:BlumPrijs-VHPrijs) . . . . quit:LijnVerschil<0.05 . . . . Set Cnt=Cnt+1 . . . . Set VerschilCode=$P(Rec,"\",17) . . . . Set ToeLevPrijs=$P(Rec,"\",18) . . . . Set ToeLevGO=$P(Rec,"\",19) . . . . Set ToeLevKort=$P(Rec,"\",20) . . . . Set ToeLevNr=$P(Rec,"\",1) . . . . Do AddVerschil2Body(FAKNr,ToeLevNr,PRNr,VerschilCode,BlumPrijs,VHPrijs,ToeLevPrijs,ToeLevGO,ToeLevKort) Quit Cnt AddVerschil2Body(BlumFactuurNr,ToeLevNr,PRNr,VerschilCode,BlumPrijs,VHPrijs,ToeLevPrijs,ToeLevGO,ToeLevKort) #define fmtBeginRow "" #define fmtEndRow "" #define fmtBeginCell(%align) "" #define fmtEndCell "" #define AlignLeft "left" #define AlignRight "right" #define AlignMiddle "middle" Do strmBody.Write($$$fmtBeginRow) Do strmBody.Write($$$fmtBeginCell($$$AlignMiddle)_BlumFactuurNr_$$$fmtEndCell) Do strmBody.Write($$$fmtBeginCell($$$AlignMiddle)_ToeLevNr_$$$fmtEndCell) Do strmBody.Write($$$fmtBeginCell($$$AlignLeft)_$$$PRGet($$$KortTekst)_$$$fmtEndCell) Do strmBody.Write($$$fmtBeginCell($$$AlignLeft)_$$$PRGet($$$IdentNummer)_$$$fmtEndCell) Do strmBody.Write($$$fmtBeginCell($$$AlignMiddle)_VerschilCode_$$$fmtEndCell) Do strmBody.Write($$$fmtBeginCell($$$AlignRight)_$FN(BlumPrijs,".",2)_$$$fmtEndCell) Do strmBody.Write($$$fmtBeginCell($$$AlignRight)_$FN(VHPrijs,".",2)_$$$fmtEndCell) Do strmBody.Write($$$fmtBeginCell($$$AlignLeft)_$FN(ToeLevPrijs,".",2)_"/"_ToeLevGO_" - "_(ToeLevKort*100)_"%"_$$$fmtEndCell) Do strmBody.Write($$$fmtEndRow) Quit Header(LC,lbVRF) #define fmtBeginHeader(%align) "" #define fmtEndHeader "" Do strmBody.Write($$$fmtBeginRow) Do strmBody.Write($$$fmtBeginHeader($$$AlignMiddle)_"Blum Fact."_$$$fmtEndHeader) Do strmBody.Write($$$fmtBeginHeader($$$AlignMiddle)_"VH Toelev."_$$$fmtEndHeader) Do strmBody.Write($$$fmtBeginHeader($$$AlignLeft)_"KortTekst"_$$$fmtEndHeader) Do strmBody.Write($$$fmtBeginHeader($$$AlignLeft)_"IdentNr"_$$$fmtEndHeader) Do strmBody.Write($$$fmtBeginHeader($$$AlignMiddle)_"Test"_$$$fmtEndHeader) Do strmBody.Write($$$fmtBeginHeader($$$AlignRight)_"Blum prijs"_$$$fmtEndHeader) Do strmBody.Write($$$fmtBeginHeader($$$AlignRight)_"VH prijs"_$$$fmtEndHeader) Do strmBody.Write($$$fmtBeginHeader($$$AlignLeft)_"Toelevering prijs"_$$$fmtEndHeader) Do strmBody.Write($$$fmtEndRow) Quit MailVerschillen(LC,lbVRF) Set Subject="Prijsverschillen in vervoerslijst(en) "_$$ListToPieces^vhLib(lbVRF,",") Set From=##class(TECH.Context.RuntimeContext).Instance().GeefServerNaam()_"@VANHOECKE.BE" Set To=$LB("PM_Administratie@vanhoecke.be") Set X=$$SendMiniMail^vhLib(From,To,Subject,strmBody,1,1) Quit