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 / MBUG108.ARC / GEN-DSKA.LBR / GENFIL.CMD < prev    next >
OS/2 REXX Batch file  |  1979-12-31  |  10KB  |  408 lines

  1. * File:- GENFIL.CMD
  2. * Genealogy Story Data Entry Command Program
  3. * By, J.L.Read. Merrylands. NSW.
  4. * Date:- 19/09/87
  5. * Update:-
  6. * Version 1.1
  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,1 SAY"ENTER COMMAND "
  38. SET CONSOLE OFF
  39. WAIT TO COMMAND
  40. STORE !(COMMAND) TO COMMAND
  41. SET CONSOLE ON
  42. IF COMMAND = "M"
  43. ERASE
  44. @ 11,32 SAY"CLOSING FILE "
  45.  CLEAR
  46.  RESTORE FROM MEMRET
  47.  RELEASE LOOK1,CHOICE1,CHOICE2,LOOK2
  48.  SET BELL OFF
  49.  RETURN
  50. ENDIF
  51. DO CASE
  52. CASE COMMAND = "A"
  53.   @ 3,0
  54.   STORE REF:NO TO CURPER
  55.   SELECT SECONDARY
  56.   FIND &CURPER
  57.   IF # <>0
  58.   SELECT PRIMARY
  59.   DO GENGET
  60.   CLEAR GETS
  61.   @ 3,0
  62.   @ 3,1 SAY"Record Is Already On File."
  63.   @ 3,28 SAY CHR(7)
  64.   STORE 1 TO XX
  65.   DO WHILE XX<110
  66.   STORE XX+1 TO XX
  67.   ENDDO WHILE XX<110
  68.   RELEASE XX,MRECNO
  69.   @ 3,0
  70.   SELECT PRIMARY
  71.   LOOP
  72.   ENDIF # <>0
  73.   @ 3,0
  74.   @ 3,1 SAY"Adding a New Story.  Enter  <CR>  To Abort Entry."
  75.   @ 12,25 SAY CURPER
  76.   STORE "                                                            " TO ;
  77. MTEXT1
  78.   STORE "                                                            " TO ;
  79. MTEXT2
  80.   STORE "                                                            " TO ;
  81. MTEXT3
  82.   STORE "                                                            " TO ;
  83. MTEXT4
  84.   STORE "                                                            " TO ;
  85. MTEXT5
  86.   STORE "                                                            " TO ;
  87. MTEXT6
  88.   @ 13,10 GET MTEXT1
  89.   @ 14,10 GET MTEXT2
  90.   @ 15,10 GET MTEXT3
  91.   @ 16,10 GET MTEXT4
  92.   @ 17,10 GET MTEXT5
  93.   @ 18,10 GET MTEXT6
  94.   @ 3,0
  95.   @ 3,1 SAY"Add Story,  or Enter  <CR>  To Abort Entry."
  96.   READ
  97.   IF $(MTEXT1,1,6)= "      "
  98.   @ 13,10
  99.   @ 13,71 SAY"<"
  100.   @ 13,78 SAY"|"
  101.   @ 14,10
  102.   @ 14,71 SAY"<"
  103.   @ 14,78 SAY"|"
  104.   @ 15,10
  105.   @ 15,71 SAY"<"
  106.   @ 15,78 SAY"|"
  107.   @ 16,10
  108.   @ 16,71 SAY"<"
  109.   @ 16,78 SAY"|"
  110.   @ 17,10
  111.   @ 17,71 SAY"<"
  112.   @ 17,78 SAY"|"
  113.   @ 18,10
  114.   @ 18,71 SAY"<"
  115.   @ 18,78 SAY"|"
  116.   @ 15,33 SAY"Gone !!!."
  117.   STORE 1 TO XX
  118.   DO WHILE XX<50
  119.   STORE XX+1 TO XX
  120.   ENDDO WHILE XX<50
  121.   RELEASE XX
  122.   @ 15,30
  123.   @ 15,71 SAY"<"
  124.   @ 15,78 SAY"|"
  125.   RELEASE MTEXT1,MTEXT2,MTEXT3,MTEXT4,MTEXT5,MTEXT6,CURPER
  126.   SELECT PRIMARY
  127.   DO GENGET
  128.   CLEAR GETS
  129.   SELECT PRIMARY
  130.   @ 3,0
  131.   LOOP
  132.   ENDIF
  133.   SELECT SECONDARY
  134.   APPEND BLANK
  135.   REPLACE REF:CODE WITH CURPER,TEXT1 WITH MTEXT1
  136.   REPLACE TEXT2 WITH MTEXT2,TEXT3 WITH MTEXT3
  137.   REPLACE TEXT4 WITH MTEXT4,TEXT5 WITH MTEXT5,TEXT6 WITH MTEXT6
  138.  RELEASE MTEXT1,MTEXT2,MTEXT3,MTEXT4,MTEXT5,MTEXT6,CURPER
  139.  CLEAR GETS
  140.  @ 12,25 SAY REF:CODE
  141.  @ 12,60 SAY STR(#,4)
  142.  SELECT PRIMARY
  143.  @ 3,0
  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.   @ 3,0
  166. CASE COMMAND = "B"
  167.  SKIP -1
  168.  STORE REF:NO TO CURPER
  169.   DO GENGET
  170.  CLEAR GETS
  171.  SELECT PRIMARY
  172.  RELEASE CURPER
  173. CASE COMMAND = "F"
  174.  SKIP
  175.  STORE REF:NO TO CURPER
  176.   DO GENGET
  177.  CLEAR GETS
  178.  SELECT PRIMARY
  179.  RELEASE CURPER
  180. CASE COMMAND = "D"
  181.  @ 3,0
  182.  @ 3,1 SAY"Delete This Story, <Y> or <N>. "
  183.  SET CONSOLE OFF
  184.  WAIT TO COMMAND
  185.  SET CONSOLE ON
  186.  IF !(COMMAND) = "Y"
  187.  STORE REF:NO TO CURPER
  188.  SELECT SECONDARY
  189.  FIND &CURPER
  190.  IF #=0
  191.  @ 3,0
  192.  @ 3,1 SAY"There Is NO Story To Delete !!!."
  193.  @ 3,33 SAY CHR(7)
  194.  STORE 1 TO XX
  195.  DO WHILE XX<120
  196.  STORE XX+1 TO XX
  197.  ENDDO WHILE XX<120
  198.  RELEASE XX,CURPER
  199.  SELECT PRIMARY
  200.  @ 3,0
  201.  LOOP
  202.  ENDIF #=0
  203.  @ 3,0
  204.  @ 3,1 SAY"Deleting Record & Reindexing File,  WAIT "
  205.  DELETE
  206.  PACK
  207.  SELECT PRIMARY
  208.   DO GENGET
  209.   CLEAR GETS
  210.   ELSE !(COMMAND) <> "Y"
  211.   STORE REF:NO TO CURPER
  212.   DO GENGET
  213.  CLEAR GETS
  214.  ENDIF
  215.  SELECT PRIMARY
  216.  RELEASE CURPER
  217.  @ 3,0
  218. CASE COMMAND = "S"
  219.  @ 3,0
  220.  STORE REF:NO TO MREF:NO
  221.  STORE "    " TO CURPER
  222.  @ 3,1 SAY"Enter Ref.Number To Search"
  223.  @ 3,28 GET CURPER PICTURE "9999"
  224.  SET CONFIRM ON
  225.  READ
  226.  SET CONFIRM OFF
  227.  FIND &CURPER
  228.  IF # = 0
  229.  @ 3,40 SAY"Record Not On File, Press <RETURN> "
  230.  SET CONSOLE OFF
  231.  WAIT
  232.  SET CONSOLE ON
  233.   FIND &MREF:NO
  234.   RELEASE CURPER
  235.   STORE REF:NO TO CURPER
  236.   DO GENGET
  237.   CLEAR GETS
  238.   RELEASE MREF:NO
  239.   RELEASE CURPER
  240.  ELSE # > 0
  241.  DO GENGET
  242.  CLEAR GETS
  243.  ENDIF
  244.  SELECT PRIMARY
  245.  @ 3,0
  246. CASE COMMAND = "L"
  247.  GO BOTTOM
  248.  DO GENGET
  249.  CLEAR GETS
  250.  SELECT PRIMARY
  251. CASE COMMAND = "T"
  252.  GO TOP
  253.  DO GENGET
  254.  CLEAR GETS
  255.  SELECT PRIMARY
  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. ? "+=====================================+================================;
  314. =====+"
  315. ? "|        Fathers Ref No:-",FATHER:REF,"       |        Mothers Ref ;
  316. No:-",MOTHER:REF,"       |"
  317. ? "+=====================================+================================;
  318. =====+"
  319. ? "|                                                                      ;
  320.      |"
  321. ? "|                              -==<SPOUSES>==-                         ;
  322.      |"
  323. ? "|---------------------------------------------------------------------;
  324. ------|"
  325. IF SPSE1:DATE =0
  326. ? "|  Spouse 1 Ref:-",SPSE1:REF,"     No.Children:-",SPSE1:CHIL,"     ;
  327. Marge Date:-             |"
  328. ELSE
  329. STORE STR(SPSE1:DATE,8) TO MMARG1
  330. ? "|  Spouse 1 Ref:-",SPSE1:REF,"     No.Children:-",SPSE1:CHIL,"     ;
  331. Marge Date:-",$(MMARG1,1,4)+"."+$(MMARG1,5,2)+"/"+$(MMARG1,7,2)," |"
  332. ENDIF
  333. IF SPSE2:DATE =0
  334. ? "|  Spouse 2 Ref:-",SPSE2:REF,"     No.Children:-",SPSE2:CHIL,"     ;
  335. Marge Date:-             |"
  336. ELSE
  337. STORE STR(SPSE2:DATE,8) TO MMARG2
  338. ? "|  Spouse 2 Ref:-",SPSE2:REF,"     No.Children:-",SPSE2:CHIL,"     ;
  339. Marge Date:-",$(MMARG2,1,4)+"."+$(MMARG2,5,2)+"/"+$(MMARG2,7,2)," |"
  340. ENDIF
  341. IF SPSE3:DATE =0
  342. ? "|  Spouse 3 Ref:-",SPSE3:REF,"     No.Children:-",SPSE3:CHIL,"     ;
  343. Marge Date:-             |"
  344. ELSE
  345. STORE STR(SPSE3:DATE,8) TO MMARG3
  346. ? "|  Spouse 3 Ref:-",SPSE3:REF,"     No.Children:-",SPSE3:CHIL,"     ;
  347. Marge Date:-",$(MMARG3,1,4)+"."+$(MMARG3,5,2)+"/"+$(MMARG3,7,2)," |"
  348. ENDIF
  349. ? "+======================================================================;
  350. =====+"
  351. SELECT SECONDARY
  352. FIND &CURPER
  353. ? "|   &CURPER            &OUT -== BIOGRAPHY ==- &IN                  |"
  354. ? "+======================================================================;
  355. =====+"
  356. IF #=0
  357. ? "|                                                                      ;
  358.      |"
  359. ? "|                                                                      ;
  360.      |"
  361. ? "|                             No Story On File.                        ;
  362.      |"
  363. ? "|                                                                      ;
  364.      |"
  365. ? "|                                                                      ;
  366.      |"
  367. ? "|                                                                      ;
  368.      |"
  369. ELSE
  370. ? "|      ",TEXT1,"       |"
  371. ? "|      ",TEXT2,"       |"
  372. ? "|      ",TEXT3,"       |"
  373. ? "|      ",TEXT4,"       |"
  374. ? "|      ",TEXT5,"       |"
  375. ? "|      ",TEXT6,"       |"
  376. ENDIF
  377. ? "+======================================================================;
  378. =====+"
  379. ?
  380. ?
  381. ?
  382. ?
  383. ?
  384. ?
  385. SELECT PRIMARY
  386. SET PRINT OFF
  387. SET CONSOLE ON
  388. RELEASE MBRTH,MFNAM,MDETH,MMIDN,MMARG1,MMARG2,MMARG3,CURPER
  389.  @ 3,0
  390.  ELSE COMMAND <> "Y"
  391.  ENDIF
  392.  @ 3,0
  393. OTHERWISE
  394. @ 3,0
  395. SET INTEN ON
  396. @ 3,2 SAY"<"+COMMAND+">"
  397. SET INTEN OFF
  398. @ 3,6 SAY"is Not a Valid Command."
  399. STORE 1 TO XC
  400. DO WHILE XC <90
  401. STORE XC+1 TO XC
  402. ENDDO WHILE XC<90
  403. RELEASE XC
  404. @ 3,0
  405. ENDCASE
  406. ENDDO
  407. RETURN
  408.