Index: PRODUKT2.mac.rou =================================================================== diff -u -r734 -r918 --- PRODUKT2.mac.rou (.../PRODUKT2.mac.rou) (revision 734) +++ PRODUKT2.mac.rou (.../PRODUKT2.mac.rou) (revision 918) @@ -236,36 +236,6 @@ Do blBldInd.Init(PRNr) ; incl reload van het product object Do blBldInd.DeleteIndex() Quit - ; - New Key,I,KHS,KGS,KSS,Merk,LevRef,LevNr,RecG,HDosNr,GenTyp - ; Ophalen gegevens - If '$D(KortT) Do - .For I="I","J" Do - ..Set @("Rec"_I)="",Key=$O(^KPR(PRNr,I)) - ..If $E(Key)=I Set @("Rec"_I)=^KPR(PRNr,Key) - .Set KortT=$P(^KPR(PRNr,0),D,1) - .Set IdentNr=$P(^KPR(PRNr,2),D,25) - Set KortT=$$COMPRES^PRODUKT(KortT,$P(RecI,D,5),$P(^KPR(PRNr,1),D,20),IdentNr) - Set IdentNr=$$TRIMN^vhRtn1(IdentNr) - Set RecG=$G(^KPR(PRNr,"G")),HDosNr=$P(RecG,D),GenTyp="" - Set:$L(HDosNr) GenTyp=$P($$GENTYP^HAD(PRNr),D,3) - ; Verwijderen - Kill ^KPR1(KortT) - Kill ^KPR2($$TRIMN^vhRtn1(IdentNr)_" ") - If $L(GenTyp),$L(HDosNr) Kill ^KPR3(GenTyp,HDosNr) - If $L(RecJ) Do - .Set LevNr=$P(RecJ,D)_" " - .Set LevRef=$P(RecJ,D,3)_" " - .Set Merk=$P(RecJ,D,2)_" " If $L(Merk)=1 Set Merk=" " - .Kill ^KPL(LevNr,Merk,LevRef,KortT) - If $L(RecI) Do - .Set KHS=$P(RecI,D) - .Set KGS=$P(RecI,D,2) - .Set KSS=$P(RecI,D,3) - .Set Merk=$P(RecJ,D,2)_" " If $L(Merk)=1 Set Merk=" " - .Kill:$L(KHS) ^KPH(KHS,KGS,KSS,Merk,KortT) - .Kill:$L(KHS) ^KPM(Merk,KHS,KGS,KSS,KortT) - Quit BLDIND(PRNr,KortT,IdentNr,RecI,RecJ) ; Opbouw indexen New blBldInd @@ -274,39 +244,6 @@ Do blBldInd.BuildIndex() Quit ; - New Key,I,KHS,KGS,KSS,Merk,LevRef,LevNr,KKortT,RecG,HDosNr,GenTyp - ; Ophalen gegevens - If '$D(KortT) Do - .For I="I","J" Do - ..Set @("Rec"_I)="",Key=$O(^KPR(PRNr,I)) - ..If $E(Key)=I Set @("Rec"_I)=^KPR(PRNr,Key) - .Set KortT=$P(^KPR(PRNr,0),D,1) - .Set IdentNr=$P(^KPR(PRNr,2),D,25) - Set KKortT=$$COMPRES^PRODUKT(KortT,$P(RecI,D,5),$P(^KPR(PRNr,1),D,20),IdentNr) - Set RecG=$G(^KPR(PRNr,"G")),HDosNr=$P(RecG,D),GenTyp="" - Set:$L(HDosNr) GenTyp=$P($$GENTYP^HAD(PRNr),D,3) - ;Indexen - Set ^KPR1(KKortT)=PRNr_D_KortT - ;w $zr,! - Set ^KPR2($$TRIMN^vhRtn1(IdentNr)_" ")=PRNr_D_IdentNr - ;w $zr,! - If $L(GenTyp),$L(HDosNr) Set ^KPR3(GenTyp,HDosNr)=PRNr - If $L(RecJ) Do - .Set LevNr=$P(RecJ,D)_" " - .Set LevRef=$P(RecJ,D,3)_" " - .Set Merk=$P(RecJ,D,2)_" " If $L(Merk)=1 Set Merk=" " - .Set ^KPL(LevNr,Merk,LevRef,KKortT)=PRNr - . ;w $zr,! - If $L(RecI) Do - .Set KHS=$P(RecI,D) - .Set KGS=$P(RecI,D,2) - .Set KSS=$P(RecI,D,3) - .Set Merk=$P(RecJ,D,2)_" " If $L(Merk)=1 Set Merk=" " - .Set:$L(KHS) ^KPH(KHS,KGS,KSS,Merk,KKortT)=PRNr ;w $zr,! - .Set:$L(KHS) ^KPM(Merk,KHS,KGS,KSS,KKortT)=PRNr ;w $zr,! - ;Do UPDATE^LOG("PR",PRNr) ; Om zeker te zijn dat de VTW's de update krijgen - Quit - ; REBLDIND(PRNr,KortT,IdentNr,RecI,RecJ) ; Heropbouw indexen Do DELIND(PRNr,.KortT,.IdentNr,.RecI,.RecJ) Do BLDIND(PRNr,.KortT,.IdentNr,.RecI,.RecJ) @@ -361,7 +298,13 @@ For Set IDNr=$$ASK^vhINP(Prompt,11,OldIDNr,"","","","","","U") Quit:".-"[IDNr Quit:$$CHECKID(IDNr) Quit IDNr - ; Nakijken of een identnummer geldig is + ; Controleren dat een identnr een geldig formaat heeft +IsValidIdentNr(String) ; [IDENT] Added by WimV on 15/02/2011 + New IsValidFormat + Set IsValidFormat=(String?1UN1"."3N1"."3N1"."1N) + Quit IsValidFormat + + ; Nakijken of een identnummer geldig is (Dit is een oude controle, waarschijnlijk niet meer gebruikt CW 15.02.11) ; Return : 1 = Geldig, 0 = Niet CHECKID(IDNr) New K,Value,Check,ExistId