home *** CD-ROM | disk | FTP | other *** search
- CONST Copyright = ' (c) 1991 G. Blumert, Hochdonner Chaussee 16, D-2224 Burg/Dithm.';
-
-
-
- TYPE
-
- Header_des_kalenderfiles = RECORD
- cor : STRING[Length(Copyright)];
- Kennung : CHAR;
- Anzahl_der_Wochentage : BYTE;
- Anzahl_der_Monate : BYTE;
- Anzahl_der_Feiertage : WORD;
- SamstagsNr : BYTE;
- SamstagFrei : BOOLEAN;
- SonntagsNr : BYTE;
- SonntagFrei : BOOLEAN;
- END;
-
- Feiertagstabelle = RECORD
- Beachten : BOOLEAN;
- JMin, JMax : INTEGER;
- CASE Art: CHAR OF
- 'A','O': (Differenz: INTEGER);
- 'W': (T_min, T_max: WORD; Wochentagnummer: BYTE);
- 'D','D': (Tagnummer: WORD);
-
- END;
- (********************************************************)
- CONST
- AWt = 10;
- LWtN = 8;
- AdM = 12;
- LdMN = 10;
- AdF = 20;
- LdFN = 18;
- Samstag = 8; SamsFrei = FALSE;
- Sonntag = 9; SonnFrei = TRUE;
-
- TYPE
- wt_string = STRING[LWtN];
- m_string = STRING[LdMN];
- ft_string = STRING[LdFN];
-
- CONST
-
- feiertage: ARRAY[1..AdF] OF ft_string = (
- 'Septuagésime', { 1}
- 'Cendres', { 2}
- 'Páques', { 3}
- 'Rogations', { 4}
- 'Rogations', { 5}
- 'Rogations', { 6}
- 'Ascension', { 7}
- 'Pentecóte', { 8}
- 'Trinité', { 9}
- 'Féte-Dieu', {10}
- '1. Advent', {11}
- 'Heiligabend', {12}
- '1. Weihnachtstag', {13}
- '2. Weihnachtstag', {14}
- 'Féte de la Vertu', {15}
- '- du Génie', {16}
- '- du Travail', {17}
- '- de l''Opinion', {18}
- '- des Recompenses', {19}
- '- de la Revolution');{20}
-
- ftagdef: ARRAY[1..adf] OF Feiertagstabelle = (
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'O'; Differenz: -63), {Septuagésime}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'O'; Differenz: -46), {Cendres}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'O'; Differenz: 0), {Páques}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'O'; Differenz: 36), {Rogations}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'O'; Differenz: 37), {Rogations}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'O'; Differenz: 38), {Rogations}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'O'; Differenz: 39), {Ascension}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'O'; Differenz: 49), {Pentecóte}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'O'; Differenz: 56), {Trinité}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'O'; Differenz: 60), {Féte-Dieu}
- (Beachten: FALSE; JMin: 0; JMax: 0; Art: 'A'; Differenz: 0), {1. Advent }
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'D'; Tagnummer: 358), {Heiligabend }
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'D'; Tagnummer: 359), {1. Weihnachtstag}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'D'; Tagnummer: 360), {2. Weihnachtstag}
- (Beachten: FALSE; JMin: 0; JMax: 0; Art: 'F'; Tagnummer: 361), {Genius}
- (Beachten: FALSE; JMin: 0; JMax: 0; Art: 'F'; Tagnummer: 362), {Arbeit}
- (Beachten: FALSE; JMin: 0; JMax: 0; Art: 'F'; Tagnummer: 363), {Mut}
- (Beachten: FALSE; JMin: 0; JMax: 0; Art: 'F'; Tagnummer: 364), {Auszeichnung}
- (Beachten: FALSE; JMin: 0; JMax: 0; Art: 'F'; Tagnummer: 365), {Kritik}
- (Beachten: FALSE; JMin: 0; JMax: 0; Art: 'F'; Tagnummer: 366)); {Sansculotte}
-
- wochentage: ARRAY[0..Pred(AWt)] OF wt_string = (
- 'Primedi', 'Duodi', 'Tridi', 'Quartidi', 'Quintidi', 'Sextidi',
- 'Septidi', 'Octidi', 'Nonodi', 'Décadi');
-
- monate: ARRAY[1..AdM] OF m_string = (
- 'vendémaire', 'brumaire', 'frimaire', 'nivôse', 'pluviôse', 'ventôse',
- 'germinal', 'floréal', 'prairial', 'messidor', 'thermidor', 'fructidor');
-
- VAR f: FILE;
- f_head: Header_des_Kalenderfiles;
- i: BYTE;
- BEGIN
- Assign(f,'f_kal.GK3');
- Rewrite(f,1);
- WITH f_head DO BEGIN
- Cor := CopyRight;
- Kennung := 'F';
- Anzahl_der_Wochentage := AWt;
- Anzahl_der_Monate := AdM;
- Anzahl_der_Feiertage := AdF;
- SamstagsNr := Samstag;
- SamstagFrei := Samsfrei;
- SonntagsNr := Sonntag;
- SonntagFrei := SonnFrei
- END;
- BlockWrite(f,f_head,SizeOf(f_head)); {Kopf in Datei Schreiben}
-
- FOR i := 0 TO Pred(AWt) DO BlockWrite(f, wochentage[i],Succ(Length(wochentage[i])));
- FOR i := 1 TO AdM DO BlockWrite(f, monate[i], Succ(Length((monate[i]))));
- FOR i := 1 TO (adf) DO BlockWrite(f,feiertage[i],Succ(Length(feiertage[i])));
-
- BlockWrite(f,ftagdef,SizeOf(ftagdef));
- Close(f);
- END.
-