Search the FirstSpirit Knowledge Base
Hallo Community,
habe ein komisches Verhalten von FirstSpirit festgestellt und bin mir nicht sicher ob es sich um einen Bug oder ein gewolltes "Feature" handelt. Falls es kein Bug ist, bitte ich um Erklärung was der Hintergrund dieses Verhaltens ist.
Habe ein Datenbankschema mit 2 Tabellen (Termin und Datum des Termins) welche in einer 1 zu n Relation zueinander stehen.
Ein Termin kann an n-Tagen stattfinden.
In den Datenquellen ist es dann so, dass dem Termin ein oder mehrere Datumsdatensätez via "ID" zugewiesen werden.
Folgendes ist geschehen:
Ein Kunde von uns hat einen Termin mit einem dazugehörigen Datumsdatensatz angelegt.
Anschliessend hat er den Datumsdatensatz kopiert (in der Absicht ihn für einen anderen Datensatz zu verwenden). FirstSpirt hat automatisch die ID des neuen Datumswertes in die Liste der Fremdschlüssel-IDs bei dem bestehenden Termin eingefügt. Der User bekommt davon nichts mit!
Habt ihr das Problem auch schon festgestellt bzw. kann man dieses Verhalten unterdrücken?
Ich hoffe ihr könnt mir weiterhelfen!
Viele Grüße
Matthias Dichtl
PS: verwende FS 4
Hallo,
dieses Verhalten wurde intern bereits diskutiert und als "No Bug" eingestuft. (interne ID#53541).
Das Verhalten wurde so wegen eines Feature Requests, weil eben diese Referenzen nicht mit kopiert wurden.
Der Anwendungsfall war:
Es gibt News Artikel, welche mehrere Teaser referenziert haben. Beim Kopieren eines News Artikels waren die referenzierten Teaser im neuen Artikel nicht vorhanden.
Dies ist nun möglich, wenn es sich um eine aggregierende Referenz handelt.
Wurde auf der Referenz der Haken bei "Aggregation (Abhängiges Löschen/Freigeben)" gesetzt, oder nicht?
Ich habe das Thema nocheinmal unter der internen ID#132163 eröffnet, weil ich denke, dass das Verhalten zumindest für eine nicht aggregierende Referenz falsch sein könnte.
Viele Grüße
Rouven
Hallo,
vielen Dank für die Antwort.
Der Haken bei Aggregation wurde gesetzt, wonach es nach Ihrer Schilderung nach kein Bug sondern ein Feature ist.
Es mag vielleicht einen Anwendungsfall geben bei dem das Sinn macht, ich denke dass bei sehr vielen Fällen das jedoch zu unerwünschten Verhalten/Fehlern führt.
Da das Verhalten beim Kunden für Verwirrung sorgt möchte ich gerne eine Workaround umsetzen. Hierzu noch einmal 2 Fragen:
Viele Grüße
Matthias
Hallo,
Also gerade im umgekehrten Fall, wie oben beschrieben, ist es sinnvoll, dass die referenzierten Datensätze behalten werden. Aus Gründen der Einheitlichkeit wird es wohl mit Aggregation so bleiben.
Ob es im Fall ohne Aggregation geändert wird, bleibt abzuwarten.
Zu 1)
Das ist in diesem Beitrag beschrieben:
https://community.e-spirit.com/message/4342#4342
Zu 2)
Auf dem Reiter "Mapping" der jeweiligen Datenbankvorlage gibt es den Haken "Datensatz kopieren erlauben".
Viele Grüße
Rouven
Hallo,
das Ticket wurde gestern als "Kein Bug" eingestuft.
Wenn man das Verhalten ändern würde, hätte man nach dem Kopieren einen Datensatz, welcher nicht referenziert wird (im obigen Beispiel: Teaser ohne News), was auch nicht immer erwünscht sein mag.
Es können also beide Wege sinnvoll sein...
Wenn das Verhalten im konkreten Projekt anders sein muss, könnte man wie oben beschrieben die Kopierfunktion deaktivieren und dann einen Arbeitsablauf nutzen, welcher mithilfe eines Skripts die Datensätze kopiert und die Referenzen entfernt.
Viele Grüße
Rouven