Index: BL/MB/UGLYPicking/Receptie.cls.xml =================================================================== diff -u -r8456 -r20031 --- BL/MB/UGLYPicking/Receptie.cls.xml (.../Receptie.cls.xml) (revision 8456) +++ BL/MB/UGLYPicking/Receptie.cls.xml (.../Receptie.cls.xml) (revision 20031) @@ -117,7 +117,7 @@ 1 - + cache 0 %Library.List @@ -126,6 +126,7 @@ dan is de toelevering reeds afgewerkt ... New Rec ... Set Rec=^UPRCP("B",bfrRGID,bfrVolgNr,LijnNr) ... Set $P(Rec,SEP,$$$bsnScanTime)=$H ;ScanTime opnieuw instellen... ... Set ^UPRCP("B",bfrRGID,bfrVolgNr,LijnNr)=Rec - .. Set:($LI(Status)>0) Status=$LB(2,"Product '"_ProductNr_"' succesvol ingescand. "_$LI(Status,2)) + .. Set:(($LI(Status)>0) && (UseThisTLNr="")) Status=$LB(2,"Product '"_ProductNr_"' succesvol ingescand. "_$LI(Status,2)) + .. Set:(($LI(Status)>0) && ((UseThisTLNr'="") && 'GebruikTotaalAantalIndienUseThisTLNr)) Status=$LB(0) . Else Do ;Bufferlijn bestaat reeds, assoc toeleveringsnummer opgegeven, lijn op maximum scanaantal instellen .. New TotalQty .. Set TotalQty=..GetTotalQtyViaProdNr(ProductNr,UseThisTLNr) .. Do ..SetBufferQtyDone(bfrRGID,bfrVolgNr,LijnNr,TotalQty) .. Do ..SetBufferAssocToelev(bfrRGID,bfrVolgNr,LijnNr,UseThisTLNr) .. Set:($LI(Status)>0) Status=$LB(2,"Product '"_ProductNr_"' ingesteld op maximum waarde ("_TotalQty_"). "_$LI(Status,2)) - + Quit:($LI(Status)'=0) Status //--------------------------------------------------------------------------------------------- @@ -216,7 +224,6 @@ { Quit $LB(3,"Het bestelde aantal voor de toelevering is volledig gescand.") } - ;De Qty die initieel in de buffer komt te staan (zelf opgegeven, TLNr aanwezig->TotalQty, anders 1) Set StartQty=$G(StartQty,$S(UseThisTLNr="":1,1:TotalQty-QtyDone)) Quit:(StartQty<0) $LB(-5,"Interne fout: starthoeveelheid("_StartQty_") is kleiner dan nul.") @@ -225,13 +232,30 @@ Quit:(ErrorList'="") $LB(-2,ErrorList) Quit:(AantalToeleveringenFound=0) $LB(-3,"Product '"_ProductNr_"' heeft toeleveringen, maar deze kunnen niet verwerkt worden met dit programma (ongeldige leverancier(s)).") - - ;AllesOK: Aan buffer toevoegen - New Rec,LijnNr - Set Rec=ProductNr_SEP_Dossier_SEP_PalletID_SEP_Locatie_SEP_StartQty_SEP_$H_SEP_UserID_SEP_$G(UseThisTLNr) - Set LijnNr=..GetNewLijnNr(bfrRGID,bfrVolgNr) - Set ^UPRCP("B",bfrRGID,bfrVolgNr,LijnNr)=Rec - + + /// JBL, sorry voor de commentaar, maar ik denk dat hier gebeurd : + /// SITUATIE 1 : + /// UseThisTLNr = "" + /// Dan wordt hier een nieuwe lijn in buffer aangemaakt als het product er nog niet in zat. + /// + /// SITUATIE 2 : + ///; - UseThisTLNr = ToeleveringsNr + ; Enkel het product (met ProductNr) van de toelevering (met UseThisTLNr) wordt toegevoegd, + ; dit met maximaal aantal + /// op dat moment wordt het totaal aantal toegevoegd aan de buffer met de toeleveringID + /// Wat er nu is bijgekomen is dat de property 'GebruikTotaalAantalIndienUseThisTLNr' optioneel is bijgekomen. + /// Ik vermoed dat onderstaand vroeger enkel mocht uitgevoerd worden als + /// - UseThisTLNr ingevuld was, want bij lege UseThisTLNr hij kwam niet tot hier door de early quits + /// Onderstaande code mag dus vanaf heden enkel uitgevoerd worden als + /// - UseThisTLNr ingevuld is + /// - GebruikTotaalAantalIndienUseThisTLNr = 1 + If ((UseThisTLNr = "") || ((UseThisTLNr '= "") && GebruikTotaalAantalIndienUseThisTLNr)) { + ;AllesOK: Aan buffer toevoegen + New Rec,LijnNr + Set Rec=ProductNr_SEP_Dossier_SEP_PalletID_SEP_Locatie_SEP_StartQty_SEP_$H_SEP_UserID_SEP_$G(UseThisTLNr) + Set LijnNr=..GetNewLijnNr(bfrRGID,bfrVolgNr) + Set ^UPRCP("B",bfrRGID,bfrVolgNr,LijnNr)=Rec + } Quit $LB(1,"Product '"_ProductNr_"' succesvol toegevoegd aan buffer '"_bfrRGID_"'("_AantalToeleveringenFound_" toelevering(en)).") ;======================================================================================================== @@ -1913,9 +1937,6 @@ For Set RGIDLoop=$O(^UPRCP("B",RGIDLoop)) Quit:(RGIDLoop="") Do . For Set VolgNrLoop=$O(^UPRCP("B",RGIDLoop,VolgNrLoop)) Quit:(VolgNrLoop="") Do - .. D WLIP^vhDBG(127,"RGIDLoop:"_RGIDLoop) - .. D WLIP^vhDBG(127,"VolgNrLoop"_VolgNrLoop) - .. D WLIP^vhDBG(127,"^UPRCP(B,"_RGIDLoop_","_VolgNrLoop_")") .. Set Rec=^UPRCP("B",RGIDLoop,VolgNrLoop) .. Quit:('$P(Rec,SEP,2)) ;Indien buffer closed niet quit'en, deze moeten gechecked worden .. Set:('$P(Rec,SEP,4)) UnhandledCnt=UnhandledCnt+1 ;Piece 4: IsHandled