persistent 1 %Persistent,%XML.Adaptor 0 %Numeric BL.Sys.LabelPrinter BL.Derde.Klant.sub.pxLabelMagRek 1 Initialisatie KLNr:%Numeric Omzetten klantreferentie in een intern productnummer 1 PakketNaam:%String,KLNr:%Numeric %Numeric Een product toevoegen op basis van ID. De routine probeert de ID om te zetten in een intern productnummer 1 ProductId:%String,KLNr:%Numeric %Status 0 Quit $$$ERROR($$$GeneralError,"Product reeds toegevoegd aan de lijst") Set blProd=##class(DS.Derde.Klant.LabelMagRek).%New() Set blProd.PRNr=PRNr Set Stat=blProd.%Save() Quit Stat ]]> Alle eigenschappen van een product toevoegen 1 PRNr:%Integer,ProductNaam:%String,IdentNr:%String,EANCode:%String,Opmerking1:%String,Opmerking2:%String,AfbeeldingURL:%String,KlantRef:%String,Verpakking:%String,Omschrijving:%String %Status Een record toevoegen op basis van het intern productnummer PRNr:%Integer 0 Quit $$$ERROR($$$GeneralError,"Product reeds toegevoegd aan de lijst") Set blProd=##class(DS.Derde.Klant.LabelMagRek).%New() Set blProd.PRNr=PRNr Set Stat=blProd.%Save() Quit Stat ]]> De productinfo wijzigen Id:%String Een nieuw record aanmaken en openen Een record opslaan blProd:DS.Derde.Klant.LabelMagRek %Status Een record wissen Id:%String Alle records wissen Importeren van artikels die in de global KSTKL(verkoopanalyse) staan. Alleen artikels met een omzet in het laatste jaar worden toegevoegd KLNr:%Numeric %Integer Importeren van artikels die in een Flow.Offerte webshop staan OfferteID:%Numeric %Integer ID=:OfferteID) &sql(OPEN ImportWebShop) For &sql(FETCH ImportWebShop) Quit:SQLCODE Do . Quit:'$D(^KPR(PRNr)) . Quit:$$GENTYP^HAD(PRNr)'="" . Quit:$$ISORGAL^ORGALUX(PRNr) ;geen orgaluxproducten in de lijst . Set Stat=..Add(PRNr) . If Stat=$$$OK Set Aantal=Aantal+1 &sql(CLOSE ImportWebShop) Quit Aantal ]]> Importeren van artikels die bij de Favorieten van de klant staan Opmerking : Favorieten zijn gegroepeerd per ToegangID en Klant. Dus het zou kunnen dat meerdere ToegangID mogelijk voor een klant en dat dus de producten dubbel staan KLNr %Integer proxyclass pxLabelMagRek invullen Layout:%String,Printer:%String,Id:%String Een label van één product afdrukken Layout:%String,Printer:%String,ID:%String Een label afdrukken van ieder product in de lijst Layout:%String,Printer:%String Alle layouts tonen Alle printers tonen met een bepaalde layout Lijst van alle producten. De eigenschappen worden indien nodig uit de global ^KPR gehaald. De methods in DS.Derde.Klant.LabelMagRek werken niet als je rechtstreeks een query opstart %Query Execute-method van de query qLijst 1 %Status Fetch-method van de query qLijst 1 qLijstExecute %Status Close-Method van de query qLijst 1 qLijstExecute %Status %Library.CacheStorage ^BL.Derde.Klant.LabelMagRekD LabelMagRekDefaultData ^BL.Derde.Klant.LabelMagRekD ^BL.Derde.Klant.LabelMagRekI ^BL.Derde.Klant.LabelMagRekS listnode %%CLASSNAME KLNr blLabelPrinter IsModif RPLKL ZATemp pxLabel %J