Tim Bindewald Geschrieben 25. Juni Teilen Geschrieben 25. Juni Hallo zusammen, die Erfassung von Montagezeiten in unserer Produktion läuft seit einigen Monaten zum Teil über smapOne. Nach und nach fallen im Tagesbetrieb immer mal wieder kleinere Erfassungsfehler auf, welche wir gerne direkt in der smap abfangen möchten, um manuelle Korrekturen zu minimieren. An folgendem Fall beiße ich mir gerade die Zähne aus: Ein Monteur kann immer nur an einem Produktionsauftrag gleichzeitig arbeiten. Diese Logik möchte ich gerne als kleine Plausibilitätsprüfung einbauen. Ich habe ein Zeitauswahlfeld (Startzeit) und ein Zeitauswahlfeld (Endzeit). Beide Felder nehmen nur die Uhrzeit auf, das Datum wird im Kopf einmalig separat erfasst. Die Startzeit innerhalb eines Datensatzes der Wiederholungsgruppe sollte also nicht vor der Endzeit des vorherigen Datensatzes liegen. Verschiedene Datensätze innerhalb einer Wiederholungsgruppe miteinander zu vergleichen ist wahrscheinlich nicht möglich, daher war mein Gedanke, dass ich die summierte Gesamtmontagezeit des Tages auf den Minimalwert der Startzeit aus der Wiederholungsgruppe addiere, mit der maximalen Endzeit vergleiche und bei Fehler das Absenden des Formulars verhindere. (Die Lösung ist natürlich nicht ganz so sauber, aber immerhin fangen wir damit einen Großteil ab). MIN() funktioniert aber nur mit dem Datentyp Zeitraum und ich habe Zeitpunkte als Werte. Bei der Umwandlung der Zeitpunkte in einen Zeitraum verzweifle ich. Habe ich einen Denkfehler? Habt ihr Ideen, vielleicht auch alternative Lösungsvorschläge? Hier nochmal ein minimalistischer Nachbau der Smap, zum besseren Verständnis: Danke vorab an alle, die sich bemühen, meine Gehirnwindungen nachzuvollziehen. 1 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Manuel Rühl Geschrieben 25. Juni Teilen Geschrieben 25. Juni Leidiges Thema... @SmapOne ---> Ihr wisst Bescheid. 😉 Du könntest aber über das Feld DateTime_3 und SUB_DATE() einen Zeitraum vom Himmel fallen lassen. https://platform.smapone.com/Documentation/de/Topic/Formulas#sub_datedatum-datum 3 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
HK alias Holger Geschrieben 25. Juni Teilen Geschrieben 25. Juni 1 4 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Tim Bindewald Geschrieben 25. Juni Autor Teilen Geschrieben 25. Juni (bearbeitet) Hey @Manuel Rühl, danke für die Antwort. Guter Gedanke, aber leider funktioniert das auch nicht ohne Weiteres: "SUB_DATE" enthält inkompatible Operanden. weil DateTime_3 nur das Datum und DateTime nur die Uhrzeit erfasst (diese Einstellung hier:) Wenn ich diese Einstellung bei DateTime_3 auf Datum und Uhrzeit stelle, verschwindet der Fehler, allerdings wird dann zur Berechnung die dort ausgewählte Uhrzeit gezogen, was wiederum zu Differenzen führen wird. Außerdem... finde ich das in der Eingabe für die Monteure nicht schön! 🙂 Bearbeitet 25. Juni von Tim Bindewald 1 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Bülent Erbas Geschrieben 25. Juni Teilen Geschrieben 25. Juni Hallo @Tim Bindewald, so müsste zumindest SUBDATE() funktionieren und den entsprechenden Zeitraum berechnen. Start- und Endzeit sind auf "Uhrzeit" eingestellt. Allerdings wird die Plausibilitätsprüfung leider ohne Weiteres nicht funktionieren. Leider passen die Datentypen untereinander nicht ganz. Man müsste vermutlich die Startzeiten und Endzeiten in den jeweiligen Abschnitten "zerpflücken" und die Werte miteinander vergleichen. Andere Idee wäre ein Tageslimit für die Montagezeit zu definieren. Man summiert in allen Abschnitten die Zeiträume zusammen und vergleicht es mit dem Tageslimit. Wäre das realistisch? 4 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Tim Bindewald Geschrieben 26. Juni Autor Teilen Geschrieben 26. Juni Moin! Danke auch dir @Bülent Erbas für die Antwort. Fürs Erste werde ich jetzt doch die Kröte schlucken und die Start- und Endzeiten als Datum und Zeit (statt nur Zeit) erfassen. Bedeutet für den Monteur pro Arbeitsgang zwei Klicks mehr und bedeutet damit dann auch einen traurigen Tim 🥺 Damit kann ich dann allerdings über SUB_DATE() einen Zeitraum ermitteln und danach über MIN() / MAX() die minimale Startzeit und die maximale Endzeit aus der Wiederholungsgruppe ermitteln. Danach kommt dann die Plausibilitätsprüfung, die die Minimalzeit zur summierten Montagezeit addiert und mit der Maximalzeit vergleicht. Falls (Minimalzeit+Montagezeit >= Maximalzeit) wird dann das Abschicken des Datensatzes verhindert. Wenn jemand eine Lösung hat, wie ich einen Zeitpunkt mit nur Uhrzeit -ohne Datum- in einen Zeitraum umwandeln kann - her damit! Bis dahin bleibe ich der traurige Tim. 🙂 2 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Michael Prem Geschrieben 26. Juni Teilen Geschrieben 26. Juni Hallo @Tim Bindewald, habt ihr schon mal darüber nachgedacht, ob es möglich ist , die Start- und Endzeit, statt einer Auswahl durch einen Zeitstempel zu ersetzen? 3 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Tim Bindewald Geschrieben 26. Juni Autor Teilen Geschrieben 26. Juni vor 1 Minute schrieb Michael Prem: Hallo @Tim Bindewald, habt ihr schon mal darüber nachgedacht, ob es möglich ist , die Start- und Endzeit, statt einer Auswahl durch einen Zeitstempel zu ersetzen? Guter Punkt! Darüber nachgedacht haben wir, das Problem dabei ist, dass das eine strikte Buchungsdisziplin der Monteure erfordern würde. Durch die Zeitauswahl kann der Monteur theoretisch auch erst am Ende des Tages eingeben, was er den Tag über getrieben hat. Vielleicht gehen wir irgendwann mal einen etwas strikteren Weg, aber momentan wollen wir da keine unnötigen Mauern aufbauen. 2 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Michael Prem Geschrieben 26. Juni Teilen Geschrieben 26. Juni vor 6 Stunden schrieb Tim Bindewald: Guter Punkt! Darüber nachgedacht haben wir, das Problem dabei ist, dass das eine strikte Buchungsdisziplin der Monteure erfordern würde. Durch die Zeitauswahl kann der Monteur theoretisch auch erst am Ende des Tages eingeben, was er den Tag über getrieben hat. Vielleicht gehen wir irgendwann mal einen etwas strikteren Weg, aber momentan wollen wir da keine unnötigen Mauern aufbauen. Ok verstehe. Wäre das eine Alternative Gruß Michael 4 1 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Tim Bindewald Geschrieben 27. Juni Autor Teilen Geschrieben 27. Juni vor 14 Stunden schrieb Michael Prem: Ok verstehe. Wäre das eine Alternative Gruß Michael Spannend! Anstatt der Wiederholungsgruppe benutzt du hier nacheinander aktivierte Gruppen, wodurch man in Datensatz B auf Datensatz A zugreifen kann? Und die maximale Anzahl der Datensätze wird wahrscheinlich fix durch die Anzahl der angelegten Gruppen definiert. Ich werde damit mal ein wenig herumspielen und sehen, ob die Ansicht auf dem Mobiltelefon noch übersichtlich bleibt (pro Arbeitsgang werden teilweise noch weitere optionale Daten erfasst, z.B. den Arbeitsgangtyp oder Kommentare/Bilder/Probleme des Monteurs während der Montage, da kann ich mir vorstellen, dass das auf dem Handydisplay irgendwann unübersichtlich wird). Aber selbst wenn ich das in diesem Anwendungsfall nicht nutzen werde hast du damit auf jeden Fall meinen Horizont erweitert. Danke dafür! 1 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Michael Prem Geschrieben 27. Juni Teilen Geschrieben 27. Juni Ich kann dir gerne eine Kopie zusenden! 3 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Micha Zenke Geschrieben 27. Juni Teilen Geschrieben 27. Juni Die Kopie würde mich auch interessieren 😉 1 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Michael Prem Geschrieben 27. Juni Teilen Geschrieben 27. Juni Hi @Micha Zenke, lass mir einfach deine Email-Adr zukommen. 1 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Thomas Hoffmann Geschrieben 5. Juli Teilen Geschrieben 5. Juli @Moritz Heidlindemann über so ein ähnliches Thema haben wir doch neulich gegrübelt. Vielleicht hilft unser Lösungsweg?! Magst du das teilen, falls es hilfreich ist (ich habe die smap nicht)? 1 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Moritz Geschrieben 5. Juli Teilen Geschrieben 5. Juli vor 3 Stunden schrieb Thomas Hoffmann: @Moritz Heidlindemann über so ein ähnliches Thema haben wir doch neulich gegrübelt. Vielleicht hilft unser Lösungsweg?! Magst du das teilen, falls es hilfreich ist (ich habe die smap nicht)? Gerne! @Tim Bindewald ich bin mir nicht ganz sicher ob es passt, aber wirf mal einen Blick in die folgende smap: https://platform.smapone.com/ImportSharedApp/f554439b-63a2-42e5-bb17-dc915bf4a75c/52bfeb1bdc3bd0bdecccf1ec78e7b781bafeded2?lang=de 1 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Tim Bindewald Geschrieben 8. Juli Autor Teilen Geschrieben 8. Juli Am 5.7.2024 um 13:17 schrieb Moritz Heidlindemann: Gerne! @Tim Bindewald ich bin mir nicht ganz sicher ob es passt, aber wirf mal einen Blick in die folgende smap: https://platform.smapone.com/ImportSharedApp/f554439b-63a2-42e5-bb17-dc915bf4a75c/52bfeb1bdc3bd0bdecccf1ec78e7b781bafeded2?lang=de Moin Moritz, das passt und würde so auf jeden Fall funktionieren; danke für das Beispiel! Es bleibt aber auch hier der Fakt, dass der Benutzer den Arbeitsbeginn als "Datum und Uhrzeit" auswählen muss, obwohl das Datum ja schon im Kopf ausgewählt wurde. Dies ist der kleine (und wenn wir ehrlich sind: unwesentliche) Schritt mehr, den ich gerne einsparen würde. Die offene Herausforderung wäre also nur noch, dass in den Eingabeoptionen der beiden Datums- und Zeitauswahlfelder {Arbeitsbeginn} und {Arbeitsende} "Uhrzeit" statt "Datum und Uhrzeit" verwendet werden kann. 1 Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Bitte melde Dich an, um einen Kommentar zu hinterlassen
Du kannst nach der Anmeldung einen Kommentar hinterlassen
Jetzt anmelden