0

Frage zum Befehl popupRecord(recordId)

Ich habe keine Frage zum Befehl popupRecord(recordId)

popupRecord(recordId) - opens the record in a popup form without switching to another table
popupRecord(record(Invoices, 1))

Das hier funktioniert - öffnet den Datensatz 33 in der ANWESENHEITSPLANUNG:

popupRecord(record(ANWESENHEITSPLANUNG,33)) 

Jetzt möchte ich aber nicht die 33 fest vorgeben, sondern die Zahl der heute aktuellen Woche einsetzen.

Das hat alles nicht geklappt:

popupRecord(record(ANWESENHEITSPLANUNG,week)) 

popupRecord(record(ANWESENHEITSPLANUNG,number'week'))

popupRecord(record(ANWESENHEITSPLANUNG,number(week(today)))

popupRecord(record(ANWESENHEITSPLANUNG,number(week))

Wie geht die Syntax richtig, kann mir da jemand helfen?

 

Viele Grüße

Oliver

6 Antworten

null
    • OliverS
    • vor 5 Jahren
    • Gemeldet - anzeigen

    Hell yeah, ich hab es gefunden:

    number(week(today()))

     

    Also:

    popupRecord(record(ANWESENHEITSPLANUNG,number(week(today()))))

    • Josef_Koenig
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Ich habe da noch eine ergänzende Frage:

    Ich möchte einen Datensatz mit Passwort schützen. 
    Als Vorbereitung dafür benötige ich einen eindeutigen Wert für diesen Datensatz; diesen kann ich mit raw(Nr) auslesen. Beim Versuch, den Datensatz mit popupRecord zu öffnen, scheitere ich:

    let x := number(select PASSWORTGESCHUETZTE_Tabelle where raw(Nr) = "X4")
    popupRecord(record(PASSWORTGESCHUETZTE_Tabelle,number(x)))

    x sollte hier die laufende Nummer der Zeile in der Tabelle auslesen.
    Die in Ninox links mitlaufende Nummer scheint sich nämlich ständig ändern zu können, eindeutig ist nur raw(Nr) - aber das hingegen ist wiederrum keine Nummer, sondern eine Kombination aus Buchstaben und Ziffern.

    • mirko3
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Hi Joseph. Die links mitlaufende Nr ist nicht die Datensatznummer, sondern nur eine fortlaufende Spaltenbezeichnung. Wenn Du mal eine neue Spalte als Funktion einfügst und dort Nr oder number(Nr) einträgst bekommst Du die Datensatznummer und diese ändert sich nicht. Wenn sie gelöscht wird, wird sie nicht neu vergeben. Damit es keine Verwirrungen gibt bei verschiedenen Tabellen in einer Datenbank, habe diese (versteckt) noch einen Buchstaben als Tabellenbezeichnung, den Du mit raw() demaskieren kannst. Kurz und gut. Der Code für den Datensatz 4 könnte einfach so lauten:
     

    popupRecord(record(PASSWORTGESCHUETZTE_Tabelle,4)
      • Josef_Koenig
      • vor 2 Jahren
      • Gemeldet - anzeigen

      MZ Vielen Dank, Mirko!
      Das ist ein sehr wichtiger Hinweis! D.h., es gibt ...

      • raw(Nr) ... die Bezeichnung der Tabelle und des Datensatzes
      • number(Nr) ... die Datensatznummer
      • die links mitlaufende Nummer, die sich aber ändern kann und die man daher nicht im Code verwenden soll
    • mirko3
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Jep. Nur Ergänzung. Es gibt auch "Nr" pur. Das ist ein Textzeichen des Datensatzes ohne dem Zeichen für die Tabelle. Wenn man damit rechnen will (gib den vorletzten Datensatz) muß man es mit "number" in einen Integer umwandeln. Man macht meist nichts falsch, number(Nr) zu benutzen.

    • Josef_Koenig
    • vor 2 Jahren
    • Gemeldet - anzeigen

    Danke, Mirko!

Content aside

  • vor 2 JahrenZuletzt aktiv
  • 6Antworten
  • 2175Ansichten
  • 1 Folge bereits