Arbeitszeit: Unterschied zwischen den Versionen
Aus Asprova Hilfe
GK (Diskussion | Beiträge) (→AdvanceAlongResourceWorkingDay( resouce, time, day, minTime, type)) |
GK (Diskussion | Beiträge) (→GetNearestWorkingStartTime( resource, date, dir )) |
||
| (16 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 51: | Zeile 51: | ||
== GetWorkingDays ( start, end, resource, minTime ) == | == GetWorkingDays ( start, end, resource, minTime ) == | ||
| + | Die Funktion kann überladen und somit auch mit anderen Parametern genutzt werden: '''GetWorkingDays ( start, end, resource, minTime, type )''' | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
| − | ! | + | | |
| − | | | + | !colspan="2"|Variante 1!!colspan="2"|Variante 2 |
| + | |- | ||
| + | !rowspan="5"|Parameter | ||
| + | |''start''||Beginn||''start''||Beginn | ||
| + | |- | ||
| + | |''end''||Ende||''end''||Ende | ||
|- | |- | ||
| − | |'' | + | |''resource''||Ressource||''resource''||Ressource |
|- | |- | ||
| − | |'' | + | |''minTime''||Minimale Arbeitszeit in einem Arbeitstag||''minTime''||Minimale Arbeitszeit in einem Arbeitstag |
|- | |- | ||
| − | |'' | + | |colspan="2"| ||''type''||Zählweise |
|- | |- | ||
!Rückgabewert | !Rückgabewert | ||
| − | |colspan="2"|Gibt die Anzahl an Arbeitszeitperioden auf ''resource'' zwischen ''start'' und ''end'' an, die mindestens ''minTime'' lang sind. Arbeitszeitperioden werden dabei mitternachts automatisch als unterbrochen angesehen. | + | |colspan="2"|Gibt die Anzahl an Arbeitszeitperioden auf ''resource'' zwischen ''start'' und ''end'' an, die mindestens ''minTime'' lang sind. Arbeitszeitperioden werden dabei mitternachts automatisch als unterbrochen angesehen.||colspan="2"| ''type'' bestimmt wie Arbeitszeitperioden gezählt werden: |
| + | * 0: alle Perioden, die mindestens ''minTime'' lang sind (also wie kein Wert) | ||
| + | * 1: Arbeitstage, d.h. je Tag maximal eine Periode, die mindestens ''minTime'' lang ist | ||
| + | |- | ||
| + | !rowspan="7"|Beispiele | ||
| + | |colspan="3"|<span style="white-space: nowrap;"><code>GetWorkingDays(#2020/06/01 00:00#, #2020/06/03 00:00#, ME, 5h)</code></span>||2 | ||
| + | |- | ||
| + | |colspan="4"|[[Image:incodefunc-kadoujikan02.png]] | ||
| + | |- | ||
| + | |colspan="3"|<code>GetWorkingDays(#2020/06/01 00:00#, #2020/06/03 00:00#, ME, 4h)</code>||4 | ||
|- | |- | ||
| − | + | |colspan="4"|[[Image:incodefunc-kadoujikan03.png]] | |
| − | |||
|- | |- | ||
| − | |colspan=" | + | |colspan="3"|<code>GetWorkingDays(#2020/06/01 00:00#, #2020/06/03 00:00#, ME, 4h, 1)</code>||2 |
|- | |- | ||
| − | | | + | |colspan="4"|[[Image:incodefunc-kadoujikan05.png]] |
|- | |- | ||
| − | |colspan=" | + | |colspan="4"|<code>ME</code> ist hier jeweils "Mischer 1". |
|- | |- | ||
|} | |} | ||
| Zeile 90: | Zeile 104: | ||
|- | |- | ||
!rowspan="2"|Beispiele | !rowspan="2"|Beispiele | ||
| − | |<code>GetWorkingTime(# | + | |<code>GetWorkingTime(#2020/06/01 00:00:00#,#2020/06/03 00:00:00#,ME)</code>||1d |
|- | |- | ||
|colspan="2"|[[Image:incodefunc-kadoujikan04.png]]<br><code>ME</code> ist hier "Mischer 1". | |colspan="2"|[[Image:incodefunc-kadoujikan04.png]]<br><code>ME</code> ist hier "Mischer 1". | ||
| Zeile 198: | Zeile 212: | ||
|} | |} | ||
| − | == AdvanceAlongResourceWorkingDay( | + | == AdvanceAlongResourceWorkingDay( resource, time, day, minTime, type ) == |
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
| Zeile 210: | Zeile 224: | ||
* positiv: in die Zukunft | * positiv: in die Zukunft | ||
* negativ: in die Vergangenheit | * negativ: in die Vergangenheit | ||
| − | * 0: | + | * 0: aktueller Arbeitstag |
|- | |- | ||
|''minTime''||Mindestarbeitszeit, damit Tag als Arbeitstag zählt||0s wird als 1s angesehen | |''minTime''||Mindestarbeitszeit, damit Tag als Arbeitstag zählt||0s wird als 1s angesehen | ||
| Zeile 222: | Zeile 236: | ||
|colspan="3"|Beginn des Tages (oder je nach ''type'' der Arbeitszeit) ''day'' Arbeitstage von ''resource'' nach ''time'', wobei ein Arbeitstag mindestens ''minTime'' an Arbeitszeit enthalten muss. | |colspan="3"|Beginn des Tages (oder je nach ''type'' der Arbeitszeit) ''day'' Arbeitstage von ''resource'' nach ''time'', wobei ein Arbeitstag mindestens ''minTime'' an Arbeitszeit enthalten muss. | ||
|- | |- | ||
| − | !rowspan=" | + | !rowspan="4"|Beispiele |
|colspan="2"|<code>AdvanceAlongResourceWorkingDay(ME.PrevOperation.OperationMainRes, ME.PrevOperation.EndTime, 3, 8h, 1)</code>||10/06/2026 00:00 | |colspan="2"|<code>AdvanceAlongResourceWorkingDay(ME.PrevOperation.OperationMainRes, ME.PrevOperation.EndTime, 3, 8h, 1)</code>||10/06/2026 00:00 | ||
|- | |- | ||
|colspan="3"|[[Image:AdvanceAlongResourceWorkingDay.png]] | |colspan="3"|[[Image:AdvanceAlongResourceWorkingDay.png]] | ||
| + | |- | ||
| + | |colspan="2"|<code>AdvanceAlongResourceWorkingDay(ME.OperationMainRes, ME.OperationProductionStartTime, -2, 0, 0)</code>||10/06/2026 00:00 | ||
| + | |- | ||
| + | |colspan="3"|[[Image:AdvanceAlongResourceWorkingDay.png]] | ||
| + | |- | ||
| + | !Hinweise | ||
| + | |colspan="3"| | ||
| + | * Als Tagesbeginn wird die [Tagestrennzeit] des Projekts genutzt. | ||
| + | * Unabhängig von der Zeit in ''time'', wird der Tag von ''time'' als Arbeitstag angesehen, falls dieser ab der [Tagestrennzeit] mindestens ''minTime' an Arbeitszeit hat. | ||
| + | |- | ||
| + | |} | ||
| + | |||
| + | == GetNearestWorkingStartTime( resource, date, dir ) == | ||
| + | {| class="wikitable" | ||
| + | |- | ||
| + | !rowspan="3"|Parameter | ||
| + | |''resource''||Ressource||rowspan="2"| | ||
| + | |- | ||
| + | |''date''||Startzeit für die Suche | ||
| + | |- | ||
| + | |''dir''||Richtung der Suche | ||
| + | | | ||
| + | * <code>TRUE</code>: in die Zukunft | ||
| + | * <code>FALSE</code>: in die Vergangenheit | ||
| + | |- | ||
| + | !Rückgabewert | ||
| + | |colspan="4"|Der erste Beginn der nächsten Arbeitszeitperiode auf ''resource'' ab ''date'' in Richtung ''dir''. | ||
| + | |- | ||
| + | !rowspan="8"|Beispiele | ||
| + | !rowspan="3"|1. | ||
| + | |colspan="2"| | ||
| + | GetNearestWorkingStartTime( ME.Operation.OperationMainRes, | ||
| + | #2026/06/01 15:00:00#, | ||
| + | TRUE | ||
| + | ) | ||
| + | |02/06/2026 08:00 | ||
| + | |- | ||
| + | |colspan="2"| | ||
| + | GetNearestWorkingStartTime( ME.Operation.OperationMainRes, | ||
| + | #2026/06/01 15:00:00#, | ||
| + | FALSE | ||
| + | ) | ||
| + | |01/06/2026 08:00 | ||
| + | |- | ||
| + | |colspan="3"|[[Image:GetNearestWorkingStartTime_001.png]] | ||
| + | |- | ||
| + | !rowspan="3"|2. | ||
| + | |colspan="2"| | ||
| + | GetNearestWorkingStartTime( ME.Operation.OperationMainRes, | ||
| + | #2024/6/3 3:00:00#, | ||
| + | TRUE | ||
| + | ) | ||
| + | |03/06/2026 00:00 | ||
| + | |- | ||
| + | |colspan="2"| | ||
| + | GetNearestWorkingStartTime( ME.Operation.OperationMainRes, | ||
| + | #2024/6/3 3:00:00#, | ||
| + | FALSE | ||
| + | ) | ||
| + | |02/06/2026 00:00 | ||
| + | |- | ||
| + | |colspan="3"|[[Image:GetNearestWorkingStartTime_002.png]] | ||
| + | |- | ||
| + | !3. | ||
| + | |colspan="2"| | ||
| + | GetNearestWorkingStartTime( PROJECT.ProductionCalendarRes, | ||
| + | StartOfNextWeek( PROJECT.BasisTime, | ||
| + | 1 | ||
| + | ), | ||
| + | TRUE | ||
| + | ) | ||
| + | |Beginn der Arbeitszeit der [Werkskalenderressource] in der Woche nach der [Planungsbasiszeit]. | ||
| + | |- | ||
| + | !4. | ||
| + | |colspan="2"| | ||
| + | GetNearestWorkingStartTime( ME.OperationMainRes, | ||
| + | ME.OperationProductionStartTime, | ||
| + | FALSE | ||
| + | ) | ||
| + | |Beginn der Arbeitszeit auf der [Hauptressource] vor dem [Produktionsbeginn]. | ||
| + | |- | ||
| + | !Hinweis | ||
| + | |colspan="4"|Kann genutzt werden, um mit der [Rüstzeitanpassungsformel] die Zeit vom Beginn der Arbeitszeit bis zum [Produktionsbeginn] zum Rüsten zu nutzen. | ||
| + | |- | ||
| + | |} | ||
| + | |||
| + | == GetNearestWorkingEndTime( resource, date, dir ) == | ||
| + | {| class="wikitable" | ||
| + | |- | ||
| + | !rowspan="3"|Parameter | ||
| + | |''resource''||Ressource||rowspan="2"| | ||
| + | |- | ||
| + | |''date''||Startzeit für die Suche | ||
| + | |- | ||
| + | |''dir''||Richtung der Suche | ||
| + | | | ||
| + | * <code>TRUE</code>: in die Zukunft | ||
| + | * <code>FALSE</code>: in die Vergangenheit | ||
| + | |- | ||
| + | !Rückgabewert | ||
| + | |colspan="4"|Das erste Ende einer Arbeitszeitperiode auf ''resource'' ab ''date'' in Richtung ''dir''. | ||
| + | |- | ||
| + | !rowspan="8"|Beispiele | ||
| + | !rowspan="2"|1. | ||
| + | |colspan="2"| | ||
| + | GetNearestWorkingEndTime( ME.Operation.OperationMainRes, | ||
| + | #2026/06/01 15:00:00#, | ||
| + | TRUE | ||
| + | ) | ||
| + | |01/06/2026 23:00 | ||
| + | |- | ||
| + | |colspan="3"|[[Image:GetNearestWorkingStartTime_001.png]] | ||
| + | |- | ||
| + | !rowspan="3"|2. | ||
| + | |colspan="2"| | ||
| + | GetNearestWorkingStartTime( ME.Operation.OperationMainRes, | ||
| + | #2024/6/3 3:00:00#, | ||
| + | TRUE | ||
| + | ) | ||
| + | |03/06/2026 23:00 | ||
| + | |- | ||
| + | |colspan="2"| | ||
| + | GetNearestWorkingEndTime( ME.Operation.OperationMainRes, | ||
| + | #2024/6/3 3:00:00#, | ||
| + | FALSE | ||
| + | ) | ||
| + | |02/06/2026 23:00 | ||
| + | |- | ||
| + | |colspan="3"|[[Image:GetNearestWorkingStartTime_002.png]] | ||
| + | |- | ||
| + | !3. | ||
| + | |colspan="2"| | ||
| + | GetNearestWorkingEndTime( PROJECT.ProductionCalendarRes, | ||
| + | StartOfNextWeek( PROJECT.BasisTime, | ||
| + | 1 | ||
| + | ), | ||
| + | TRUE | ||
| + | ) | ||
| + | |Ende der Arbeitszeit der [Werkskalenderressource] in der Woche nach der [Planungsbasiszeit]. | ||
| + | |- | ||
| + | !4. | ||
| + | |colspan="2"| | ||
| + | GetNearestWorkingEndTime( ME.OperationMainRes, | ||
| + | ME.OperationProductionStartTime, | ||
| + | FALSE | ||
| + | ) | ||
| + | |Ende der Arbeitszeit auf der [Hauptressource] vor dem [Produktionsbeginn]. | ||
|- | |- | ||
!Hinweis | !Hinweis | ||
| − | |colspan=" | + | |colspan="4"|Kann genutzt werden, um mit der [Rüstzeitanpassungsformel] die Zeit vom Beginn der Arbeitszeit bis zum [Produktionsbeginn] zum Rüsten zu nutzen. |
|- | |- | ||
|} | |} | ||
Aktuelle Version vom 17. Juni 2025, 12:43 Uhr
Hilfe Nummer: 741540
Asprova stellt Ihnen die folgenden Funktionen rund um Arbeitszeiten zur Verfügung.
Inhaltsverzeichnis
- 1 AdvanceAlongResourceWorkingTime( resouce, time, timeSpan )
- 2 GetResourceQtyTime( resource, start, end )
- 3 GetWorkingDays ( start, end, resource, minTime )
- 4 GetWorkingTime( start, end, resource )
- 5 GetCalendar( res, time )
- 6 GetShiftList( res, time, includeStart, includeEnd )
- 7 GetOverwriteCalendar( res, time )
- 8 AdvanceAlongResourceWorkingDay( resource, time, day, minTime, type )
- 9 GetNearestWorkingStartTime( resource, date, dir )
- 10 GetNearestWorkingEndTime( resource, date, dir )
AdvanceAlongResourceWorkingTime( resouce, time, timeSpan )
GetResourceQtyTime( resource, start, end )
GetWorkingDays ( start, end, resource, minTime )
Die Funktion kann überladen und somit auch mit anderen Parametern genutzt werden: GetWorkingDays ( start, end, resource, minTime, type )
GetWorkingTime( start, end, resource )
| Parameter | start | Beginn |
|---|---|---|
| end | Ende | |
| resource | Ressource | |
| Rückgabewert | Gibt die Arbeitszeit von resource zwischen start und end zurück. | |
| Beispiele | GetWorkingTime(#2020/06/01 00:00:00#,#2020/06/03 00:00:00#,ME) |
1d |
![]() ME ist hier "Mischer 1".
| ||
| Anders als bei GetResourceQtyTime() wird die Ressourcenanzahl nicht berücksichtigt. | ||
GetCalendar( res, time )
| Parameter | res | Ressource | |||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| time | Zeit | ||||||||||||||||||||||||
| Rückgabewert | Gibt das Kalenderobjekt zurück, das auf resource für den Zeitpunkt time angewendet wird. | ||||||||||||||||||||||||
| Beispiele | GetCalendar(ME.Resource,ME.StartTime)
| ||||||||||||||||||||||||
| |||||||||||||||||||||||||
GetShiftList( res, time, includeStart, includeEnd )
GetOverwriteCalendar( res, time )
AdvanceAlongResourceWorkingDay( resource, time, day, minTime, type )
GetNearestWorkingStartTime( resource, date, dir )
GetNearestWorkingEndTime( resource, date, dir )
Hilfe Nummer: 741540












