1 TECH.ClassInfo.QNameFinder 62168,50420.352489 62161,32256.917774 0 svn.Helper 1 1 %Status Do ##class(Tools.MoveClass).%New().Move("zTryout.CSC.TestKlas3","zTryout.CSC.TestKlas2") ClassFrom:%String,ClassTo:%String 0) { Do Berichten(Class.GeefNaam()).Insert("In de method "_Method.GeefNaam()_" "_i_" keer gebruikt") Do Commands.Insert(##class(Tools.impl.RenameImplementationCommand).%New(Lijnen, Method)) Do ClassesToSave.SetAt(Class,Class.GeefNaam()) } } } } w "Volgende items zullen hernoemd worden:",!! Set Klasse = $Order(Berichten("")) While (Klasse '= "") { If (Berichten(Klasse).Count() > 0) { w "In klasse "_Klasse_":",! Set Iterator = ##class(TECH.ListIterator).%New(Berichten(Klasse)) While (Iterator.HasNext()) { w $J(" ",4)_"- "_Iterator.Next(),! } } Set Klasse = $Order(Berichten(Klasse)) } If (##class(%Dictionary.ClassDefinition).%ExistsId(ClassTo)) { w !,"WAARSCHUWING: "_ClassTo_" bestaat reeds en zal worden overschreven!",! } Set Input = "" While (Input '= "Y") && (Input '= "N") { w !,"Wilt u deze acties uitvoeren? (Y/N)",! read Input } If (Input = "Y") { w !!,"Uitvoeren van de acties:",!! If (##class(%Dictionary.ClassDefinition).%ExistsId(ClassFrom)) { Do ##class(%Dictionary.ClassDefinition).%DeleteId(ClassTo) Set CommandIterator = ##class(TECH.ListIterator).%New(Commands) While (CommandIterator.HasNext()) { Set Command = CommandIterator.Next() w $J(" ",4)_"- " Set Status = Command.Execute() w ! If ($$$ISERR(Status)) w $J(" ",6)_"Fout: "_$$ParseStatus^vhLib(Status),! } Set ClassesIterator = ##class(TECH.ListIterator).%New(ClassesToSave) While (ClassesIterator.HasNext()) { Set Class = ClassesIterator.Next() w $J(" ",4)_"- Opslaan "_Class.GeefNaam(),! Set Status = Class.Save() If ($$$ISERR(Status)) w $J(" ",6)_"Fout: "_$$ParseStatus^vhLib(Status),! Else Do ..ExportToSVN(Class.GeefNaam()) } Set ClassFromDefinition = ##class(%Dictionary.ClassDefinition).%OpenId(ClassFrom) w $J(" ",4)_"- Klasse verplaatsen...",! // De klasse mag pas op het einde van alle acties verplaatst worden, dit is nodig als er zich in de te verplaatsen // klasse een referentie is naar zichzelf, anders wordt deze niet hernoemd. Set Clone = ClassFromDefinition.%ConstructClone(1) Set Clone.Name = ClassTo Set Status = Clone.%Save() If ($$$ISERR(Status)) w $J(" ",6)_"Fout: "_$$ParseStatus^vhLib(Status),! Else Do ..ExportToSVN(Clone.Name) Set Input = "" While (Input '= "Y") && (Input '= "N") { w !,"Wilt u de klasse "_ClassFrom_" definitief verwijderen? (Y/N)",! read Input } If (Input = "Y") { Set Status = ##class(%Dictionary.ClassDefinition).%DeleteId(ClassFrom) If ($$$ISERR(Status)) w $J(" ",6)_"Fout: "_$$ParseStatus^vhLib(Status),! Else Do ..DeleteFromSVN(ClassFrom) } Do ..svnHelper.CompileImportedSourceCode() } Else { If (Result '= "") w $J(" ",6)_"Fout: "_ClassFrom_" bestaat niet!",! } } ]]> Class:TECH.ClassInfo.ClassDefinition,String:%String,Prefix:%String,Suffix:%String,Search:%String,Replace:%String 1 %String Classname:%String 1 Classname:%String 1