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': (Tagnummer: WORD);
-
- END;
- (********************************************************)
- CONST
- AWt = 7;
- LWtN = 10;
- AdM = 12;
- LdMN = 13;
- AdF = 34;
- LdFN = 18;
- Samstag = 5; SamsFrei = TRUE;
- Sonntag = 6; SonnFrei = TRUE;
-
- TYPE
- wt_string = STRING[LWtN];
- m_string = STRING[LdMN];
- ft_string = STRING[LdFN];
-
- CONST
- feiertage: ARRAY[1..AdF] OF ft_string = (
- 'Neujahr', { 1}
- 'Aschura', { 2}
- 'Moh''s Geburt', { 3}
- 'Moh''s Tod', { 4}
- 'Has.al-Bannas Tod', { 5}
- 'Ali''s Geburt', { 6}
- 'Ali''s Tod', { 7}
- 'Erober. Konstant.', { 8}
- 'Lail. reghaib', { 9}
- 'Lail. miradsch', {10}
- 'Huss. Geburt', {11}
- 'Lail. berat', {12}
- 'erster Ramadan', {13}
- 'Khadidschas Tod', {14}
- 'Erober. Mekkas', {15}
- 'Lail. Kadar', {16}
- 'letzter Ramadan', {17}
- 'gr. Bairam', {18}
- 'gr. Bairam', {19}
- 'gr. Bairam', {20}
- 'Herab Kaaba', {21}
- 'kl. Bairam', {22}
- 'kl. Bairam', {23}
- 'kl. Bairam', {24}
- 'kl. Bairam', {25}
- 'Ostern', {26}
- 'Karfreitag', {27}
- 'Ostermontag', {28}
- 'Himmelfahrt', {29}
- 'Pfingstsonntag', {30}
- 'Pfingstmontag', {31}
- 'Fronleichnam', {32}
- 'Allerheiligen', {33}
- '1. Advent'); {34}
-
-
- ftagdef: ARRAY[1..adf] OF Feiertagstabelle = (
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'M'; Tagnummer: 1), {Neujahr}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'M'; Tagnummer: 10), {Aschura}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'M'; Tagnummer: 59+12), {Meulud}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'M'; Tagnummer: 59+13), {Moh's Todestag}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'M'; Tagnummer: 89+14), {Hasan al-Bannas Todestag}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'M'; Tagnummer: 118+8), {Ali's GebT}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'M'; Tagnummer: 118+15), {Ali's Todestag}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'M'; Tagnummer: 118+20), {Eroberung Konstantinopels}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'M'; Tagnummer: 177+4), {Lail. reghaib}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'M'; Tagnummer: 177+27), {Lail. miradsch}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'M'; Tagnummer: 207+3), {Huss GebT.}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'M'; Tagnummer: 207+15), {Lail. berat}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'M'; Tagnummer: 236+1), {1. Ramadan}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'M'; Tagnummer: 236+10), {Khadidschas Tod}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'M'; Tagnummer: 236+19), {Erober. Mekkas}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'M'; Tagnummer: 236+27), {Lail kadar}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'M'; Tagnummer: 236+30), {Letzter Ramadan}
- (Beachten: TRUE; JMin: 0; JMax: 0; ARt: 'M'; Tagnummer: 266+1), {gr. Bairam}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'M'; Tagnummer: 266+2), {gr. Bairam}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'M'; Tagnummer: 266+3), {gr. Bairam}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'M'; Tagnummer: 295+5), {Herab Kaaba}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'M'; Tagnummer: 325+10), {kl. Bairam}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'M'; Tagnummer: 325+11), {kl. Bairam}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'M'; Tagnummer: 325+12), {kl. Bairam}
- (Beachten: TRUE; JMin: 0; JMax: 0; Art: 'M'; Tagnummer: 325+13), {kl. Bairam}
- (Beachten: FALSE; JMin: 0; JMax: 0; Art: 'O'; Differenz: 0), {Ostern}
- (Beachten: FALSE; JMin: 0; JMax: 0; Art: 'O'; Differenz: -2), {Karfreitag}
- (Beachten: FALSE; JMin: 0; JMax: 0; Art: 'O'; Differenz: 1), {Ostermontag}
- (Beachten: FALSE; JMin: 0; JMax: 0; Art: 'O'; Differenz: 39), {Himmelfahrt }
- (Beachten: FALSE; JMin: 0; JMax: 0; Art: 'O'; Differenz: 49), {Pfingstsonntag }
- (Beachten: FALSE; JMin: 0; JMax: 0; Art: 'O'; Differenz: 50), {Pfingstmontag }
- (Beachten: FALSE; JMin: 0; JMax: 0; Art: 'O'; Differenz: 60), {Fronleichnam }
- (Beachten: FALSE; JMin: 0; JMax: 0; Art: 'D'; Tagnummer: 305), {Allerheiligen }
- (Beachten: FALSE; JMin: 0; JMax: 0; Art: 'A'; Differenz: 0)); {1. Advent}
-
-
- wochentage: ARRAY[0..Pred(AWt)] OF wt_string = (
- 'al-itnain','at-tulata`','al`arbi`a`','al-chamis',
- 'aldschum`a','as-sabt','al-`ahad');
-
- monate: ARRAY[1..AdM] OF m_string = (
- 'Muharram','Safar','Rabi` I.','Rabi` II.','Dschumada I.',
- 'Dschumada II.','Radschab','Scha`ban','Ramadan','Schawwal',
- 'Dsu l-qa`da','Dsu l-hidja');
-
- VAR f: FILE;
- f_head: Header_des_Kalenderfiles;
- i: BYTE;
- BEGIN
- Assign(f,'M_KAL2.GK3');
- Rewrite(f,1);
- WITH f_head DO BEGIN
- cor := copyright;
- Kennung := 'N';
- 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.
-