Index: vhConsistency/Checks/DOM/PM/PrijzenVariatiesViaWebservice.cls.xml =================================================================== diff -u -r52028 -r52029 --- vhConsistency/Checks/DOM/PM/PrijzenVariatiesViaWebservice.cls.xml (.../PrijzenVariatiesViaWebservice.cls.xml) (revision 52028) +++ vhConsistency/Checks/DOM/PM/PrijzenVariatiesViaWebservice.cls.xml (.../PrijzenVariatiesViaWebservice.cls.xml) (revision 52029) @@ -49,69 +49,75 @@ #dim SalesPriceServiceEenheid, SalesPriceServiceInclBTW, SalesPriceServiceLijstPrijs, SalesPriceServiceNettoprijs As %String #dim Aantal, KLNr, PRNr As %Integer - While (..GlobalMultiDimIterator.HasNext()) { - Set Record = ..GlobalMultiDimIterator.Next() - Set KLNr = $Piece(Record,"\",1) - Set KlantNaam = $Piece(Record,"\",2) - Set PRNr = $Piece(Record,"\",3) - Set Korttekst = $Piece(Record,"\",4) - Set Identnummer = $Piece(Record,"\",5) - Set Aantal = $Piece(Record,"\",6) - Set SimPPL = $$$If($Piece(Record,"\",7)=0,"",$Piece(Record,"\",7)) - - If $$$Not(##class(Derde.Klant.Klant).%ExistsId(KLNr)) { - Set Melding = "Klant '"_KLNr_"' bestaat niet." - ;Do ..VoegMeldingToe(Melding) - w !,Melding - Continue + If ..GlobalMultiDimIterator.AtEnd() { + Set Melding = "De Global die de te checken data hoort te bevatten is leeg. Gelieve een bestand te uploaden met volgende instructie: "_$$$CRLF + _"Do ##class(vhConsistency.Checks.DOM.PM.PrijzenVariatiesViaWebservice).%New().UploadBestandMetPrijzenNaarGlobal() "_$$$CRLF + _"Het default pad is C:\temp\ en de default bestandsnaam is 'TST PrijzenControleren in bulk via webservice.csv'" + } Else { + While (..GlobalMultiDimIterator.HasNext()) { + Set Record = ..GlobalMultiDimIterator.Next() + Set KLNr = $Piece(Record,"\",1) + Set KlantNaam = $Piece(Record,"\",2) + Set PRNr = $Piece(Record,"\",3) + Set Korttekst = $Piece(Record,"\",4) + Set Identnummer = $Piece(Record,"\",5) + Set Aantal = $Piece(Record,"\",6) + Set SimPPL = $$$If($Piece(Record,"\",7)=0,"",$Piece(Record,"\",7)) + + If $$$Not(##class(Derde.Klant.Klant).%ExistsId(KLNr)) { + Set Melding = "Klant '"_KLNr_"' bestaat niet." + ;Do ..VoegMeldingToe(Melding) + w !,Melding + Continue + } + + If $$$Not(##class(Prod.Product).%ExistsId(PRNr)) { + Set Melding = "Product '"_PRNr_"' bestaat niet." + ;Do ..VoegMeldingToe(Melding) + w !,Melding + Continue + } + + Set Result = ..SalesPriceService.GeefPrijs(KLNr,PRNr,SimPPL,Aantal) + Set ResultLine = Result.Lines.GetAt(1) + Set NettoPrijs = $Piece(Record,"\",8) + Set LijstPrijs = $Piece(Record,"\",9) + Set Eenheid = $Piece(Record,"\",10) + Set InclBTW = $Piece(Record,"\",11) + + Set SalesPriceServiceNettoprijs = $$$ExcelNum(ResultLine.Price) + Set SalesPriceServiceLijstPrijs = $$$ExcelNum(ResultLine.GrossPrice) + Set SalesPriceServiceEenheid = ResultLine.PriceUnit + Set SalesPriceServiceInclBTW = Result.InclVAT + + If $$$Not(NettoPrijs = SalesPriceServiceNettoprijs) { + Set Melding = "Voor Klant '"_KLNr_"' - '"_KlantNaam_"' komt de SalesPriceService Nettoprijs niet overeen voor product '"_PRNr_"' - '"_Identnummer_"' zijnde '"_Korttekst_"'. Bestand: '"_NettoPrijs_"' - SalesPriceService: '"_SalesPriceServiceNettoprijs_"'." + ;Do ..VoegMeldingToe(Melding) + w !,Melding + Continue + } + + If $$$Not(LijstPrijs = SalesPriceServiceLijstPrijs) { + Set Melding = "Voor Klant '"_KLNr_"' - '"_KlantNaam_"' komt de SalesPriceService LijstPrijs niet overeen voor product '"_PRNr_"' - '"_Identnummer_"' zijnde '"_Korttekst_"'. Bestand: '"_LijstPrijs_"' - SalesPriceService: '"_SalesPriceServiceLijstPrijs_"'." + ;Do ..VoegMeldingToe(Melding) + w !,Melding + Continue + } + + If $$$Not(Eenheid = SalesPriceServiceEenheid) { + Set Melding = "Voor Klant '"_KLNr_"' - '"_KlantNaam_"' komt de SalesPriceService Eenheid niet overeen voor product '"_PRNr_"' - '"_Identnummer_"' zijnde '"_Korttekst_"'. Bestand: '"_Eenheid_"' - SalesPriceService: '"_SalesPriceServiceEenheid_"'." + ;Do ..VoegMeldingToe(Melding) + w !,Melding + Continue + } + + If $$$Not(InclBTW = SalesPriceServiceInclBTW) { + Set Melding = "Voor Klant '"_KLNr_"' - '"_KlantNaam_"' komt de SalesPriceService InclBTW niet overeen voor product '"_PRNr_"' - '"_Identnummer_"' zijnde '"_Korttekst_"'. Bestand: '"_InclBTW_"' - SalesPriceService: '"_SalesPriceServiceInclBTW_"'." + ;Do ..VoegMeldingToe(Melding) + w !,Melding + Continue + } } - - If $$$Not(##class(Prod.Product).%ExistsId(PRNr)) { - Set Melding = "Product '"_PRNr_"' bestaat niet." - ;Do ..VoegMeldingToe(Melding) - w !,Melding - Continue - } - - Set Result = ..SalesPriceService.GeefPrijs(KLNr,PRNr,SimPPL,Aantal) - Set ResultLine = Result.Lines.GetAt(1) - Set NettoPrijs = $Piece(Record,"\",8) - Set LijstPrijs = $Piece(Record,"\",9) - Set Eenheid = $Piece(Record,"\",10) - Set InclBTW = $Piece(Record,"\",11) - - Set SalesPriceServiceNettoprijs = $$$ExcelNum(ResultLine.Price) - Set SalesPriceServiceLijstPrijs = $$$ExcelNum(ResultLine.GrossPrice) - Set SalesPriceServiceEenheid = ResultLine.PriceUnit - Set SalesPriceServiceInclBTW = Result.InclVAT - - If $$$Not(NettoPrijs = SalesPriceServiceNettoprijs) { - Set Melding = "Voor Klant '"_KLNr_"' - '"_KlantNaam_"' komt de SalesPriceService Nettoprijs niet overeen voor product '"_PRNr_"' - '"_Identnummer_"' zijnde '"_Korttekst_"'. Bestand: '"_NettoPrijs_"' - SalesPriceService: '"_SalesPriceServiceNettoprijs_"'." - ;Do ..VoegMeldingToe(Melding) - w !,Melding - Continue - } - - If $$$Not(LijstPrijs = SalesPriceServiceLijstPrijs) { - Set Melding = "Voor Klant '"_KLNr_"' - '"_KlantNaam_"' komt de SalesPriceService LijstPrijs niet overeen voor product '"_PRNr_"' - '"_Identnummer_"' zijnde '"_Korttekst_"'. Bestand: '"_LijstPrijs_"' - SalesPriceService: '"_SalesPriceServiceLijstPrijs_"'." - ;Do ..VoegMeldingToe(Melding) - w !,Melding - Continue - } - - If $$$Not(Eenheid = SalesPriceServiceEenheid) { - Set Melding = "Voor Klant '"_KLNr_"' - '"_KlantNaam_"' komt de SalesPriceService Eenheid niet overeen voor product '"_PRNr_"' - '"_Identnummer_"' zijnde '"_Korttekst_"'. Bestand: '"_Eenheid_"' - SalesPriceService: '"_SalesPriceServiceEenheid_"'." - ;Do ..VoegMeldingToe(Melding) - w !,Melding - Continue - } - - If $$$Not(InclBTW = SalesPriceServiceInclBTW) { - Set Melding = "Voor Klant '"_KLNr_"' - '"_KlantNaam_"' komt de SalesPriceService InclBTW niet overeen voor product '"_PRNr_"' - '"_Identnummer_"' zijnde '"_Korttekst_"'. Bestand: '"_InclBTW_"' - SalesPriceService: '"_SalesPriceServiceInclBTW_"'." - ;Do ..VoegMeldingToe(Melding) - w !,Melding - Continue - } } Quit (..GeefAantalMeldingen()=0)