persistent PRGACNTs,APPS.TBXWeb,TECH.Error 1 WebOrder %Persistent,%XML.Adaptor 0 1 1 mID 1 KLNummer WebDomain ShowInHist ID van het object %Integer 0 Taal van de aanvrager %String %String %String %String %String %TimeStamp %String %String %String %String %String %String %String %String %String %String %String WS.TBX.EM.OrderLijn array %String %String %String %String %String %String 1 %String 1 %String %String Logt de WSOrdToAdmin() acties: Format: $LB($LB($H,OffID,info),$LB(prev $H, prev OffID,...), ...) Bij een nieuwe transfer wordt de log steeds vooraan toegevoegd. Gebruik hiervoor de method AddToTransferLog() %List Logt de SubmitToVHEPN acties: Format: $LB($LB($H,info),$LB(prev $H, ...), ...) Bij een nieuwe SubmitToVHEPN wordt de log steeds vooraan toegevoegd. Gebruik hiervoor de method AddToSubmitToVHLog() %List %String De optie Niet Meeleveren wordt toegepast op alle lijnen van het order. Vandaar als propt. van de hoofding i.p.v. de lijnen Bevat ";"-gescheiden waarden : bvb. "NMCP;NMAK" Uitzondering voor NMFB : Frontbevestiging niet meeleveren wordt per lijn gekozen : oLijn.ItemFB="NM" %String Berekende properties voor Proxy-klasse. %String 1 Waarde wordt on-the-flight berekend en ingevuld (proxy) %String 1 Waarde wordt on-the-flight berekend en ingevuld (proxy) %String 1 %Integer %String list IsNew:%Library.Boolean=1 0 %Library.Status $G($$$StorageIndexNode)) $$$StorageIndexNode=id Set:(id'=..mID) ..mID=id Set:('IsNew) sc=..ControleerWaarden() Quit $$$OK ]]> %Status Verwijdert het object met (OID=ID) en vervangt het door het huidige object (door hetzelfde ID in the nemen). Deze manier maakt het mogelijk vorige ID's te hergebruiken. ID:%String 0 %Status %String OffID:%String,SOAPDest:%String,Info:%String 1 %Status Status:%String,Info:%String 1 %Status Geeft 1 (true) terug als : - SubmitTS ingevuld is; m.a.w. offerte als BBON doorgestuurd - of indien IsTransferredToAdmin() 1 %Boolean 0)||(..IsTransferredToAdmin()) 1 ]]> Gaat na of het Order reeds naar Admin ge-transferred is: indien minstens 1 OffID in TransferLog gevonden wordt; m.a.w. WSOrdToAdmin() heeft een ID van Flow.Offerte.Hoofding opgeleverd 1 %Boolean 0) blnOK=1 Quit blnOK ]]> Set the new TransfStatus. It is saved immedately. 1 wsID:%String,NewStatus:%String 1 %Status Set the new TransfStatus. It is saved immedately. Oproepen via : Set blnBusy=##class(WS.TBX.Order).TransfStatusCheckBusy(wsID) 1 wsID:%String 1 %Status Alle lijnen van een order omzetten naar een andere verpakking. Meestal van S(tuk) naar bulk-verpakt C(ommissie zonder onderdelen) of commissie met O(nderdelen) Kan toegepast worden net voor het importeren van een order via Tandembox-web in mode=PROCESS , verw=VHEPN . NewValue:%String 1 %String Verpakking wordt verondersteld gelijk te zijn voor alle lijnen van het WSOrder. %String Geeft een $LB() terug met de DesignCodes voor iedere lijn van het order. geeft dus meestal $LB("S","S",...,"S") of $LB("I", ...) terug omdat het hele WebOrder hetzelfde design bevat. 1 %List Geeft DCM (= DesignCode Mode) terug voor het gegeven wsID. 1 wsID:%String 1 %String Creëert een WS-object en vul de data in. Input arData-structuur: arData(...) arData("KLT",...) arData("ALG","KLR",...) arData("LN",i,...) arData("LN",i,"KLR",...) 1 arData:%String,NewID:%String 0 WS.TBX.Order Vult de data (array) in het WS-object in. Input arData-structuur: arData(...) arData("KLT",...) arData("ALG","KLR",...) arData("LN",i,...) arData("LN",i,"KLR",...) arData:%String 0 Creëert een arData Array van het huidige WSOrd-object (arData als .local doorgeven) Output arData-structuur: arData(...) arData("KLT",...) arData("ALG","KLR",...) arData("LN",i,...) arData("LN",i,"KLR",...) arData:%String,blnIncludeLN:%Boolean=1 0 Gaat de consistenties van WSOrd.Lijnen na. Als er inconsistenties zijn, worden deze teruggegeven via de array "arErrs". arErrs:%String,Taal:%String 1 %Boolean 0 %String %String Validatie van de Bestelhoeveelheid : is afhankelijk van de gekozen verpakking in het order en is Domein-specifiek. TBXContext:APPS.TBXWeb.TBXContext %String RefDatum:%String=$H,AantalDagenGeldig:%Integer=30 %String Geeft datum/tijdstip in $H-formaat terug van de laatste submit (to VH). OPGELET : submit to VH betekent voor de handels niet de submit van de klant, maar de submit van de handel naar VanHoecke %String Optionele parameter RefDatum in $H-formaat meegeven. Indien niet opgegeven, dan wordt $H als waarde genomen. Dit is in de meeste gevallen de juiste waarde om IsVervallen te testen. %String 0) If (IsVervallen) { Set VervalReden = ##class(APPS.TBXWeb.enu.RedenOfferteVervallen).DuurOfferteVerstreken() } Else { If (..ActieCodesList.Count() > 0) Set IsVervallen = IsVervallen || ('..ZijnActiesNogGeldig(RefDatum)) If (IsVervallen) { Set VervalReden = ##class(APPS.TBXWeb.enu.RedenOfferteVervallen).ActieVervallen() } } } Quit IsVervallen ]]> %Boolean RefDatum:%String=$H %Boolean %String RefDatum:%String=$H %String Maakt de unie van de ActieCodes (op lijnniveau) en vult die in in de ActieCodesList van het WSOrd (hoofding). ActieCode:%String Rol:%String %Boolean Het WSOrder van BBON herzetten naar OFF. Geeft het WSOrder-object terug voor eventuele verdere verwerking. Method handmatig oproepen via : s WSOrd=##class(WS.TBX.Order).ResetToOFF(314) w WSOrd_$S('WSOrd:"",1:" BonType:"_WSOrd.BonType),! 1 wsID:%String,blnResetLevT:%Boolean,blnSaveObj:%Boolean=1 WS.TBX.Order Het WSOrder van INKP herzetten naar BBON. Geeft het WSOrder-object terug voor eventuele verdere verwerking. Method handmatig oproepen via : s WSOrd=##class(WS.TBX.Order).ResetToBBON(314) w WSOrd_$S('WSOrd:"",1:" BonType:"_WSOrd.BonType),! 1 wsID:%String,blnSaveObj:%Boolean=1 WS.TBX.Order Manuele tool om test-orders te markeren als verwerkt, zodat deze niet meer tevoorschijn komen in het overzicht van de niet-verwerkte orders. Zie klasse APPS.TBXWeb.OrderChecker Method handmatig oproepen via : s WSOrd=##class(WS.TBX.Order).MarkeerAlsVerwerkt(wsID,0) w WSOrd,! 1 wsID:%String,ForceerWijziging:%Boolean WS.TBX.Order De status ShowInHist van het WSOrder invullen op basis van het ClientIP, zodat het order al dan niet zichtbaar wordt in de Historiek. ClientHostIP:%String,IsDomeinVHEPN:%Boolean De status ShowInHist van het WSOrder wijzigen, zodat het order al dan niet zichtbaar wordt in de Historiek. Geeft het WSOrder-object terug voor eventuele verdere verwerking. Method handmatig oproepen via : s WSOrd=##class(WS.TBX.Order).UpdateShowInHist(314,80,,) w WSOrd_$S('WSOrd:"",1:" ShowInHist:"_WSOrd.ShowInHist),! 1 wsID:%String,NewStatusH:%String,ClientHostIP:%String="",blnSaveObj:%Boolean=1 WS.TBX.Order $$$shShownForAll) "" If $G(NewStatusH)="" Do Quit:(ClientHostIP="") "" . Set blnIsExternIP=$$$Not($$IsInternIPAdres^cspBasis.Library(ClientHostIP)) . Set NewStatusH=$S(blnIsExternIP:$$$shShownForKlant, 1:$$$shShownForVHEPN) Set WSOrd.ShowInHist=NewStatusH If blnSaveObj Do . Set scSave=WSOrd.%Save() . w:$$$ISERR($G(scSave)) "SaveObj status"_$$ParseStatus^vhLib(scSave),! Do:(1) ushUpdateTBXLog() Quit WSOrd ushUpdateTBXLog() Set:(ClientHostIP'?1.3N3(1"."1.3N)) ClientHostIP=$S(NewStatusH'<$$$shShownForKlant:"192.999.1.999", 1:"192.168.1.999") ; ATTENTION: if an ExternIP already present in the log, the order remains visible in Hist. Do ##class(cspBasis.GAProdTBox).SetOrderShowInHist(WSOrd.%Id(), WSOrd.KLNummer, ClientHostIP, WSOrd.WebDomain, $G(VhisieLogin)) Quit /* SQL-Statement om alle offertes van een klant te verbergen (in de historiek) : UPDATE WS_TBX.WebOrder Set ShowInHist='10' WHERE (KLNummer = 16509) AND (webdomain = 'www.tandem-box.com') AND (BonType='OFF') */ ]]> Aan het WSOrder een Klant toewijzen en tevens van OFFAV omzetten naar OFF Geeft het WSOrder-object terug Method handmatig oproepen via : s WSOrd=##class(WS.TBX.Order).AssignKlantToOFFAV(314,1000) w WSOrd_$S('WSOrd:"",1:" BonType:"_WSOrd.BonType),! 1 wsID:%String,KLNr:%Boolean,blnSaveObj:%Boolean=1 WS.TBX.Order ', KLNummer = 1000, KLStraatNrBus ='', KLPostNr = , KLWoonPlaats = '', KLTelefoon ='', KLFax = '', KLEMail = '' WHERE ID=xxxxx */ ]]> Wijzigen van de property Exclude van een WSLijn. Bij Exclude=1 wordt deze TBX-lijn niet geïmporteerd into Admin (wordt bij herberekenen ook geskipped). Oproepen via : s sc=##class(WS.TBX.Order).WSLijnWijzigExclude(wsID,LijnNr,blnNewValue) w sc,! 1 wsID:%String,LijnNr:%Boolean,NewValue:%Boolean %Status CommReferentie:%String,LeverDatum:%String,Opmerking:%String %Boolean 0 %String 1 Nr:%String 0 %String 1 EDINr:%String,blnCheckID:%Boolean=1 %String 1000000):(EDINr-1000000), 1:EDINr) Quit $S('$G(blnCheckID,1):ID, ..%ExistsId(ID):ID, 1:"") ]]> 1 Domain:%String,lbFieldName:%List 0 %List %Boolean VERW:%String="",Taal:%String="" %String %Library.CacheStorage ^WS.TBX.OrderD OrderDefaultData ^WS.TBX.OrderD ^WS.TBX.OrderI ^WS.TBX.OrderS Lijnen subnode "LN" %%CLASSNAME BonType Commissie IngaveTijdStip KLFax KLNaam KLNummer KLPostNr KLStraatNrBus KLTelefoon KLWoonPlaats LeverTijd Taal TotPrijs TotAantal KLEMail StdLade WebDomain WebURL WebQSData KLPrijsKlasse SubmitTS KLKorting KLBTWNr TransferLog SubmitToVHLog LeverTijdID Opmerking1 NietMeeleveren ShowInHist TransfStatus ActieCodesList