CW2 ;Duplicering data ,# NIET VERWIJDEREN ORDERS If $ZU(5)="DEV-ADMIN1" Do . Do ^cA604 . Write !!,"Orders" . Set NameSpace="JRNL-ADMIN1" . Write !,"Verwijderen van de data",! . Do KillOIndex,KillOWNode,KillOrders . Write !,"Opbouwen van de data",! . Do BuildOrders Else Write "ongeldige namespace moet 'DEV-ADMIN1' zijn !",! Quit KillOIndex Kill ^KO1,^KO2,^KOB,^ORD Quit KillOWNode Set PRNr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr Do . Set $P(^KPR(PRNr,2),D,9)="",WNode="W" . For Set WNode=$O(^KPR(PRNr,WNode)) Quit:$E(WNode)'="W" Do . . Quit:$E(WNode,9)'="R" . . Kill ^KPR(PRNr,WNode) . . Kill:$E($O(^KPR(PRNr,"W")))'="W" ^KPR(PRNr,"W") Quit KillOrders Set KLNr=0 For Set KLNr=$O(^KOD(KLNr)) Quit:KLNr="" Kill ^KOD(KLNr) Quit BuildOrders Set KLNr=0 For Set KLNr=$O(^[NameSpace]KOD(KLNr)) Quit:KLNr="" Do . Merge ^KOD(KLNr)=^[NameSpace]KOD(KLNr) . Set ORDNr="" . For Set ORDNr=$O(^KOD(KLNr,"F",ORDNr)) Quit:ORDNr="" Do . . Set ^KO1(ORDNr,"F")=KLNr_D,^KO2("F",KLNr,ORDNr)=KLNr_D,OLNr=100 . . For Set OLNr=$O(^KOD(KLNr,"F",ORDNr,OLNr)) Quit:OLNr="" Do . . . Set PRNr=$P(^KOD(KLNr,"F",ORDNr,OLNr),D,2) . . . If PRNr,'$D(^KPR(PRNr)) Do BUILDPROD(PRNr) Set $P(^KPR(PRNr,2),D,9)="" . . . Do SWNODE^FLOWORD(KLNr,ORDNr,OLNr) Set ^KOD(0,"F","UR")=^[NameSpace]KOD(0,"F","UR") Quit TOELEV If $ZU(5)="DEV-ADMIN1" Do . Do ^cA604 . Write !!,"Toeleveringen" . Set NameSpace="JRNL-ADMIN1" . Write !,"Verwijderen van de data",! . Do KillTIndex,KillTWNode,KillToelev . Write !,"Opbouwen van de data",! . Do BuildToelev Else Write "ongeldige namespace moet 'DEV-ADMIN1' zijn !",! Quit KillTIndex Kill ^KTO1,^KTO2,^KTO3,^KTOB,^TO Quit KillTWNode Set PRNr=0 For Set PRNr=$O(^KPR(PRNr)) Quit:PRNr Do . Set $P(^KPR(PRNr,0),D,17)="",WNode="W" . For Set WNode=$O(^KPR(PRNr,WNode)) Quit:$E(WNode)'="W" Do . . Quit:$E(WNode,9)'="T" . . Kill ^KPR(PRNr,WNode) . . Kill:$E($O(^KPR(PRNr,"W")))'="W" ^KPR(PRNr,"W") Quit KillToelev Set LEVNr=0 For Set LEVNr=$O(^KTO(LEVNr)) Quit:LEVNr="" Kill ^KTO(LEVNr) Quit BuildToelev Set LEVNr=0 For Set LEVNr=$O(^[NameSpace]KTO(LEVNr)) Quit:LEVNr="" Do . Merge ^KTO(LEVNr)=^[NameSpace]KTO(LEVNr) . Set TOENr="" . For Set TOENr=$O(^KTO(LEVNr,TOENr)) Quit:TOENr="" Do . . Set ^KTO1(TOENr)=LEVNr_D,^KTO2(LEVNr,TOENr)="",TLNr=100 . . For Set TLNr=$O(^KTO(LEVNr,TOENr,TLNr)) Quit:TLNr="" Do . . . Set PRNr=$P(^KTO(LEVNr,TOENr,TLNr),D,2) . . . If PRNr,'$D(^KPR(PRNr)) Do BUILDPROD(PRNr) Set $P(^KPR(PRNr,2),D,9)="" . . . Do SWNODE^FLOWTOE(LEVNr,TOENr,TLNr) Set ^KTO(0,"TR")=^[NameSpace]KTO(0,"TR") Quit BUILDPROD(PRNr) For I="I","J" Set Key=$O(^[NameSpace]KPR(PRNr,I)) Do . If $E(Key)=I Set Rec=^[NameSpace]KPR(PRNr,Key),^KPR(PRNr,Key)=Rec,^KPR(PRNr,I)="" For I=0,1,2,3,4,5,15 Set:$D(^[NameSpace]KPR(PRNr,I)) ^KPR(PRNr,I)=^[NameSpace]KPR(PRNr,I) For I="G" Merge:$D(^[NameSpace]KPR(PRNr,I)) ^KPR(PRNr,I)=^[NameSpace]KPR(PRNr,I) Do:'$D(^KPR(PRNr)) . For I="I","J" Set Key=$O(^[NameSpace]KPRO(PRNr,I)) Do . . If $E(Key)=I Set Rec=^[NameSpace]KPRO(PRNr,Key),^KPR(PRNr,Key)=Rec,^KPR(PRNr,I)="" . For I=0,1,2,3,4,5,15 Set:$D(^[NameSpace]KPRO(PRNr,I)) ^KPR(PRNr,I)=^[NameSpace]KPRO(PRNr,I) . For I="G" Merge:$D(^[NameSpace]KPRO(PRNr,I)) ^KPR(PRNr,I)=^[NameSpace]KPRO(PRNr,I) Do BLDIND^PRODUKT2(PRNr) Q