home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 17 / CD_ASCQ_17_101194.iso / vrac / ho51.zip / HO51.ZIP / rolodos.bat < prev    next >
DOS Batch File  |  1994-06-13  |  7KB  |  266 lines

  1.  
  2.  
  3. @ECHO OFF
  4. rem
  5. rem Apparently, this comes from an unknown computer magazine
  6. rem Use it at your own risk.
  7. rem
  8. IF "%1"=="INPUT" GOTO INPUT
  9. SET ROLO=START
  10. IF "%1"=="^" GOTO SORTING
  11. IF "%1"=="#" GOTO DIALING
  12. IF NOT "%1"=="@" GOTO PARAM
  13. SET ROLO=SORT
  14. GOTO HEADING
  15. :PARAM
  16. IF "%1"=="&" SET ROLO=CALL 
  17. IF "%1"=="-" SET ROLO=DELETE
  18. IF "%1"=="*" SET ROLO=GET
  19. IF "%1"=="+" SET ROLO=ADD
  20. IF "%2"=="" SET ROLO=INFO
  21. IF "%1"=="" SET ROLO=INFO
  22. IF %ROLO%==START SET ROLO=INFO
  23. IF "%1"=="+" GOTO MORPARAMS
  24. GOTO HEADING
  25. :MORPARAMS
  26. REM /*** ADDING ENTRY, SO VERIFY ADDITIONAL PARAMETERS***/
  27. IF "%3"=="" SET ROLO=INFO
  28. IF "%4"=="" SET ROLO=INFO
  29. :HEADING
  30. CLS
  31. ECHO ==================================================================
  32. ECHO ************************* ROLODOS UTILITY *************************
  33. ECHO ===================================================================
  34. ECHO.
  35. GOTO %ROLO%
  36. REM /*-- Add number to data file. --*/ 
  37. :ADD
  38. ECHO Updating the phone listing:
  39. ECHO.
  40. ECHO SET DIAL=%2          %3  %4 >> PHONE.LST 
  41. ECHO %3 WAS ADDED TO TAB "%2" OF THE PHONE LIST.
  42. ECHO THE NUMBER IS: %4.
  43. ECHO.
  44. GOTO END
  45. REM /*-- DELETE NUMBER FROM PHONE LIST. --*/
  46. :DELETE
  47. TYPE PHONE.LST | FIND "%2" > TEMP.$$$
  48. COPY TEMP.$$$ TEMP.LST >NUL
  49. DEL TEMP.$$$
  50. IF EXIST TEMP.LST GOTO CAUTION
  51. ECHO SORRY, THERE IS NO LISTING FOR %2.
  52. ECHO.
  53. GOTO END
  54. :CAUTION
  55. ECHO CAUTION!
  56. ECHO.
  57. ECHO THE FOLLOWING LISTING(S) WILL BE REMOVED:
  58. ECHO.
  59. TYPE TEMP.LST
  60. ECHO.
  61. ECHO PRESS CTRL-C TO CANCEL, ANY OTHER KEY TO CONTINUE...
  62. COMMAND /C ROLODOS.BAT INPUT
  63. IF NOT EXIST YE$.$$$ GOTO DONE
  64. DEL YE$.$$$
  65. TYPE PHONE.LST | FIND /V "%2" >TEMP.LST
  66. COPY TEMP.LST PHONE.LST >NUL
  67. DEL TEMP.LST
  68. ECHO.
  69. ECHO LISTING(S) HAVE BEEN REMOVED
  70. ECHO.
  71. GOTO END
  72. :GET
  73. IF "%2"=="*" GOTO ALL
  74. :SEARCH
  75. TYPE PHONE.LST |FIND "%2" >TEMP.$$$
  76. COPY TEMP.$$$ TEMP.LST >NUL
  77. DEL TEMP.$$$
  78. IF EXIST TEMP.LST GOTO FOUND
  79. ECHO SORRY, THERE IS NO LISTING FOR %2.
  80. ECHO.
  81. GOTO END
  82. :FOUND
  83. ECHO HERE IS THE LISTING FOR %2:
  84. GOTO LIST
  85. :ALL
  86. ECHO HERE IS THE COMPLETE FILE LISTING:
  87. :LIST
  88. ECHO.
  89. ECHO ===================================================================
  90. ECHO COMMAND  INDEX      NAME            NUMBER
  91. ECHO ===================================================================
  92. IF "%2"=="*" MORE <PHONE.LST
  93. IF NOT "%2"=="*" TYPE TEMP.LST
  94. ECHO.
  95. IF EXIST TEMP.LST DEL TEMP.LST
  96. GOTO END
  97. :CALL
  98. TYPE PHONE.LST |FIND "%2" >TEMP.$$$
  99. COPY TEMP.$$$ TEMP.LST >NUL
  100. DEL TEMP.$$$
  101. IF EXIST TEMP.LST GOTO DOCALL
  102. ECHO SORRY, THERE IS NO LISTING FOR %2.
  103. ECHO.
  104. GOTO END
  105. :DOCALL
  106. ECHO @ECHO OFF >TEMP.BAT
  107. TYPE TEMP.LST >>TEMP.BAT
  108. DEL TEMP.LST
  109. CALL TEMP.BAT
  110. CALL ROLODOS # %DIAL% %3
  111. DEL TEMP.BAT
  112. SET DIAL=
  113. ECHO.
  114. GOTO END
  115. :DIALING
  116. ECHO CALLING %3 AT %4:
  117. :REDIAL
  118. ECHO.
  119. ECHO AT DT %4 >COM2:
  120. ECHO.
  121. ECHO LIFT THE RECEIVER WHEN YOU HEAR THE OTHER PHONE RINGING.
  122. ECHO PRESS ANY KEY TO SILENCE THE MODEM ONCE YOU HAVE LIFTED THE RECEIVER
  123. PAUSE >NUL
  124. ECHO AT H >COM2:
  125. ECHO.
  126. ECHO CALL TERMINATED.
  127. ECHO.
  128. IF NOT "%5"=="R" GOTO END
  129. ECHO PRESS ANY KEY TO REDIAL OR CTRL-C TO CANCEL.
  130. COMMAND /C ROLODOS.BAT INPUT
  131. IF NOT EXIST YE$.$$$ GOTO DONE
  132. DEL YE$.$$$
  133. CLS
  134. SET ROLO=REDIALING
  135. GOTO HEADING
  136. :INPUT
  137. PAUSE >NUL
  138. ECHO CONTINUE! >YE$.$$$
  139. GOTO NEXT
  140. :REDIALING
  141. ECHO RETRYING %3 AT %4:
  142. GOTO REDIAL
  143. :SORT
  144. IF "%2"=="$" GOTO BIGSORT
  145. ECHO --IMPORTANT--
  146. ECHO.
  147. ECHO PLEASE NOTE THAT FOR FILES LARGER THAN 64K THE DOS SORT COMMAND 
  148. ECHO PRODUCES UNPREDICTABLE RESULTS.  IF YOUR PHONE.LST FILE IS 
  149. ECHO LARGER THAN 64K YOU CAN INCLUDE THE $ SYMBOL ON THE ROLODOS 
  150. ECHO COMMAND LINE.  THIS ALLOWS THE UTILITY TO SORT BY INDEX.  SORTING 
  151. ECHO A LARGE FILE THIS WAY TAKES MORE TIME BUT WILL PRODUCE THE 
  152. ECHO CORRECT RESULT.
  153. ECHO.
  154. DIR PHONE.LST | FIND "PHONE"
  155. ECHO.
  156. ECHO IF YOUR PHONE.LST FILE SIZE IS GREATER THAN 65536 BYTES, 
  157. ECHO PRESS THE SPACE BAR.
  158. ECHO OTHERWISE, PRESS CTRL-C TO USE THE QUICKEST SORT ROUTINE.
  159. ECHO.
  160. COMMAND /C ROLODOS INPUT
  161. IF EXIST YE$.$$$ GOTO DOBIGSORT
  162. ECHO SORTING PHONE LIST...
  163. TYPE PHONE.LST |SORT /+20 >TEMP.LST
  164. GOTO STDOPS
  165. :DOBIGSORT
  166. DEL YE$.$$$
  167. SET ROLO=BIGSORT
  168. GOTO HEADING
  169. :BIGSORT
  170. ECHO SORTING PHONE LIST...
  171. ECHO.
  172. FOR %%p in (a b c d e f g h i j k l m n o p q r s t u v w x y z) DO CALL ROLODOS ^ %%p
  173. :STDOPS
  174. COPY TEMP.LST PHONE.LST >NUL
  175. DEL TEMP.LST
  176. ECHO.
  177. ECHO SORT COMPLETE.
  178. GOTO END
  179. :SORTING
  180. IF NOT "%2"=="p" GOTO NOCLS
  181. CLS
  182. SET ROLO=NOCLS
  183. GOTO HEADING
  184. :NOCLS
  185. ECHO SEARCHING FOR INDEX "%2"...
  186. TYPE PHONE.LST |FIND "%2" > TEMP.$$$
  187. COPY TEMP.$$$ TEMP.!!! >NUL
  188. DEL TEMP.$$$
  189. IF NOT EXIST TEMP.!!! GOTO NEXT
  190. SORT /+20 <TEMP.!!! >>TEMP.LST
  191. DEL TEMP.!!!
  192. GOTO NEXT
  193. :INFO
  194. ECHO THE ROLODOS UTILITY IS LIKE A DOS ROLODEX THAT CAN ALSO DIAL
  195. ECHO YOUR CALLS IF YOUR COMPUTER IS EQUIPPED WITH A MODEM.  COMMAND 
  196. ECHO LINE SYNTAX IS AS FOLLOWS:
  197. ECHO.
  198. ECHO _ ROLODOS [ACTION] [index] [NAME] [NUMBER] [REDIAL] //- USED 
  199. ECHO TO ADD AN ENTRY TO THE PHONE LIST.
  200. ECHO.
  201. ECHO                     OR
  202. ECHO.
  203. ECHO _ ROLODOS [ACTION] [OPERAND] //- USED FOR ALL
  204. ECHO OTHER OPERATIONS.
  205. ECHO.
  206. ECHO WHERE ACTION IS EITHER ONE OF THE FOLLOWING:
  207. ECHO.
  208. ECHO    +  (ADD)      TO ADD A PHONE LISTING TO THE FILE.
  209. ECHO    -  (REMOVE)   TO REMOVE A LISTING FROM THE FILE.
  210. ECHO    *  (GET)      TO OBTAIN AN INFORMATION LISTING.
  211. ECHO    &  (DIAL)     TO PLACE A CALL.
  212. ECHO    #  (SORT)     TO RESORT THE PHONE LISTING FILE.
  213. ECHO.
  214. ECHO -- PRESS ANY KEY TO CONTINUE --
  215. PAUSE >NUL
  216. CLS
  217. SET ROLO=IPG2
  218. GOTO HEADING
  219. :IPG2
  220. ECHO.
  221. ECHO INDEX - must be in lower case and is a reference point to which the
  222. ECHO listing is associated.  It need only be included when you are 
  223. ECHO adding a new listing.
  224. ECHO.
  225. ECHO NAME - specifies the title of each listing.  It is required for all
  226. ECHO additions, and MUST be capitalised.  Titles should be 20 characters
  227. ECHO long and must not contain spaces (i.e. DOE_JOHN............).  For
  228. ECHO operations other than adding and dialing, you can substitute INDEX
  229. ECHO to perform the operation on a class of listings.
  230. ECHO.
  231. ECHO NUMBER - is the phone number listing.  You can include normally 
  232. ECHO used symbols such as () and -, but the number may not include 
  233. ECHO spaces.
  234. ECHO Example:  1-800-999-9999, (800)999-9999 are acceptable. The 
  235. ECHO number is only required when adding a listing.
  236. ECHO.
  237. ECHO REDIAL - is used when calling to indicate that you wish to redial
  238. ECHO the same number at the touch of a key.  You may simply use "R".
  239. ECHO.
  240. ECHO -- PRESS ANY KEY TO CONTINUE --
  241. PAUSE >NUL
  242. CLS
  243. SET ROLO=IPG3
  244. GOTO HEADING
  245. :IPG3
  246. ECHO.
  247. ECHO OPERAND - is any part of the database you wish a command to 
  248. ECHO operate ON.  When using the * (GET) action, a second * yields
  249. ECHO a complete file listing.  Using an index letter would yield a
  250. ECHO listing of all entries under that index, while a name would
  251. ECHO limit the search to a specific entry.
  252. ECHO.
  253. ECHO To perform @ (SORT) operations on a list file greater than 64K 
  254. ECHO you must include the $ symbol.  The $ is an additional 
  255. ECHO parameter.
  256. ECHO.
  257. GOTO END
  258. :DONE
  259. ECHO.
  260. ECHO Operation cancelled.
  261. :END
  262. SET ROLO=
  263. ECHO
  264. :NEXT
  265.  
  266.