Home › Forum › Nuclos Konfiguration › Vorgänge und Objekte › Dynamische Entität kann nicht gespeichert werden
- Dieses Thema hat 7 Antworten und 4 Teilnehmer, und wurde zuletzt aktualisiert vor 11 Jahren, 8 Monaten von
Markus Glitzner.
-
AutorBeiträge
-
28 Dezember 2011 um 11:44 Uhr #4722
Markus Glitzner
TeilnehmerHallo!
Ich habe folgende dynamische Entität:
SELECT
T1."INTID" INTID,
ISNULL(T1."INTID_AUFTRAG", (SELECT INTID_AUFTRAG FROM V_EO_AUFTRAGSPOSITION WHERE INTID=T1.INTID_POSITION)) AS INTID_T_UD_GENERICOBJECT
FROM
V_EO_AUFTRAGSPOSITIONIm Anhang das Ergebnis der Vorschau und die Meldung beim Speichern.
Warum kann ich die dynmiasche Entität nicht speichern? Das Feld INTID_T_UD_GENERICOBJECT ist doch vorhanden und liefert auch die richtigen Werte.
Gruß
HugoAttachments:5 März 2012 um 22:37 Uhr #5135Ramin Goettlich
TeilnehmerTritt dieses Problem aktuell noch auf? Wir können das nicht reproduzieren.
6 März 2012 um 00:26 Uhr #5136Markus Glitzner
Teilnehmergeht immer noch nicht.
Dieses Beispiel hier wäre Datenbank- und Noclos unabhängig, vielleicht kann es damit reproduziert werden.
SELECT
INTID,
(SELECT INTID FROM T_MD_USER WHERE INTID=INTID_T_MD_USER) as INTID_T_UD_GENERICOBJECT
FROM
T_MD_ROLE_USER6 März 2012 um 12:58 Uhr #5139Matthias Haake
TeilnehmerHallo hugo,
mit ein bisschen umschreiben der Abfrage bekommt man es zum Laufen (getestet mit Nuclos 3.1.7):
select
data.INTID as INTID,
data.INTID_T_UD_GENERICOBJECT as INTID_T_UD_GENERICOBJECT
FROM
(
SELECT
u1.INTID,
(SELECT u2.INTID FROM T_MD_USER as u2 WHERE u2.INTID = u1.INTID_T_MD_USER) as INTID_T_UD_GENERICOBJECT
FROM
T_MD_ROLE_USER as u1
) as dataViele Grüße,
Matthias9 März 2012 um 16:31 Uhr #5178Thomas Pasch
TeilnehmerHallo Zusammen,
das ist ein Bug in Nuclos, den wir beseitigen werden. Vielen Dank für den Report!
Mit besten Grüßen
aanno
16 März 2012 um 18:23 Uhr #5256Matthias Haake
TeilnehmerHallo Hugo,
was mir im Nachhinein noch auffällt: in dem von Dir geposteten Beispiel wird die generierte View der Entität verwendet. Im „nuclos 3.2“ Thread wurde angekündigt, dass die Views aus Performancegründen wegfallen:
https://www.nuclos.de/index.php/de/forum/allgemeines-zu-nuclos/3871-nuclos-32?limit=6&start=12Wäre schade, wenn man alle dynamischen Entitäten überarbeiten müsste… vielleicht besser die Tabellen verwenden?
Viele Grüße,
Matthias16 März 2012 um 18:36 Uhr #5257Ramin Goettlich
TeilnehmerHallo,
die Views sollte man in dynamischen Entitäten aus zwei Gründen besser nicht verwenden:
a) Performance (die Views joinen ja einfach alle Referenzen rein, die wenigsten wird man in einer dynamischen Entität tatsächlich brauchen)
b) Postgresproblematik bzgl. der Aktualisierung von Datenbankobjekten. Postgres löscht immer alle abhängigen Objekte (ungefragt), d.h. ändert man eine Entität über den Entitätenwizard, sind Objekte (z.B. dynamische Entitäten), die auf der View der Entität beruhen, nach der Änderung weg.Der dritte Grund, dass die Views eliminiert werden, trifft zwar zu und das ist in 3.3 auch schon so umgesetzt, allerdings werden die Views momentan trotzdem bis auf Weiteres generiert (auch wenn Nuclos sie nicht mehr nutzt) – aus Gründen der Abwärtskompatibilität bzgl. z.B. dynamischer Entitäten, die man gemäss der obigen beiden Gründe aber ja sowieso umbauen sollte… In einer späteren Version werden wir die Generierung der Views dann aber auch einstellen – bis dahin hat man also noch Zeit für den Umbau 😉
Grüsse,
nuclosian16 März 2012 um 19:12 Uhr #5259Markus Glitzner
TeilnehmerDanke für die Info, nachdem die Views immer noch da sind, war ich der Meinung dass diese jetzt doch bleiben.
Die Views verwende ich aber sowieso nur, wenn ich die STRAVLUE Werte benötige, sonst nehme ich von Haus aus die Tabellen.
Dann muss ich wohl doch langsam mal zum umbauen beginnen.
-
AutorBeiträge