Wichtig
Detail
Fehlerbehebung
Wichtig
Detail
#26382
Fehlermeldungen "Duplicate tag name..." beim Starten einer Anwendung in der IDE aus einem TL-Studio
#26402
Modell Editor: Diagramm: Fehler beim Ziehen einer Klasse aus einem anderen Modul ins eigene Arbeitsblatt
#26405
TTypeRewriter loggt Warnung "Unable to resolve items by external reference" auch unnötigerweise
#26431
Geänderte Oberklassenbeziehung führt erst nach Neustart zu geänderter Attributliste im Formulareditor
#26446
Generische Formulare: Sichtbarkeitsanpassungen überschriebener Attribute werden nicht berücksichtigt.
Verbesserung
Detail
#26398
Automatisiertes Erstellen von TableInterfaces abschaffen
Für jede Datenbank Tabelle wird eine tl:TLClass, ein Table-Interface angelegt und alle !TLClass die in diese Tabelle speichern, bekommen diese Tabelle als Generalisierung gesetzt.
Dies soll nicht mehr sein.
Code-Migration
- Modell-Referenzen auf tl.tables müssen durch Referenzen auf "echte" Modellelemente ersetzt werden.
- Ersetzen von Modell-Referenzen:
- tl.tables:ExternalReferenceTableInterface => Ticket:ExternalReference
- tl.legacy.tabletypes:ExternalReferenceTable => Ticket:ExternalReference
- tl.tables:ActivityTableInterface => RiskItems:Activity
- tl.tables:ApproachingCurveTableInterface => ApproachingCurveStructure:ApproachingCurveType
- tl.tables:AssignedGoalTableInterface => AssignedGoals:AssignedGoal
- tl.tables:CommitteeTableInterface => CommitteeStruct:Committee
- tl.tables:CostTypeTableInterface => costStructure:CostAreaChild
- tl.tables:CostUnitTableInterface => costStructure:CostUnit.internal
- tl.tables:DecisionMemoTableInterface => Decisions:DecisionMemo
- tl.tables:ExportTemplatePlaceholderTableInterface => posElement:ExportTemplatePlaceholder
- tl.tables:ExportTemplateTableInterface => posElement:ExportTemplate
- tl.tables:FinalReportTableInterface => FinalReports:FinalReport
- tl.tables:GovernedTaskTableInterface => GovernedObjects:GovernedTask
- tl.tables:KPGroupTableInterface => KPI:KPI.Group
- tl.tables:MeetingTableInterface => Meetings:Meetings.all
- tl.tables:MilestoneTableInterface => Milestones:Milestones.all
- tl.tables:OrgUnitTableInterface => orgStructure:OrgUnit.base
- tl.tables:ProgramTableInterface => Programs:Program
- tl.tables:ProjectResultTableInterface => FinalReports:ProjectResult
- tl.tables:ProjectTableInterface => projElement:Project
- tl.tables:ScenarioTableInterface => ScenarioStruct:Scenario.all
- tl.tables:StatusReportDetailTableInterface => StatusReports:StatusReportDetail
- tl.tables:StatusReportTableInterface => StatusReports:StatusReport
- tl.tables:SubprojectTableInterface => projElement:Subproject
- tl.tables:TagTableInterface => Tag:Tag
- tl.tables:TargetProductTableInterface => Programs:TargetProduct
- tl.tables:TemplateActivityTableInterface => projectTemplate:Activity
- tl.tables:TemplateMilestoneTableInterface => projectTemplate:projectTemplate.Milestone
- tl.tables:WorkpackageTableInterface => projElement:Workpackage
- tl.tables:ObjectTableInterface => tl.model:TLObject oder besser durch etwas spezielleres
- Referenzen auf andere Klassen in "tl.tables" müssen durch sinnvolle Alternativen ersetzt werden. Die konservative Migration wäre zu schauen welche TLClasses in die entsprechende Tabelle (und Ableitungen) schreiben und den gemeinsamen Obertyp wählen.
- Wurden Modell-Dateien aus der Basis überschrieben müssen Änderungen dort nachgezogen werden.
Data-Migration
Wurden obige Code-Änderungen in eigenen Modell-Dateien vorgenommen, so muss ein Migrations-Skript erstellt werden, das diese Änderungen in der Datenbank vornimmt. Hier kann man sich z.B. an dem Skript. /com.top_logic.project.pos/webapp/WEB-INF/kbase/migration/tl-pos/Ticket_26398_remove_table_interfaces.migration.xml orientieren.
Test
Refactoring Kein Test.