BL.EC.Common,Prod.Product 1 %RegisteredObject 0 Initialen van interne users JDR;JB;TFL BG;PQ;EAN;VQ;LT;KT;MBH;PRIJS S %String %String %String 1 %String 1 D ##class(BL.Blum.Prod.MailEDI).Test() 1 1 1)&&($D(..ModProd)'>1) ; geen nieuwe import van producten Do ..BuildCache(.arCache) ;k %c m %c=arCache zw %c Set strmBody=..GetHTML(.arCache) ;w strmBody.Read() Quit:strmBody="" Set Status=..SendMail(strmBody) ]]> strmBody:%Stream %Stream " #define fmtBeginTable(%txt) $C(10,13)_"
"_%txt_"" #define fmtEndTable "

" #define fmtEndHtml "" Set strmBody=##class(%GlobalCharacterStream).%New() Do strmBody.Write($$$fmtBeginHtml) Do:$D(Cache("N")) . Do strmBody.Write($$$fmtBeginTable("Volgende producten zijn nieuw toegevoegd aan de Blum databank:")) . Set BLID="" . For Set BLID=$O(Cache("N",BLID)) Quit:BLID="" Do . . Set Tekst=..AddProduct(BLID) . . Do strmBody.Write(Tekst) . Do strmBody.Write($$$fmtEndTable) Do:$D(Cache("D")) . Do strmBody.Write($$$fmtBeginTable("Volgende producten zijn gewijzigd in de Blum databank en hebben verschillen:")) . Set SortKey="" . For Set SortKey=$O(Cache("D",SortKey)) Quit:SortKey="" Do . . Set Tekst=..DiffProduct($LI(Cache("D",SortKey)),$LI(Cache("D",SortKey),2)) . . Do strmBody.Write(Tekst) . Do strmBody.Write($$$fmtEndTable) Do:$D(Cache("U")) . Do strmBody.Write($$$fmtBeginTable("Volgende producten zijn gewijzigd in de Blum databank en hebben geen verschillen:")) . Set SortKey="" . For Set SortKey=$O(Cache("U",SortKey)) Quit:SortKey="" Do . . Set Tekst=..AddProduct(Cache("U",SortKey)) . . Do strmBody.Write(Tekst) . Do strmBody.Write($$$fmtEndTable) Do strmBody.Write($$$fmtEndHtml) quit strmBody ]]>
BLID:%String %String "_%KT_""_%ID_"" Set KortTekst=$P($G(^BLProd("D",BLID)),"\") Quit $$$fmtProd(BLID,KortTekst) ]]> PRNr,Diff "_%KT_""_%ID_"" #define fmtLijn(%Label,%Blum,%VH) $C(10,13)_""_%Label_""_%Blum_""_%VH_"" Set Txt=$$$fmtHfd($$$PRGet($$$IdentNummer),$$$PRGet($$$KortTekst)) For J=1:1:$LL(Diff)\2 Do . Set Key=$LI(Diff,J*2-1) . Set lbValues=$LI(Diff,J*2) . If Key="VQ" Do ;Verpakking . . Set Label="Verpakking" . . Set Blum=$LG(lbValues,1) . . Set VH=$LG(lbValues,2) . . Set:($LG(lbValues,3)'="")||($LG(lbValues,4)'="") Blum=Blum_" / "_$LG(lbValues,3),VH=VH_" / "_$LG(lbValues,4) . . Set:($LG(lbValues,5)'="")||($LG(lbValues,6)'="") Blum=Blum_" / "_$LG(lbValues,5),VH=VH_" / "_$LG(lbValues,6) . If Key="PRIJS" Do ;Verpakking . . Set Label="Prijs" . . Set Blum=$LG(lbValues,1) . . Set VH=$LG(lbValues,2) . . Set:($LG(lbValues,3)'="")||($LG(lbValues,4)'="") Blum=Blum_" / "_$LG(lbValues,3),VH=VH_" / "_$LG(lbValues,4) . . Set:($LG(lbValues,5)'="")||($LG(lbValues,6)'="") Blum=Blum_" / "_($LG(lbValues,5)*100)_"%",VH=VH_" / "_($LG(lbValues,6)*100)_"%" . Else Do . . Set Label=$Case(Key,"MBH":"Min.Bestel","PQ":"Pallet","LT":"Levertermijn","KT":"Korttekst",:Key) . . Set Blum=$LG(lbValues,1) . . Set VH=$LG(lbValues,2) . Set Txt=Txt_$$$fmtLijn(Label,Blum,VH) Quit Txt ]]>