Home Forum Nuclos Konfiguration Businessprozesse Dynamisches Businessobjekt – Details anzeigen

Ansicht von 7 Beiträgen - 1 bis 7 (von insgesamt 7)
  • Autor
    Beiträge
  • #9722
    Martin Rithos
    Teilnehmer

    Hallo,

    die Erstellung von dynamischen Businessobjekten stellt kein Problem dar und funktioniert wie gewünscht.

    Was ich allerdings noch nie hinbekommen habe ist der Aufruf des eines Datensatzes über die rechten Maustaste und „Details anzeigen“. Es erscheint jedes Mal die Fehlermeldung „org.nuclos.common2.exception.CommonFatalException: Entity with UID null does not exist.“

    Laut Wiki sollte dies gehen. Kann mir jemand auf die Sprünge helfen woran dies liegen könnte? Die komplette Logdatei hängt an.

    Vielen Dank im Voraus.

    Attachments:
    #9723
    Fry123
    Teilnehmer

    Die sql abfrage zu dem DYN wäre hilfreich.

    #9724
    Martin Rithos
    Teilnehmer

    Foglend ein Beispiel. Das DYN zeigt Bestellungen an, in dem der Artikel enthalten ist. Sobald ich „Details anzeigen“ möchte, geht das Artikel-Tab zu und die besagte Fehlermeldung erscheint.

    SELECT
    T2."intid" intid,
    T1."intid" INTID_T_UD_GENERICOBJECT,
    T3."strauftragsnummer" "auftragsnummer",
    T3."strbestellnummer" "bestellnummer"
    FROM
    s36f_artikel T1
    INNER JOIN s36f_bestellpositionen T2 ON T1.intid = T2.intid_strartikel
    LEFT OUTER JOIN s36f_bestellungen T3 ON T2.intid_strref = T3.intid

    #9732
    Fry123
    Teilnehmer

    [quote=“priorditch“ post=9434]
    SELECT
    T2."intid" intid,
    T1."intid" INTID_T_UD_GENERICOBJECT,
    T3."strauftragsnummer" "auftragsnummer",
    T3."strbestellnummer" "bestellnummer"
    FROM
    s36f_artikel T1
    INNER JOIN s36f_bestellpositionen T2 ON T1.intid = T2.intid_strartikel
    LEFT OUTER JOIN s36f_bestellungen T3 ON T2.intid_strref = T3.intid
    [/quote]

    SELECT
    T2."intid" INTID_T_UD_GENERICOBJECT,
    T1."intid" INTID,
    T3."strauftragsnummer" "auftragsnummer",
    T3."strbestellnummer" "bestellnummer"
    FROM
    s36f_artikel T1
    INNER JOIN s36f_bestellpositionen T2 ON T1.intid = T2.intid_strartikel
    LEFT OUTER JOIN s36f_bestellungen T3 ON T2.intid_strref = T3.intid

    das Feld INTID muss die ID des BOs enthalten das mit „details“ angezeigt werden soll.

    #9748
    Martin Rithos
    Teilnehmer

    Das dynamische Businessobjekt zeigt als Subform eines Artikels an, in welchen Bestellungen dieser Artikel vorkam. Von daher müsste ich die SQL-Abfrage dann wohl wie folgt ändern?


    SELECT
    T3."intid" intid,
    T1."intid" INTID_T_UD_GENERICOBJECT,
    T3."strauftragsnummer" "auftragsnummer",
    T3."strbestellnummer" "bestellnummer"
    FROM
    s36f_artikel T1
    INNER JOIN s36f_bestellpositionen T2 ON T1.intid = T2.intid_strartikel
    LEFT OUTER JOIN s36f_bestellungen T3 ON T2.intid_strref = T3.intid

    Nun erscheint in dem Sinne kein Fehler mehr sondern folgende Meldung:

    Artikel mit id 40009435 kann nicht gefunden werden (eventuell besitzen Sie keine Leseberechtigung oder er wurde zwischenzeitlich von einem anderen Benutzer gelöscht.)

    Warum Artikel? Ein Artikel ist bereits geöffnet und ich möchte die dazugehörige, aufgelistete Bestellung aufrufen?

    #9751
    Martin Rithos
    Teilnehmer

    Niemand eine Idee? 🙁

    #9755
    Dieter Mennig
    Teilnehmer

    Hi priorditch,

    hier mal ein Beispiel. Ich habe ein dynamisches BO erstellt, das mir alle Aufträge eines Geschäftspartners ausgibt. Im BO Geschäftspartner habe ich ein Unterformular Aufträge, das mit diesem dynamischen BO verknüpft ist.

    Das dynamische Businessobjekt hat beim BO Auftrag die INTID und beim BO Partner die INTID_T_UD_GENERICOBJECT (siehe dazu auch die screenshots). Wenn ich nun einen Geschäftspartner öffne, werden im Unterformular Aufträge die zugehörigen Aufträge gelistet. Mit Details anzeigen wird – voila – der Auftrag geöffnet.

    Schau dir auch mal die SQL Abfrage an. Wie Fry123 schon geschrieben hat, muss das Feld INTID die ID des BOs enthalten, das mit „Details anzeigen“ geöffnet werden soll. So wie ich das sehe musst du deine FROM anpassen.

    Hope this helps.

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