Home Forum Nuclos Konfiguration Maskenlayouts abhängiges Subform funktioniert nicht

Ansicht von 4 Beiträgen - 1 bis 4 (von insgesamt 4)
  • Autor
    Beiträge
  • #7995
    Thomas Hempel
    Teilnehmer

    Hallo,

    ich habe ein Layout Geschäftspartner mit einem Subform Standort und abhängigem Subform Kontakt. Leider funktioniert es nicht und ich finde den Fehler nicht. Die bemängelte Spalte STRstandortname ist inder Datenbank vorhanden.

    Ein Fehler ist aufgetreten.
    executeQuery(SELECT t.INTID INTID, t.DATCREATED DATCREATED, t.STRCREATED STRCREATED, t.DATCHANGED DATCHANGED, t.STRCHANGED STRCHANGED, t.INTVERSION INTVERSION,
    t.INTID_STRREFSTANDORT INTID_STRREFSTANDORT, CASE WHEN (t.INTID_STRREFSTANDORT IS NOT NULL) THEN CASE WHEN CAST(a_refstando174.STRkurzname AS
    VARCHAR(255)) IS NOT NULL THEN CAST(a_refstando174.STRkurzname AS VARCHAR(255)) ELSE '' END + ' ' + CASE WHEN CAST(a_refstando174.STRstandortname AS
    VARCHAR(255)) IS NOT NULL THEN CAST(a_refstando174.STRstandortname AS VARCHAR(255)) ELSE '' END ELSE NULL END STRVALUE_STRrefstandort, t.STRtitel
    STRtitel, t.STRanrede STRanrede, t.STRabteilung STRabteilung, t.INTID_STRREFPRIVATADRESSE INTID_STRREFPRIVATADRESSE, CASE WHEN (t.INTID_STRREFPRIVATADRESSE
    IS NOT NULL) THEN CASE WHEN (a_refprivat170.INTID_STRPLZ IS NOT NULL) THEN CASE WHEN CAST(a_refprivat175.STRplz AS VARCHAR(255)) IS NOT NULL THEN
    CAST(a_refprivat175.STRplz AS VARCHAR(255)) ELSE '' END + ' ' + CASE WHEN CAST(a_refprivat175.STRort AS VARCHAR(255)) IS NOT NULL THEN CAST(a_refprivat175.STRort
    AS VARCHAR(255)) ELSE '' END ELSE NULL END + ', ' + CASE WHEN CAST(a_refprivat175.STRstrasse AS VARCHAR(255)) IS NOT NULL THEN CAST(a_refprivat175.STRstrasse
    AS VARCHAR(255)) ELSE '' END ELSE NULL END STRVALUE_STRrefprivatadresse, t.STRvorname STRvorname, t.STRnachname STRnachname,
    t.STRNUCLOSSYSTEMID STRNUCLOSSYSTEMID, t.STRUID_NUCLOSPROCESS STRUID_NUCLOSPROCESS, a_nuclosPro171.STRPROCESS STRVALUE_NUCLOSPROCESS, t.STRNUCLOSORIGIN
    STRNUCLOSORIGIN, t.BLNNUCLOSDELETED BLNNUCLOSDELETED, t.STRUID_NUCLOSSTATE STRUID_NUCLOSSTATE, a_nuclosSta172.STRSTATE STRVALUE_NUCLOSSTATE, a_nuclosSta173.INTNUMERAL
    INTVALUE_NUCLOSSTATE FROM DEF_KONTAKT AS t LEFT OUTER JOIN DEF_STANDORT a_refstando169 ON (t.INTID_STRREFSTANDORT = a_refstando169.INTID)
    LEFT OUTER JOIN O181_PARTNER a_refstando174 ON (a_refstando169.INTID_STRREFPARTNER = a_refstando174.INTID) LEFT OUTER JOIN DEF_ADRESSE
    a_refprivat170 ON (t.INTID_STRREFPRIVATADRESSE = a_refprivat170.INTID) LEFT OUTER JOIN DEF_POSTLEITZAHL a_refprivat175 ON (a_refprivat170.INTID_STRPLZ
    = a_refprivat175.INTID) LEFT OUTER JOIN T_MD_PROCESS a_nuclosPro171 ON (t.STRUID_NUCLOSPROCESS = a_nuclosPro171.STRUID) LEFT OUTER JOIN T_MD_STATE
    a_nuclosSta172 ON (t.STRUID_NUCLOSSTATE = a_nuclosSta172.STRUID) LEFT OUTER JOIN T_MD_STATE a_nuclosSta173 ON (t.STRUID_NUCLOSSTATE = a_nuclosSta173.STRUID)
    WHERE (1=1 AND 1=1 AND 1=1 AND 1=1 AND 1=1 AND 1=1 AND 1=1 AND (t.INTID_STRREFSTANDORT = ? AND t.BLNNUCLOSDELETED = ?))) failed

    Ungültiger Spaltenname 'STRstandortname'.

    Danke für alle Tipps!

    #7996
    Frank Pavlic
    Teilnehmer

    Hallo Thomas,
    was genau funktioniert nicht ? Kannst Du keine Datensätze anlegen? Oder speichert nuclos schon das Layout nicht?

    Gruß
    Frank

    #8000
    Thomas Hempel
    Teilnehmer

    Hallo Frank,

    die Fehlermeldung erschien beim Aufrufen des Layouts, Datensätze im abhängigen Subform wurden nicht gespeichert.

    Inzwischen habe ich festgestellt, dass auch des BO Kontakt mit seinem eigenen Formular keinen Datensatz anlegen konnte. Ich habe also das BO geändert, bis es funktionierte, wobei ich nur Vermutungen über die Ursachen habe. Ich tippe auf Namenskonflikte oder ID-Probleme. Ich habe den betroffenen Tabellen eine eindeutige Autonummer hinzugefügt (Auf die ich nach nuclos-Philosophie eigentlich verzichten sollte) und ich habe Referenzfelder mit neuen Namen (unterschiedlich) neu angelegt.

    Wie auch immer – es geht jetzt!

    Vielen Dank

    #8018
    Thomas Hempel
    Teilnehmer

    Eigentlich ging es dann doch nicht. Erst der Novabit-Support hat mir auf die Sprünge geholfen. Für alle Mitleser hier eine kurze Analyse:

    Relationen:
    Partner 1:n Standort
    Standort 1:n Adresse
    Standort 1:n Kontakt

    Zustand nach meiner Selbsthilfe war: Layout wurde angezeigt, aber in allen Subforms ließen sich keine Datensätze anlegen.

    Ursache: In den abhängigen Entitäten waren zu viele eindeutige Schlüssel. Nuclos erkennt die logischen Insert-Sperren und deaktiviert (leider kommentarlos) den Anlegen-Button.

    Mein krassester Fehler war im Standort. Dort war Standortname als eindeutig definiert. Als Default war Hauptsitz eingestellt. Beim Import der Bestandsdaten habe ich für jeden Partner einen Hauptsitz angelegt. Damit konnten keine weiteren Standorte angelegt werden, da der Default eine Schlüsselverletzung auslöste.

    Meine Selbsthilfe hatte das eher verschlimmert, da ich Eindeutigkeiten hinzu gefügt hatte.

    Nach Entfernen der Autonummern und Schlüssel ging es dann.

    Nuclos führt für jedes BO den notwendigen eindeutigen Schlüssel als INTID im Hintergrund. Weitere benitzerdefinierte Eindeutigkeiten bilden einen gemeinsamen zusätzlichen Schlüssel.

    Gruß
    Thomas

Ansicht von 4 Beiträgen - 1 bis 4 (von insgesamt 4)