home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / mbug / mbug073.arc / GENELOGY.LBR / GROUP.CMD < prev    next >
OS/2 REXX Batch file  |  1979-12-31  |  5KB  |  184 lines

  1. * GROUP.CMD - to display a Family Group sheet
  2. STORE ' ' TO incnotes,prnt
  3. @ 21,25 SAY "Include Notes ? (Y/N) "
  4. DO WHILE @(incnotes,'YN') = 0
  5.    @ 21,48 GET incnotes PICTURE "!"
  6.    READ
  7. ENDDO
  8. @ 5,1 SAY chr(27)+'Y'
  9. DO WHILE t
  10.    ERASE
  11.    STORE f TO kidprint
  12.    GO &mno
  13.    ? "NAME : "+CHR(27)+"X"+TRIM(firstnms)+" "+TRIM(surname)+CHR(27)+"Y";
  14.       +"  "+STR(#,4)+"#"
  15.    ? "BORN : "+TRIM(borndate)+"  "+bornat
  16.    IF dieddate > ' '
  17.       ? "DIED : "+TRIM(dieddate)+"  "+diedat
  18.    ENDIF
  19.    DO CASE
  20.      CASE spouse1 > 0 .AND. spouse2 = 0
  21.        ? "MARRIED : "+TRIM(weddate)+" "+TRIM(wedat)
  22.        GO spouse1
  23.        ? "          "+TRIM(firstnms)+" "+TRIM(surname)+"  "+STR(#,4)+"#"
  24.        ?? " b. "+borndate
  25.        IF dieddate > ' '
  26.          ?? " d. "+dieddate
  27.        ENDIF
  28.      CASE spouse1 > 0 .AND. spouse2 > 0
  29.        ? "MARRIED (1st.) : "+TRIM(weddate)+" "+TRIM(wedat)
  30.        GO spouse1
  31.        ? "                 "+TRIM(firstnms)+" "+TRIM(surname)+"  "+STR(#,4)+"#"
  32.        ?? " b. "+borndate
  33.        IF dieddate > ' '
  34.           ?? " d. "+dieddate
  35.        ENDIF
  36.        GO &mno
  37.        GO spouse2
  38.        ? "MARRIED (2nd.) : "+TRIM(weddate)+" "+TRIM(wedat)
  39.        ? "                 "+TRIM(firstnms)+" "+TRIM(surname)+"  "+STR(#,4)+"#"
  40.        ?? " b. "+borndate
  41.        IF dieddate > ' '
  42.          ?? " d. "+dieddate
  43.        ENDIF
  44.    ENDCASE
  45.    GO &mno
  46.    DO CASE
  47.      CASE spouse1 > 0 .AND. spouse2 = 0
  48.        IF kid > 0
  49.          ?
  50.          ? "ISSUE :-"
  51.          STORE t TO kidprint
  52.        ENDIF
  53.      CASE spouse2 > 0
  54.        GO spouse1
  55.        IF kid > 0
  56.          ?
  57.          ? "ISSUE (1st. Marriage) :-"
  58.          GO kid
  59.          ? firstnms+"b. "+borndate
  60.          IF spouse1 > 0
  61.            ?? " m. "+weddate
  62.          ELSE
  63.            ?? "               "
  64.          ENDIF
  65.          IF dieddate > ' '
  66.            ?? " d. "+dieddate+"  "+STR(#,4)+"#"
  67.          ELSE
  68.            ?? "                 "+STR(#,4)+"#"
  69.          ENDIF
  70.          DO WHILE sib > 0
  71.            GO sib
  72.            ? firstnms+"b. "+borndate
  73.            IF spouse1 > 0
  74.               ?? " m. "+weddate
  75.            ELSE
  76.               ?? "               "
  77.            ENDIF
  78.            IF dieddate > ' '
  79.               ?? " d. "+dieddate+"  "+STR(#,4)+"#"
  80.            ELSE
  81.               ?? "                 "+STR(#,4)+"#"
  82.            ENDIF
  83.          ENDDO
  84.        ENDIF
  85.        GO &mno
  86.        GO spouse2
  87.        IF kid > 0
  88.          ?
  89.          ? "ISSUE (2nd. Marriage) :-"
  90.          STORE t TO kidprint
  91.        ENDIF
  92.    ENDCASE
  93.    IF kidprint
  94.       GO kid
  95.       ? firstnms+"b. "+borndate
  96.       IF spouse1 > 0
  97.          ?? " m. "+weddate
  98.       ELSE
  99.          ?? "               "
  100.       ENDIF
  101.       IF dieddate > ' '
  102.         ?? " d. "+dieddate+"  "+STR(#,4)+"#"
  103.       ELSE
  104.         ?? "                 "+STR(#,4)+"#"
  105.       ENDIF
  106.       DO WHILE sib > 0
  107.          GO sib
  108.          ? firstnms+"b. "+borndate
  109.          IF spouse1 > 0
  110.             ?? " m. "+weddate
  111.          ELSE
  112.             ?? "               "
  113.          ENDIF
  114.          IF dieddate > ' '
  115.            ?? " d. "+dieddate+"  "+STR(#,4)+"#"
  116.          ELSE
  117.            ?? "                 "+STR(#,4)+"#"
  118.          ENDIF
  119.       ENDDO
  120.    ENDIF
  121.    GO &mno
  122.    ?
  123.    IF fath>0
  124.       GO fath
  125.       ? "FATHER : "+TRIM(firstnms)+" "+TRIM(surname)+"   b. "+borndate
  126.       IF dieddate > ' '
  127.          ?? " d. "+dieddate+"  "+STR(#,4)+"#"
  128.       ELSE
  129.          ?? "  "+STR(#,4)+"#"
  130.       ENDIF
  131.    ELSE
  132.       ? "FATHER :"
  133.    ENDIF
  134.    GO &mno
  135.    IF moth>0
  136.       GO moth
  137.       ? "MOTHER : "+TRIM(firstnms)+" "+TRIM(surname)+"   b. "+borndate
  138.       IF dieddate > ' '
  139.          ?? " d. "+dieddate+"  "+STR(#,4)+"#"
  140.       ELSE
  141.          ?? "  "+STR(#,4)+"#"
  142.       ENDIF
  143.    ELSE
  144.       ? "MOTHER :"
  145.    ENDIF
  146.    ?
  147.    IF incnotes = 'Y'
  148.       SELECT SECONDARY
  149.       GO TOP
  150.       LOCATE FOR VAL($(line,1,4)) = VAL(mno)
  151.       IF .NOT. EOF
  152.          ? $(line,@('  ',line)+2,len(line))
  153.          SKIP
  154.          DO WHILE (RANK(line) < 48 .OR. RANK(line) > 57) .AND. .NOT. EOF
  155.             ? TRIM(line)
  156.             SKIP
  157.          ENDDO
  158.          ?
  159.       ENDIF
  160.    ENDIF
  161.    SELECT PRIMARY
  162.    USE b:family
  163.    SET PRINT OFF
  164.    IF !(prnt) <> "Y"
  165.       ?
  166.       ? "Printed Copy Required ? (Y/N) "
  167.       SET CONSOLE OFF
  168.       WAIT TO prnt
  169.       SET CONSOLE ON
  170.       IF !(prnt) = "Y"
  171.          ?? "      Turn Printer ON "
  172.          SET PRINT ON
  173.          ?? "  "
  174.          ? CHR(27)+"E"
  175.          SET MARGIN TO 8
  176.          LOOP
  177.       ENDIF
  178.    ENDIF
  179.    ?? CHR(27)+"N"
  180.    SET MARGIN TO 0
  181.    SET PRINT OFF
  182.    RETURN
  183. ENDDO
  184.