home *** CD-ROM | disk | FTP | other *** search
/ Amiga MA Magazine 1998 #3 / amigamamagazinepolishissue1998.iso / bazy / amigabase-stamps / stamps.doc < prev    next >
Text File  |  1995-04-01  |  13KB  |  252 lines

  1. Documentation for the AmigaBase-project Stamps v1.0 by Mads Lie Jensen
  2. ----------------------------------------------------------------------
  3.  
  4. I made this project because I exchange stamps with a lot of people around the
  5. world. I really needed a way to keep track of what letters I was sending and
  6. receiving, and who to send letters now and so on. So, I started making a
  7. project that suits my personal needs, and this is what I came up with. Of
  8. course, you can also use this, if you have a lot of penfriends.
  9.  
  10. Installation.
  11. -------------
  12. Copy the project 'stamps' to whereever you have your AB-projects. The Arexx
  13. scripts 'Printpages.rexx' and 'ABServer.rexx' to your REXX:-dir. If you do
  14. not have Arexx on your system, you will have to change the function
  15. '_Rapport', so it does not call this script, but simply prints the memo to
  16. printer instead of disk.
  17. The last Arexx-script is for use with FinalWriter 3.0, but it might work with
  18. even FinalCopy II. This should be copied to the drawer where your FW-macros
  19. are. Use of this macro will be explained later.
  20. That's all.
  21.  
  22. Something about the printer.
  23. ----------------------------
  24. Before I start to explain the project, I will have to say something
  25. concerning the printer: If all printouts have to be working correctly, your
  26. printer needs to be able to print 80 characters/line in normal mode, normally
  27. called 10 CPI, and at least 137 characters/line in condensed mode, also
  28. called 10 CPI Condensed. You probably don't need to worry about this, because
  29. most printers can do this. Also, your printer should always be set to draft
  30. 10 CPI when you start the printout. The prints will look strange, if it was
  31. set in condensed mode. My printer, an Epson LQ150 with a colour-kit, is set
  32. to use 6 lines pr Inch, Left margin = 1, Right Margin = 79.
  33.  
  34. I will now explain the usage of the project.
  35. --------------------------------------------
  36.  
  37. How to use. A small explanation.
  38. --------------------------------
  39. Whenever you want to add a new address to the database, you have to use the
  40. 'New Address'-button. When pressing this, a new dataset of Adresses is
  41. allocated, the Reference-field is set to the first free number, and a new
  42. dataset of Adresses\Rapgen is allocated too. You can also use AmigaBase's
  43. menu item New dataset for this issue.
  44. A word about the reference-numbers. These are used, because it's easier to
  45. keep track of a number, than of a complete name. The supplied
  46. FinalWriter-macro is also using the reference-numbers to get addresses from
  47. this Database. (See later.) A reference number is always 3 digits, starting
  48. from 000 ending at 999. If you have more than 999 addresses in the base, then
  49. it will behave strange when you use the 'New Address'-button. But this can
  50. very easily be changed, so it uses say, 5 digits for the number. And since
  51. the Reference is stored in a STRING-field, it could probably be made to hold
  52. 999 digits, but that's a lot more than there are people on the earth.
  53. (Probably more than there are stars in the universe. (10 digits will hold all
  54. people currently on this earth.))
  55.  
  56. When you have an address in the database, and you get or send a letter to the
  57. person, you place the cursor in the address'es \Contacts record, and
  58. allocate a new one of that. You will then be asked if you recieved or sent a
  59. letter. This is implemented because it's very easy to forget this, and you
  60. can really get mad, if you suddenly see that it's not correct. If you
  61. accidentally answer wrong in this requester, you will have to delete the
  62. dataset, since the Way-field is read only!!!! When this is sorted out, then
  63. the cursor is placed in the date-field. Enter the date when you received/sent
  64. the letter, enter the amount of stamps in it, and the motive of them, in the
  65. corresponding fields. I only write the number of 'loose' stamps in the
  66. Amount-field. If I receive a sheet, booklet, FDC or other, I always write it
  67. in the Misc-MEMO, where you can, of course, enter all sorts of things.
  68.  
  69. Why is it so great? (Explanation of some fields.)
  70. -------------------------------------------------
  71. But here's the really great thing about this project: Whenever a new dataset
  72. of \Adresses\Contacts is filled in with the date, then you can always see the
  73. date of both when you last sent and received letters from this person, in the
  74. fields Last sent and Last received. And say you get a new dataset of
  75. \Contacts, and set it to Received and the date is OLDER than the one
  76. displayed in the Last received-field, a requester will pop up, and ask if
  77. this date is correct. You may have forgotten a letter, so that's why the date
  78. is older, or you could have entered a wrong date. If you delete a dataset of
  79. \Contacts, then the fields that holds the Last sent/received-dates will also
  80. be updated, so these are always holding the most recent dates of the letters
  81. received and sent. In the field Send to, you can always see if it's your turn
  82. to send a letter. This field is always set to TRUE if the date in Last
  83. received is bigger than the Last sent-date.
  84.  
  85. Other fields, that might need some explanation:
  86. -----------------------------------------------
  87. The Owe-field is set to TRUE, if you owe the person stamps. Usually this is
  88. the fact, when he was the first one to sent stamps. It's not used for
  89. anything, except it sometimes can be nice to know this. You have to set it
  90. manually, but if you really wanted to, there could be made a function to make
  91. this automatically.
  92.  
  93. The Send more-field is normally always TRUE, but if you for some reason don't
  94. want to send anymore stamps to this person, you make it FALSE, and he will
  95. not be included on the list of people to send to.
  96.  
  97. The Status-field is there as a guideline of how the person is in this base.
  98. If you have heard from him in the last half year, it's ACTIVE. If it has been
  99. more than a half year, but not a year, since your last letter, it says ?????,
  100. and if you have not been in contact with him for more than e year, or you
  101. have set Send more to FALSE, it says INACTIVE. Again, there is no real use of
  102. this, it's just nice to know.
  103.  
  104. The Collect-MEMO is used for storing the motives that the person collects.
  105. The Gives-MEMO is for the motives he gives in exchange. NONE OF THESE ARE
  106. CURRENTLY INCLUDED ON THE REPORTS.
  107.  
  108. The Print address-field is used together with the program-buttons 'All
  109. labels' and 'All envelopes'. If set to TRUE, the address will be printed.
  110.  
  111. The Rapgen-window.
  112. ------------------
  113. In this window, you can see the date that you last printed a report, and how
  114. many movements there have been since that day. These movements are incremented
  115. with one, every time you allocate a new \Contacts and decreased with one,
  116. when you delete a \Contacts, which you normally never do!!
  117. The button 'Print reports' will check all \Adresses to see, if there has been
  118. more movements for it, than specified in the field 'Movements before report',
  119. (See later.), and if yes, it will print a report for this address. Also
  120. adresses which have never had a report printed, will be printed. When the
  121. PostLoad-function is implemented into AmigaBase, this should be changed a
  122. bit, and be called with PostLoad, so you always are Up-To-Date. Of course,
  123. the current address is checked when you allocate a new \Contact for it, but
  124. that is most like a work-around.
  125.  
  126. The Name-list will print a list of all the names in the Database. They can be
  127. sorted in 3 ways. By first name, by last name, or by Reference-numbers.
  128.  
  129. The Preferences.
  130. ----------------
  131. These are placed below the \Adresses-record, so if you use a normal highres
  132. noninterlaced screen, they will normally be outside the main window.
  133. The 'Movements between reports' tells how often you want a report printed. If
  134. it's one, you will be asked every time you allocate a new \Contacts.
  135. Personally, I have set it to 5.
  136.  
  137. The rest is used to tell the different programs how big your labels,
  138. envelopes, and paper is. Under 'Paper:' there is only the number of lines for
  139. each page. That's all that we need to know. The margin for paper is something
  140. like 10 chars, so you always have room for holes, if you want to put them in
  141. a ring-binder.
  142.  
  143. On the labels and envelopes, there's also room for the chars/line and left
  144. margin. The chars/line is currently not used, so if you have an address-line
  145. that is longer than your envelope, it will just be written outside it.
  146.  
  147. Don't specify of less than 5 in the lines/page for Labels and Envelopes.
  148.  
  149. The Program-buttons.
  150. --------------------
  151. Send to..   Prints out a list of all the persons you have to sent letters to,
  152.             according to the fields 'Send to', and 'Send more'.
  153.  
  154. Report      This will print out a report for the current address. A report is
  155.             actually just the address of the person, and then a list of all
  156.             the \Contacts dataset.
  157.  
  158. Label       Will print the current address onto a label, using the settings
  159.             for labels.
  160.  
  161. All labels  Will print out all addresses which has the field 'Print address'
  162.             set to TRUE, using the current label-settings.
  163.  
  164. Envelope    Same as Label, except that the settings for Envelopes will be
  165.             used.
  166.  
  167. All envelopes  Same as All labels, except that settings for Envelopes will be
  168.                used.
  169.  
  170. New address Use this whenever you want to add a new address to your database.
  171.             Explained earlier in this text. (See 'How to use')
  172.  
  173. Some more on printing.
  174. ----------------------
  175. When I say 'Print envelopes', I mean that you put an envelope in your
  176. printer, and get an address printed onto it. After each envelope has been
  177. printed, a FormFeed will be sent, to eject the envelope from the printer.
  178. The number of lines on an envelopes, set in the preferences, does not have to
  179. be the correct number of lines, since a formfeed is always send. Instead it's
  180. used to determine where to print the address. If it's set to say, 20, then
  181. the last line of the address is printed on the 20th line.
  182.  
  183. Labels, in this version of this project, are thought of as Tractor-feeded
  184. labels, in ONE column only. They are printed like envelopes, except that NO
  185. FormFeed is sent after each label. Therefore, you have to set the correct
  186. number of lines for the label in it's preferences, explained earlier. (I hope
  187. this one still works OK, cause the printer I have with Tractor-feed has been
  188. borrowed by a friend of mine, so the one I have now, is a sheet-feed.)
  189.  
  190. Only reports are printed using the 'Printpages.rexx'-script. Perhaps also
  191. namelist should be printed using this, but I have not implemented it.
  192.  
  193. If you use 'endless' paper, you might have to modify the function
  194. '_Page.scr', so it does not send a formfeed.
  195.  
  196. The Arexx-scripts.
  197. ------------------
  198. Printpages.rexx
  199.    Should be located in REXX: Used for printing a footer on each page, since
  200.    it can also number the pages.
  201.  
  202. ABserver.rexx
  203.    Should be located in REXX: This is, as it says, a server for AmigaBase's
  204.    Arexx-interface. Whenever you want to use AB's Arexx, you can just call
  205.    this, as an external function, instead of messing around with ADDRESS and
  206.    so on.
  207.  
  208. EmptyABserver.rexx
  209.    This is just a script which calls the ABserver. It should just be filled
  210.    with the commands your application supports. It saves you from a lot of
  211.    typing. If you have another wordprocessor than FinalWriter, you should quite
  212.    easily be able to fill in this script with the things needed to use it from
  213.    inside your wordprocessor.
  214.  
  215. CallAB.fw
  216.    This is to be used from within FinalWriter. With this, you can get an
  217.    address from the Stamp-project inserted into FinalWriter. (It calls the
  218.    function defined in 'stamp'-project with the name
  219.    '_Getname(Reference-number)'. If you make a function with the same name in
  220.    another project of addresses, it can be used together with this too!. Sadly,
  221.    you have to know something about Arexx to use this, at least a little
  222.    knowledge.
  223.  
  224. For all these script, you can get more information by looking at the code. I
  225. have included a lot of comments in them.
  226. The code for the AB-Project is also full of comments.
  227.  
  228. Future enhancements.
  229. --------------------
  230. I might make a Labelprint-function that can use Laser-labels. (Those that
  231. come on sheets, instead of tractor-paper.)
  232.  
  233. If YOU have anything you would like to see in this project, then write it
  234. yourself!! Or, you can let me know, and I MIGHT write it. I can't give any
  235. guaranty that I do so. If you add something to this project yourself, then
  236. PLEASE send me a copy of it. Perhaps I could put it into the next generation
  237. of this project.
  238. If you use this project, then please send me some used stamps, even if I have
  239. released this project as PD. I have worked hard to finish this project, and I
  240. will be very happy to hear from people if they also find it usefull.
  241.  
  242. My address:
  243.  
  244.          Mads Lie Jensen
  245.          Tværvangen 23
  246.          Rakkeby
  247.          DK-9800 Hjørring
  248.          Denmark
  249.  
  250.          (Sorry, no EMail)
  251.  
  252.