0

Tabelleneinstellung "Nach Änderungen folgendes Skript ausführen" bei Dateianhängen

Hallo

In der Tabelleneinstellung gibt es den Punkt "Nach Änderungen folgendes Skript ausführen", welcher sich auf den einzelnen Datensatz der Tabelle bezieht.

Das klappt auch ganz gut, wenn man im Datensatz etwas ändert und per Skript daraus   eine weitere Aktion auslösen möchte.

Ich habe festgestellt, das diese Funktion sich jedoch nicht auf die zum Datensatz zugehörigen Dateianhänge bezieht.

Wenn dort Veränderungen (Neu oder Löschen) passieren, wird die Skriptabhängigkeit ignoroert.

Bsp; Farbfeld im Datensatz, welches per Skript eine Farbe setzt wenn mindest. ein Attachment abgespeichert ist,

if number(cnt(files(this))) >0 then
Farbfeld := color(0, 255, 0)
else
Farbfeld := color(255, 255, 255)
end

Wenn per REST-API ein Attachment hochgeladen wird funktioniert es nicht.

Wenn per REST-API im Datensatz etwas geändert wird, funktioniert es.

Man könnte sich behelfen mit einem Zusatzfeld, welches nach Upload des Attachment mit einem Wert geändert wird.

Das ist aber nicht Ninox-Like für mich.

Sollte das als ChangeRequest agestossen werden oder habe ich hier eine falsche Denke im Ansatz?

Gruss

UweG

9 Antworten

null
    • Birger_H
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Das wäre ein Change Request, ja. Der Workaround gefällt mir aber auch :-)

    Birger

    • Torsten_Stang.1
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Würde ein (verstecktes) Funktionsfeld cnt(files(this)) sich nicht ändern, wenn ein Attachement hochgeladen wird?

     

    lg, Torsten

    • Birger_H
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Änderungen in einem Funktionsfeld lösen den Trigger nicht aus.

    Birger

    • Torsten_Stang.1
    • vor 4 Jahren
    • Gemeldet - anzeigen

    OK, schade ;-)

     

    lg, Torsten

    • Leonid_Semik
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Also, ich habe eine Anwendung, wo jeder Datensatz ein Bildfeld-"Produktbild" hat und die Anwender noch dazu die Anhänge machen dürfen. Ich habe ein Funktionsfeld mit der Formel:

    ---

    let my := files(this);
    let myF := Produktbild;
    let myCNT := cnt(my) - if myF then 1 else 0 end;
    if myCNT = 1 then myCNT + " Anhang: " else myCNT + " Anhänge: " end + concat(for i in my do
    if i != myF then
    let myT := text(i);
    myT := substr(myT, index(myT, "/") + 1);
    myT
    end
    end)

    ---

    und die Sichtbarkeit des Funktionsfeldes:

    ---

    let my := files(this);
    let myF := Produktbild;
    let myCNT := cnt(my) - if myF then 1 else 0 end;
    myCNT > (> 0)

    ---

    Und das ganze sieht dann so aus:
    Anmerkung 2019-09-03 141041

    Grün habe ich jetzt in den Feldeigenschaften ausgewählt. Fielleicht hilft's hier weiter.

     

    Leo

    • UweG
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Alle.

    Danke für die Antworten.

    Zu Torsten: Das hatte ich auch zum Anfang probiert. Aber wie Birger sagte, bringt ein Funktionsfeld nichts.

    Zu Birger: Kannst du die Anforderung im ChangeRequest bitte Anstossen?

    Zu Leo: Deeinen Ansatz werde ich mal ausprobieren.

    Wie gesagt ich ändere die Dateianhänge per Node-Red nur über die REST-API und fasse den Datensatz aus Ninox heraus nicht an.

    Gruss

    UweG

    • Torsten_Stang.1
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Uwe,

     

    warum das Farbfeld nicht direkt als Funktionsfeld?

     

    if cnt(files(this)) >0 then
       styled("",color(0,255,0))
    else
       styled("",color(255,255,255))
    end

     

    lg, Torsten

    • UweG
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Torsten

    Deine Idee das Funktionsfeld zu nutzen für die Farbdarstellung funktioniert für Übertragungen über die Rest-API.

    Das klappt jetzt mit meinem Node-Red Flow ganz gut.

    Einzig muss ich dann bei der Tabellenansicht den Aktualisierungsknopf betätigen, damit die Änderungen in der Tabelle auch sichtbar werden. Weisst du ob da einen Script-Befehl existiert, der die Aktualisierung ausführt.

    Gruss

    UweG

    • Torsten_Stang.1
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hallo Uwe,

     

    das geht meines Wissens nach leider (noch) nicht... :-/

     

    lg, Torsten

Content aside

  • vor 4 JahrenZuletzt aktiv
  • 9Antworten
  • 1948Ansichten