Urlaubsplanung, Wechseldienst, Kalender
Hallo, ich habe wieder einige Fragen zu NinoxDB OSX und IOS
Ich möchte ein Excel Projekt zur Urlaubsplanung in Ninox migrieren und wollte dafür den eingebauten Kalender benutzen. Zum Umfang, wir sind zwei Dienstgruppen die wechselnd 24h Dienst versehen. Je Gruppe sind 15 Kollegen in der Abteilung von denen maximal 4 in Urlaub sein dürfen wobei in der Sommerzeit maximal 2 der obersten 4 in der Führungsebene.
Die Parameter die ich aus der alten Excel Verwaltung hatte sind die Pers. Daten, Urlaubsanspruch(Tage), Rest aus dem Vorjahr, Rest Aktuell, maximal 10 Urlaube min vier. Tage, max. Rest bis 1.Okt von 25 Tagen, max. Rest über Jahreswechsel von 20 Tagen, Urlaubsanfang, Urlaubsende, Dienstantritt.
Problem das ich aktuell habe ist, dass ein Datumsfeld nur einen Tag definiert im Kalender und kein VON-BIS ermöglicht
Ersatz fand ich im Terminfeld welches funktioniert aber dabei einige Fragen auftauchen.
Kann man im TerminFeld die Uhrzeit deaktivieren und immer den kompletten Tag als Urlaub vergeben.
Wie kann ich die Tage von Anfang Termin bis Ende Termin auswerten.
ich habe im fxFeld Dienstantritt den Tag berechnet über
let MyDA := date(endof(Urlaub1))+1;
MyDA
Funktioniert soweit
Kombinieren wollte ich diese fXFeld um die Info Summe der Urlaubstage und genau da scheitere ich.
Wie kann ich aus einem Terminfeld die Tage der Termindauer auslesen.
Noch eine Frage und die Urlaubsplanung mit der Dienstplanung zu erweitern.
im IOS OSX Kalender ist es Möglich den Dienst periodisch jeden zweiten Tag zu setzen. Ist diese Funktion auch in Ninox möglich?
mfg MartinK
17 Antworten
-
Jawohl, dies ist mit Ninox leicht möglich.
Schicken Sie bitte eine Mail an support@ninoxdb.de
Wenn Sie Ihren gegenwärtigen Entwurf mitschicken können, erleichtern Sie den Kollegen die Arbeit :-)Birger
-
Habe ich übermittelt, danke für die Hilfe
-
Erste Rückmeldung mit positivem Erfolg.. soweit funktioniert alles..
nächstes Kapitel Feinschliff
Feinschliff 1.1, aus einer Tabelle mit Untertabelle sollen die Restlichen Urlaubstage errechnet werden wie im Bild dargestellt. Dabei sollten nach jedem Urlaub in Folge die jeweiligen Resttage berechnet werden.
Aktuell funktioniert nur die Berechnung über den letzten Urlaub was nicht wirklich schön ist.
Kann mir bitte jemand einen Tipp geben wie das umzusetzen wäre.
-
Die Berechnung "Rest" in der Unterbabelle ist nicht korrekt. Buchen Sie doch einen Termin für eine Screensharing-Seesion mit mir unter diesem Link:
https://calendly.com/birger-hansen/15minBirger
-
Absolut nicht korrekt ist auch nur eine Hilfslösung gewesen..
ich bin leider aktuell viel unterwegs und Bandbreitenlimmiert und hoffe das ich überhaupt den Webinartermin am Mittwoch wahrnehmen kann..
für einen schnellen Tip für meine Denkblockade wäre ich trotzdem dankbar..
-
Hallo Martin,
die Formel für das Berechnungsfeld "Rest" in der Untertabelle:
---
let myANSPR:= Obertabelle.('Übertrag'+'Anspruch');
let myStart:=start('Von - Bis');
let mySUM:=sum(Obertabelle.Untertabelle[start('Von - Bis')<=myVB].Tage);
myANSPR-mySUM
---
Statt Obertabelle und Untertabelle muss du die Namen der Verknüpfungen einfügen. Für Untertabelle wäre es sicher Termine.
bei Obertabelle vermutlich Urlaubsplaner
Leo
-
Danke für die Hilfe Leo myVB ist vermutlich eher myStart
ich sehe mir das gleich mal an wenn ich pausche habe
vielen vielen Dank schon mal.. ich melde mich später wenn ich darf..
-
Das ist gelinde gesagt der Knaller funktioniert 1A vielen Dank und mach mich daran das das ganze zu verstehen .
werde mal die Wege verfolgen was von wo kommt und wo ich gescheitert bin.. so ich gehe jetzt mal weinen..:)
-
Das Projekt wächst und danke an den Support. War gestern erstmals bei einem webinar dabei, war sehr interessant.
Hätte da aktuell zwei Fragen zu meinem Projekt
1) lassen sich aus dem Kalender Termine die sich überschneiden auslesen so ähnlich wie cnt() zB als Warnung das die maximale Anzahl von 4 Mitarbeitern erreicht ist
2 da der Tabellendruck in der Darstellung eher rudimentär ist, wollte ich die Frage in den Raum stellen ob es eine Möglichkeit gibt oder einen Trick um in der Datensatz-Druckoptionen mehrere Datensätze in einem a4 Blatt zu drucken
mfg MartinK
-
Hallo Martin,
1) Wenn die Termine als Terminfelder in einer Tabelle liegen, kann man es so versuchen die Überschneidungen zu zählen:
let my := this;
let myStart := start(Termin);
let myEnd := endof(Termin);
cnt(select Termine where Nr != my.Nr and (start(Termin) >= myStart and start(Termin) <= myEnd or endof(Termin) >= myStart and endof(Termin) <= myEnd or start(Termin) <= myStart and endof(Termin) >= myEnd))2) Ich mache immer eine Zusätzliche Tabelle "Berichte" und baue dort eine Verknüpfung zu der gewünschten Tabelle. So kann man auch mehrereDatensätze darstellen.
Leo
-
Klasse vielen Dank, die Formel funktioniert hat aber einen kleinen Makel das der cnt(x) über die gesamte Zeit alle zählt ...
als Beispiel Person x ist vom 1.10 bis 31.10 im Urlaub, Person y und z sind vom 15.9 bis 5.10 und Person a und b sind von 25.10 bis 10.11 auf Urlaub, ist die Summe cnt(5) wobei ich aber im Tagesschnitt nicht über cnt(3) komme sprich <= cnt(4) welches mich warnen sollte.
der Spezialfall wäre noch die Differenzierung, dass die Gesammtsumme maximal 4 aus dem Personalpool aber nur zwei der ersten vier der Führungsebene sprich Feld ID 1-4
ich hoffe ich habe das halbwegs verständlich rüber gebracht..
zum zweiten Punkt.. du meinst ist brauche eine dummy Tabelle mit NR Feld und soll für 15 Mitarbeiter 15 x eine Untertabelle verknüpfen um die alle Mitarbeiter mit darunter präsentierten Urlauben darzustellen...
-
ich habe die Auswertung der Termine aktuell so angepasst bin aber noch ganz zufrieden damit
let my := this;
let myStart := start('Von - Bis');
let myEnd := endof('Von - Bis');
let mycnt := cnt(select Urlaub where Nr != my.Nr and (start('Von - Bis') >= myStart and start('Von - Bis') <= myEnd or endof('Von - Bis') >= myStart and endof('Von - Bis') <= myEnd or start('Von - Bis') <= myStart and endof('Von - Bis') >= myEnd));
if Urlaub2018.ID <= 4 and mycnt <= 2 then
styled("Führungscharge OK" + " " + mycnt, "green", "black", "ok")
else
if Urlaub2018.ID <= 4 and mycnt >= 2 then
styled("Führungscharge Achtung" + " " + mycnt, "yellow", "black", "warn")
else
if Urlaub2018.ID > 4 and mycnt <= 3 then
styled("Charge OK" + " " + mycnt, "green", "black", "ok")
else
if Urlaub2018.ID > 4 and mycnt >= 3 then
styled("Charge Achtung" + " " + mycnt, "yellow", "black", "warn")
end
end
end
endAn was ich aber immer noch scheitere ist die Druckfunktion von Datensätzen von mehr als einem auf einer a$ Seite
meine Tabelle Urlaub 2018 enthällt die Personaldaten und die Untertabelle die Termine und die funktionen für die Berechnung eventueller Probleme bei der Planung.
Was ich nun genau bräuchte wäre eine Auswertung in der Reihenfolge.
Briefkopf Ansuchen auf Durchsicht und um Genehmigung der obersten Dienststelle..
darunter Datensatz des Mitarbeiters. nach ID 1
darunter Urlaubsdaten mit Filteroption ganzes Jahr/Haupturlaubszeit 15.5-15-9 (Das funktioniert auch)
darunter Datensatz des Mitarbeiters. nach ID 2
darunter Urlaubsdaten mit Filteroption ganzes Jahr/Haupturlaubszeit 15.5-15-9 (Das funktioniert auch)
usw usw
in meiner Abteilung 15 an der Zahl.
mfg MartinK
-
Melde mich nochmals zurück und möchte mich nochmals Herrn Hansen für seine Hilfe via Screensharing bedanken.. das hat alles soweit funktioniert.
Ich habe aber noch eine Frage dazu weil Sitzung ja ziemlich gedrängt vom Input an Informationen ist,
die Selektion der Daten der extra Tabelle N:1 zeigte bei Herrn Hansen sofort alle Datensätze an und in einem neuen Projekt von mir selbst mag das nicht mehr gelingen.. ich bekomme immer nur einen Datensatz zur Auswahl.
Er hatte das kurz angeführt ging aber so schlell das ich danach Reizüberflutet das Kurzzeitgedächtnis entleert habe..
eventuell könnte mir ein Wissender auf die Sprünge helfen..
vlD MartinK
-
Noch eine Frage zum Kalender
Ich möchte die Datenbank erweitern und unseren Wechseldienst integrieren.
wie kann ich für jeden unserer 15 Mitarbeiter jeden zweiten Tag als Dienst eintragen lassen.
Die nun funktionierenden Urlaubstermine sollen die Dienste überschreiben und die Dienste sollten als Wahlfeld mit Dienst, Frei oder Krank markiert werden können..
LG MartinK
-
und oder ist es Möglich einen zweiten Kalender in einer Datenbank zu initialisieren?
-
Gibt es die Tablle irgendwo zum Download?
-
Das Thema ist schon erledigt.
Content aside
- vor 5 JahrenZuletzt aktiv
- 17Antworten
- 6438Ansichten