Anzahl der Wochentage berechnen

21. Mai 2015 11:52

Hallo,

ich möchte gerne folgende Anforderung im CC lösen.
Es soll die Anzahl der Wochentage (Montag - Freitag) zwischen zwei Daten ermittelt werden.
Hat jemand eine Ahnung wie das funktioniert?

Grüße
Herbert

Re: Anzahl der Wochentage berechnen

21. Mai 2015 12:15

Du durchläufst jeden einzelnen Tag, indem du zu deinem Startdatum immer +1 addierst, bis du beim Enddatum ankommst.
Pro Tag prüfst du den Wochentag DATE2DWY (siehe Onlinehilfe).

Re: Anzahl der Wochentage berechnen

21. Mai 2015 12:16

Schau dir doch mal die Tabelle Date an :)

Re: Anzahl der Wochentage berechnen

21. Mai 2015 12:20

Ach ja, ich denke wieder zu programmiererisch :mrgreen:

@Herbert
Beide Ansätze liefern dir das richtige Ergebnis. Wenn du lieber mit Filtern und COUNT arbeitest, ist McClanes Ansatz sicherlich der schönere für dich.

Re: Anzahl der Wochentage berechnen

21. Mai 2015 12:36

Hallo Natalie, halle McClane,

vielen Dank für die Lösungsansätze.
Werde mich mal daran probieren.
Leider finde ich in unserem System aber keine Tabelle mit Namen "Date"

Grüße
Herbert

Re: Anzahl der Wochentage berechnen

21. Mai 2015 12:38

herb61 hat geschrieben:Leider finde ich in unserem System aber keine Tabelle mit Namen "Date"

Es ist eine virtuelle Tabelle: Du siehst sie nicht im Object Designer, kannst sie aber für Record-Variablen verwenden und dir ihren Inhalt ansehen, indem du mit dem Wizard eine neue Form auf Basis von ihr erstellst. Alle Felder hinzufügen --> Vorschau --> Fertig.

Re: Anzahl der Wochentage berechnen

21. Mai 2015 12:52

Hallo Natalie,

ah... Danke!
Das mit der neuen Form auf die virtuelle Tabelle "Date" hat funktioniert.
Dann werde ich mich mal dranmachen.

Gruß
Herbert

Re: Anzahl der Wochentage berechnen

21. Mai 2015 13:00

Genau Tabelle 2000000007 verwenden und dann

Period Type filtern auf Period Type:Date
Period Start = dein Anfangsdatum..dein Enddatum
Period No. = 1..5

dann ein Count

mfg,
winfy

Re: Anzahl der Wochentage berechnen

21. Mai 2015 13:18

Mir gefällt Natalies Vorschlag besser. Ist weniger Aufwand.

Re: Anzahl der Wochentage berechnen

21. Mai 2015 14:05

McClane hat geschrieben:Ist weniger Aufwand.
Hm, finde ich gar nicht.
Du brauchst ne Datumsvariable, eine Zählvariable, und ein paar Zeilen code.

Bei der Record-Lösung reicht die Recordvariable, weniger Zeilen, und das Ergebnis des COUNTs.

Re: Anzahl der Wochentage berechnen

21. Mai 2015 14:06

McClane hat geschrieben:Mir gefällt Natalies Vorschlag besser. Ist weniger Aufwand.


McClane mir gefällt dein Vorschlag besser. :wink:

mfg,
winfy

Re: Anzahl der Wochentage berechnen

21. Mai 2015 14:13

Das sind doch höchstens drei Zeilen ... also eine weniger. Naaa gut: tut sich nicht so viel :-? :wink:

Re: Anzahl der Wochentage berechnen

21. Mai 2015 14:40

Wenn du im DataItem nun die Filter für Period Type und Period No. fest hinterlegt hast, dann ist es sogar nur ein 2 Zeiler.

Akzeptiere doch das du einen guten Vorschlag gemacht hast. :mrgreen:

mfg,
winfy

Re: Anzahl der Wochentage berechnen

21. Mai 2015 14:44

Ich kann's auch in einer Zeile schreiben :twisted:

Gelöst: Anzahl der Wochentage berechnen

21. Mai 2015 15:53

Viele Dank an alle die mir geantwortet haben!!
Ich habs jetzt so gelöst


IF "Archiving Date" > "Task Date" THEN BEGIN
Kalender.SETRANGE("Period Type",0);
Kalender.SETRANGE("Period Start","Task Date","Archiving Date");
Kalender.SETRANGE("Period No.", 1,5);

IF Kalender.FIND('-') THEN BEGIN
REPEAT
NettoDauer := NettoDauer +1;
UNTIL Kalender.NEXT =0;
END;
END;

Man kann es sicher noch viele eleganter Lösung, aber ich bin kein Profi :-)))

Grüße
Herbert

Re: Anzahl der Wochentage berechnen

21. Mai 2015 16:02

Code ist Code das ist richtig, aber den unteren Teil mit FIND und REPEAT UNTIL würde ich mir an deiner Stelle trotzdem sparen.
Genau das macht COUNT für dich. :-)

Nachdem du die Filter gesetzt hast einfach nur :

Code:
NettoDauer := Kalender.COUNT;


mfg,
winfy