0

Ungültiger Operator: number

Hallo alle zusammen,

ich komme einfach nicht weiter.

Folgender Fall: Ich habe eine Tabelle Kontakte. Diese Kontakte haben ein Zahlenfeld Zinstage mit dem Eintrag z. B. 365.

Ich habe eine weitere Tabelle Kalkulation mit einer Untertabelle wo Berechnungen stattfinden. Hier möchte ich mit den Zinstagen aus den Kontakten die Summe berechnen, siehe Screenshot. Warum bekomme ich diesen Fehler? Wenn ich z. B. 365 eingebe, dann funktioniert es.

Kann mir bitte jemand auf die Sprünge helfen?

Vielen Dank und einen schönen Sonntag.

Sabine

8 Antworten

null
    • Ninox-Professional
    • planoxpro
    • vor 6 Monaten
    • Gemeldet - anzeigen

    Hallo Sabine, bei der Verbinding zwischen 'Kalkulation' und 'Kontakte' handelt es sich offenbar um eine 1:N-Verknüpfung (1 Kalkulation, N Kontakte). Deshalb bekommst du mit 'Kontakte.Zinstage' immer ein Array zurück (zu erkennen an den eckigen Klammern bei "[number]"), egal, wieviele Datensätze tatsächlich verknüpft wurden.

    Du kannst das testen, indem du schreibst: first(Kontakte.Zinstage). Dann müsste die Formel eigentlich funktionieren, weil Ninox nur auf den ersten verknüpften Datensatz zugreift und den Wert von 'Zinstage' als einfache Zahl übergibt.

      • info.81
      • vor 6 Monaten
      • Gemeldet - anzeigen

       Danke für die Rückmeldung.

      Dann bekomme ich allerdings das hier ausgespuckt: Bildschirmfoto 2023-10-15 um 14.54.57

      Woran kann das liegen?

      Vielen Dank.

      • mirko3
      • vor 6 Monaten
      • Gemeldet - anzeigen

       Division durch 0 ergibt z.B. ein solches Ergebnis in Ninox.

      • Ninox-Professional
      • planoxpro
      • vor 6 Monaten
      • Gemeldet - anzeigen

      info Ist der Wert von 'Kontakte.Zinstage' eventuell 0?

      Edit: Mirko war schneller. Aber wenn zwei Leute denselben Verdacht haben, könnte was dran sein. ;)

      • info.81
      • vor 6 Monaten
      • Gemeldet - anzeigen

      Nein. Der Wert ist 365. Als Zahlenfeld angelegt.

      • info.81
      • vor 6 Monaten
      • Gemeldet - anzeigen

       Ich habe noch etwas über die Verbindung nachgedacht. 1:N (1 Kalkulation, N Kontakte) dürfte nicht stimmen. Ich habe einen Kontakt mit z. B. 365 Zinstagen und einen anderen mit 360 Zinstagen. Diese Kontakte können viele Kalkulationen haben, nicht nur eine.

      Kann der Fehler darin liegen, dass ich die Verknüpfung falsch habe?

      Grüße. Sabine

    • Ninox-Professional
    • planoxpro
    • vor 6 Monaten
    • Gemeldet - anzeigen
     said:
    Kann der Fehler darin liegen, dass ich die Verknüpfung falsch habe?

    Hm, wenn du mit first(Kontakte.Zinstage) gearbeitet hast, sollte die Formel eigentlich funktionieren. Das Unendlich-Zeichen erscheint wie gesagt immer bei Division durch Null. Deshalb war das die erste Idee. Ich würde noch mal alle an der Formel beteiligten Felder und deren Werte überprüfen.

    Davon abgesehen: Die Information, dass es sich um eine 1:N-Verknüpfung von 'Kalkulation' (1) zu 'Kontakte' (N) handelt, ergab sich für mich nur aus deinem Screenshot vom Script-Editor. Dort ist links in der Feldliste die Verknüpfung 'Kontakte' mit einem Pfeil nach links versehen. Im Formular müsste die Verknüpfung zu 'Kontakte' als Tabelle dargestellt werden. N:1-Verknüpfungen haben einen Pfeil nach rechts und im Formular nur ein einfaches Verknüpfungsfeld.

    Wenn du es aber eigentlich umgekehrt brauchst - sprich: 1 Kontakt, N Kalkulationen -, dann müsstest du die Verknüpfung tatsächlich umkehren. 'Kalkulation': N. 'Kontakte: 1. Das geht aber leider nur, in dem man die falsche Verknüpfung löscht und eine neue Verknüpfung erstellt.

    Und dann sollte die Formel auch ohne first() funktionieren, weil die Angabe 'Kontakte.Zinstage' nur noch einen einzigen Wert zurückgeben könnte, nämlich den des verknüpften Kontakt-Datensatzes.

    Das mit den Verknüpfungen ist am Anfang manchmal etwas verwirrend, deshalb habe ich vor einiger Zeit mal ein kleines Tutorial dazu gemacht. Darüber hinaus gibt es auch von Ninox einige Materialien dazu, die in dem Posting ebenfalls verlinkt sind:

    https://forum.ninox.de/t/p8h0t0r/einsteiger-tutorial-zu-verknupfungen-in-ninox

      • info.81
      • vor 6 Monaten
      • Gemeldet - anzeigen

       Ich habe jetzt ganz aufmerksam dein Tutorial durchgearbeitet. War sehr interessant und bringt tatsächlich etwas Klarheit in dieses Thema.

      Und: Ich habe mein Problem lösen können. Ich kann zwar nicht genau sagen, warum aber irgendwie hat das Tutorial etwas bewirkt.

      Ich habewohl den Operator aus der falschen Verknüpfung genommen.

      Bildschirmfoto 2023-10-16 um 18.50.12

      Ich freu mich, wieder etwas mehr gelernt zu haben und mehr und mehr den Durchblick zu bekommen.

      Vielen Dank.

      Sabine

Content aside

  • vor 6 MonatenZuletzt aktiv
  • 8Antworten
  • 73Ansichten
  • 3 Folge bereits