**********
* PCSYTD *
**********
STORE T TO date:okay
IF LEN(datum) = 8
   STORE VAL($(datum,1,2)) TO dag
   STORE VAL($(datum,4,2)) TO maand
   STORE VAL($(datum,7,2)) TO jaar
   IF (dag < 1) .OR. (dag > 31) .OR. (maand < 1) .OR. (maand > 12) .OR. (jaar < 80)
      IF date:must .OR. datum <> "  /  /  "
         STORE "00/00/00" TO datum
         STORE F TO date:okay
      ENDIF
   ENDIF
ELSE
   STORE $(datum,1,8)  TO datum1
   STORE $(datum,10,8) TO datum2
   STORE $(datum,19,8) TO datum3
   STORE 1 TO count
   DO WHILE count < 4
      STORE "datum" + STR(count,1) TO memvar
      IF &memvar <> "  /  /  "
         STORE VAL($(&memvar,1,2)) TO dag
         STORE VAL($(&memvar,4,2)) TO maand
         STORE VAL($(&memvar,7,2)) TO jaar
         IF (dag < 1) .OR. (dag > 31) .OR. (maand < 1) .OR. (maand > 12) .OR. (jaar < 80)
            STORE "00/00/00" TO &memvar
            STORE F TO date:okay
         ENDIF
      ENDIF
      STORE count + 1 TO count
   ENDDO
   IF .NOT. date:okay
      STORE datum1 + ":" + datum2 + ":" + datum3 TO datum
   ENDIF
ENDIF
RETURN
* Dit programma test de datum in de variabele DATUM en zet aan de hand
* van het resultaat de booleaanse variabele DATE:OKAY.
* Indien de datum fout is wordt deze vervangen door 00/00/00.
* De variabele datum kan 2 formaten hebben :
* 1- dd/mm/jj 
* 2- dd/mm/jj:dd/mm/jj:dd/mm/jj
* Indien de booleaanse variabele DATE:MUST waar is, betekent dat, dat
* de datum verplicht moet worden ingevoerd.
*
* EINDE PROGRAMMA
*
