home *** CD-ROM | disk | FTP | other *** search
/ AMOS PD CD / amospdcd.iso / 176-200 / apd176 / dbm_sys / dbm-pass.amos / dbm-pass.amosSourceCode
AMOS Source Code  |  1991-03-11  |  5KB  |  193 lines

  1. '
  2. ' Database master password maintenance by Steve (24/1/91)  
  3. '
  4. FLD_SETUP:
  5. Screen Open 0,640,260,16,Hires
  6. Break Off 
  7. On Error Goto EROR
  8. Global FILENAME$,ICON$,DISK$,PIC$,REC_COUNT,PROGRAMS$
  9. '
  10. Open In 9,"DBM_SYS:DBMPROG.DAT"
  11. Input #9,DISK$
  12. Input #9,ACCOUNT$
  13. Close 9
  14. PROGRAMS$=DISK$+ACCOUNT$
  15. ''ICON$=DISK$+"DBM_SYS/DBM_ICON.info"
  16. CHAIN_PROG$=PROGRAMS$+"DBM-MASTER.AMOS"
  17. Dim DBFN$(50)
  18. Dim DBFL$(50)
  19. Dim DBRPW$(50)
  20. Dim DBWPW$(50)
  21. Dim INFO$(50)
  22. BEGIN:
  23. Doke ADATA+38,22
  24. Curs Off 
  25. Paper 0
  26. Cls 
  27. Curs Off 
  28. Wind Open 1,1,1,79,5,1
  29. Paper 4 : Pen 3 : Clw 
  30. Locate 18,2 : Print "    D A T A B A S E  M A S T E R    "
  31. Wind Open 2,1,33,79,28,14
  32. Paper 6 : Pen 5 : Clw 
  33. Pen 2 : Locate 25,1 : Print Border$("PASSWORD MAINTENANCE",1) : Pen 5
  34. '
  35. If Not Exist("RAM:DBMCHAIN.DAT")
  36.    Cls 
  37.    Print "Chain file missing return to main menu.  C/R to Recover."
  38.    Wait Key 
  39.    Goto EX_PROG
  40. End If 
  41. Open In 9,"RAM:DBMCHAIN.DAT"
  42. Input #9,FILENAME$
  43. Close 9
  44. '
  45. Open Out 9,"RAM:DBMLINK.DAT"
  46. Print #9,"By pass the select database option. Database - ";FILENAME$
  47. Close 9
  48. '
  49. Gosub OPEN_FILES
  50. '------------------------------------------------------------------------- 
  51. '
  52. ST_FLD:
  53. Pen 4
  54. Print At(25,24);"(Maximum of 6 Digits)"
  55. Print At(1,4);"1. Record File       "
  56. Print At(1,5);"2. Database Setup    "
  57. Print At(1,6);"3. Reports           "
  58. Print At(1,7);"4. Field Setup       "
  59. Print At(1,8);"5. Utilities         "
  60. Pen 5
  61. Print At(23,4);MENU1PW$
  62. Print At(23,5);MENU2PW$
  63. Print At(23,6);MENU3PW$
  64. Print At(23,7);MENU4PW$
  65. Print At(23,8);MENU5PW$
  66. JUMP_DSP:
  67. Print At(1,23);"Any Change?        "
  68. Input At(13,23);CHANGE$
  69. If Val(CHANGE$)>5 Then Goto JUMP_DSP
  70. Print At(1,23);"                               "
  71. If Val(CHANGE$)>0 Then Goto CHANGE_FLD
  72. Goto EX_PROG
  73. '------------------------------------------------------------------------
  74. '
  75. '
  76. CHANGE_FLD:
  77. CHANGE=Val(CHANGE$)
  78. Print At(23,3+CHANGE);"                         "
  79. If CHANGE=1 Then Input At(23,4);MENU1PW$
  80. If CHANGE=2 Then Input At(23,5);MENU2PW$
  81. If CHANGE=3 Then Input At(23,6);MENU3PW$
  82. If CHANGE=4 Then Input At(23,7);MENU4PW$
  83. If CHANGE=5 Then Input At(23,8);MENU5PW$
  84. Put 1,1
  85. '
  86. Print At(1,23);"Please Wait..."
  87. Goto ST_FLD
  88. '========================================================================
  89. '
  90. OPEN_FILES:
  91. '
  92. 'open header file
  93. '
  94. FILNAM$=FILENAME$
  95. Open Random 1,FILNAM$
  96. Field 1,30 As DBNAME$,6 As DBUSE$,6 As DBDEL$,2 As SYSSEARCH$,8 As CREATEDATE$,6 As COUNT$,6 As MENU1PW$,6 As MENU2PW$,6 As MENU3PW$,6 As MENU4PW$,6 As MENU5PW$,6 As IDXMAX$,2 As FLD_USE$,8 As DBM_VERSION$
  97. If NEW_DB$="Y"
  98.    DBUSE$="000000" : DBDEL$="000000" : IDXMAX$="000000"
  99.    DBNAME$=THE_NAME$
  100.    FLD_USE$=Str$(REC_COUNT)
  101.    SYSSEARCH$="1" : CREATEDATE$="12/10/90" : COUNT$="1" : DBM_VERSION$="2.0(100)"
  102.    Put 1,1
  103. End If 
  104. Get 1,1
  105. '
  106. 'open field file 
  107. '
  108. FILNAM$=FILENAME$+"F"
  109. Open Random 2,FILNAM$
  110. Field 2,20 As FLDN$,3 As FLDL$,10 As FLRPW$,10 As FLWPW$,21 As FLFILLER$
  111. For LP=1 To 50
  112.    Get 2,LP
  113.    DBFN$(LP)=FLDN$
  114.    DBFL$(LP)=FLDL$
  115.    DBRPW$(LP)=FLRPW$
  116.    DBWPW$(LP)=FLWPW$
  117. Next LP
  118. For LP=1 To 50
  119.    If DBFL$(LP)="" : DBFL$(LP)="1" : End If 
  120. Next LP
  121. A=Val(DBFL$(1))
  122. B=Val(DBFL$(2))
  123. C=Val(DBFL$(3))
  124. D=Val(DBFL$(4))
  125. E=Val(DBFL$(5))
  126. F=Val(DBFL$(6))
  127. G=Val(DBFL$(7))
  128. H=Val(DBFL$(8))
  129. I=Val(DBFL$(9))
  130. J=Val(DBFL$(10))
  131. K=Val(DBFL$(11))
  132. L=Val(DBFL$(12))
  133. M=Val(DBFL$(13))
  134. N=Val(DBFL$(14))
  135. O=Val(DBFL$(15))
  136. P=Val(DBFL$(16))
  137. Q=Val(DBFL$(17))
  138. R=Val(DBFL$(18))
  139. S=Val(DBFL$(19))
  140. T=Val(DBFL$(20))
  141. '
  142. ' open data file 
  143. '
  144. FILNAM$=FILENAME$+"D"
  145. Open Random 3,FILNAM$
  146. Field 3,A As A$,B As B$,C As C$,D As D$,E As E$,F As F$,G As G$,H As H$,I As I$,J As J$,K As K$,L As L$,M As M$,N As N$,O As O$,P As P$,Q As Q$,R As R$,S As S$,T As T$
  147. '
  148. 'Open Index file 
  149. '
  150. If Val(SYSSEARCH$)=1 : STORE$=A$ : STORE_VALUE=A : End If 
  151. If Val(SYSSEARCH$)=2 : STORE$=B$ : STORE_VALUE=B : End If 
  152. If Val(SYSSEARCH$)=3 : STORE$=C$ : STORE_VALUE=C : End If 
  153. If Val(SYSSEARCH$)=4 : STORE$=D$ : STORE_VALUE=D : End If 
  154. If Val(SYSSEARCH$)=5 : STORE$=E$ : STORE_VALUE=E : End If 
  155. If Val(SYSSEARCH$)=6 : STORE$=F$ : STORE_VALUE=F : End If 
  156. If Val(SYSSEARCH$)=7 : STORE$=G$ : STORE_VALUE=G : End If 
  157. If Val(SYSSEARCH$)=8 : STORE$=H$ : STORE_VALUE=H : End If 
  158. If Val(SYSSEARCH$)=9 : STORE$=I$ : STORE_VALUE=I : End If 
  159. If Val(SYSSEARCH$)=10 : STORE$=J$ : STORE_VALUE=J : End If 
  160. If Val(SYSSEARCH$)=11 : STORE$=K$ : STORE_VALUE=K : End If 
  161. If Val(SYSSEARCH$)=12 : STORE$=L$ : STORE_VALUE=L : End If 
  162. If Val(SYSSEARCH$)=13 : STORE$=M$ : STORE_VALUE=M : End If 
  163. If Val(SYSSEARCH$)=14 : STORE$=N$ : STORE_VALUE=N : End If 
  164. If Val(SYSSEARCH$)=15 : STORE$=O$ : STORE_VALUE=O : End If 
  165. If Val(SYSSEARCH$)=16 : STORE$=P$ : STORE_VALUE=P : End If 
  166. If Val(SYSSEARCH$)=17 : STORE$=Q$ : STORE_VALUE=Q : End If 
  167. If Val(SYSSEARCH$)=18 : STORE$=R$ : STORE_VALUE=R : End If 
  168. If Val(SYSSEARCH$)=19 : STORE$=S$ : STORE_VALUE=S : End If 
  169. If Val(SYSSEARCH$)=20 : STORE$=T$ : STORE_VALUE=T : End If 
  170. If Val(SYSSEARCH$)<1 or Val(SYSSEARCH$)>20 : STORE$=A$ : STORE_VALUE=A : End If 
  171. FILNAM$=FILENAME$+"I"
  172. Open Random 4,FILNAM$
  173. Field 4,6 As RECIDX$,STORE_VALUE As AIDX$
  174. '
  175. ' open and write to chain file 
  176. '
  177. Open Out 9,"RAM:DBMCHAIN.DAT"
  178. Print #9,FILENAME$
  179. Close 9
  180. '
  181. Return 
  182. '======================================================================= 
  183. '
  184. EROR:
  185. Cls 
  186. Print "ERROR! Return to main program - C/R to Recover."
  187. Wait Key 
  188. If Exist("RAM:DBMLINK.DAT") Then Kill "RAM:DBMLINK.DAT"
  189. '
  190. EX_PROG:
  191. Print At(1,23);"Loading Menu, Please Wait....."
  192. Close 
  193. Run CHAIN_PROG$