rZBCHKRCP Quit CHECKRCP Do . New Check . Set Q="K" . Do ^cA604 Write !!,"*** WMS rcp ***" Set RCPNr="" For Set RCPNr=$O(^RCP("D",RCPNr)) Quit:RCPNr="" Do . Set RCPRec=^RCP("D",RCPNr),RCPZR=$ZR,TOENr="" . If $P(RCPRec,D)="K" Do .. Set KLNr=$P(RCPRec,D,2) .. Quit:$D(^RCP("IK",KLNr,RCPNr)) .. Set Check=0 .. Write !!,$ZR,!,"Index onbekend" . Else Do .. Set LEVNr=$P(RCPRec,D,2) .. Quit:$D(^RCP("IL",LEVNr,RCPNr)) .. Set Check=0 .. Write !!,$ZR,!,"Index onbekend" . Do:$D(^RCP("IO",RCPNr)) .. If $P(RCPRec,D,20)'="I" Quit .. Set Check=0 .. Write !!,RCPZR,!,RCPRec,!,"Status RCP is ""I"", index Openstaand bestaat nog. Indien receptie volledig ingeboekt, dan index "_$Name(^RCP("IO",RCPNr))_" verwijderen. " . For Set (TOENr,CONSNr)=$O(^RCP("D",RCPNr,"D",TOENr)) Quit:TOENr="" Do .. Set R=$G(^RCP("IU",CONSNr)),RCPIZR=$ZR .. If $P(RCPRec,D)="K",$P(RCPRec,D,20)'="A",$P(RCPRec,D,20)'="I",R'=RCPNr Do ... Quit:$$CHKSTATUS(RCPNr,CONSNr,"I") ... Set Check=0 ... Write !!,RCPIZR,!,"RCPNr ",$S(R:"verschillend",1:"onbekend; maak ^RCP(IU,KUL-nummer)=RCP-nummer aan voor deze terugname.") .. Set TLUNr="" .. For Set (TLUNr,BLUNr)=$O(^RCP("D",RCPNr,"D",TOENr,TLUNr)) Quit:TLUNr="" Do ... Set RCPTOERec=^RCP("D",RCPNr,"D",TOENr,TLUNr),RCPZR=$ZR,RCPPRNr=$P(RCPTOERec,D) ... If $P(RCPRec,D,20)="I",$P(RCPTOERec,D,2)'="I" Do .... Set Check=0 .... Write !!,RCPZR,!,RCPTOERec,!,"Status ""I"" op receptie-hoofding, maar niet op receptielijn. Lijnniveau is normaal gezien correct." ... Set R=$G(^RCP("IT",TOENr,TLUNr)),RCPIZR=$ZR ... If $P(RCPRec,D)="L",$P(RCPTOERec,D,2)'="I",R'=RCPNr Do .... Set Check=0 .... Write !!,RCPIZR,!,"RCPNr ",$S(R:"verschillend",1:"onbekend") ... If $P(RCPRec,D)="L",$P(RCPTOERec,D,2)'="I" Do .... Set TLNr=$G(^TO("IU",TOENr,TLUNr)) .... If 'TLNr Do Quit ..... Set Check=0 ..... Write !!,$ZR,!,RCPTOERec,!,"Toeleveringslijn onbekend. Indien toelevering niet bestaat => mogelijks geval van foute inboeking RCP: "_RCPNr // Als er meer stuks gerecepteerd worden dan verwacht, dan crasht de scanner soms. VDR kan verheldering brengen! .... Set TOERec=$G(^KTO(LEVNr,TOENr,TLNr)),TOEPRNr=$P(TOERec,D,2) .... Do:TOEPRNr'=RCPPRNr ..... Set Check=0 ..... Write !!,RCPZR,!,RCPTOERec,!,$ZR,!,TOERec,!,$S('TOEPRNr:"Toeleveringslijn onbekend",1:"Produkt verschillend") ... If $P(RCPRec,D)="K",$P(RCPTOERec,D,2)'="I" Do .... Set BLNr=$G(^BON("IU",CONSNr,BLUNr)) .... Do:'BLNr ..... Set Check=0 ..... Write !!,$ZR,!,RCPTOERec,!,"Bonlijn onbekend. ^BON(IU is misschien te snel verwijderd, maak die terug." Quit CHKSTATUS(RCPNr,TOENr,Status) New R,TLUNr Set TLUNr="" For Set TLUNr=$O(^RCP("D",RCPNr,"D",TOENr,TLUNr)) Quit:TLUNr="" Do Quit:Status="?" . Set R=^RCP("D",RCPNr,"D",TOENr,TLUNr) . Set:$P(R,D,2)'=Status Status="?" Quit Status'="?" CHECK() New Set Check=1 Do CHECKRCP Quit Check