home *** CD-ROM | disk | FTP | other *** search
/ Global Amiga Experience / globalamigaexperience.iso / applications / databases / databasepro / filofax / kalender.rexx < prev    next >
OS/2 REXX Batch file  |  1995-07-10  |  1KB  |  91 lines

  1. /* Kalender */
  2.  
  3. Options Results
  4.  
  5. ADDRESS DataBase
  6.  
  7. RequestText "Kalender erzeugen für Jahr:"
  8. IF RC = 5 THEN
  9.   EXIT
  10. jahr = result
  11.  
  12.  
  13. l = jahr-1
  14. z = 36+((5*l) % 4)-(l % 100)+(l % 400)
  15. z = z-(7*(z % 7))
  16. IF z = 0 THEN
  17.   z = 7
  18. q.1 = z-1
  19.  
  20. tage.1 = 31
  21. tage.2 = 28
  22. IF (jahr // 4) = 0 THEN tage.2 = 29
  23. tage.3 = 31
  24. tage.4 = 30
  25. tage.5 = 31
  26. tage.6 = 30
  27. tage.7 = 31
  28. tage.8 = 31
  29. tage.9 = 30
  30. tage.10 = 31
  31. tage.11 = 30
  32. tage.12 = 31
  33.  
  34. j = 2
  35. DO WHILE j <= 12
  36.   n = j - 1
  37.   q.j = tage.n - 28 + q.n
  38.   IF q.j > 7 THEN
  39.     q.j = q.j - 7
  40.   j = j + 1
  41. END
  42.  
  43. j = 1
  44. k = 1
  45. f = 2
  46.  
  47. Display Off
  48.  
  49. ADD
  50.  
  51. PutData $F1 jahr
  52.  
  53. DO WHILE j < 13
  54.   k = 1
  55.   str = D2C(9)
  56.   DO WHILE k <= tage.j
  57.     n = (q.j + k - 1) // 7
  58.     IF k = 1 THEN
  59.       i = n
  60.     ELSE
  61.       i = 0
  62.     DO WHILE i > 0
  63.       str = str || "   "
  64.       i = i - 1
  65.     END
  66.     IF k < 10 THEN
  67.       str = str || " "
  68.     str = str || k || " "
  69.     IF n = 6 THEN DO
  70.       PutData $F || f str
  71.       f = f + 1
  72.       str = D2C(9)
  73.     END
  74.     k = k + 1
  75.   END
  76.   IF n < 6 THEN DO
  77.     PutData $F || f str
  78.     f = f + 1
  79.   END
  80.   DO WHILE (f-2)//6 ~= 0
  81.     f = f + 1
  82.   END
  83.   j = j + 1
  84.   k = 1
  85. END
  86.  
  87. Display On
  88. Show
  89.  
  90. ADDRESS
  91.