0

popupRecord bei neuangelegten Datensätzen funktioniert in der App nicht jedoch in der Browser-Version

Hallo NINOX-Entwickler,

mit dem folgenden Code suche ich in einer Tabelle DatumTab im Feld Datum ein bestimmtes Datum (welches im Feld Ausgabe steht). Wenn es noch keinen entsprechenden Datensatz gibt, soll dieser angelegt werden. In beiden Fällen soll der Datensatz in einem popup-Fenster angezeigt werden. Leider funktioniert dieser letzte Schritt im Browser nur für bereits vorhandene Datensätze. In der App wird der Code für beide Fälle wie erwartet ausgeführt.

Mache ich hier etwas falsch oder könnte dies ein CR sein?

let myDate := Ausgabe;
if myDate > 0 then
let myRec := first((select TabDatum)[Datum = myDate].Nr);
if number(myRec) > 0 then
popupRecord(record(TabDatum,myRec))
else
let myRecNew := (create TabDatum);
myRecNew.(Datum := myDate);
popupRecord(record(TabDatum,myRecNew.Nr))
end
end

 

Vielen Dank und beste Grüße 

Jörg

4 Antworten

null
    • Leonid_Semik
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Hallo JÖrg,

    wenn das ein Trigger nach Änderung ist, dann wirst du in der Web Version kein Glück haben. In der Web werden die Befehle popupRecord  und openRecord nur als Button-Formel ausgeführt. Versuch deine Formel in einem Button zu auszuführen.

    Ich hatte vorgeschlagen ähnich wie "do as server" einen Befehl "do as client" zu erstellen, so dass die Interaktionen in der Web als client ausgeführt werden. Scheint aber nicht so leicht umsetztn zu sein.

    Leo

    • jmbrenn_webde
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Hallo Leo,

     

    besten Dank für Deine Antwort - leider ist mein Code schon an einen Button gekoppelt ... :-(

    Einen schönen Wochenausklang für Dich und viele Grüße aus Thüringen

     

    Jörg

    • Leonid_Semik
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Hallo Jörg,

    dann vielleicht so:

    ---

    let myDate := Ausgabe;
    if myDate > 0 then
    let myRec := first((select TabDatum)[Datum = myDate].Nr);
    if number(myRec) > 0 then
    popupRecord(record(TabDatum,number(myRec)))
    else
    let myRecNew := (create TabDatum);
    myRecNew.(Datum := myDate);
    popupRecord(record(TabDatum,number(myRecNew.Nr)))
    end
    end

    ---

    Manchmal braucht popup eine Zahl als ID.

    Grüße

    Leo

    • jmbrenn_webde
    • vor 6 Jahren
    • Gemeldet - anzeigen

    Hallo Leo,

     

    ganz herzlichen Dank für Dein Engagement, mir zu helfen!

    Mit dem number war der entscheidende Hinweis. Jetzt werden auch die neu über das Script erzeugten Datensätze sofort angezeigt, bei bereits vorhandenen funktioniert popupRecord ohne die explizite Typkonvertierung.

    Mit vielen Grüßen 

    Jörg

Content aside

  • vor 6 JahrenZuletzt aktiv
  • 4Antworten
  • 2486Ansichten