FOLTECT ;Beheer codes voor FolieTec deuren[ 06/14/2000 9:06 AM ] ; Set KLNr="" Do DISPLAY^vhScherm("FOLTECT") Do FIELD^vhScherm("FOLTECT","KLANT") Quit:KLNr="-" Do VERWERK(KLNr) Quit ; VERWERK(KLNr,ExtCall) New %SC,%J,%TC,A,B,R,zb,Input,MetPrijs,Quit,List,sMod,NoMod New Reeks,Kleur,Kode,Hoogte,Breedte,BasisTyp,Type,Dikte,Ronding Set ExtCall=$G(ExtCall) Do:ExtCall STORE^vhTERMINA() Do INIT,DISPLAY^vhScherm("FOLTECT") Set NoMod=ExtCall If 'NoMod Do Quit:Quit .Set Quit=0 .Do ADD^vhLock("^FOLTEC(""T"",KLNr)") .If '%TC Do LDISP^vhLock("^FOLTEC(""T"",KLNr)","Maatvoeringen "_$P(^KKL(^KK1(KLNr),0),D,2)) Set Quit=1 Set MetPrijs=0 Do FETCH,LIST For Do Quit:Quit .Do COMMAND .Set Quit=0 .If "\-\CANC\"[(D_Input_D) Set:ExtCall Quit=1 Quit:Quit Set Quit=$L($$SAVE^vhINP(1,0)) .If Input="SAVE" Set Quit=$$SAVE(1) Kill ^HULP(%J) Do:ExtCall REFRESH^vhTERMINA() Quit ; COMMAND Set Input=$$SCROLL^vhLIST(.List) If Input="COM" Set Input="" Do CALL^vhMenu("FOLTECT") ;If Input="SPEC" Set Input="" Do CALLSPEC^vhMenu(List("POS")+List("SELECT")_";80","FOLTECTS","E") Quit:Input="" If Input="ENTER",'NoMod Do MODIFY Quit Do EXEC^vhMenu("FOLTECT",.Input) Quit ; NEW New R,%SC,Kode,Hoogte,Breedte,BasisTyp,Type,Dikte,Ronding Set (Kode,Hoogte,Breedte,BasisTyp,Type,Dikte,Ronding)="" Do NIEUW^vhScherm("FOLTECT",,,,,,3) If $G(%SC) Do .Set sMod("N")=1 .Set R=Kode_";1\"_Hoogte_D_Breedte_D_BasisTyp_D_Type_D_Dikte_";"_Ronding_D .Set:$P(R,D,6)=";" $P(R,D,6)="" .If $O(^HULP(%J,""),-1),'$P($P(^($O(^HULP(%J,""),-1)),D),";",2) Do NIEUW^vhLISTE(.List,"&S") .Do NIEUW^vhLISTE(.List,R) Quit ; MODIFY New R,%SC,Kode,Hoogte,Breedte,BasisTyp,Type,Dikte,Ronding,NewKode Set R=$G(^HULP(%J,List("SELECT"))) If $L(R) Do .Set Kode=$P(R,D),Hoogte=$P(R,D,2),Breedte=$P(R,D,3),BasisTyp=$P(R,D,4),Type=$P(R,D,5) .Set NewKode=$P(Kode,";",2),Kode=$P(Kode,";") .Set Dikte=$P($P(R,D,6),";"),Ronding=$P($P(R,D,6),";",2) .Do EDIT^vhScherm("FOLTECT",,,,,,3) .Quit:'$G(%SC) .Set sMod("M")=1 .Set:NewKode $P(Kode,";",2)=1 .Set R=Kode_D_Hoogte_D_Breedte_D_BasisTyp_D_Type_D_Dikte_";"_Ronding_D .Set:$P(R,D,6)=";" $P(R,D,6)="" .Set ^HULP(%J,List("SELECT"))=R .Do LINE^vhLIST(.List,List("SELECT")) Quit ; DELETE New R Set R=$G(^HULP(%J,List("SELECT"))) If $L(R) Do .Set sMod("D")=1 .Do DELETE^vhLISTE(.List) .If $P($G(^HULP(%J,List("SELECT"))),D)="&S" Do ..If $P($G(^HULP(%J,List("SELECT")-1)),D)'="&S",$P($G(^HULP(%J,List("SELECT")+1)),D)'="&S" Do Quit ...If List("SELECT")=1,$O(^HULP(%J,List("SELECT")))="" Do DELETE^vhLISTE(.List) ..If List("SELECT")=$O(^HULP(%J,"")) Do DELETE^vhLISTE(.List) Quit ..If List("SELECT")=$O(^HULP(%J,""),-1) Do DELETE^vhLISTE(.List) Quit ..If $P($G(^HULP(%J,List("SELECT")-1)),D)="&S" Set List("SELECT")=List("SELECT")-1 Do DELETE^vhLISTE(.List) Quit ..If $P($G(^HULP(%J,List("SELECT")+1)),D)="&S" Do DELETE^vhLISTE(.List) Quit .If $P($G(^HULP(%J,List("SELECT"))),D)="&S" Do ..If $O(^HULP(%J,List("SELECT")))="" Do DELETE^vhLISTE(.List) Quit ..Do MOVE^vhLIST(.List,"DO",0) Quit ; FETCH New R,Hoogte,Breedte,BasisTyp,Type,Kode,Count Set Count=0,Hoogte="" For Set Hoogte=$O(^FOLTEC("IT",KLNr,Hoogte)) Quit:Hoogte="" Do .Set Breedte="" .For Set Breedte=$O(^FOLTEC("IT",KLNr,Hoogte,Breedte)) Quit:Breedte="" Do ..Set BasisTyp="" ..For Set BasisTyp=$O(^FOLTEC("IT",KLNr,Hoogte,Breedte,BasisTyp)) Quit:BasisTyp="" Do ...Set Type="" ...For Set Type=$O(^FOLTEC("IT",KLNr,Hoogte,Breedte,BasisTyp,Type)) Quit:Type="" Do ....Set Kode=^FOLTEC("IT",KLNr,Hoogte,Breedte,BasisTyp,Type) ....Set Kode($S(Type="V":"V",1:$E(BasisTyp)),Hoogte_$S($E(BasisTyp)="H":Type,1:""),Breedte)=Kode Set BasisTyp="" For Set BasisTyp=$O(Kode(BasisTyp)) Quit:BasisTyp="" Do .If Count Set Count=Count+1,^HULP(%J,Count)="&S" .Set Hoogte="" .For Set Hoogte=$O(Kode(BasisTyp,Hoogte)) Quit:Hoogte="" Do ..Set Breedte="" ..For Set Breedte=$O(Kode(BasisTyp,Hoogte,Breedte)) Quit:Breedte="" Do ...Set Kode=Kode(BasisTyp,Hoogte,Breedte),R=^FOLTEC("T",KLNr,Kode) ...Set Count=Count+1,^HULP(%J,Count)=Kode_D_R Quit ; SAVE(NotSave) New R,Save,Next,Kode,BasisTyp,Type Set Save=$$SAVE^vhINP(NotSave,$D(sMod)) If Save="-",$D(sMod) Do .Kill ^FOLTEC("IT",KLNr),^FOLTEC("T",KLNr) .For Next=1:1 Quit:'$D(^HULP(%J,Next)) Do ..Set R=^HULP(%J,Next) ..Quit:R="&S" ..Set Kode=$P($P(R,D),";"),R=$P(R,D,2,99),BasisTyp=$P(R,D,3),Type=$P(R,D,4) ..Set:Kode="" Kode=$$NEXTID() Set Kode=$$CHKKODE(Kode,BasisTyp,Type) ..Set ^FOLTEC("T",KLNr,Kode)=R .Do BLDIND(KLNr) Set Save=$L(Save) Quit Save ; KLANT() Set KLNr=$$SELECT^KONTAKT("K","Z","","Klant : ") Set:KLNr="." KLNr="-" Set:KLNr'="-" KLNr=+$P(KLNr,";",2) Quit KLNr ; FRONT(BasisTyp,Display) New R,Next,Select,Position If '$G(Display) Do .Set Next="",Select=0 .For Set Next=$O(^RES("FOLTEC","PI","FRONT","D",Next)) Quit:Next="" Do ..Set R=^RES("FOLTEC","PI","FRONT","D",Next) ..Quit:$P(R,"`")=1 Quit:$P(R,"`")=7 ..Set BasisTyp($P(R,"`")-1)=Next_"`"_$P(R,"`",2) Set:Next=BasisTyp Select=$P(R,"`")-2 .Set Position=($P(sFR,"`",5)-Select+1)_";"_$P(sFR,"`",6) .Set BasisTyp=$$WILD^vhPOPUP(Position,"OB1-","Fronttype",.BasisTyp,BasisTyp) Else If $L(BasisTyp) Set BasisTyp=$P($G(^RES("FOLTEC","PI","FRONT","D",BasisTyp)),"`",2) Quit BasisTyp ; TYPE(Type,BasisTyp,Display) New R,Position If '$G(Display) Do .Set:BasisTyp="K" Type="K" .Set:BasisTyp="H" Type=$$HOEKDEUR(Type) .Set:BasisTyp="S" Type="PS" .Set:BasisTyp="P" Type="EP" .If BasisTyp="D" Do ..If KLNr=1124,$$FRONT^FOLTEC(Hoogte)="L" Do ...Set Position=$P(sFR,"`",5)-$S($L(Type):$P($G(^RES("FOLTEC","PI","STDVLAK","D",Type)),"`"),1:1)+2_";"_$P(sFR,"`",6) ...Set Type=$$PI^vhPOPUP(Position,"O1-","Type","FOLTEC","STDVLAK",X) ...If Type'="V" Set Type=$$FRONT^FOLTEC(Hoogte) ..Else Set Type=$$FRONT^FOLTEC(Hoogte) Else Do .If "\L\V\T\D\M\HL\HR\"[(D_Type_D) Set Type=$P($G(^RES("FOLTEC","PI","FRONTDTL","D",Type)),"`",2) .Else Set Type="" Quit Type ; DIKTE(Dikte,BasisTyp,Display) New R,Position If '$G(Display) Do .If BasisTyp="P" Do ..Set Position=$P(sFR,"`",5)-$S($L(Dikte):$P($G(^RES("FOLTEC","PI","PANEELDIKTE","D",Dikte)),"`"),1:1)+2_";"_$P(sFR,"`",6) ..Set Dikte=$$PI^vhPOPUP(Position,"O1-","Paneeldikte","FOLTEC","PANEELDIKTE",Dikte) .Else Set Dikte="" Else Do .If $L(Dikte) Set Dikte=$P($G(^RES("FOLTEC","PI","PANEELDIKTE","D",Dikte)),"`",2) .Else Set Dikte="" Quit Dikte ; RONDING(Ronding,BasisTyp,Display) New R,Position If '$G(Display) Do .If BasisTyp="P" Do ..Set Position=$P(sFR,"`",5)-$S($L(Ronding):$P($G(^RES("FOLTEC","PI","RONDING","D",Ronding)),"`"),1:1)+2_";"_$P(sFR,"`",6) ..Set Ronding=$$PI^vhPOPUP(Position,"O1-","Afronding","FOLTEC","RONDING",Ronding) .Else Set Ronding="" Else Do .If $L(Ronding) Set Ronding=$P($G(^RES("FOLTEC","PI","RONDING","D",Ronding)),"`",2) .Else Set Ronding="" Quit Ronding ; HOEKDEUR(Hoekdeur) New R,Position Set Position=$P(sFR,"`",5)-$S($L(Hoekdeur):$P($G(^RES("FOLTEC","PI","HOEKDEUR","D",Hoekdeur)),"`"),1:1)+2_";"_$P(sFR,"`",6) Set Hoekdeur=$$PI^vhPOPUP(Position,"O1-","Type hoekdeur","FOLTEC","HOEKDEUR",Hoekdeur) Quit Hoekdeur ; KODE(KLNr,BasisTyp,Hoogte,Breedte,Type) New R,Exist,Next,KTemp If $L(BasisTyp),$L(Hoogte),$L(Breedte),$L(Type) Do .Set KTemp=Kode,Exist=0 .For Next=1:1 Quit:'$D(^HULP(%J,Next)) Do Quit:Exist ..Set R=^HULP(%J,Next) ..If Hoogte=$P(R,D,2),Breedte=$P(R,D,3),BasisTyp=$P(R,D,4),$S(BasisTyp="H":Type=$P(R,D,5),1:1) Set Exist=1 .If Exist Do Quit ..New Kode ..Do STORE^vhTERMINA() ..Set Kode=$G(^FOLTEC("IT",0,Hoogte,Breedte,BasisTyp,$S(BasisTyp="D":$$FRONT^FOLTEC(Hoogte),1:Type))) ..For Next=1:1 Quit:'$D(^HULP(%J,Next)) Do Quit:$L(Kode) ...Set R=^HULP(%J,Next) ...If Hoogte=$P(R,D,2),Breedte=$P(R,D,3),BasisTyp=$P(R,D,4) Set Kode=$P(R,D) ..Do DISPLAY^vhScherm("FOLTECT","","","","KODE;BASISTYP;HOOGTE;BREEDTE;TYPE") ..Set FP=2201 ..Write @F,@F1 ..Do TXTL^vhINP("FOLTEC","MAATEXIST") ..Do REFRESH^vhTERMINA() ..Kill %SC ..Set X="" .Do ..New X,KLNr ..Set KLNr="" ..For Set KLNr=$O(^FOLTEC("IT",KLNr)) Quit:KLNr="" Do Quit:$L(Kode) ...Set Kode=$G(^FOLTEC("IT",KLNr,Hoogte,Breedte,BasisTyp,Type)) ...If Kode="",BasisTyp="H" Do ....Set Kode=$G(^FOLTEC("IT",KLNr,Hoogte,Breedte,BasisTyp,$S(Type="HR":"HL",1:"HR"))) ...If Kode="",BasisTyp="D" Do ....New Type ....For Type="D","L","T","M","V" Set Kode=$G(^FOLTEC("IT",KLNr,Hoogte,Breedte,BasisTyp,Type)) Quit:$L(Kode) ..Set Kode=$$TRIMN^vhRtn1(Kode) .Set:Kode="" Kode=KTemp .Set Kode=$$CHKKODE(Kode,BasisTyp,Type) .Do DISPLAY^vhScherm("FOLTECT","","","","KODE") Quit ; CHKKODE(Kode,BasisTyp,Type) New Extr1 If $L(Kode) Do .Set Extr1=$E(Kode) Set:Extr1?.N Extr1="" .Set Kode=$$TRIMN^vhRtn1(Kode) .If BasisTyp="D",Type="V" Set Kode=Kode_"V" .Set:BasisTyp="K" Kode=Kode_"F" .If BasisTyp="H","\HL\HR\"[(D_Type_D) Set Kode=Kode_$E(Type,2) .Set:BasisTyp="S" Kode=Kode_"P" .Set:BasisTyp="P" Kode=Kode_"E" .Set Kode=Extr1_Kode Quit Kode ; CHKPARM() New Check,Field Set Check="-" If BasisTyp="D" Do .If KLNr=1124,Type="V",$$FRONT^FOLTEC(Hoogte)="L",Dikte="",Ronding="" Quit .If Type=$$FRONT^FOLTEC(Hoogte),Dikte="",Ronding="" Quit .For Field="TYPE","DIKTE","RONDING" Do FIELD^vhScherm("FOLTECT",Field),DISPLAY^vhScherm("FOLTECT","","","",Field) .If Type'="V",Type'=$$FRONT^FOLTEC(Hoogte) Set Check="" If BasisTyp="K" Do .If Type="K",Dikte="",Ronding="" Quit .For Field="TYPE","DIKTE","RONDING" Do FIELD^vhScherm("FOLTECT",Field),DISPLAY^vhScherm("FOLTECT","","","",Field) If BasisTyp="H" Do .If "\HL\HR\"[(D_Type_D),Dikte="",Ronding="" Quit .For Field="TYPE","DIKTE","RONDING" Do FIELD^vhScherm("FOLTECT",Field),DISPLAY^vhScherm("FOLTECT","","","",Field) .Set:"\HL\HR\"'[(D_Type_D) Check="" If BasisTyp="S" Do .If Type="PS",Dikte="",Ronding="" Quit .For Field="TYPE","DIKTE","RONDING" Do FIELD^vhScherm("FOLTECT",Field),DISPLAY^vhScherm("FOLTECT","","","",Field) If BasisTyp="P" Do .If Type="EP",Dikte,Ronding Quit .Do FIELD^vhScherm("FOLTECT","TYPE"),DISPLAY^vhScherm("FOLTECT","","","","TYPE") .If 'Dikte Do FIELD^vhScherm("FOLTECT","DIKTE"),DISPLAY^vhScherm("FOLTECT","","","","DIKTE") .If 'Ronding Do FIELD^vhScherm("FOLTECT","RONDING"),DISPLAY^vhScherm("FOLTECT","","","","RONDING") .Set:'Dikte!'Ronding Check="" Set Kode=$$CHKKODE(Kode,BasisTyp,Type) Quit Check ; CHKAFM(Rubriek,BasisTyp,Hoogte,Breedte,Kleur) New Text Set Text="" If Rubriek="H" Do .If Hoogte<40 Set Text="De minimum hoogte is 40 mm" .Else Do ..If Hoogte>1000,Breedte>1000 Set Text="De maximum hoogte is 1000 mm" ..Else If Hoogte>2040 Set Text="De maximum hoogte is 2040 mm" If Rubriek="B" Do .If Breedte<40 Set Text="De minimum breedte is 40 mm" .Else Do ..If BasisTyp="R" Do ...If Breedte<294 Set Text="De minimum breedte is 294 mm" ...If Breedte>595 Set Text="De maximum breedte is 595 mm" ..Else Do ...If Breedte>1000,Hoogte>1000!($E(Kleur)="N") Do ....Set Text=$$^vhTXTPOP("FOLTEC","CHKAFMB"),Text=$S(Text:"",1:-1) ...Else If Breedte>1200 Set Text="De maximum hoogte is 1200 mm" Quit Text ; PRINT New PList If $D(sMod("N")) Quit:'$$SAVE(0) Do .Kill ^HULP(%J),sMod .Do FETCH,INIT^vhLIST("FOLTEC","FOLTECT"_$P("\M",D,MetPrijs+1),.List),WRITE^vhLIST(.List) Do INIT^vhLISTO("FOLTEC","FOLTECTP"_$P("\M",D,MetPrijs+1),.PList) Set PList(11)="Maatvoeringen\"_$P(^KKL(^KK1(KLNr),0),D,2) If MetPrijs Do .Set PList(11)=PList(11)_D_$$DISPSTR^vhPOPUP("P","FOLTEC;REEKS",$P(Reeks,D),"O") .Set PList(11)=PList(11)_" - "_$$DISPSTR^vhPOPUP("P","FOLTEC;KLEUR",$P(Kleur,D),"O") Set PList(10)="CB^FOLTECT" Set PList(1)=$NA(^HULP(%J)) Set PList(5)=75 Do PRINT^OUTPUT(.PList,"P") Quit ; CB(Ref) Quit:'$D(Ref) "" Quit:'$D(@Ref) "" Quit $S(@Ref="&S":"BR",1:"") ; PRIJS(KLNr,Reeks,Kleur,Rec) New Prijs,BasisTyp,Hoogte,Breedte,Type,Kode Set Prijs="" If MetPrijs Do .Set Kode=$P(Rec,D),Hoogte=$P(Rec,D,2),Breedte=$P(Rec,D,3),BasisTyp=$P(Rec,D,4),Type=$P(Rec,D,5) .Set Prijs=$$PRIJS^FOLTEC(,Reeks,Kleur,BasisTyp,Hoogte,Breedte,Type,Kode,KLNr) Quit Prijs ; LIST New TempList Merge TempList=List Kill TempList("FMT"),TempList("ID") Do INIT^vhLIST("FOLTEC","FOLTECT"_$P("\M",D,MetPrijs+1),.List) Merge List=TempList Do WRITE^vhLIST(.List) Quit ; SWITCH(Field) New %SC,Kode,BasisTyp,Hoogte,Breedte,Type,Dikte,Ronding,Fields,Next Set:'$D(Field) MetPrijs='MetPrijs If MetPrijs Do If '%SC,$L(Fields,D)>1 Set MetPrijs='MetPrijs .Do DISPLAY^vhScherm("FOLTECT") .Set Fields="REEKS\KLEUR" Set:$D(Field) Fields=Field .For Next=1:1 Set Field=$P(Fields,D,Next) Quit:Field="" Do ..Do FIELD^vhScherm("FOLTECT",Field) ..If '%SC Set Next=Next-2 Quit ..Do DISPLAY^vhScherm("FOLTECT",,,,Field) .Quit:'%SC .Set Reeks=$P(Reeks,D),Kleur=$P(Kleur,D) .Do DISPLAY^vhScherm("FOLTECT",,,,"REEKS;KLEUR") Do:'MetPrijs DISPLAY^vhScherm("FOLTECT") Do LIST Quit ; EPANEEL(Rec) New R Set R=$J("",6) Set:$P($P(Rec,D,6),";") R="d:"_$P($P(Rec,D,6),";")_"mm" Set:$P($P(Rec,D,6),";",2) R=R_" - r:"_$P($P(Rec,D,6),";",2)_"mm" Quit R ; EXPORT If $D(sMod) Quit:'$$SAVE(0) Do .Quit:'$D(sMod("N")) .Kill ^HULP(%J),sMod .Do FETCH,INIT^vhLIST("FOLTEC","FOLTECT",.List),WRITE^vhLIST(.List) Do STORE^vhTERMINA(),EXPKLANT^FOLTECIM(KLNr),REFRESH^vhTERMINA() Quit ; INIT Set %J=$$%J^vhRtn1() Kill ^HULP(%J) Set (Reeks,Kleur)="" Quit ; INITSCR New Activate,Rubriek Quit:'$L($G(KLNr)) If $D(MetPrijs) Do .If '$D(BasisTyp) Do ..If MetPrijs For Rubriek="REEKS","KLEUR" Do REMATTR^vhScherm(Rubriek,"H","HD") .Else Do ..Set Activate="" Set:MetPrijs Activate="\REEKS\KLEUR" ..For Rubriek="Kode","BasisTyp","Hoogte","Breedte","Type","Dikte","Ronding" Do ...Quit:'$D(@Rubriek) ...Set Activate=Activate_D_$$UPCASE^vhRtn1(Rubriek) ..Set $E(Activate)="" ..For Set Rubriek=$P(Activate,D) Quit:Rubriek="" Do ...Do REMATTR^vhScherm(Rubriek,"H","H"_$S("\REEKS\KLEUR\KODE\"[(D_Rubriek_D):"",1:"D")) ...Set Activate=$P(Activate,D,2,99) Quit ; NEXTID() New NextId Lock +^FOLTEC("N") Set NextId=^FOLTEC("N")+1,^FOLTEC("N")=NextId Lock -^FOLTEC("N") Quit $$FORMATID(NextId) ; FORMATID(NextId) If NextId>999 Set NextId=$C(55+(NextId\100))_$E(100+(NextId#100),2,3)_$E(NextId,5) Quit NextId ; CONVID Kill Do INIT^vhTERMINA Set KLNr="" For Set KLNr=$O(^FOLTEC("IT",KLNr)) Quit:KLNr="" Do .Set Hoogte="" .For Set Hoogte=$O(^FOLTEC("IT",KLNr,Hoogte)) Quit:Hoogte="" Do ..Set Breedte="" ..For Set Breedte=$O(^FOLTEC("IT",KLNr,Hoogte,Breedte)) Quit:Breedte="" Do ...Set BasisTyp="" ...For Set BasisTyp=$O(^FOLTEC("IT",KLNr,Hoogte,Breedte,BasisTyp)) Quit:BasisTyp="" Do ....Set Type="" ....For Set Type=$O(^FOLTEC("IT",KLNr,Hoogte,Breedte,BasisTyp,Type)) Quit:Type="" Do .....Set Kode=^FOLTEC("IT",KLNr,Hoogte,Breedte,BasisTyp,Type) .....Quit:Kode<1000 .....Set Rec=^FOLTEC("T",KLNr,Kode) .....Set NewKode=$$FORMATID(Kode) .....Write !,$zr,"=",Kode," - ",NewKode .....Kill ^FOLTEC("IT",KLNr,Hoogte,Breedte,BasisTyp,Type),^FOLTEC("T",KLNr,Kode) .....Set ^FOLTEC("IT",KLNr,Hoogte,Breedte,BasisTyp,Type)=NewKode .....Set ^FOLTEC("T",KLNr,NewKode)=Rec Quit ; BLDIND(KLNr,Kode) New R,Hoogte,Breedte,BasisTyp,Type Set KLNr=$G(KLNr),Kode=$G(Kode) If KLNr="" Do Quit .For Set KLNr=$O(^FOLTEC("T",KLNr)) Quit:KLNr="" Do BLDIND(KLNr) If Kode="" Do Quit .For Set Kode=$O(^FOLTEC("T",KLNr,Kode)) Quit:Kode="" Do BLDIND(KLNr,Kode) Set R=^FOLTEC("T",KLNr,Kode),Hoogte=$P(R,D),Breedte=$P(R,D,2),BasisTyp=$P(R,D,3),Type=$P(R,D,4) Set ^FOLTEC("IT",KLNr,Hoogte,Breedte,BasisTyp,Type)=Kode Quit ; DELIND(KLNr,Kode) New R,Hoogte,Breedte,BasisTyp,Type Set KLNr=$G(KLNr),Kode=$G(Kode) If KLNr="" Do Quit .For Set KLNr=$O(^FOLTEC("T",KLNr)) Quit:KLNr="" Do DELIND(KLNr) If Kode="" Do Quit .For Set Kode=$O(^FOLTEC("T",KLNr,Kode)) Quit:Kode="" Do DELIND(KLNr,Kode) Set R=^FOLTEC("T",KLNr,Kode),Hoogte=$P(R,D),Breedte=$P(R,D,2),BasisTyp=$P(R,D,3),Type=$P(R,D,4) Kill ^FOLTEC("IT",KLNr,Hoogte,Breedte,BasisTyp,Type) Quit ; CONVERT Kill Do INIT^vhTERMINA Set PartSize=$V(108,$J,4)/1024 Set %K=100 Do INT^cPARTSIZ Set KLNr="" For Set KLNr=$O(^FOLTEC("T",KLNr)) Quit:KLNr="" Do .Set Afm="" .For Set Afm=$O(^FOLTEC("T",KLNr,Afm)) Quit:Afm="" Do ..Set R=$TR(Afm,"0123456789x/",""),Hoogte=$P($TR(Afm,R,""),"x"),Breedte=$P($TR(Afm,R,""),"x",2) ..Set Type=$P(Afm,Hoogte_"x"_Breedte,2) ..Set R=^FOLTEC("T",KLNr,Afm),Kode=$P(R,D,2),BasisTyp=$P(R,D,3) ..Set:Type="" Type=BasisTyp,BasisTyp="D" Set:BasisTyp="V" BasisTyp="D" ..If BasisTyp="D","\M\V\"'[(D_Type_D) Set Type=$$FRONT^FOLTEC(Hoogte) ..Set foltec("T",KLNr,Kode)=Hoogte_D_Breedte_D_BasisTyp_D_Type_D Kill ^FOLTEC("IT"),^FOLTEC("T") Merge ^FOLTEC=foltec Do BLDIND() Kill foltec Set %K=PartSize Do INT^cPARTSIZ Quit ;