0

Mathematische Funktionen

Hallo,
wie kann ich in Ninox eine automatische Rechnungsnummer erstellen, die sich aus den folgenden drei Bausteinen zusmamensetzt:
1) Der Buchsatbe "R"3
2) Die Jahreszahl
3) Eine fortlaufende Nummer mit 4 Stellen. Diese Nr. soll von Rechnung zu Rechnung automatisch um "1" größer werden

Beispiel:
1. Rechnung: R2015-0001
2. Rechnung: R2015-0002
usw.

Herzlichen Dank für Tips im voraus.
Rüdiger

PS: Ich habe eine Datenbank nach Vorlage "Rechnungen" erstellt

54 Antworten

null
    • Frank_Bohmer
    • vor 9 Jahren
    • Gemeldet - anzeigen
    Hallo Rüdiger,
    mit der aktuellen Version ist das so leider noch nicht möglich, das heißt die Rechnungsnummer müsste vorerst manuell vergeben werden. Wir planen das aber für die nächste Version.
    Viele Grüße Frank
    • RvS
    • vor 9 Jahren
    • Gemeldet - anzeigen
    Hallo Frank,

    vielen Dank für die schnelle Antwort. Eine Funktion für automatisch generierte Rechnungs-Nr. und Kunden-Nr. wäre prima.

    Davon abgesehen hätte ich einen weiteren Wunsch respektive Vorschlag:
    Schön wäre auch ein Format für Telefonnummern, mit dem man lange Tel.Nr übersichtlicher darstellen kann. Das könnte in etwa z.B. so aussehen:

    1. Die Vorwahl wird vom Rest der Tel-Nr optisch durch einen Abstand getrennt. Wo diese Trennnung erfolgen soll, könnte man bei der Eingabe z.B. durch ein Minuszeichen oder Tab signailsieren.

    2. Die Tel-Nr. (ohne Vorwahl wird zusätzlich in Blöcken von 3 Ziffern dargestellt (oder wahlweise: 2, 3 oder 4). Ein kleiner Abstand zwischen den Blöcken würde die Lesbarkeit langer Tel-Nr verbessern.

    Beste Grüße
    Rüdiger
    • Frank_Bohmer
    • vor 9 Jahren
    • Gemeldet - anzeigen
    Das ist eine gute Idee! Nehme ich für die weitere Planung auf.
    • kobbi
    • vor 9 Jahren
    • Gemeldet - anzeigen
    Hallo,
    da kann ich nur zustimmen, die App ist toll aber eine automatische Rechnungsnummer ist wirklich fast seit dem C64 Standard....also ich freue mich, wenn ihr die bald einbaut.
    Liebe Grüße
    Michael
    • ThorsProvoni
    • vor 9 Jahren
    • Gemeldet - anzeigen
    Das funktioniert ab der Ninox Version 1.5.3. Nehmen wir mal an, dass es eine Tabelle "Rechnung" gibt mit den Feldern RgNr und Rechnungsdatum.

    Im ersten Schritt wird ein Trigger auf Tabellenebene definiert (im Editor zur Definition einer Tabelle das Feld "Bei neuem Datensatz folgendes Script ausführen"):

    Rgnr := last((select Rechnung).Rgnr) + 1

    Im zweiten Schritt wird die fertig formatierte Rechnungsnummer erzeugt. Dazu wird ein Feld Rechnungsnummer vom Typ "f(x) Berechnung" erstellt. Die Funktion lautet:

    "RE" + year(Rechnungsdatum) + "-" + RgNr

    Abschließend sollte man verhindern, dass das Feld Rgnr versehentlich geändert wird. Dazu blendet man es einfach aus.

    Dazu per Doppelklick auf die Detailansicht von Rgnr wechseln und dabei darauf achten darauf, dass die erweiterten Optionen sichtbar sind. In "Feld nur anzeigen, wenn:" wird "false" eingetragen - damit wird das Feld ausgeblendet.
    • sebastian
    • vor 8 Jahren
    • Gemeldet - anzeigen
    Bei mir wird das "RE" immer als Fehler angezeigt. Wenn ich dieses raus nehme kommt zwar keine Fehlermeldung aber die Rechnung funktioniert auch nicht.
    • Thomas_Konradt
    • vor 8 Jahren
    • Gemeldet - anzeigen
    Habe das selbe Problem. Irgendwie funktioniert das nicht oder ich mache was falsch.
    • Leonid_Semik
    • vor 8 Jahren
    • Gemeldet - anzeigen
    Es kann an Anführungszeichen liegen. Die Anführungszeichen hier im Blog unterscheiden sich am Anfang und am Ende. Wenn man die Formel im Ninox-Editor geschrieben wird sind diese gleich. Wenn man die Formel hier kopiert und in Ninox einfügt, bekommt man die Fehlermeldung. Versuch mal die Anführungszeichen in Ninox Formeleditor zu löschen und selbst neu zu schreiben.

    Grüße
    Leo
    • Thomas_Konradt
    • vor 8 Jahren
    • Gemeldet - anzeigen
    Hallo Zusammen und ein frohes Fest

    Hat jemand neue Erkenntnisse was die Fehlermeldung betrifft. Bin schon am verzweifeln.

    Gruß
    tkonradt
    • Frank_Bohmer
    • vor 8 Jahren
    • Gemeldet - anzeigen
    Hallo und frohe Weihnachten!

    wichtig sind die Anführungszeichen: Text-Werte müssen in normalen doppelten "Anführungszeichen" stehen (SHIFT + 2). Feldnamen mit Leer- oder Sonderzeichen müssen in einfachen 'Anführungszeichen' stehen (SHIFT + #). Die Formel lautet also:

    "RE" + year(Rechnungsdatum) + "-" + RgNr


    Gruß
    Frank
    • Thomas_Konradt
    • vor 8 Jahren
    • Gemeldet - anzeigen
    Hallo Frank,
    danke für die Antwort. Jetzt habe ich einen Teil meines Problems gelöst :-). Leider habe ich jetzt bei der ersten Rechnung die Nummer 1 und bei der nächsten die Nummer 11.....111......1111 usw.

    Gruß
    Tkonradt
    • Alexander_Koenig
    • vor 8 Jahren
    • Gemeldet - anzeigen
    Hallo Tkonradt, wenn Rechnungsnummer ein Zahlen Feld ist sollte es klappen. Unter FAQ auf der Startseite vom Handbuch sind jetzt auch ein Paar Tips zu Rechnungsnummern zu finden.
    VG, Alex
    • Thomas_Konradt
    • vor 8 Jahren
    • Gemeldet - anzeigen
    Hallo Frank,

    super danke. Bin jetzt fast am Ziel, jetzt bin ich gerade dabei herauszufinden wie Ninox mir die Rechnungsnummer (Zahl) mit 0001 anstatt mit 1 anzeigt. Falls du ja eine Idee hast....immer gerne :-)

    Gruß
    Tkonradt
    • Frank_Bohmer
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Führende Nullen kann man zB so erzeugen:

    format(Rechnungsnummer, "0000")

    Viele Grüße,
    Frank
    • niki1570
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Ich habe ein Auswahlfeld mit Erledigt Ja/Nein erstellt. Nun würde ich gerne die Anzahl der Datensätze berechnen die mit Erledigt Ja gekennzeichnet sind. Kriege das aber nicht hin.
    • Leonid_Semik
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Hallo niki1570

    wenn dein Berechnungsfeld in der Tabelle liegt, wo auch das Feld "Erledigt" ist, dann ist die Formel:

    cnt(select Tabellenname where Erledigt = true)

    Tabellenname ist natürlich deine Tabelle.

    Grüße
    Leo
    • niki1570
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Vielen Dank Leo für die schnelle Antwort ich probiere es aus !
    • niki1570
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Habe es ausprobiert und hat funktioniert! Vielen Dank! Hatte umständlich versucht wie bei Filemaker Wahr/Falsch in Zahlenwerte umzurechnen, damit ich sie nachher addieren kann. Danke
    • niki1570
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Hallo Leo,

    wenn ich ein Feld "Kategorie" habe in dem ich folgende Auswahlmöglichkeiten habe. Bsp A oder B oder C ... Wie komme ich dann auf die Anzahl der einzelnen A`s, B`s und C`s?
    Grüße

    Dominik
    • Leonid_Semik
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Hallo Dominik,
    Die Positionen des Auswahlfeldes haben eigene IDs (rechts zu sehen)
    Dementsprechend wäre die Formel

    cnt(select Tabellenname where Kategorie = 1)

    1 ist die ID von Bsp. A.
    Statt 1 kannst du 2, 3 usw. einfügen

    Grüß
    Leo
    • niki1570
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Hat super geklappt! Danke Dir vielmals
    • niki1570
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Wie gehe ich nun vor wenn ich eine neue Ansicht erstellen möchte die die Kategorien nach Anzahl der Nennungen zeigt? Enthält diese Ansicht vier Felder Kategorie, A, B ,C so sehe ich alle Datensätze und bei allen sind alle Werte eingetragen. Wo liegt mein Denkfehler? Wenn ich nach Kategorie gruppiere hilft es auch nicht. Oder muss ich ein neues Feld anlegen?
    • niki1570
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Habe jetzt ausprobiert nur die Reihe Kategorie mit Filter A und die Reihe Anzahl Kategorie A (Feld laut deiner Formel) so klappt es. Nur wie füge ich dann noch B und C ein sodass es im Diagramm angezeigt wird.
    • niki1570
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Sorry vergessen zu sagen dass ich ein Diagramm erstellen möchte das zeigt welche Kategorie wieviele Nennungen hat.
    • Leonid_Semik
    • vor 7 Jahren
    • Gemeldet - anzeigen
    Hallo Dominik,
    Versuch mal folgendes:
    Neue Ansicht->alle Spalten ausblenden->Spalte Einblenden - Kategorie->Spalte Einblenden - Funktion f(x), die Formel

    let KAT := Kategorie;
    cnt(select Tabelle1 where Kategorie = KAT)

    Diese Spalte umbenennen in z.B "Anzahl"

    Jetzt die Spalte Kategorie auswählen und auf Gruppieren klicken.
    Dann auf "Anzahl" klicken und Durchschnitt wählen.
    So hast du schon eine Überblick.
    Die Diagramme lassen sich hier schwierig darstellen. am besten eine Kreis-, oder Ringdiagramm.
    Hier ein Beispiel
    https://www.dropbox.com/s/dsmn12x9qv5bolw/Kategorien.ninox?dl=0

    Grüße Leo