Wichtig
#27590
Export der Dokumentation aus der Anwendung in den Workspace erzeugt unnötige Änderungen
Wenn die Dokumentation aus der Anwendung in den Workspace exportiert wird, erzeugt das unnötige Änderungen gegenüber der Version aus dem Repository.
Hintergrund
Diese Änderungen sind im Wert des HTML Attributes data-custom. Dieses Attribut dient dazu zu speichern, ob der Label eines Links auf ein tl:TLObject angepasst wurde, oder dem standard Label des TLObjects entspricht. Dadurch kann das System die Labels der Links automatisch anpassen, wenn sich das Label der TLObjects ändert.
Analyse
Wird eine Anwendung das erste Mal gestartet, importiert sie die Dokumentation (aus dem Workspace). Wird die Dokumentation anschließend exportiert, enthält sie direkt Änderungen in diesem Attribut. Ursache ist, dass beim Speichern eines neuen Wertes die Labels der Links geprüft werden, ob sie dem Label des TLObjects entsprechen, auf das sie zeigen. Auch der Import führt natürlich eine Speicherung dieser Werte durch. Während des Imports existiert das TLObject aber eventuell noch gar nicht, oder nur in anderen Sprachen. Daher wird das falsche Label ausgerechnet und der Vergleich ergibt den falschen Wert. Dadurch kommt es zu diesen Änderungen, die beim Export sichtbar werden.
Lösung
Das zu beheben, würde den Code für dieses Attribut noch komplexer machen. Gleichzeitig ist das automatische Update der Labels sowieso nicht ausreichend, da das Label des Links auch an die grammatikalische Position im Satz angepasst werden muss. Daher müssen die Links auf ein TLObject nach einer Änderung seines Labels sowieso überprüft werden. Deswegen lohnt sich die Komplexität nicht, die durch dieses Feature erzeugt wird. Daher wird es entfernt.
Test
- Das Anzeigen und Bearbeiten der Dokumentation funktioniert.
- Links auf TLObjects funktionieren und können angelegt werden.
- Nach einem Export der Dokumentation, egal in welcher Anwendung und von welchem Stand, gibt es keine Änderungen an data-custom Attributen. (Aber eventuell andere Änderungen, die nichts mit data-custom Attributen zu tun haben.)