wiederkehrende Rechnungen genieren
Hallo,
ich habe mal eine Frage zum Thema Rechnungen.
Ist es möglich Kundenbezogende Rechnungen zu genierern, dass diese jedem Monat erzeugt werden? Aktuell machen wir es mit dem Button "Datensatz duplizieren". Bei ca. 30 Rechnungen ist aktuell noch Möglich, wenn sich aber die Kundenanzahl im dreistelliegen Bereich kommt nimmt es sehr viel mehr Zeit in anspruch.
Vielen Dank im Voraus.
9 Antworten
-
an dem Thema bin auch gerade dran. aber leider auch noch keine Lösung
-
Automatisch wird es vermutlich nicht gehen weil Ninox nicht im Hintegrund läuft und kein internen Zeitmanagement hat. Man kann aber die Kundeneinkäufe mit Datum versehen und dann die Positionen nach Datum sortieren und eine Monatsrechnung generieren
Leo
-
Hallo,
eine vollautomatische Erstellung ist meines Wissens zur Zeit nicht möglich, da es keine zeitgesteuernten Scripte gibt.
Denkbar wäre entweder ein externes Programm, welches dies über die API erledigt und z.B. als Windows Scheduled Task oder Chron-Job unter Linux/Unix/macOS läuft. (Hierfür sind aber Entwicklerkenntnisse vonnöten.)
Unter der Voraussetzung, dass in einer Rechnung sowohl ein Monat und Jahr sowie ein Kunde eindeutig zugeordnet sind, könnte man ein Ninox-Script schreiben, welches für jeden Kunden die Rechnung des heraussucht und auf den aktuellen Monat kopiert. Über ein ganz ähnliches Script könnte man prüfen, ob es noch Kunden ohne Rechnung für den aktuellen Monat gibt.
Dieses Script könnte dann über einen Button auf dem Rechnungs- oder Kundenformular laufen lassen. Als Datenbank-Admin könnte man es auch manuell einmal im Monat über die Konsole ausführen oder, falls es vergleichbare Funktionen gibt, die in der Datenbank laufen sollen, dies in eine Tools-Tabelle packen.
Falls die Datenbank irgendwo online gestellt werden könnte, wäre es wahrscheinlich möglich, auch ein konkretes Script zu liefern.
Gruß
Sebastian
-
Es geht mit einem Button, der dann einmal im Monat betätigt wird. Zur automatisierung sind beriets Features in der Planung. Das ist auch eine gute Frage fürs Webinar. VG, Alex
-
Hallo, gibt es zu diesem Punkt neue Infos? Sind die angedeuteten Features bereits implementiert?
-
Hallo Kai,
es gibt seit V2.5 die Möglichkeit, ein Skript zu hinterlegen, welches bei Öffnen der Datenbank ausgeführt wird. Sonst noch nichts weiteres, wobei das IMHO schon einiges "erschlägt".
lg, Torsten
-
Danke Torsten - damit sollte sich doch was machen lassen ;-)
-
Für jemanden der jetzt nicht soviel Ahnung hat, wie sieht dieses Script aus und wie bindet man es ein?
-
Hallo,
das Skript ist natürlich stark abhänging von deiner Datenbankstruktur und dem was genau erreichen möchtest.
Es könnte z. B. so aussehen:
for i in select Rechnungen where 'Fälligkeitsdatum' = today() and 'Folgerechnung erstellt' != 1 do
let new := duplicate(i);
new.('Datum der Rechnungsstellung' := today());
let myYear := year(today());
let myRN := max((select Rechnungen where substr(Rechnungsnummer, 2, 4) = myYear).number(substr(Rechnungsnummer, 7)));
new.(Rechnungsnummer := "RE" + myYear + "-" + format(myRN + 1, "0000"));
i.('Folgerechnung erstellt' := 1)
end
Dabei werden sich wiederholende Rechnungen, die als Fälligkeitsdatum das heutige Datum haben, automatisch erstellt, eine neue Rechnungsnummer vergeben und in der vorherigen Rechnung der Vermerk auf "Ja" gesetzt, dass die Folgerechnung erstellt wurde.
Einfügen kann man das Skript (wie oben vorgeschlagen) in der Option: "Nach Öffnen der Datenbank folgendes Skript ausführen.":
Es kann aber auch als Funktion einer Befehlsschaltfläche eingefügt werden.
Das wäre auch ein gutes Thema, um in unserem Webinar die Hand zu heben und das Thema dort anzusprechen.
Anmelden kannst du dich für das kostenlose Webniar hier:
https://zoom.us/webinar/register/WN_Asq34-biQxGS93h03BmyfQGrüße, Jörg
Content aside
- vor 5 JahrenZuletzt aktiv
- 9Antworten
- 2779Ansichten