home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / MBUG / MBUG098.ARC / USER0.LBR / GENFIL.CMD < prev    next >
OS/2 REXX Batch file  |  1979-12-31  |  10KB  |  404 lines

  1. * File:- GENFIL.CMD
  2. * Genealogy Story Data Entry Command Program
  3. * By, J.L.Read. Merrylands. NSW.
  4. * Date:- 06/11/87
  5. * Update:- 25/04/88
  6. * Version 1.2
  7. ERASE
  8. @ 11,32 SAY"ONE MOMENT "
  9. USE B:PERSONS INDEX B:REF
  10. SELECT SECONDARY
  11. USE B:STORIES INDEX B:STORYREF
  12. SELECT PRIMARY
  13. ERASE
  14. SET BELL ON
  15. SET TALK OFF
  16. GO TOP
  17. STORE REF:NO TO CURPER
  18. DO GENSCR
  19. SET INTEN ON
  20. @ 20,6 SAY"<A> Add"
  21. @ 20,16 SAY"<E> Edit"
  22. @ 20,27 SAY"<S> Search"
  23. @ 20,40 SAY"<F> Forwrd"
  24. @ 20,53 SAY"<B> Back"
  25. @ 20,64 SAY"<D> Delete"
  26. @ 21,6 SAY"<M> Mnu"
  27. @ 21,16 SAY"<P> Prnt"
  28. @ 21,27 SAY"<L> Lst En"
  29. @ 21,40 SAY"<T> 1st En"
  30. SET INTEN OFF
  31.  DO GENGET
  32.  CLEAR GETS
  33.  SELECT PRIMARY
  34.  RELEASE CURPER
  35. STORE T TO SCREEN3
  36. DO WHILE SCREEN3
  37. @ 3,0
  38. @ 3,1 SAY"ENTER COMMAND "
  39. SET CONSOLE OFF
  40. WAIT TO COMMAND
  41. STORE !(COMMAND) TO COMMAND
  42. SET CONSOLE ON
  43. IF COMMAND = "M"
  44. ERASE
  45. @ 11,32 SAY"CLOSING FILE "
  46.  CLEAR
  47.  RESTORE FROM MEMRET
  48.  RELEASE LOOK1,CHOICE1,CHOICE2,LOOK2
  49.  SET BELL OFF
  50.  RETURN
  51. ENDIF
  52. DO CASE
  53. CASE COMMAND = "A"
  54.   @ 3,0
  55.   STORE REF:NO TO CURPER
  56.   SELECT SECONDARY
  57.   FIND &CURPER
  58.   IF # <>0
  59.   SELECT PRIMARY
  60.   DO GENGET
  61.   CLEAR GETS
  62.   @ 3,0
  63.   @ 3,1 SAY"Record Is Already On File."
  64.   @ 3,28 SAY CHR(7)
  65.   STORE 1 TO XX
  66.   DO WHILE XX<110
  67.   STORE XX+1 TO XX
  68.   ENDDO WHILE XX<110
  69.   RELEASE XX,MRECNO
  70.   @ 3,0
  71.   SELECT PRIMARY
  72.   LOOP
  73.   ENDIF # <>0
  74.   @ 3,0
  75.   @ 3,1 SAY"Adding a New Story.  Enter  <CR>  To Abort Entry."
  76.   @ 12,25 SAY CURPER
  77.   STORE "                                                            " TO ;
  78. MTEXT1
  79.   STORE "                                                            " TO ;
  80. MTEXT2
  81.   STORE "                                                            " TO ;
  82. MTEXT3
  83.   STORE "                                                            " TO ;
  84. MTEXT4
  85.   STORE "                                                            " TO ;
  86. MTEXT5
  87.   STORE "                                                            " TO ;
  88. MTEXT6
  89.   @ 13,10 GET MTEXT1
  90.   @ 14,10 GET MTEXT2
  91.   @ 15,10 GET MTEXT3
  92.   @ 16,10 GET MTEXT4
  93.   @ 17,10 GET MTEXT5
  94.   @ 18,10 GET MTEXT6
  95.   *  @ 3,0
  96.   *  @ 3,1 SAY"Adding a New Story.  Enter  <CR>  To Abort Entry."
  97.   READ
  98.   IF $(MTEXT1,1,6)= "      "
  99.   @ 13,10
  100.   @ 13,71 SAY"<"
  101.   @ 13,78 SAY"|"
  102.   @ 14,10
  103.   @ 14,71 SAY"<"
  104.   @ 14,78 SAY"|"
  105.   @ 15,10
  106.   @ 15,71 SAY"<"
  107.   @ 15,78 SAY"|"
  108.   @ 16,10
  109.   @ 16,71 SAY"<"
  110.   @ 16,78 SAY"|"
  111.   @ 17,10
  112.   @ 17,71 SAY"<"
  113.   @ 17,78 SAY"|"
  114.   @ 18,10
  115.   @ 18,71 SAY"<"
  116.   @ 18,78 SAY"|"
  117.   @ 15,33 SAY"Gone !!!."
  118.   STORE 1 TO XX
  119.   DO WHILE XX<50
  120.   STORE XX+1 TO XX
  121.   ENDDO WHILE XX<50
  122.   RELEASE XX
  123.   @ 15,30
  124.   @ 15,71 SAY"<"
  125.   @ 15,78 SAY"|"
  126.   RELEASE MTEXT1,MTEXT2,MTEXT3,MTEXT4,MTEXT5,MTEXT6,CURPER
  127.   SELECT PRIMARY
  128.   DO GENGET
  129.   CLEAR GETS
  130.   SELECT PRIMARY
  131.   @ 3,0
  132.   LOOP
  133.   ENDIF
  134.   SELECT SECONDARY
  135.   APPEND BLANK
  136.   REPLACE REF:CODE WITH CURPER,TEXT1 WITH MTEXT1
  137.   REPLACE TEXT2 WITH MTEXT2,TEXT3 WITH MTEXT3
  138.   REPLACE TEXT4 WITH MTEXT4,TEXT5 WITH MTEXT5,TEXT6 WITH MTEXT6
  139.  RELEASE MTEXT1,MTEXT2,MTEXT3,MTEXT4,MTEXT5,MTEXT6,CURPER
  140.  CLEAR GETS
  141.  @ 12,25 SAY REF:CODE
  142.  @ 12,60 SAY STR(#,4)
  143.  SELECT PRIMARY
  144. CASE COMMAND = "E"
  145.  @ 3,0
  146.  @ 3,1 SAY"Edit, Record."
  147.  STORE REF:NO TO CURPER
  148.   SELECT SECONDARY
  149.   IF #
  150.   SELECT PRIMARY
  151.   DO GENGET
  152.   READ
  153.   CLEAR GETS
  154.  ELSE
  155.  @ 3,0
  156.  @ 3,1 SAY"Sorry, I Can't Edit a Story That Dosn't Exist !!!."
  157.  STORE 1 TO XX
  158.  DO WHILE XX<120
  159.  STORE XX+1 TO XX
  160.  ENDDO WHILE XX<120
  161.  RELEASE XX
  162.  ENDIF
  163.  SELECT PRIMARY
  164.   RELEASE CURPER
  165. CASE COMMAND = "B"
  166.  SKIP -1
  167.  STORE REF:NO TO CURPER
  168.   DO GENGET
  169.  CLEAR GETS
  170.  SELECT PRIMARY
  171.  RELEASE CURPER
  172. CASE COMMAND = "F"
  173.  SKIP
  174.  STORE REF:NO TO CURPER
  175.   DO GENGET
  176.  CLEAR GETS
  177.  SELECT PRIMARY
  178.  RELEASE CURPER
  179. CASE COMMAND = "D"
  180.  @ 3,0
  181.  @ 3,1 SAY"Delete This Story, <Y> or <N>. "
  182.  SET CONSOLE OFF
  183.  WAIT TO COMMAND
  184.  SET CONSOLE ON
  185.  IF !(COMMAND) = "Y"
  186.  STORE REF:NO TO CURPER
  187.  SELECT SECONDARY
  188.  FIND &CURPER
  189.  IF #=0
  190.  @ 3,0
  191.  @ 3,1 SAY"There Is NO Story To Delete !!!."
  192.  @ 3,33 SAY CHR(7)
  193.  STORE 1 TO XX
  194.  DO WHILE XX<120
  195.  STORE XX+1 TO XX
  196.  ENDDO WHILE XX<120
  197.  RELEASE XX,CURPER
  198.  SELECT PRIMARY
  199.  @ 3,0
  200.  LOOP
  201.  ENDIF #=0
  202.  @ 3,0
  203.  @ 3,1 SAY"Deleting Story."
  204.  DELETE
  205.  SELECT PRIMARY
  206.   DO GENGET
  207.   CLEAR GETS
  208.   ELSE !(COMMAND) <> "Y"
  209.   STORE REF:NO TO CURPER
  210.   DO GENGET
  211.  CLEAR GETS
  212.  ENDIF
  213.  SELECT PRIMARY
  214.  RELEASE CURPER
  215. CASE COMMAND = "S"
  216.  @ 3,0
  217.  STORE REF:NO TO MREF:NO
  218.  STORE "    " TO CURPER
  219.  @ 3,1 SAY"Enter Ref.Number To Search"
  220.  @ 3,28 GET CURPER PICTURE "9999"
  221.  SET CONFIRM ON
  222.  READ
  223.  SET CONFIRM OFF
  224.  FIND &CURPER
  225.  IF # = 0
  226.  @ 3,40 SAY"Record Not On File, Press <RETURN> "
  227.  SET CONSOLE OFF
  228.  WAIT
  229.  SET CONSOLE ON
  230.   FIND &MREF:NO
  231.   RELEASE CURPER
  232.   STORE REF:NO TO CURPER
  233.   DO GENGET
  234.   CLEAR GETS
  235.   RELEASE MREF:NO
  236.   RELEASE CURPER
  237.  ELSE # > 0
  238.  DO GENGET
  239.  CLEAR GETS
  240.  ENDIF
  241.  SELECT PRIMARY
  242. CASE COMMAND = "L"
  243.  GO BOTTOM
  244.  STORE REF:NO TO CURPER
  245.  DO GENGET
  246.  CLEAR GETS
  247.  SELECT PRIMARY
  248.  RELEASE CURPER
  249. CASE COMMAND = "T"
  250.  GO TOP
  251.  STORE REF:NO TO CURPER
  252.  DO GENGET
  253.  CLEAR GETS
  254.  SELECT PRIMARY
  255.  RELEASE CURPER
  256. CASE COMMAND = "P"
  257.  @ 3,0
  258.  @ 3,1 SAY"Do You Want To Print This Record,  <Y> or <N> "
  259.  SET CONSOLE OFF
  260.  WAIT TO COMMAND
  261.  SET CONSOLE ON
  262.  IF !(COMMAND)= "Y"
  263.  SELECT PRIMARY
  264.  @ 3,0
  265.  SET INTEN ON
  266.  @ 3,1 SAY" TURN YOUR PRINTER ON "
  267.  SET INTEN OFF
  268.  @ 3,27 SAY"Press  <RETURN>  When Ready "
  269.  SET CONSOLE OFF
  270.  WAIT
  271.  SET CONSOLE ON
  272.  @ 3,0
  273.  @ 3,1 SAY"Printing Record,  PLEASE WAIT "
  274.  SET CONSOLE OFF
  275. STORE REF:NO TO CURPER
  276. SET PRINT ON
  277. ?
  278. ? "             &OUT -= G E N E A L O G Y =- &IN"
  279. ? " Date:- "+ DATE()
  280. ? "+======================================================================;
  281. =====+"
  282. ? "|       Surname :-",LAST:NAME,"   <--- Reference Number:-",REF:NO,"    ;
  283.      |"
  284. IF BIRTH:DATE =0
  285. ? "|       First Name :-",FIRST:NAME,"        Date Of Birth:- Not Known   ;
  286.      |"
  287. ELSE BIRTH:DATE >0
  288.  STORE STR(BIRTH:DATE,8) TO MBRTH
  289.  STORE FIRST:NAME TO MFNAM
  290. ? "|       First Name :-",MFNAM,"        Date Of Birth:-",$(MBRTH,1,4);
  291. +"."+$(MBRTH,5,2)+"/"+$(MBRTH,7,2),"      |"
  292. ENDIF
  293. IF DEATH:DATE =0
  294. ? "|       Second Name:-",MID:NAME,"        Date Deceased:- Not Deceased ;
  295.     |"
  296. ENDIF
  297. IF DEATH:DATE =9
  298. ? "|       Second Name:-",MID:NAME,"        Date Deceased:- Not Known    ;
  299.     |"
  300. ENDIF
  301. IF DEATH:DATE >0 .AND. DEATH:DATE <9
  302. ? "|       Second Name:-",MID:NAME,"        Date Deceased:-              ;
  303.     |"
  304. ENDIF
  305. IF DEATH:DATE >9
  306.  STORE STR(DEATH:DATE,8) TO MDETH
  307.  STORE MID:NAME TO MMIDN
  308. ? "|       Second Name:-",MMIDN,"        Date Deceased:-",$(MDETH,1,4);
  309. +"."+$(MDETH,5,2)+"/"+$(MDETH,7,2),"      |"
  310. ENDIF
  311. ? "|       Known As   :-",NICK:NAME,"        Gender Of Person:-",SEX,"   ;
  312.          |"
  313. ? "|       Birth Place:-",BIRTHPL,"     Resting Place:-",DEATHPL," |"
  314. ? "+=====================================+================================;
  315. =====+"
  316. ? "|        Fathers Ref No:-",FATHER:REF,"       |        Mothers Ref ;
  317. No:-",MOTHER:REF,"       |"
  318. ? "+=====================================+================================;
  319. =====+"
  320. ? "|                           -==<S P O U S E S>==-                      ;
  321.      |"
  322. ? "|  Plc1:-",MARGEPL1,"  Plc2:-",MARGEPL2,"Plc3:-",MARGEPL3,"  |"
  323. IF SPSE1:DATE =0
  324. ? "|  Spouse 1 Ref:-",SPSE1:REF,"     No.Children:-",SPSE1:CHIL,"     ;
  325. Marge Date:-             |"
  326. ELSE
  327. STORE STR(SPSE1:DATE,8) TO MMARG1
  328. ? "|  Spouse 1 Ref:-",SPSE1:REF,"     No.Children:-",SPSE1:CHIL,"     ;
  329. Marge Date:-",$(MMARG1,1,4)+"."+$(MMARG1,5,2)+"/"+$(MMARG1,7,2)," |"
  330. ENDIF
  331. IF SPSE2:DATE =0
  332. ? "|  Spouse 2 Ref:-",SPSE2:REF,"     No.Children:-",SPSE2:CHIL,"     ;
  333. Marge Date:-             |"
  334. ELSE
  335. STORE STR(SPSE2:DATE,8) TO MMARG2
  336. ? "|  Spouse 2 Ref:-",SPSE2:REF,"     No.Children:-",SPSE2:CHIL,"     ;
  337. Marge Date:-",$(MMARG2,1,4)+"."+$(MMARG2,5,2)+"/"+$(MMARG2,7,2)," |"
  338. ENDIF
  339. IF SPSE3:DATE =0
  340. ? "|  Spouse 3 Ref:-",SPSE3:REF,"     No.Children:-",SPSE3:CHIL,"     ;
  341. Marge Date:-             |"
  342. ELSE
  343. STORE STR(SPSE3:DATE,8) TO MMARG3
  344. ? "|  Spouse 3 Ref:-",SPSE3:REF,"     No.Children:-",SPSE3:CHIL,"     ;
  345. Marge Date:-",$(MMARG3,1,4)+"."+$(MMARG3,5,2)+"/"+$(MMARG3,7,2)," |"
  346. ENDIF
  347. ? "+======================================================================;
  348. =====+"
  349. SELECT SECONDARY
  350. FIND &CURPER
  351. ? "|   &CURPER            &OUT -== BIOGRAPHY ==- &IN                  |"
  352. ? "+======================================================================;
  353. =====+"
  354. IF #=0
  355. ? "|                                                                      ;
  356.      |"
  357. ? "|                                                                      ;
  358.      |"
  359. ? "|                             No Story On File.                        ;
  360.      |"
  361. ? "|                                                                      ;
  362.      |"
  363. ? "|                                                                      ;
  364.      |"
  365. ? "|                                                                      ;
  366.      |"
  367. ELSE
  368. ? "|      ",TEXT1,"       |"
  369. ? "|      ",TEXT2,"       |"
  370. ? "|      ",TEXT3,"       |"
  371. ? "|      ",TEXT4,"       |"
  372. ? "|      ",TEXT5,"       |"
  373. ? "|      ",TEXT6,"       |"
  374. ENDIF
  375. ? "+======================================================================;
  376. =====+"
  377. ?
  378. ?
  379. ?
  380. ?
  381. ?
  382. ?
  383. SELECT PRIMARY
  384. SET PRINT OFF
  385. SET CONSOLE ON
  386. RELEASE MBRTH,MFNAM,MDETH,MMIDN,MMARG1,MMARG2,MMARG3,CURPER
  387.  @ 3,0
  388.  ELSE COMMAND <> "Y"
  389.  ENDIF
  390. OTHERWISE
  391. @ 3,0
  392. SET INTEN ON
  393. @ 3,2 SAY"<"+COMMAND+">"
  394. SET INTEN OFF
  395. @ 3,6 SAY"is Not a Valid Command."
  396. STORE 1 TO XC
  397. DO WHILE XC <90
  398. STORE XC+1 TO XC
  399. ENDDO WHILE XC<90
  400. RELEASE XC
  401. ENDCASE
  402. ENDDO
  403. RETURN
  404.