home *** CD-ROM | disk | FTP | other *** search
Text File | 1990-01-02 | 180.1 KB | 3,432 lines |
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----
- -- ╔══════════════════╗ -+----+----+----+----+----+----+----+----+----+----+----
- -- ║ ║ ----+----+----+----+----+----+----+----+----+----+----
- -- ║ ║ ----+----+----+----+----+----+----+----+----+----+----
- -- ║ ║ ----+----+----+----+----+----+----+----+----+----+----
- -- ║ A D A M ║ ----+---╔══════╗---+----+----+----+----+----+----+----
- -- ║ ║ ----+---║ MOVE ║ -+----+----+----+----+----+----+----
- -- ║ ╔═══════════════════╗║ SIZE ║ -+----+----+----+----+----+----+----
- -- ║ ║ ║║ TEXT ║ -+----+----+----+----+----+----+----
- -- ║ ║ ║║ CODE ║ -+----+----+----+----+----+----+----
- -- ║ ║ ║║ WT-2 ║ -+----+----+----+----+----+----+----
- -- ╚═════════║ (C)1990 By ║║ FORE ║ -+----+----+----+----+----+----+----
- ---- ║ ║║ BACK ║ -+----+----+----+----+----+----+----
- -----+----+- ║ Custom Software ║║ HELP ║ -+----+----+----+----+----+----+----
- -----+----+- ║ ║║ PLIB ║ -+----+----+----+----+----+----+----
- -----+----+- ║ ║║ NOTE ║ -+----+----+----+----+----+----+----
- -----+----+- ║ ║║ EDIT ║ -+----+----+----+----+----+----+----
- -----+----+- ╚═══════════════════╝║ UTIL ║ -+----+----+----+----+----+----+----
- -----+----+--- ║ QUIT ║ -+----+----+----+----+----+----+----
- -----+----+----+----+----+----+---╚══════╝ -+----+----+----+----+----+----+----
- -----+----+----+----+----+----+----+ -+----+----+----+----+----+----+----
- -----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----
- -----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----
- -----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----
- -----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+----
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ C ║ │║ ADAM 2.1 CONTENTS ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
-
-
-
-
- * Adam features ................................................ 1
-
-
- * Windows ...................................................... 2
-
-
- * Window attributes ............................................ 3
-
-
- * Utilities .................................................... 4
-
-
- * Browse windows ............................................... 5
-
-
- * Browse continued ............................................. 6
-
-
- * Custom input/Object editor ................................... 7
-
-
- * Object verbs ................................................. 8
-
-
- * Object library ............................................... 9
-
-
- * Tips & Tricks ................................................ 10
-
-
- * Sample program ............................................... 12
-
-
- * Animation .................................................... 42
-
-
- * Importing objects ............................................ 44
-
-
- * Font library ................................................. 45
-
-
- * How to create objects ........................................ 46
-
-
- * Object files ................................................. 47
-
-
- * A brief history .............................................. 50
-
-
-
-
-
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ INTRODUCTION ║ ║ 1 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
- Welcome to A.D.A.M. (Advanced Data Access Manager) program generator
- for Clipper. Most of you have probably read about the new wave of
- program generator's on the market. They all stress the benefits of
- using the latest in template programming.
-
- Adam takes the template theory a step further, instead of writing
- program modules to generate code, with Adam you design SMART OBJECTS
- which Adam links together to form your complete program.
-
- What are SMART OBJECTS?
- _______________________
-
- Smart objects can be a menu, screen, browse window, lookup, picklist
- or even a complete sub-program or procedure. Smart objects are very
- similar to procedure programs except for a couple of very unusual
- features.
-
- These smart objects have the ability to communicate with ADAM by
- asking questions, which Adam passes on to you, and getting your
- answer which Adam passes back to the object.
-
- This system prevents you from having to remember what a procedure
- requires as parameters in order to call it in your program. This
- power becomes even more evident if you wrote the procedure about six
- months ago.
-
- Other features included in Adam
- _______________________________
-
- * Generates single or multi-user code.
-
- * Fast screen design tools.
-
- * Easy custom menu design for vertical or Lotus style menus.
-
- * Integrated object file editor.
-
- * Comes with complete set of object files ready to use.
-
- * Custom screen and menu colors.
-
- * Create or modify database files.
-
- * Create index files.
-
- * Define your own menu help screens.
-
- * Attach lookups or a picklist to selected input fields.
-
- * Initialize and calculation calls.
-
- * Free telephone support and updates.
-
- * Generates custom looking programs.
-
-
-
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 2 ║ │║ WINDOWS ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
- As you work with Adam you will use windows to store your objects in,
- each window contains a different object that you have created. Adam
- has ten different types of windows, numbered from 0 through 9.
-
- Below are the different types of windows that can be created:
-
- TYPE WINDOW
- ____ ________________________________________
-
- 0 Double line (lotus style)
-
- 1 Single line
-
- 2 Double line
-
- 3 Single side double top
-
- 4 Double side single top
-
- 5 Solid with black shadow
-
- 6 Single line exploding
-
- 7 Double line exploding
-
- 8 Single side double top exploding
-
- 9 Double side single top exploding
-
-
- Window types are selected by pressing "W" while at the main menu or,
- by moving the cursor to "WT-#" and pressing enter. The window type
- you have selected will be displayed next to the "WT-#" menu option.
-
- Adam windows can contain several different types of objects such as
- browse, edit, lookup, picklist, text, code, and menu objects.
-
- Most of your time with Adam will be spent describing the attributes
- that your windows objects contain, things like size, color, location
- contents, type and if your window is quiet or contains sound.
-
- Window objects are just one of Adam's many exciting features. Later
- on we will show you other features such as SMART OBJECTS.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ WINDOW ATTRIBUTES ║ ║ 3 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
- MOVE - The move command allows you to position your windows anywhere
- on the screen. Use the arrow keys to move the window around.
-
- SIZE - The size command lets you stretch the window to any shape you
- want. Use the arrow keys to size the window, holding down the
- shift key and pressing the down or right arrow keys will make
- the window stretch out to the end of the screen.
-
- TEXT - The text command allows you to enter messages for titles and
- menu options for MENU objects. If there is existing text that
- was in the window from previous editing, Adam will warn you
- and ask if you want to erase existing text. Pressing the 'F7'
- and 'F8' keys provides a copy and paste for a line of text.
-
- Text can also be centered automatically while you are in the
- SIZE mode. Simply press the ESC key and all the lines in the
- window will be centered.
-
- HELP - The help command lets you add help messages to each of your
- menu options.
-
- FORE - The fore command lets you change the foreground or text color
- in your window.
-
- BACK - The back command lets you change the background color of your
- window.
-
- CODE - The code command is where you tell Adam you are finished with
- your window and are ready to save it. Adam will prompt you
- for the name of your window object. You can enter up to ten
- characters for the name. If this is your first window object
- Adam will ask you to enter a program file name to save your
- window objects in.
-
- This allows you to go back later and edit any window objects
- that belong to this program. If you fail to enter a name for
- the object then Adam will NOT save the object.
-
- NOTE - The note command turns the window sound on or off. If sound
- is on then Adam adds sound to your windows.
-
- EDIT - The edit command lets you select a window object from a list
- of all the objects in your program. You can then edit the
- object, making any changes and save it again.
-
- UTIL - The util command presents you with a menu of Adams database
- and object utilities. These command are listed in more detail
- in the UTILITIES section.
-
- PLIB - The plib command allows you to attach procedure programs or
- what we call SMART OBJECTS to your window objects. These are
- discussed further in the LIBRARY section.
-
- All Adam menu commands can be accessed by pressing the first
- letter of each command. The ESC key will toggle the main menu
- on or off to allow you to view your screen.
-
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 4 ║ │║ UTILITIES ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
- Adam comes with built in utilities to create or modify a database, a
- utility to build index files and other required tools needed to make
- your program designing fast and easy.
-
- FIELD TYPE LEN DEC
- ╔═════════════╤══════╤═════╤══════╗
- ║ QTY │ N │ 4 │ 0 ║
- ║ STOCKNO │ C │ 10 │ 0 ║
- ║ DES │ C │ 30 │ 0 ║
- ║ VENDOR │ C │ 20 │ 0 ║
- ║ COST │ N │ 8 │ 2 ║
- ║ PRICE │ N │ 8 │ 2 ║
- ║ ORDER │ N │ 4 │ 0 ║
- ║ FLAG │ C │ 1 │ 0 ║
- ║ │ │ │ ║
- ║ │ │ │ ║
- ║ │ │ │ ║
- ╚═════════════════════════════════╝
-
- CREATE - database structure lets you create a new database file. The
- field names are entered first, followed by the type, length
- and decimal. There is limited error checking for this input
- such as fields with the same name, type of fields, entering
- a length that is too large and incorrect decimal positions.
-
- MODIFY - database structure is very similar to the CREATE command,
- except that if you change the name of a field, the MODIFY
- command will only append fields of the same name to your
- new structure.
-
- ╔═Index on════╗
- ║ QTY ║
- ║ STOCKNO ║
- ║ DES ║
- ║ VENDOR ║
- ║ COST ║
- ║ PRICE ║
- ║ ORDER ║
- ║ FLAG ║
- ╚═════════════╝
- ╔═Enter index file name════════════════════════════════════════════════════════╗
- ║ INDEX ON STOCKNO TO STOCK ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- INDEX - database index file allows you to select a database file
- and key field or multiple fields to create an index file.
-
- SET - value of F2 key will let you define the F2 function key as
- a keyboard macro. You can then use this key to help you
- design your text windows for title screens. The F2 key has
- a default of "█" which is CHR(219).
-
- Experiment with different characters such as CHR(176) '░'
- to create special effects and add texture to your screens.
-
-
-
-
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ UTILITIES ║ ║ 5 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
- BROWSE - fields into browse window allows you to build a dBASE like
- browse screen. This window can have many different types of
- attributes attached to it.
-
- Insert first asks you for the database file you want to use
- and the indexes. If this will be a browse window you should
- select all the indexes, so that they are updated while the
- records are being edited.
-
- Then you select the fields you want Adam to place into your
- window. Each time you select a field, Adam asks if you want
- this field to call another object.
-
- ╔Procedure to call before read═════════════════════════════════════════════════╗
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- If you attach a call to another object at the field level
- then the call takes place when the user tries to edit the
- field with the call attached. If you do not want this
- field to call another object then just press enter.
-
- ╔Enter Title For Window Object═════════════════════════════════════════════════╗
- ║Inventory Listing ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- After you have selected all the fields you want in your
- window, press ESC. Adam will ask you for the window type.
-
- ╔Enter window object type {BLP}════════════════════════════════════════════════╗
- ║B ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- There are three type of browse windows that you can select
- from. Below is a list of the window types and their window
- features.
-
- B - BROWSE The browse window allows editing.
- L - LOOKUP The lookup window has no editing features.
- P - PICKLIST The picklist window has no editing features,
- but does a replace of all fields used in the picklist
- into the calling window object.
-
- ╔Enter Filter Condition════════════════════════════════════════════════════════╗
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- After you have selected the window type, you are asked if
- you want to place any filter conditions on this window.
-
- ╔Enter Initialize Procedure Name═══════════════════════════════════════════════╗
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- Next you can enter an initialization procedure to call just
- before this object is called.
-
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 6 ║ │║ UTILITIES ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
- ╔Enter Calculation Procedure Name══════════════════════════════════════════════╗
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- You can also call a calculation object to call after this
- object has done the READ. Initialization and calculation
- objects are created in a text window by entering the object
- names in lower case. This will tell Adam that you want the
- text window generated as a CODE object.
-
- ╔Will this object call another {BLPN}?═════════════════════════════════════════╗
- ║L ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- The last question you have to answer about your object is
- will this object call another object. Objects can call any
- other object that you wish, they do not have to be a browse
- type object.
-
- If you will not be calling another object enter a letter "N"
- for NONE. If you answer B,L or P you will be asked to enter
- the name of the new object to call.
-
- ╔Enter object name to call═════════════════════════════════════════════════════╗
- ║LOOK ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- After you have answered all the prompts for your object, you
- can press the ESC key to exit from the utility menu. You can
- now see your browse object on the screen.
-
- At this time you can move the object or change the colors of
- your object before saving it.
-
- Holding down the shift key and pressing the letters "F" or
- "B" will allow you to change the TITLE colors for your new
- object.
-
- ╔═Inventory Listing════════════════════════════════════════════════════════════╗
- ║ DES QTY STOCKNO VENDOR ║
- ║══╤════════════════════════════════╤══════╤════════════╤══════════════════════║
- ║█ │ ██████████████████████████████ │ ████ │ ██████████ │ ████████████████████ ║
- ║█ │ ██████████████████████████████ │ ████ │ ██████████ │ ████████████████████ ║
- ║█ │ ██████████████████████████████ │ ████ │ ██████████ │ ████████████████████ ║
- ║█ │ ██████████████████████████████ │ ████ │ ██████████ │ ████████████████████ ║
- ║█ │ ██████████████████████████████ │ ████ │ ██████████ │ ████████████████████ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- Now select the CODE option from the main menu to save your objects.
- Remember to add comment lines to your object, this is a very helpful
- feature if you need to go back and change the window objects.
-
- ╔═Object═════Description═══════════════════════════════════════════════════════╗
- ║ EDIT edit inventory window ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
-
-
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ UTILITIES ║ ║ 7 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
- EDIT - window works the same as inserting fields into the browse
- window, with just a few differences.
-
- The EDIT command lets you place the fields into your own
- edit screen design. You can also add text messages to this
- window.
-
- This command also lets you insert custom picture templates
- and a valid clause to each input field.
-
- You also have the option of attaching the built-in EDITMENU
- automatically to your custom edit windows.
-
- ADAM - object editor provides a built in program editor to edit
- your object files or to create new object files.
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ ADAM OBJECT EDITOR Line: 1 Col: 0 ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- PROCEDURE report
- PARAMETER dbf,ntx,ezform,header,expr
- NOTE DBF Report DBF
- NOTE ONE Select one
- NOTE FRM Format File
- NOTE ASK Enter Report Heading
- NOTE ASK Enter Filter Condition For Report
- SELECT 0
- IF multuser
- LANOPEN(dbf,"",.F.)
- IF lanresult
- RETURN
- ENDIF
- ELSE
- USE &dbf
- ENDIF
- SET INDEX TO &ntx
- SAVE SCREEN TO rep_scr
- DO window WITH 22,0,24,79,SETCOLOR(),7,1
-
- The example object shown above is a sample of SMART OBJECTS
- that can ask questions and receive answers from Adam. The
- way we turn our normal procedure objects into SMART OBJECTS
- is by adding a NOTE command in our object file.
-
- The NOTE command is used by Clipper as a comment line. Adam
- uses this as a means of communicating with your object file
- to receive questions and perform different type of commands
- which are built into Adam.
-
- We call these commands "ACTION VERBS" meaning that we want
- Adam to do something and then tell our objects what actions
- took place. (You great minds working with AI are still in
- the dark ages).
-
-
-
-
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 8 ║ │║ UTILITIES ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
- The following is a list of the -ACTION VERBS- that Adam can
- understand.
-
- VERB ACTION returned in VARIABLE TYPE
- ____ __________________ ________ ____
-
- DBF GET DATABASE dbf string
- NTX GET INDEXES ntx string
- ONE GET ONE INDEX ntx string
- FLD GET FIELD LIST fld string
- HUE GET SETCOLOR() color string
- ASK ASK QUESTION ans string
- FRM GET REPORT FORMS frm string
- LBL GET LABEL FORMS lbl string
- TXT GET FILES *.TXT txt string
- PRG GET FILES *.PRG prg string
- DOC GET FILES *.DOC doc string
- NUM GET NUMBER num numeric
-
- All strings return a null as a default and numeric returns
- a zero value as a default.
-
- The information following the object verbs are questions to
- ask the user. For all verbs that pertain to files you must
- try to keep your questions under 13 characters in length so
- it fits inside the action window.
-
- Adam passes the answers back to the object file as a string
- containing the parameters needed to call the object files.
-
- DEBUG - current object allows you to edit the current window object
- in a browse type window. You will find this feature helpful
- when you just need to make a small change in an object, and
- you don't want to redo the complete object.
-
- IMPORT - window object import lets you suspend work on the current
- file and open another file to import an existing object in-
- to your current program.
-
- This makes it possible to create fantastic title screens to
- re-use later in another program. Using this feature allows
- you to even create a whole file of shapes, graphics, menus,
- or special window objects, and call them into your programs
- whenever you need them.
-
- REGULAR- regular code or network. Just press the letter 'R' or 'N'
- to toggle from regular or multiuser code generation.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ OBJECT LIBRARY ║ ║ 9 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
- As you create menu options with Adam you will be attaching
- actions to each menu choice. These actions can tell Adam
- that you want a menu option to call another menu, screen,
- code, browse window or an object from your object library.
-
- You can also type in any commands manually into the menu
- options. (Any Clipper compatible commands work.) To call up
- the object library press the F1 key.
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ Description Listing Vendor Listing ReOrder Report ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔Description Listing═══════════════════════════════════════════════════════════╗
- ║DO report WITH "SAMPLE","DES","SAMPLE.FRM","Inventory Listing By Description",║
- ║"" ║
- ║ ║
- ║ ║
- ╚═══Procedure Library - Press F1 For Object Library - Press Ctrl/W To Exit═════╝
- ╔═Objects════════╗
- Adam will display a list of all the objects ║ TABLE.OBJ ║
- that are in the current directory. ---------> ║ REPORT.OBJ √ ║
- ║ PRINTER.OBJ √ ║
- Select the object you want to attach to the ║ ADAMLIBA.OBJ √ ║
- menu procedure option. And just answer the ║ FILTER.OBJ √ ║
- questions that your SMART OBJECTS ask you. ║ LETTERS.OBJ √ ║
- ║ BACKUP.OBJ √ ║
- As you select objects from your library the ║ MULTUSER.OBJ √ ║
- program will keep track of which object you ║ PACKFILE.OBJ ║
- have selected. This is the way Adam knows ║ LABELS.OBJ ║
- which objects to include in your program. ║ USERHELP.OBJ ║
- ║ ADAMLIBB.OBJ √ ║
- You can manually tell Adam to use or not to ║ DCODE.OBJ ║
- use an object by moving down to the objects ║ CARDEX.OBJ ║
- and pressing the right arrow key. ╚════════════════╝
-
- The right arrow key toggles the object from on to off, Some
- objects are automatically used by Adam, these are MULTUSER
- and ADAMLIB*. The ADAMLIB* is where you can place any new
- procedures or functions that might be needed for a special,
- or unique application you are designing.
-
- If you are creating a large procedure, you should create it
- as a smart object file. Save your ADAMLIB* just for very
- small functions or procedures.
-
- The ADAMLIB*.OBJ already contains a few functions that you
- can call from your own SMART OBJECTS. Listed below are some
- of the functions that are in this file.
-
- WINDOW - DO window WITH rt,ct,rb,cb,"color",type,snd
- DOS - DO dos
- GETANS - GETANS("message","default","valid")
- MEDIT - MEDIT("temp","memofield")
- PCHECK - IF PCHECK() ; SET PRINT ON ; ENDIF
- CENTER - @ ??,?? SAY CENTER("message")
- FILTER - FILTER("expr")
- READIT - Use in place of: SET CURSOR ON ; READ ; SET CURSOR OFF
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 10 ║ │║ TIPS ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
- - Layout your program design on paper first, before you start devel-
- oping your ADAM programs.
-
- - Always create your database and any related index,report and label
- files before you start to create your program.
-
- - Allow at least one space on both sides of your menu options, this
- will create better looking menus.
-
- - Remember to press the right arrow key to activate a library object
- when entering objects manually, otherwise ADAM will not grab that
- object when generating your program.
-
- - Always select all your index files when using a Table, Browse or
- custom Edit window, otherwise index files can not be maintained.
-
- - Avoid using exploding window objects for large windows. Exploding
- windows will look better when used with smaller windows due to the
- time involved in drawing the window.
-
- - Use Note (sound) sparingly to draw attention to special window ob-
- jects, such as your main menu.
-
- - Try to avoid using more than three or four different colors in the
- designing of your program. Too many colors tend to look confusing.
-
- - Do not use too many different types of windows. Maintain a uniform
- appearance in your screen designs.
-
- - Always remove the procedure object first before removing the menu
- option.
-
- - Menu size should not be larger than the number of options the menu
- contains.
-
- - Always try to make each menu option start with a different letter.
- This will allow the user to quickly select a menu option just by
- pressing the first letter of a menu option.
-
- - Use overlapping menus whenever possible to show the connection be-
- tween the menus.
-
- - Place an "*" symbol as your first menu option procedure if you are
- not ready to create an object for the first menu option. This will
- force ADAM to write the object as MENU code and not as TEXT.
-
- - When creating a custom edit window the field gets are read in the
- order that they are selected, not the order they are placed.
-
- - When using a lotus style menu, position your title screen on the
- fourth line of the display and save the last line for your help
- messages. This gives your screens a more professional appearance.
-
- - When using memo fields, try to place the memo fields last in your
- browse or edit windows. This will allow the user to press Ctrl-End
- to go immediately into memo edit.
-
-
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ TIPS ║ ║ 11 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
- - Adam recognizes NINE different types of objects. They are listed
- below by name and how they are used.
-
- NAME APPLICATION
- ____ ____________________________________________________________
-
- MENU Contains all types of menus.
-
- TEXT Used for title screens, or any window that contains text.
-
- BROW A browse window with editing features.
-
- LOOK A browse window without editing features.
-
- PICK A browse window that does a replace.
-
- EDIT A custom designed full screen editing window.
-
- GETS Generate says/gets procedure only.
-
- CODE A text window saved with a lower case object name. Used to
- contain procedure code that you enter yourself.
-
- FILM Animation window.
-
- - One of the most powerful features in Adam is the ability to use a
- VALID command to call a function.
-
- EXAMPLE:VALID
- -------------
- VALID CHECKNO(check)
-
- - Use the STARTUP feature in the first window, to call a CODE window
- that contains memory variable initialization, or SET KEY commands.
-
- EXAMPLE:STARTUP
- ---------------
- IF FILE("INVNUM.MEM")
- RESTORE FROM INVNUM
- ELSE
- invoice = 1001
- SAVE TO INVNUM
- ENDIF
- invoice = invoice + 1
-
- EXAMPLE:QUIT
- ------------
- RELEASE ALL EXCEPT invoice
- SAVE TO INVNUM
-
- - Use a MENU window to create a quick picklist window. And for each
- menu option use the -KEYBOARD- command to stuff the keyboard with
- the users choice.
-
- RED KEYBOARD "RED"
- BLACK KEYBOARD "BLACK"
- GREEN KEYBOARD "GREEN"
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 12 ║ │║ SAMPLE PROGRAM ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
- Lets take a step by step walk through Adam and create our first Adam
- program. The first thing we need to do is create our database file,
- press "U" for Utility menu.
-
- ╔═Utility Menu═════════╗
- ║█Create database file█║
- ║ Modify database file ║
- ║ Index database files ║
- ║ Browse window design ║
- ║ Lookup window design ║
- ║ Pickup window design ║
- ║ Editit window design ║
- ║ Set values of F2 key ║
- ║ Adam's object editor ║
- ║ Debug current object ║
- ║ Window object import ║
- ║ REGULAR CODE PROGRAM ║
- ╚══════════════════════╝
-
- PRESS "C" for Create database file.
-
- You should now see the CREATE DATABASE STRUCTURE screen on your
- monitor. Enter the Field information as in our example below.
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ ║
- ║ CREATE DATABASE STRUCTURE ║
- ║ ║
- ║ ║
- ║ ║
- ║ FIELD TYPE LEN DEC ║
- ║ ═════════════╤══════╤═════╤══════ ║
- ║ NAME │ C │ 30 │ 0 ║
- ║ ADDRESS │ C │ 30 │ 0 ║
- ║ CITY │ C │ 21 │ 0 ║
- ║ ST │ C │ 2 │ 0 ║
- ║ ZIP │ C │ 5 │ 0 ║
- ║ PHONE │ C │ 14 │ 0 ║
- ║ MEMO │ M │ 10 │ 0 ║
- ║ │ │ │ ║
- ║ │ │ │ ║
- ║ │ │ │ ║
- ║ │ │ │ ║
- ║ │ │ │ ║
- ║ │ │ │ Save Database Structure?(Y/N) Y ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- PRESS "Ctrl-W" when you have entered all the field data.
-
- Adam will now ask you if you want to save the new structure.
-
- PRESS "Y" to save the structure to disk.
-
- Adam will prompt you to enter a filename for your new database file.
-
- ENTER "MAILLIST" for our sample program and press {enter}.
-
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ SAMPLE PROGRAM ║ ║ 13 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
- Now we need to create an index file for our sample program.
-
- PRESS "I" to Index database file.
-
- ╔═Utility Menu═════════╗═══════════════════════════════════════════════════════╗
- ║ Create database file ║ ║
- ║ Modify database file ║CTURE ║
- ║█Index database files█║ ║
- ║ Browse window design ║ ║
- ║ Lookup window design ║ ║
- ║ Pickup window design ║ ║
- ║ Editit window design ║ LEN DEC ║
- ║ Set values of F2 key ║╤═════╤══════ ║
- ║ Adam's object editor ║│ 30 │ 0 ║
- ║ Debug current object ║│ 30 │ 0 ║
- ║ Window object import ║│ 21 │ 0 ║
- ║ REGULAR CODE PROGRAM ║│ 2 │ 0 ║
- ╚══════════════════════╝│ 5 │ 0 ║
- ║ PHONE │ C │ 14 │ 0 ║
- ║ MEMO │ M │ 10 │ 0 ║
- ║ │ │ │ ║
- ║ │ │ │ ║
- ║ │ │ │ ║
- ║ │ │ │ ║
- ║ │ │ │ ║
- ║ │ │ │ Save Database Structure?(Y/N) Y ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- ╔═Utility Menu═════════╗═══════════════════════════════════════════════════════╗
- ║ Create database file ║ ║
- ║ Modify database file ║CTURE ║
- ║█Index database files█║ ║
- ║ Browse window design ║ ║
- ║ Lookup window design ║ ║
- ║ Pickup window design ║ ║
- ║ Editit window design ║ LEN DEC ║
- ║ Set values of F2 key ║╤═════╤══════ ║
- ╔═Select DBF════╗ditor ║│ 30 │ 0 ║
- ║█MAILLIST.DBF █║bject ║│ 30 │ 0 ║
- ╚═══════════════╝mport ║│ 21 │ 0 ║
- ║ REGULAR CODE PROGRAM ║│ 2 │ 0 ║
- ╚══════════════════════╝│ 5 │ 0 ║
- ║ PHONE │ C │ 14 │ 0 ║
- ║ MEMO │ M │ 10 │ 0 ║
- ║ │ │ │ ║
- ║ │ │ │ ║
- ║ │ │ │ ║
- ║ │ │ │ ║
- ║ │ │ │ ║
- ║ │ │ │ Save Database Structure?(Y/N) Y ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- Adam will ask you to select the database file to index.
-
- PRESS "ENTER" to select the file we just created called MAILLIST.DBF
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 14 ║ │║ SAMPLE PROGRAM ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
- ╔═Utility Menu═════════╗═══════════════════════════════════════════════════════╗
- ║ Create database file ║ ║
- ║ Modify database file ║CTURE ║
- ║█Index database files█║ ║
- ║ Browse window design ║ ║
- ║ Lookup window design ║ ║
- ║ Pickup window design ║ ║
- ║ Editit window design ║ LEN DEC ║
- ║ Set values of F2 key ║╤═════╤══════ ║
- ╔═Index on════╗ editor ║│ 30 │ 0 ║
- ║█NAME █║ object ║│ 30 │ 0 ║
- ║ ADDRESS ║ import ║│ 21 │ 0 ║
- ║ CITY ║PROGRAM ║│ 2 │ 0 ║
- ║ ST ║════════╝│ 5 │ 0 ║
- ║ ZIP ║ │ C │ 14 │ 0 ║
- ║ PHONE ║ │ M │ 10 │ 0 ║
- ║ MEMO ║ │ │ │ ║
- ╚═════════════╝ │ │ │ ║
- ║ │ │ │ ║
- ║ │ │ │ ║
- ║ │ │ │ Save Database Structure?(Y/N) Y ║
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ INDEX ON ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- Now select the field called "NAME" which will be the field we want
- to create our index on.
-
- PRESS "ENTER" to select the field called "NAME", and then press ESC.
-
- ENTER "NAME" for the name of our INDEX FILE, and press {enter}.
-
- ╔═Utility Menu═════════╗═══════════════════════════════════════════════════════╗
- ║ Create database file ║ ║
- ║ Modify database file ║CTURE ║
- ║█Index database files█║ ║
- ║ Browse window design ║ ║
- ║ Lookup window design ║ ║
- ║ Pickup window design ║ ║
- ║ Editit window design ║ LEN DEC ║
- ║ Set values of F2 key ║╤═════╤══════ ║
- ║ Adam's object editor ║│ 30 │ 0 ║
- ║ Debug current object ║│ 30 │ 0 ║
- ║ Window object import ║│ 21 │ 0 ║
- ║ REGULAR CODE PROGRAM ║│ 2 │ 0 ║
- ╚══════════════════════╝│ 5 │ 0 ║
- ║ PHONE │ C │ 14 │ 0 ║
- ║ MEMO │ M │ 10 │ 0 ║
- ║ │ │ │ ║
- ║ │ │ │ ║
- ║ │ │ │ ║
- ║ │ │ │ ║
- ║ │ │ │ Save Database Structure?(Y/N) Y ║
- ╔═Enter index file name════════════════════════════════════════════════════════╗
- ║ INDEX ON NAME TO NAME ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
-
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ SAMPLE PROGRAM ║ ║ 15 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
- PRESS "ESC" twice to return to the main menu.
-
- Before we go any further in Adam, we should exit Adam at this point,
- and create our report format and label format file. Remember to call
- them "MAILLIST.FRM" and "MAILLIST.LBL".
-
- ╔═══════════════════╗ Now we are ready to create our title screen for our
- ║ ║ masterpiece. You should see a window like the one
- ║ ║ shown below, in the top left corner of your screen,
- ║ ║ after pressing the letter 'S' for size.
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚═══════════════════╝
-
- PRESS "S" to SIZE our window.
-
- PRESS "SHIFT-RIGHT ARROW" to stretch the window to the right.
-
- PRESS "SHIFT-DOWN ARROW" to stretch the window to the bottom.
-
- PRESS "UP ARROW" one time to decrease our window size by one line.
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
-
- PRESS "ENTER" to return to the main menu.
-
- PRESS "B" to change the background color to BLUE.
-
- PRESS "T" to enter the TEXT mode.
-
-
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 16 ║ │║ SAMPLE PROGRAM ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
- Enter the title for your program like the example shown below.
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ ____ ____ ___ ___ ____ ___ _ ____ ║
- ║ █ █__█ █__▌ █ █ █__ █ █ █__ ║
- ║ █___ █ █ █ █ █__█ █ _█_ █___ █___ ║
- ║______________________________________________________________________________║
- ║ ║
- ║ ║
- ║ ║
- ║ NOTE: You can record keyboard macros using the 'F2' key from the utility ║
- ║ menu. The SET KEY function will allow you to enter text characters ║
- ║ which can be played back while in TEXT mode by pressing the F2 key ║
- ║ ║
- ║ You can also press 'ALT/F2' while in TEXT mode to popup an 'ASCII' ║
- ║ lookup window. Select any character from ( 32-254 ) and then press ║
- ║ the 'F2' key to repeat the character. If you press ESC the F2 key ║
- ║ will be left unchanged. ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ ____ ____ ___ ___ ____ ___ _ ____ ║
- ║ █ █__█ █__▌ █ █ █__ █ █ █__ ║
- ║ █___ █ █ █ █ █__█ █ _█_ █___ █___ ║
- ║______________________________________________________________________________║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╔═Object═════Description══════════════════════════════Startup════Quit══════════╗
- ║ START title screen ██████████ ██████████ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- PRESS "CTRL-W" to exit the TEXT mode.
-
- PRESS "C" to save. Now enter the filename for our program "SAMPLE".
-
- ENTER "START" in upper case for our object name, and press "ENTER".
-
- ENTER "title screen" for our description and press "PgDn" to save.
-
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ SAMPLE PROGRAM ║ ║ 17 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
- Now we are ready to create our first MENU window.
-
- PRESS "M" to move the menu window under our title.
-
- ╔═══════════════════╗══════════════════════════════════════════════════════════╗
- ║ ____ ____ ___ __║ ____ ___ _ ____ ║
- ║ █ █__█ █__▌ █ ║█ █__ █ █ █__ ║
- ║ █___ █ █ █ █ █_║█ █ _█_ █___ █___ ║
- ║___________________║__________________________________________________________║
- ║ ║ ║
- ║ ║ ║
- ║ ║ ║
- ║ ║ ║
- ║ ║ ║
- ╚═══════════════════╝ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ ____ ____ ___ ___ ____ ___ _ ____ ║
- ║ █ █__█ █__▌ █ █ █__ █ █ █__ ║
- ║ █___ █ █ █ █ █__█ █ _█_ █___ █___ ║
- ║______________________________________________________________________________║
- ║ ║
- ║ ╔═══════════════════╗ ║
- ║ ║ ║ ║
- ║ ║ ║ ║
- ║ ║ ║ ║
- ║ ║ ║ ║
- ║ ║ ║ ║
- ║ ║ ║ ║
- ║ ║ ║ ║
- ║ ║ ║ ║
- ║ ║ ║ ║
- ║ ╚═══════════════════╝ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- Use the arrow keys to position the MENU window as shown above.
-
- PRESS "ENTER" to return to the main menu.
-
-
-
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 18 ║ │║ SAMPLE PROGRAM ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ ____ ____ ___ ___ ____ ___ _ ____ ║
- ║ █ █__█ █__▌ █ █ █__ █ █ █__ ║
- ║ █___ █ █ █ █ █__█ █ _█_ █___ █___ ║
- ║______________________________________________________________________________║
- ║ ║
- ║ ╔═══════════════════╗ ║
- ║ ║ Add ║ ║
- ║ ║ Edit/View ║ ║
- ║ ║ Mailmerge Letters ║ ║
- ║ ║ Reports ║ ║
- ║ ║ Labels ║ ║
- ║ ║ Utilities ║ ║
- ║ ║ Quit ║ ║
- ║ ║ ║ ║
- ║ ║ ║ ║
- ║ ╚═══════════════════╝ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- PRESS "T" to enter our menu options.
-
- PRESS "CTRL-W" to return to the main menu.
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ ____ ____ ___ ___ ____ ___ _ ____ ║
- ║ █ █__█ █__▌ █ █ █__ █ █ █__ ║
- ║ █___ █ █ █ █ █__█ █ _█_ █___ █___ ║
- ║______________________________________________________________________________║
- ║ ║
- ║ ╔═══════════════════╗ ║
- ║ ║ Add ║ ║
- ║ ║ Edit/View ║ ║
- ║ ║ Mailmerge Letters ║ ║
- ║ ║ Reports ║ ║
- ║ ║ Labels ║ ║
- ║ ║ Utilities ║ ║
- ║ ║ Quit ║ ║
- ║ ╚═══════════════════╝ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- PRESS "S" to size our menu, and press the up arrow key twice.
-
- PRESS "ENTER" to return to the main menu.
-
-
-
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ SAMPLE PROGRAM ║ ║ 19 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
- Now we're ready to add the procedure objects to our menu options.
-
- PRESS "P" from the main menu.
-
- ENTER "DO EDIT" for our first menu option.
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ Add Edit/View Mailmerge Letters Reports Labels Utilities Quit ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔Add═══════════════════════════════════════════════════════════════════════════╗
- ║DO EDIT ║
- ║ ║
- ║ ║
- ║ ║
- ╚═══Procedure Library - Press F1 For Object Library - Press Ctrl/W To Exit═════╝
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- PRESS "PgDn" to move to our next menu option.
-
- ENTER "DO LOOK" for our EDIT/VIEW menu option, and "PgDn" to continue.
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ Add Edit/View Mailmerge Letters Reports Labels Utilities Quit ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔Edit/View═════════════════════════════════════════════════════════════════════╗
- ║DO LOOK ║
- ║ ║
- ║ ║
- ║ ║
- ╚═══Procedure Library - Press F1 For Object Library - Press Ctrl/W To Exit═════╝
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 20 ║ │║ SAMPLE PROGRAM ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
- PRESS "F1" to select the LETTERS.OBJ from our object library.
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ Add Edit/View Mailmerge Letters Reports Labels Utilities Quit ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔Mailmerge Letters═════════════════════════════════════════════════════════════╗
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚═══Procedure Library - Press F1 For Object Library - Press Ctrl/W To Exit═════╝
- ║ ╔═Objects════════╗
- ║ ║ ADAMLIBA.OBJ √ ║
- ║ ║ TABLE.OBJ ║
- ║ ║ REPORT.OBJ ║
- ║ ║ PRINTER.OBJ ║
- ║ ║ PACKFILE.OBJ ║
- ║ ║ LABELS.OBJ ║
- ║ ║ INVOICE.OBJ ║
- ║ ║ USERHELP.OBJ ║
- ║ ║ POPCAL.OBJ ║
- ║ ║ DCODE.OBJ ║
- ║ ║█LETTERS.OBJ √█║
- ║ ║ BACKUP.OBJ ║
- ║ ║ MULTUSER.OBJ √ ║
- ╚═════════════════════════════════════════════════════════════║ ADAMLIBB.OBJ √ ║
- ╚════════════════╝
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ Add Edit/View Mailmerge Letters Reports Labels Utilities Quit ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔Mailmerge Letters═════════════════════════════════════════════════════════════╗
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚═══Procedure Library - Press F1 For Object Library - Press Ctrl/W To Exit═════╝
- ╔═Datafile DBF══╗ ╔═Objects════════╗
- ║█MAILLIST.DBF █║ ║ ADAMLIBA.OBJ √ ║
- ╚═══════════════╝ ║ TABLE.OBJ ║
- ║ ║ REPORT.OBJ ║
- ║ ║ PRINTER.OBJ ║
- ║ ║ PACKFILE.OBJ ║
- ║ ║ LABELS.OBJ ║
- ║ ║ INVOICE.OBJ ║
- ║ ║ USERHELP.OBJ ║
- ║ ║ POPCAL.OBJ ║
- ║ ║ DCODE.OBJ ║
- ║ ║█LETTERS.OBJ √█║
- ║ ║ BACKUP.OBJ ║
- ║ ║ MULTUSER.OBJ √ ║
- ╚═════════════════════════════════════════════════════════════║ ADAMLIBB.OBJ √ ║
- ╚════════════════╝
- PRESS "ENTER" to select our maillist.dbf file.
-
- PRESS "ENTER" again to select the "NAME" index file.
-
-
-
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ SAMPLE PROGRAM ║ ║ 21 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
- Adam will ask us if we want to place any filter conditions over the
- records. For our example we won't need any filter.
-
- PRESS "ENTER" to skip this question.
-
- ╔Enter Filter Condition For Letters════════════════════════════════════════════╗
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- You should see the following parameters inserted automatically into
- the mailmerge menu option.
-
- ╔Mailmerge Letters═════════════════════════════════════════════════════════════╗
- ║DO letters WITH "MAILLIST","NAME","" ║
- ║ ║
- ║ ║
- ║ ║
- ╚═══Procedure Library - Press F1 For Object Library - Press Ctrl/W To Exit═════╝
-
- PRESS "PgDn" to move on to the REPORTS menu option.
-
- PRESS "F1" to access our library objects.
-
- PRESS "R" to move to the REPORT.OBJ
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ Add Edit/View Mailmerge Letters Reports Labels Utilities Quit ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔Reports═══════════════════════════════════════════════════════════════════════╗
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚═══Procedure Library - Press F1 For Object Library - Press Ctrl/W To Exit═════╝
- ║ ╔═Objects════════╗
- ║ ║ ADAMLIBA.OBJ √ ║
- ║ ║ TABLE.OBJ ║
- ║ ║█REPORT.OBJ █║
- ║ ║ PRINTER.OBJ ║
- ║ ║ PACKFILE.OBJ ║
- ║ ║ LABELS.OBJ ║
- ║ ║ INVOICE.OBJ ║
- ║ ║ USERHELP.OBJ ║
- ║ ║ POPCAL.OBJ ║
- ║ ║ DCODE.OBJ ║
- ║ ║ LETTERS.OBJ √ ║
- ║ ║ BACKUP.OBJ ║
- ║ ║ MULTUSER.OBJ √ ║
- ╚═════════════════════════════════════════════════════════════║ ADAMLIBB.OBJ √ ║
- ╚════════════════╝
- PRESS "ENTER" to select the REPORT object.
-
- Most of Adam's menus allow you to press the first letter of the item
- to select that option. This won't work if some of your object files
- start with the same letter.
-
-
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 22 ║ │║ SAMPLE PROGRAM ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
- PRESS "ENTER" to select the database to use for your report.
-
- In our example there should only be one database file to choose from
- the MAILLIST.DBF.
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ Add Edit/View Mailmerge Letters Reports Labels Utilities Quit ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔Reports═══════════════════════════════════════════════════════════════════════╗
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚═══Procedure Library - Press F1 For Object Library - Press Ctrl/W To Exit═════╝
- ╔═Report DBF════╗ ╔═Objects════════╗
- ║█MAILLIST.DBF █║ ║ ADAMLIBA.OBJ √ ║
- ╚═══════════════╝ ║ TABLE.OBJ ║
- ║ ║█REPORT.OBJ █║
- ║ ║ PRINTER.OBJ ║
- ║ ║ PACKFILE.OBJ ║
- ║ ║ LABELS.OBJ ║
- ║ ║ INVOICE.OBJ ║
- ║ ║ USERHELP.OBJ ║
- ║ ║ POPCAL.OBJ ║
- ║ ║ DCODE.OBJ ║
- ║ ║ LETTERS.OBJ √ ║
- ║ ║ BACKUP.OBJ ║
- ║ ║ MULTUSER.OBJ √ ║
- ╚═════════════════════════════════════════════════════════════║ ADAMLIBB.OBJ √ ║
- ╚════════════════╝
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ Add Edit/View Mailmerge Letters Reports Labels Utilities Quit ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔Reports═══════════════════════════════════════════════════════════════════════╗
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚═══Procedure Library - Press F1 For Object Library - Press Ctrl/W To Exit═════╝
- ╔═Select one════╗ ╔═Objects════════╗
- ║█NAME.NTX █║ ║ ADAMLIBA.OBJ √ ║
- ╚═══════════════╝ ║ TABLE.OBJ ║
- ║ ║█REPORT.OBJ █║
- ║ ║ PRINTER.OBJ ║
- ║ ║ PACKFILE.OBJ ║
- ║ ║ LABELS.OBJ ║
- ║ ║ INVOICE.OBJ ║
- ║ ║ USERHELP.OBJ ║
- ║ ║ POPCAL.OBJ ║
- ║ ║ DCODE.OBJ ║
- ║ ║ LETTERS.OBJ √ ║
- ║ ║ BACKUP.OBJ ║
- ║ ║ MULTUSER.OBJ √ ║
- ╚═════════════════════════════════════════════════════════════║ ADAMLIBB.OBJ √ ║
- ╚════════════════╝
- PRESS "ENTER" to select our NAME index file.
-
-
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ SAMPLE PROGRAM ║ ║ 23 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
- PRESS "ENTER" again to select the report format file MAILLIST.FRM.
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ Add Edit/View Mailmerge Letters Reports Labels Utilities Quit ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔Reports═══════════════════════════════════════════════════════════════════════╗
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚═══Procedure Library - Press F1 For Object Library - Press Ctrl/W To Exit═════╝
- ╔═Format File═══╗ ╔═Objects════════╗
- ║█MAILLIST.FRM █║ ║ ADAMLIBA.OBJ √ ║
- ╚═══════════════╝ ║ TABLE.OBJ ║
- ║ ║█REPORT.OBJ █║
- ║ ║ PRINTER.OBJ ║
- ║ ║ PACKFILE.OBJ ║
- ║ ║ LABELS.OBJ ║
- ║ ║ INVOICE.OBJ ║
- ║ ║ USERHELP.OBJ ║
- ║ ║ POPCAL.OBJ ║
- ║ ║ DCODE.OBJ ║
- ║ ║ LETTERS.OBJ √ ║
- ║ ║ BACKUP.OBJ ║
- ║ ║ MULTUSER.OBJ √ ║
- ╚═════════════════════════════════════════════════════════════║ ADAMLIBB.OBJ √ ║
- ╚════════════════╝
-
- ENTER "CardFile Listing By Name" for our report heading.
-
- ╔Enter Report Heading══════════════════════════════════════════════════════════╗
- ║CardFile Listing By Name ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- PRESS "ENTER" to skip the filter condition question.
-
- ╔Enter Filter Condition For Report═════════════════════════════════════════════╗
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- The following parameter line will automatically be inserted into the
- report procedure line.
-
- ╔Reports═══════════════════════════════════════════════════════════════════════╗
- ║DO report WITH "MAILLIST","NAME","MAILLIST.FRM","CardFile Listing By Name","" ║
- ║ ║
- ║ ║
- ║ ║
- ╚═══Procedure Library - Press F1 For Object Library - Press Ctrl/W To Exit═════╝
-
- PRESS "PgDn" to advance to the next menu option.
-
- Now we are ready to attach our LABELS object to our main menu. This
- is done the same way we did the REPORT object. You must be ready to
- try this one by yourself. If you need help refer back to reports.
-
-
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 24 ║ │║ SAMPLE PROGRAM ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
- If you've done your homework, you should see the following screen on
- your monitor.
-
- ╔Labels════════════════════════════════════════════════════════════════════════╗
- ║DO labels WITH "MAILLIST","NAME","MAILLIST.LBL","" ║
- ║ ║
- ║ ║
- ║ ║
- ╚═══Procedure Library - Press F1 For Object Library - Press Ctrl/W To Exit═════╝
-
- PRESS "PgDn" to move to the next menu option.
-
- This option will call our utility menu.
-
- ENTER "DO UTIL"
-
- PRESS "PgDn" to move to our last menu option.
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ Add Edit/View Mailmerge Letters Reports Labels Utilities Quit ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔Utilities═════════════════════════════════════════════════════════════════════╗
- ║DO UTIL ║
- ║ ║
- ║ ║
- ║ ║
- ╚═══Procedure Library - Press F1 For Object Library - Press Ctrl/W To Exit═════╝
-
- ENTER "EXIT" for our last menu option.
-
- PRESS "CTRL-W" to return to Adam's main menu.
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ Add Edit/View Mailmerge Letters Reports Labels Utilities Quit ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔Quit══════════════════════════════════════════════════════════════════════════╗
- ║EXIT ║
- ║ ║
- ║ ║
- ║ ║
- ╚═══Procedure Library - Press F1 For Object Library - Press Ctrl/W To Exit═════╝
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- PRESS "B" four times to change the menu color to RED.
-
-
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ SAMPLE PROGRAM ║ ║ 25 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ Add Edit/View Mailmerge Letters Reports Labels Utilities Quit ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔═Help Message═════════════════════════════════════════════════════════════════╗
- ║ Add name to Card File. ║
- ║ Edit/View Card File. ║
- ║ Create/print mailmerge letters. ║
- ║ Print card file report. ║
- ║ Print mailing labels. ║
- ║ Utility menu. ║
- ║ Exit to dos. ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- PRESS "H" to add help messages to your menu.
-
- PRESS "CTRL-W" to return to the menu.
-
- PRESS "C" to save our first MENU window.
-
- ENTER "MENU" for the object name, and "menu window" for the description.
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ ____ ____ ___ ___ ____ ___ _ ____ ║
- ║ █ █__█ █__▌ █ █ █__ █ █ █__ ║
- ║ █___ █ █ █ █ █__█ █ _█_ █___ █___ ║
- ║______________________________________________________________________________║
- ║ ║
- ║ ╔═══════════════════╗ ║
- ║ ║ Add ║ ║
- ║ ║ Edit/View ║ ║
- ║ ║ Mailmerge Letters ║ ║
- ║ ║ Reports ║ ║
- ║ ║ Labels ║ ║
- ║ ║ Utilities ║ ║
- ║ ║ Quit ║ ║
- ║ ╚═══════════════════╝ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╔═Object═════Description══════════════════════════════Startup════Quit══════════╗
- ║ MENU menu window ██████████ ██████████ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 26 ║ │║ SAMPLE PROGRAM ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
- Now we can design our LOOKUP window for our program. This window will
- display a list of names from our MAILLIST database.
-
- We can scroll up and down through the list to select a name, then we
- can press ENTER to pull up our cardfile record and view the complete
- record at one time.
-
- PRESS "U" from the main menu to call up our utility menu.
-
- PRESS "L" to select the LOOKUP WINDOW DESIGN option.
-
- ╔═Utility Menu═════════╗═══════════════════════════════════════════════════════╗
- ║ Create database file ║___ ___ _ ____ ║
- ║ Modify database file ║__ █ █ █__ ║
- ║ Index database files ║ _█_ █___ █___ ║
- ║ Browse window design ║_______________________________________________________║
- ║█Lookup window design█║ ║
- ║ Pickup window design ║ ║
- ║ Editit window design ║ ║
- ║ Set values of F2 key ║ ║
- ║ Adam's object editor ║ ║
- ║ Debug current object ║ ║
- ║ Window object import ║ ║
- ║ REGULAR CODE PROGRAM ║ ║
- ╚══════════════════════╝ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- Adam will prompt you to select the database we want to use for our
- lookup window.
-
- PRESS "ENTER" to select "MAILLIST.DBF".
-
- Next we are asked to select the index files to use for our lookup.
-
- PRESS "ENTER" to select "NAME.NTX".
-
- Adam will display a list of all the fields in our MAILLIST database,
- we can use the arrow keys to scroll up and down the list. Each time
- we select a field from the list, the color will change and the items
- that we have selected will become inactive.
-
-
-
-
-
-
-
-
-
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ SAMPLE PROGRAM ║ ║ 27 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
- ╔═Utility Menu═════════╗═══════════════════════════════════════════════════════╗
- ║ Create database file ║___ ___ _ ____ ║
- ║ Modify database file ║__ █ █ █__ ║
- ║ Index database files ║ _█_ █___ █___ ║
- ║ Browse window design ║_______________________________________________________║
- ║█Lookup window design█║ ║
- ║ Pickup window design ║ ║
- ║ Editit window design ║ ║
- ║ Set values of F2 key ║ ║
- ╔═Field List══╗ editor ║ ║
- ║█NAME █║ object ║ ║
- ║ ADDRESS ║ import ║ ║
- ║ CITY ║PROGRAM ║ ║
- ║ ST ║════════╝ ║
- ║ ZIP ║ ║
- ║ PHONE ║ ║
- ║ MEMO ║ ║
- ╚═════════════╝ ║
- ║ ║
- ║ ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- PRESS "ENTER" to select the "NAME" field.
-
- PRESS "ESC" to stop selecting fields.
-
- Adam will ask us for the name of a procedure we want to call when we
- press ENTER while on this field.
-
- ENTER "EDIT" for the name of the window object to call, and press ENTER
-
- ╔Procedure to call before read═════════════════════════════════════════════════╗
- ║EDIT ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- ENTER "CardFile Lookup" for the title of our lookup window.
-
- PRESS "ENTER" when done.
-
- ╔Enter Title For LOOKUP Object═════════════════════════════════════════════════╗
- ║CardFile Lookup ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- PRESS "ENTER" to skip the filter question.
-
- ╔Enter Filter Condition════════════════════════════════════════════════════════╗
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- PRESS "P" to tell Adam we want this lookup to be written as a procedure.
-
- ╔Write LOOKUP as Procedure or Function?════════════════════════════════════════╗
- ║P ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
-
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 28 ║ │║ SAMPLE PROGRAM ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
- ╔═CardFile Lookup════════════════╗═════════════════════════════════════════════╗
- ║ NAME ║ ____ ║
- ║════════════════════════════════║ █__ ║
- ║ ██████████████████████████████ ║__ █___ ║
- ║ ██████████████████████████████ ║_____________________________________________║
- ║ ██████████████████████████████ ║ ║
- ║ ██████████████████████████████ ║ MOVE ║
- ║ ██████████████████████████████ ║ SIZE ║
- ║ ██████████████████████████████ ║ TEXT ║
- ║ ██████████████████████████████ ║ CODE ║
- ╚════════════════════════════════╝ WT-2 ║
- ║ ║ Labels ║ FORE ║
- ║ ║ Utilities ║ BACK ║
- ║ ║ Quit ║ HELP ║
- ║ ╚═══════════════════╝ PLIB ║
- ║ NOTE ║
- ║ EDIT ║
- ║ UTIL ║
- ║ QUIT ║
- ║ ║
- ║ ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- You should see your lookup window in the top left corner of your
- screen.
-
- PRESS "M" to move your lookup window to the right side of the main menu
-
- PRESS "ENTER" to return to the main menu.
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ ____ ____ ___ ___ ____ ___ _ ____ ║
- ║ █ █__█ █__▌ █ █ █__ █ █ █__ ║
- ║ █___ █ █ █ █ █__█ █ _█_ █___ █___ ║
- ║______________________________________________________________________________║
- ║ ║
- ║ ╔═══════════════════╗ ╔════════════════════════════════╗ ║
- ║ ║ Add ║ ║ ║ ║
- ║ ║ Edit/View ║ ║ ║ ║
- ║ ║ Mailmerge Letters ║ ║ ║ ║
- ║ ║ Reports ║ ║ ║ ║
- ║ ║ Labels ║ ║ ║ ║
- ║ ║ Utilities ║ ║ ║ ║
- ║ ║ Quit ║ ║ ║ ║
- ║ ╚═══════════════════╝ ║ ║ ║
- ║ ║ ║ ║
- ║ ╚════════════════════════════════╝ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
-
-
-
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ SAMPLE PROGRAM ║ ║ 29 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ ____ ____ ___ ___ ____ ___ _ ____ ║
- ║ █ █__█ █__▌ █ █ █__ █ █ █__ ║
- ║ █___ █ █ █ █ █__█ █ _█_ █___ █___ ║
- ║______________________________________________________________________________║
- ║ ║
- ║ ╔═══════════════════╗ ╔════════════════════════════════╗ ║
- ║ ║ Add ║ ║ NAME ║ ║
- ║ ║ Edit/View ║ ║════════════════════════════════║ ║
- ║ ║ Mailmerge Letters ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Reports ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Labels ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Utilities ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Quit ║ ║ ██████████████████████████████ ║ ║
- ║ ╚═══════════════════╝ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ╚════════════════════════════════╝ ║
- ║ ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ ____ ____ ___ ___ ____ ___ _ ____ ║
- ║ █ █__█ █__▌ █ █ █__ █ █ █__ ║
- ║ █___ █ █ █ █ █__█ █ _█_ █___ █___ ║
- ║______________________________________________________________________________║
- ║ ║
- ║ ╔═══════════════════╗ ╔═CardFile Lookup════════════════╗ ║
- ║ ║ Add ║ ║ NAME ║ ║
- ║ ║ Edit/View ║ ║════════════════════════════════║ ║
- ║ ║ Mailmerge Letters ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Reports ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Labels ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Utilities ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Quit ║ ║ ██████████████████████████████ ║ ║
- ║ ╚═══════════════════╝ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ╚════════════════════════════════╝ ║
- ║ ║
- ╔═Object═════Description═══════════════════════════════════════════════════════╗
- ║ LOOK lookup window ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- PRESS "C" to save the lookup window.
-
- ENTER "LOOK" for the object name.
-
- ENTER "lookup window" for the object description.
-
-
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 30 ║ │║ SAMPLE PROGRAM ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
- Now we are ready to create our EDIT window. This window is called by
- the ADD option from the main menu and by the LOOKUP window when the
- enter key is pressed.
-
- PRESS "S" to size our edit window.
-
- ╔═══════════════════╗══════════════════════════════════════════════════════════╗
- ║ ║ ____ ___ _ ____ ║
- ║ ║█ █__ █ █ █__ ║
- ║ ║█ █ _█_ █___ █___ ║
- ║ ║__________________________________________________________║
- ║ ║ ║
- ║ ║══╗ ╔═CardFile Lookup════════════════╗ ║
- ║ ║ ║ ║ NAME ║ ║
- ║ ║ ║ ║════════════════════════════════║ ║
- ║ ║s ║ ║ ██████████████████████████████ ║ ║
- ╚═══════════════════╝ ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Labels ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Utilities ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Quit ║ ║ ██████████████████████████████ ║ ║
- ║ ╚═══════════════════╝ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ╚════════════════════════════════╝ ║
- ║ ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- PRESS "SHIFT-RIGHT ARROW" to stretch the window to the right.
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ║ ║ Labels ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Utilities ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Quit ║ ║ ██████████████████████████████ ║ ║
- ║ ╚═══════════════════╝ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ╚════════════════════════════════╝ ║
- ║ ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ SAMPLE PROGRAM ║ ║ 31 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
- PRESS "B" eight times to change our edit window color to BLACK.
-
- PRESS "U" for the UTILITY MENU.
-
- ╔═Utility Menu═════════╗═══════════════════════════════════════════════════════╗
- ║ Create database file ║___ ___ _ ____ ║
- ║ Modify database file ║__ █ █ █__ ║
- ║ Index database files ║ _█_ █___ █___ ║
- ║ Browse window design ║_______________________________________________________║
- ║ Lookup window design ║ ║
- ║ Pickup window design ║ ╔═CardFile Lookup════════════════╗ ║
- ║█Editit window design█║ ║ NAME ║ ║
- ║ Set values of F2 key ║ ║════════════════════════════════║ ║
- ║ Adam's object editor ║ ║ ██████████████████████████████ ║ ║
- ║ Debug current object ║ ║ ██████████████████████████████ ║ ║
- ║ Window object import ║ ║ ██████████████████████████████ ║ ║
- ║ REGULAR CODE PROGRAM ║ ║ ██████████████████████████████ ║ ║
- ╚══════════════════════╝ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ╚════════════════════════════════╝ ║
- ║ ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- PRESS "E" to select the EDIT WINDOW DESIGN option.
-
- PRESS "ENTER" to select our example database.
-
- PRESS "ENTER" to select the NAME index file.
-
- PRESS "ESC" to tell Adam we do not want to select any other index files
-
- PRESS "E" to tell Adam to write this window object as an EDIT window.
-
- ╔Write EDIT window or SAYS/GETS window?(E/SG)══════════════════════════════════╗
- ║E ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- ENTER "CardFile Window" for the title of our edit window.
-
- ╔Enter title for edit window═══════════════════════════════════════════════════╗
- ║CardFile Window ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- PRESS "ENTER" twice for no initialize or calculation procedures.
-
- ╔Enter initialize procedure name═══════════════════════════════════════════════╗
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔Enter calculation procedure name══════════════════════════════════════════════╗
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 32 ║ │║ SAMPLE PROGRAM ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
- PRESS "Y" to place the edit window commands on the bottom of the screen
-
- ╔Place editing commands at bottom of screen?(Y/N)══════════════════════════════╗
- ║Y ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- Now we are ready to place our fields in our EDIT window.
-
- PRESS "ENTER" to select the first field called "NAME".
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╔═Put Field═══╗ ║
- ║█NAME █║════════════════════════════════════════════════════════════════╝
- ║ ADDRESS ║ ║ ║ ██████████████████████████████ ║ ║
- ║ CITY ║ ║ ║ ██████████████████████████████ ║ ║
- ║ ST ║ ║ ║ ██████████████████████████████ ║ ║
- ║ ZIP ║════════╝ ║ ██████████████████████████████ ║ ║
- ║ PHONE ║ ║ ██████████████████████████████ ║ ║
- ║ MEMO ║ ║ ██████████████████████████████ ║ ║
- ╚═════════════╝ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ╚════════════════════════════════╝ ║
- ║ ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- Adam will place the field in the top right corner of our window. The
- NAME field is already in the correct position.
-
- PRESS "ENTER" to drop the "NAME" field.
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ NAME ║
- ║ ██████████████████████████████ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
-
-
-
-
-
-
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ SAMPLE PROGRAM ║ ║ 33 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ NAME ║
- ║ ██████████████████████████████ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- Adam will prompt us to enter a picture template for the current field
- and a valid clause. The only field that will need a picture template
- for our example program is "PHONE". We can use "1-999-999-9999" when
- we select the PHONE field.
-
- PRESS "ENTER" twice to skip the picture and valid prompts.
-
- ╔Enter picture template════════════════════════════════════════════════════════╗
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- ╔Enter valid clause════════════════════════════════════════════════════════════╗
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- Continue getting fields and placing them in your window until all the
- fields have been selected.
-
- The last field which is our MEMO field will automatically get a valid
- clause, which calls one of our built in functions in the ADAMLIB.OBJ
- file.
-
- When you have selected all the fields from the database, your screen
- should look something like the one shown below.
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ NAME ║
- ║ ██████████████████████████████ ║
- ║ ADDRESS ║
- ║ ██████████████████████████████ ║
- ║ CITY ST ZIP ║
- ║ █████████████████████ ██ █████ ║
- ║ PHONE MEMO ║
- ║ ██████████████ ████ ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- PRESS "ESC" to exit the utility menu.
-
- PRESS "S" from the main menu to size our edit window.
-
- When you have finished sizing the window it should look like the one
- on the next page.
-
-
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 34 ║ │║ SAMPLE PROGRAM ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
- ╔═════════════════════════════════════╗════════════════════════════════════════╗
- ║ NAME ║__ ║
- ║ ██████████████████████████████ ║_ ║
- ║ ADDRESS ║__ ║
- ║ ██████████████████████████████ ║________________________________________║
- ║ CITY ST ZIP ║ ║
- ║ █████████████████████ ██ █████ ║okup════════════════╗ ║
- ║ PHONE MEMO ║ ║ ║
- ║ ██████████████ ████ ║════════════════════║ ║
- ╚═════════════════════════════════════╝███████████████████ ║ ║
- ║ ║ Reports ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Labels ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Utilities ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Quit ║ ║ ██████████████████████████████ ║ ║
- ║ ╚═══════════════════╝ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ║ ██████████████████████████████ ║ ║
- ║ ╚════════════════════════════════╝ ║
- ║ ║
- ║ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- PRESS "ENTER" to return to the main menu.
-
- PRESS "M" to position the EDIT window in the bottom right corner.
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ ____ ____ ___ ___ ____ ___ _ ____ ║
- ║ █ █__█ █__▌ █ █ █__ █ █ █__ ║
- ║ █___ █ █ █ █ █__█ █ _█_ █___ █___ ║
- ║______________________________________________________________________________║
- ║ ║
- ║ ╔═══════════════════╗ ╔═CardFile Lookup════════════════╗ ║
- ║ ║ Add ║ ║ NAME ║ ║
- ║ ║ Edit/View ║ ║════════════════════════════════║ ║
- ║ ║ Mailmerge Letters ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Reports ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Labels ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Utilities ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Quit ║ ║ ██████████╔═════════════════════════════════════╗ ║
- ║ ╚═══════════════════╝ ║ ██████████║ NAME ║ ║
- ║ ║ ██████████║ ██████████████████████████████ ║ ║
- ║ ║ ██████████║ ADDRESS ║ ║
- ║ ║ ██████████║ ██████████████████████████████ ║ ║
- ║ ║ ██████████║ CITY ST ZIP ║ ║
- ║ ║ ██████████║ █████████████████████ ██ █████ ║ ║
- ║ ╚═══════════║ PHONE MEMO ║ ║
- ║ ║ ██████████████ ████ ║ ║
- ║ ╚═════════════════════════════════════╝ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- PRESS "ENTER" to return to the main menu.
-
-
-
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ SAMPLE PROGRAM ║ ║ 35 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ ____ ____ ___ ___ ____ ___ _ ____ ║
- ║ █ █__█ █__▌ █ █ █__ █ █ █__ ║
- ║ █___ █ █ █ █ █__█ █ _█_ █___ █___ ║
- ║______________________________________________________________________________║
- ║ ║
- ║ ╔═══════════════════╗ ╔═CardFile Lookup════════════════╗ ║
- ║ ║ Add ║ ║ NAME ║ ║
- ║ ║ Edit/View ║ ║════════════════════════════════║ ║
- ║ ║ Mailmerge Letters ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Reports ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Labels ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Utilities ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Quit ║ ║ ██████████╔═CardFile Window═════════════════════╗ ║
- ║ ╚═══════════════════╝ ║ ██████████║ NAME ║ ║
- ║ ║ ██████████║ ██████████████████████████████ ║ ║
- ║ ║ ██████████║ ADDRESS ║ ║
- ║ ║ ██████████║ ██████████████████████████████ ║ ║
- ║ ║ ██████████║ CITY ST ZIP ║ ║
- ║ ║ ██████████║ █████████████████████ ██ █████ ║ ║
- ║ ╚═══════════║ PHONE MEMO ║ ║
- ║ ║ ██████████████ ████ ║ ║
- ╔═Object═════Description═══════════════════════════════════════════════════════╗
- ║ EDIT edit window ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- PRESS "C" to save the EDIT window.
-
- ENTER "EDIT" for the object name, and press ENTER.
-
- ENTER "edit window" for the description, and press ENTER.
-
- ╔══════╗═══════════════════════════════════════════════════════════════════════╗
- ║ MOVE ║____ ___ ___ ____ ___ _ ____ ║
- ║ SIZE ║█__█ █__▌ █ █ █__ █ █ █__ ║
- ║ FORE ║█ █ █ █ █__█ █ _█_ █___ █___ ║
- ║ BACK ║_______________________________________________________________________║
- ╚══════╝ ║
- ║ ╔═══════════════════╗ ╔═CardFile Lookup════════════════╗ ║
- ║ ║ Add ║ ║ NAME ║ ║
- ║ ║ Edit/View ║ ║════════════════════════════════║ ║
- ║ ║ Mailmerge Letters ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Reports ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Labels ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Utilities ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Quit ║ ║ ██████████╔═CardFile Window═════════════════════╗ ║
- ║ ╚═══════════════════╝ ║ ██████████║ NAME ║ ║
- ║ ║ ██████████║ ██████████████████████████████ ║ ║
- ║ ╔══════════════════════════════════════════════════════════════════════════╗ ║
- ║ ║ ║ ║
- ║ ║ THIS IS YOUR MEMO EDIT WINDOW. USE THE MINIATURE ADAM MENU TO SIZE ║ ║
- ║ ║ THE WINDOW AND POSITION IT ON THE SCREEN. YOU SHOULD KNOW HOW THE ║ ║
- ║ ║ COMMANDS IN ADAM WORK TO TRY THIS ON YOUR OWN... PRESS ESC TO EXIT ║ ║
- ║ ║ ║ ║
- ╔═║ ║═╗
- ║ ╚══════════════════════════════════════════════════════════════════════════╝ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 36 ║ │║ SAMPLE PROGRAM ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
- Now you're ready to try doing the utility menu on your own. Follow
- the example screens on the next pages, and see how easy it is.
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ ____ ____ ___ ___ ____ ___ _ ____ ║
- ║ █ █__█ █__▌ █ █ █__ █ █ █__ ║
- ║ █___ █ █ █ █ █__█ █ _█_ █___ █___ ║
- ║______________________________________________________________________________║
- ║ ║
- ║ ╔═══════════════════╗ ╔═CardFile Lookup════════════════╗ ║
- ║ ║ Add ║ ║ NAME ║ ║
- ║ ║ Edit/View ║ ║════════════════════════════════║ ║
- ║ ║ Mailmerge Letters ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Reports ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Labels ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Utilities ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Quit ╔══════════════════╗████╔═CardFile Window═════════════════════╗ ║
- ║ ╚══════════║ Backup Card File ║████║ NAME ║ ║
- ║ ║ Printer Setup ║████║ ██████████████████████████████ ║ ║
- ║ ║ Calendar ║████║ ADDRESS ║ ║
- ║ ║ DosAccess ║████║ ██████████████████████████████ ║ ║
- ║ ╚══════════════════╝████║ CITY ST ZIP ║ ║
- ║ ║ ██████████║ █████████████████████ ██ █████ ║ ║
- ║ ╚═══════════║ PHONE MEMO ║ ║
- ║ ║ ██████████████ ████ ║ ║
- ║ ╚═════════════════════════════════════╝ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ Backup Card File Printer Setup Calendar DosAccess ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔Backup Card File══════════════════════════════════════════════════════════════╗
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚═══Procedure Library - Press F1 For Object Library - Press Ctrl/W To Exit═════╝
- ║ ║ Mailmerge Letters ║ ║ ██████████████████████████████ ║ ╔═Objects════════╗
- ║ ║ Reports ║ ║ ██████████████████████████████ ║ ║ ADAMLIBA.OBJ √ ║
- ║ ║ Labels ║ ║ ██████████████████████████████ ║ ║ TABLE.OBJ ║
- ║ ║ Utilities ║ ║ ██████████████████████████████ ║ ║ REPORT.OBJ √ ║
- ║ ║ Quit ╔══════════════════╗████╔═CardFile Window═══════║ PRINTER.OBJ √ ║
- ║ ╚══════════║ Backup Card File ║████║ NAME ║ PACKFILE.OBJ ║
- ║ ║ Printer Setup ║████║ ██████████████████████║ LABELS.OBJ √ ║
- ║ ║ Calendar ║████║ ADDRESS ║ INVOICE.OBJ ║
- ║ ║ DosAccess ║████║ ██████████████████████║ USERHELP.OBJ ║
- ║ ╚══════════════════╝████║ CITY ║ POPCAL.OBJ ║
- ║ ║ ██████████║ █████████████████████ ║ DCODE.OBJ ║
- ║ ╚═══════════║ PHONE ║ LETTERS.OBJ √ ║
- ║ ║ ██████████████ ║█BACKUP.OBJ √█║
- ║ ╚═══════════════════════║ MULTUSER.OBJ √ ║
- ╚═════════════════════════════════════════════════════════════║ ADAMLIBB.OBJ √ ║
- ╚════════════════╝
-
-
-
-
-
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ SAMPLE PROGRAM ║ ║ 37 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ Backup Card File Printer Setup Calendar DosAccess ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔Backup Card File══════════════════════════════════════════════════════════════╗
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚═══Procedure Library - Press F1 For Object Library - Press Ctrl/W To Exit═════╝
- ╔═Backup DBF════╗tters ║ ║ ██████████████████████████████ ║ ╔═Objects════════╗
- ║█MAILLIST.DBF █║ ║ ║ ██████████████████████████████ ║ ║ ADAMLIBA.OBJ √ ║
- ╚═══════════════╝ ║ ║ ██████████████████████████████ ║ ║ TABLE.OBJ ║
- ║ ║ Utilities ║ ║ ██████████████████████████████ ║ ║ REPORT.OBJ √ ║
- ║ ║ Quit ╔══════════════════╗████╔═CardFile Window═══════║ PRINTER.OBJ √ ║
- ║ ╚══════════║ Backup Card File ║████║ NAME ║ PACKFILE.OBJ ║
- ║ ║ Printer Setup ║████║ ██████████████████████║ LABELS.OBJ √ ║
- ║ ║ Calendar ║████║ ADDRESS ║ INVOICE.OBJ ║
- ║ ║ DosAccess ║████║ ██████████████████████║ USERHELP.OBJ ║
- ║ ╚══════════════════╝████║ CITY ║ POPCAL.OBJ ║
- ║ ║ ██████████║ █████████████████████ ║ DCODE.OBJ ║
- ║ ╚═══════════║ PHONE ║ LETTERS.OBJ √ ║
- ║ ║ ██████████████ ║█BACKUP.OBJ √█║
- ║ ╚═══════════════════════║ MULTUSER.OBJ √ ║
- ╚═════════════════════════════════════════════════════════════║ ADAMLIBB.OBJ √ ║
- ╚════════════════╝
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ Backup Card File Printer Setup Calendar DosAccess ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔Backup Card File══════════════════════════════════════════════════════════════╗
- ║DO backup WITH "MAILLIST","W+/BG " ║
- ║ ║
- ║ ║
- ║ ║
- ╚═══Procedure Library - Press F1 For Object Library - Press Ctrl/W To Exit═════╝
- ║ ║ Mailmerge Letters ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Reports ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Labels ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Utilities ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Quit ╔══════════════════╗████╔═CardFile Window═════════════════════╗ ║
- ║ ╚══════════║ Backup Card File ║████║ NAME ║ ║
- ║ ║ Printer Setup ║████║ ██████████████████████████████ ║ ║
- ║ ║ Calendar ║████║ ADDRESS ║ ║
- ║ ║ DosAccess ║████║ ██████████████████████████████ ║ ║
- ║ ╚══════════════════╝████║ CITY ST ZIP ║ ║
- ║ ║ ██████████║ █████████████████████ ██ █████ ║ ║
- ║ ╚═══════════║ PHONE MEMO ║ ║
- ║ ║ ██████████████ ████ ║ ║
- ║ ╚═════════════════════════════════════╝ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
-
-
-
-
-
-
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 38 ║ │║ SAMPLE PROGRAM ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ Backup Card File Printer Setup Calendar DosAccess ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔Printer Setup═════════════════════════════════════════════════════════════════╗
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚═══Procedure Library - Press F1 For Object Library - Press Ctrl/W To Exit═════╝
- ║ ║ Mailmerge Letters ║ ║ ██████████████████████████████ ║ ╔═Objects════════╗
- ║ ║ Reports ║ ║ ██████████████████████████████ ║ ║ ADAMLIBA.OBJ √ ║
- ║ ║ Labels ║ ║ ██████████████████████████████ ║ ║ TABLE.OBJ ║
- ║ ║ Utilities ║ ║ ██████████████████████████████ ║ ║ REPORT.OBJ √ ║
- ║ ║ Quit ╔══════════════════╗████╔═CardFile Window═══════║█PRINTER.OBJ √█║
- ║ ╚══════════║ Backup Card File ║████║ NAME ║ PACKFILE.OBJ ║
- ║ ║ Printer Setup ║████║ ██████████████████████║ LABELS.OBJ √ ║
- ║ ║ Calendar ║████║ ADDRESS ║ INVOICE.OBJ ║
- ║ ║ DosAccess ║████║ ██████████████████████║ USERHELP.OBJ ║
- ║ ╚══════════════════╝████║ CITY ║ POPCAL.OBJ ║
- ║ ║ ██████████║ █████████████████████ ║ DCODE.OBJ ║
- ║ ╚═══════════║ PHONE ║ LETTERS.OBJ √ ║
- ║ ║ ██████████████ ║ BACKUP.OBJ √ ║
- ║ ╚═══════════════════════║ MULTUSER.OBJ √ ║
- ╚═════════════════════════════════════════════════════════════║ ADAMLIBB.OBJ √ ║
- ╚════════════════╝
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ Backup Card File Printer Setup Calendar DosAccess ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔Printer Setup═════════════════════════════════════════════════════════════════╗
- ║DO printer ║
- ║ ║
- ║ ║
- ║ ║
- ╚═══Procedure Library - Press F1 For Object Library - Press Ctrl/W To Exit═════╝
- ║ ║ Mailmerge Letters ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Reports ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Labels ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Utilities ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Quit ╔══════════════════╗████╔═CardFile Window═════════════════════╗ ║
- ║ ╚══════════║ Backup Card File ║████║ NAME ║ ║
- ║ ║ Printer Setup ║████║ ██████████████████████████████ ║ ║
- ║ ║ Calendar ║████║ ADDRESS ║ ║
- ║ ║ DosAccess ║████║ ██████████████████████████████ ║ ║
- ║ ╚══════════════════╝████║ CITY ST ZIP ║ ║
- ║ ║ ██████████║ █████████████████████ ██ █████ ║ ║
- ║ ╚═══════════║ PHONE MEMO ║ ║
- ║ ║ ██████████████ ████ ║ ║
- ║ ╚═════════════════════════════════════╝ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
-
-
-
-
-
-
-
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ SAMPLE PROGRAM ║ ║ 39 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ Backup Card File Printer Setup Calendar DosAccess ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔Calendar══════════════════════════════════════════════════════════════════════╗
- ║ ║
- ║ ║
- ║ ║
- ║ ║
- ╚═══Procedure Library - Press F1 For Object Library - Press Ctrl/W To Exit═════╝
- ║ ║ Mailmerge Letters ║ ║ ██████████████████████████████ ║ ╔═Objects════════╗
- ║ ║ Reports ║ ║ ██████████████████████████████ ║ ║ ADAMLIBA.OBJ √ ║
- ║ ║ Labels ║ ║ ██████████████████████████████ ║ ║ TABLE.OBJ ║
- ║ ║ Utilities ║ ║ ██████████████████████████████ ║ ║ REPORT.OBJ √ ║
- ║ ║ Quit ╔══════════════════╗████╔═CardFile Window═══════║ PRINTER.OBJ √ ║
- ║ ╚══════════║ Backup Card File ║████║ NAME ║ PACKFILE.OBJ ║
- ║ ║ Printer Setup ║████║ ██████████████████████║ LABELS.OBJ √ ║
- ║ ║ Calendar ║████║ ADDRESS ║ INVOICE.OBJ ║
- ║ ║ DosAccess ║████║ ██████████████████████║ USERHELP.OBJ ║
- ║ ╚══════════════════╝████║ CITY ║█POPCAL.OBJ █║
- ║ ║ ██████████║ █████████████████████ ║ DCODE.OBJ ║
- ║ ╚═══════════║ PHONE ║ LETTERS.OBJ √ ║
- ║ ║ ██████████████ ║ BACKUP.OBJ √ ║
- ║ ╚═══════════════════════║ MULTUSER.OBJ √ ║
- ╚═════════════════════════════════════════════════════════════║ ADAMLIBB.OBJ √ ║
- ╚════════════════╝
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ Backup Card File Printer Setup Calendar DosAccess ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔Calendar══════════════════════════════════════════════════════════════════════╗
- ║DO popcal ║
- ║ ║
- ║ ║
- ║ ║
- ╚═══Procedure Library - Press F1 For Object Library - Press Ctrl/W To Exit═════╝
- ║ ║ Mailmerge Letters ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Reports ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Labels ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Utilities ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Quit ╔══════════════════╗████╔═CardFile Window═════════════════════╗ ║
- ║ ╚══════════║ Backup Card File ║████║ NAME ║ ║
- ║ ║ Printer Setup ║████║ ██████████████████████████████ ║ ║
- ║ ║ Calendar ║████║ ADDRESS ║ ║
- ║ ║ DosAccess ║████║ ██████████████████████████████ ║ ║
- ║ ╚══════════════════╝████║ CITY ST ZIP ║ ║
- ║ ║ ██████████║ █████████████████████ ██ █████ ║ ║
- ║ ╚═══════════║ PHONE MEMO ║ ║
- ║ ║ ██████████████ ████ ║ ║
- ║ ╚═════════════════════════════════════╝ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
-
-
-
-
-
-
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 40 ║ │║ SAMPLE PROGRAM ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ Backup Card File Printer Setup Calendar DosAccess ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔DosAccess═════════════════════════════════════════════════════════════════════╗
- ║DO dos ║
- ║ ║
- ║ ║
- ║ ║
- ╚═══Procedure Library - Press F1 For Object Library - Press Ctrl/W To Exit═════╝
- ║ ║ Mailmerge Letters ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Reports ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Labels ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Utilities ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Quit ╔══════════════════╗████╔═CardFile Window═════════════════════╗ ║
- ║ ╚══════════║ Backup Card File ║████║ NAME ║ ║
- ║ ║ Printer Setup ║████║ ██████████████████████████████ ║ ║
- ║ ║ Calendar ║████║ ADDRESS ║ ║
- ║ ║ DosAccess ║████║ ██████████████████████████████ ║ ║
- ║ ╚══════════════════╝████║ CITY ST ZIP ║ ║
- ║ ║ ██████████║ █████████████████████ ██ █████ ║ ║
- ║ ╚═══════════║ PHONE MEMO ║ ║
- ║ ║ ██████████████ ████ ║ ║
- ║ ╚═════════════════════════════════════╝ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ Backup Card File Printer Setup Calendar DosAccess ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ╔═Help Message═════════════════════════════════════════════════════════════════╗
- ║ Backup card file database. ║
- ║ Setup print codes. ║
- ║ Popup calendar ║
- ║ Exit to dos ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
- ║ ║ Mailmerge Letters ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Reports ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Labels ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Utilities ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Quit ║ ║ ██████████╔═CardFile Window═════════════════════╗ ║
- ║ ╚═══════════════════╝ ║ ██████████║ NAME ║ ║
- ║ ║ ██████████║ ██████████████████████████████ ║ ║
- ║ ║ ██████████║ ADDRESS ║ ║
- ║ ║ ██████████║ ██████████████████████████████ ║ ║
- ║ ║ ██████████║ CITY ST ZIP ║ ║
- ║ ║ ██████████║ █████████████████████ ██ █████ ║ ║
- ║ ╚═══════════║ PHONE MEMO ║ ║
- ║ ║ ██████████████ ████ ║ ║
- ║ ╚═════════════════════════════════════╝ ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
-
-
-
-
-
-
-
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ SAMPLE PROGRAM ║ ║ 41 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
- ╔══════════════════════════════════════════════════════════════════════════════╗
- ║ ____ ____ ___ ___ ____ ___ _ ____ ║
- ║ █ █__█ █__▌ █ █ █__ █ █ █__ ║
- ║ █___ █ █ █ █ █__█ █ _█_ █___ █___ ║
- ║______________________________________________________________________________║
- ║ ║
- ║ ╔═══════════════════╗ ╔═CardFile Lookup════════════════╗ ║
- ║ ║ Add ║ ║ NAME ║ ║
- ║ ║ Edit/View ║ ║════════════════════════════════║ ║
- ║ ║ Mailmerge Letters ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Reports ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Labels ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Utilities ║ ║ ██████████████████████████████ ║ ║
- ║ ║ Quit ╔══════════════════╗████╔═CardFile Window═════════════════════╗ ║
- ║ ╚══════════║ Backup Card File ║████║ NAME ║ ║
- ║ ║ Printer Setup ║████║ ██████████████████████████████ ║ ║
- ║ ║ Calendar ║████║ ADDRESS ║ ║
- ║ ║ DosAccess ║████║ ██████████████████████████████ ║ ║
- ║ ╚══════════════════╝████║ CITY ST ZIP ║ ║
- ║ ║ ██████████║ █████████████████████ ██ █████ ║ ║
- ║ ╚═══════════║ PHONE MEMO ║ ║
- ║ ║ ██████████████ ████ ║ ║
- ╔═Object═════Description═══════════════════════════════════════════════════════╗
- ║ UTIL utility menu ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
-
- If you made it this far you have a pretty good understanding of how
- ADAM works. Keep experimenting with ADAM you'll be surprised at the
- different type of programs that ADAM can generate.
-
- Adam's capabilities go far beyond what we can show in this sample
- program. It is powerful enough to create complete invoicing systems
- using multiple database files.
-
- Anything that can be hand written by a professional programmer can
- be done with Adam, only faster! All there is left to do, is to let
- Adam write your program for you.
-
- PRESS "Q" to exit Adam.
-
- PRESS "Y" to generate the program file.
-
- ENTER "your name here" for the author, after all you did help a little
-
-
-
- ╔Write program file(Y/N)?══════════════════════════════════════════════════════╗
- ║Y ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- ╔Enter Author(s) Name══════════════════════════════════════════════════════════╗
- ║Your Name Here ║
- ╚══════════════════════════════════════════════════════════════════════════════╝
-
- Now just sit back and watch Adam work!
-
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 42 ║ │║ ANIMATION ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
- Animation is accomplished by creating a TEXT window object and in-
- serting a graphic drawing inside the window, then saving the shape
- and going back into text mode to alter the drawing or move it just
- slightly and re-saving the image again.
-
- Most of your animation sequences will require at least three draw-
- ings or moves, perhaps even more to achieve the correct results.
-
- To better understand how to use Adam to produce your animation you
- should think of the process using the following steps as a guide.
-
- 1. Your going to draw a picture that you want to animate inside of
- a TEXT object.
-
- 2. Take a picture of the object using the F1 camera key. Remember
- that only the graphics inside the window are saved in a picture
- frame, not the window boarder.
-
- 3. Next you will go back into TEXT mode, move or change the image
- and take another picture.
-
- 4. After you have completed all the frames in your animation, you
- can use the VIEW command to see how your animated picture looks
- as it actually runs. Press any key to stop the animation and to
- return to the menu.
-
- 5. Now use the SAVE command to save the animation sequences to the
- disk as a program. You can also save your original image of the
- graphics using the regular CODE command from Adams main menu.
-
- Think of the F1 key and ENTER key as the shutter release button on
- a camera. The camera in Adam is very similar to a real camera. You
- can TAKE a picture, LOAD a new roll of film and SAVE or develop it
- when ever you want.
-
- ╔════════════════════════════════════════════════════════════════╗
- ║ Take View Save Load Quit ║
- ╚════════════════════════════════════════════════════════════════╝
-
- This is the camera menu you will see each time you press the 'F1'
- key while at Adams main menu. The cursor defaults to the 'TAKE' a
- picture command.
-
- The first time you take any pictures, Adam will calculate how many
- pictures you can take for the size of the window object you are in
- currently.
-
- How many pictures you can take with a roll of film, will vary with
- the object size. A one line frame capture will allow you about 200
- pictures per roll of film. A full screen image only allows about
- eight pictures to a roll.
-
- Each time you select the LOAD film command, Adam will check first
- to see if you have any pictures that are in the camera which have
- not been developed. If there are any pictures that are used, Adam
- will warn you first, before loading a new roll of film.
-
-
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ ANIMATION ║ ║ 43 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
- When you save the pictures, Adam creates an animation file with a
- .PRG extension. This file can now be called from inside your Adam
- program using the following syntax.
-
- Lets say for example that you have created a title screen for your
- program and this screen will call our animation file, after it has
- displayed our title. We use the following command entered in the
- QUIT position when we save our title screen.
-
- ACT_1 WITH 0,13
-
- The command entered above assumes that we saved our animation file
- with the name 'ACT_1'.
-
- Adam provides the 'DO' part of the command automatically. The next
- parameters tell the animation program to keep running until 'ENTER
- is pressed.
-
- The first parameter controls a timer for the animation. A value of
- 5 will keep the animation sequence running for about one second or
- a value of 50 for about 10 seconds of animation.
-
- You can use both the timer and keystroke at the same time. This is
- the same as saying, run for 10 seconds or until the 'ENTER' key is
- pressed, which ever comes first.
-
- The keystroke values are the same as the normal INKEY() values for
- the keyboard. Below is an example of an animation sequence that
- will display a marque type effect.
-
- ╔═══════════════════════════════════════════════════════════════╗
- ║* * * * * * * * * * * * * * * * * * * * * ║
- ╚═══════════════════════════════════════════════════════════════╝
-
- ╔═══════════════════════════════════════════════════════════════╗
- ║ * * * * * * * * * * * * * * * * * * * * * ║
- ╚═══════════════════════════════════════════════════════════════╝
-
- ╔═══════════════════════════════════════════════════════════════╗
- ║ * * * * * * * * * * * * * * * * * * * * *║
- ╚═══════════════════════════════════════════════════════════════╝
-
- This type of animation requires only three pictures to create just
- the effect we want.
-
- Animation and special effects are really beyond the scope of this
- manual. There are many good books available on the subject of ani-
- mation and computer graphics. At first glance it appears that with
- the graphics characters in the IBM computer, it would be very hard
- to create any type of animation. But it just takes a little bit of
- imagination and you'll be an expert in no time!
-
-
-
-
-
-
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 44 ║ │║ IMPORTING OBJECTS ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
- The ability to import objects from another program is one of Adams
- most powerful features. This makes it possible to spend more time
- on designing your original objects, knowing that you will be able
- to re-use the object in more than one program.
-
- For example, lets say you have created this fantastic title screen
- with your company logo, sound and animation. Now by importing this
- object you can use it in as many programs as you want to.
-
- The basic principle behind importing objects is simple. While you
- are working in the current Adam data driver file, you can press 'U
- for the UTILity menu and then 'W' for WINDOW OBJECT IMPORT.
-
- Adam temporarily suspends the operation in the original file, and
- lets you select another data file to open, displays the objects in
- the new file and lets you grab an existing object.
-
- After you have selected an object, Adam closes the data file and
- re-opens the original file, appending the new object to the end of
- the current driver file.
-
- Now you can size the object, change colors or use it the way it is
- in your new program. After needing to use this feature just once
- you will wonder how we got along without it in version 2.0.
-
- Objects can even be imported from the current object that you are
- in. This provides a method to duplicate objects if needed.
-
- When importing objects, the object retains all the attributes and
- name of the original object.
-
- The ability to import objects opens up all kinds of new ideas with
- Adam. For example: Picture library's, animation library's and even
- a file containing pre-designed objects and menus.
-
- One of the best features of working with Adam is the freedom to do
- whatever you're imagination desires. There is an Adam developer in
- San Antonio, TX. who uses Adam just to create prototypes to show
- his customers, before he actually starts the job. He claims that
- Adam is the fastest demo system that exists.
-
- Another user in Scottsdale, assembles turbo basic programs from an
- object library that contains all the basic routines for his appli-
- cations.
-
- Once you understand the basic concept behind Adam, the output is
- only limited by your imagination. Adam lets you decide how you are
- going to use it, as just a screen design tool, a demo system or as
- a complete program development system. You'll be hard pressed to
- find a system that is faster or easier to use...
-
- Just remember that the objects you design with Adam are like parts
- that when combined or clued together in Adam, become a completely
- new and larger object containing smaller objects for its parts.
-
- Think of Adam as a set of blocks for building a log cabin, only in
- Adam you can design the shape of the blocks, thereby changing the
- log cabin into a high rise building!
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ FONT LIBRARY ║ ║ 45 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
- Adam contains a special file called 'ADAMFONT.FNT' which is just a
- normal ASCII file. This file contains the different fonts that are
- available in Adam.
-
- The fonts can be accessed by pressing the F10 function key inside
- the TEXT mode. Below is an example of the fonts that are already
- available when you first receive Adam.
-
-
- SAMPLE 3x3
- ┌─┐ ┌─┐ ┌─┐ ┬─┐ ┌── ┌── ┌─┐
- ├─┤ ├─┤ │ │ │ ├─ ├─ │─┐
- ┴ ┴ └─┘ └─┘ ┴─┘ └── ┴ └─┘
- BOLD 3x4
- ▄▄▄▄ ▄▄▄▄ ▄▄▄▄ ▄▄▄_ ▄▄▄▄ ▄▄▄▄ ▄▄▄▄
- █▄▄█ █▄▄█ █ █ █ █▄▄ █▄▄ █ ▄▄
- █ █ █▄▄█ █▄▄▄ █▄▄█ █▄▄▄ █ █▄▄█
-
- SHADOW 4x4
- ____ ____ ____ ___ ____ ____ ____
- █│ █ █│ █ █│ █│ █ █│ █│ █│
- █├─█ █├─█ █│ █│ █ █├─ █├─ █│─▄
- █│ █ █│_█ █│__ █│_█ █│__ █│ █│_█
-
- JUMBO 5x6
-
- ██████ ██████ ██████ █████ ██████ ██████ ██████
- ██ ██ ██ ██ ██ ██ ██ ██ ██ ██
- ██████ ██████ ██ ██ ██ ██████ ██████ ██ ███
- ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██
- ██ ██ ██████ ██████ ██████ ██████ ██ ██████
-
-
- The format used is the name of the font followed by the height and
- width of the font. On the next line after the font name is where
- you actually layout your font design.
-
- Font size can be as large as a 9x9 letter. The ability of Adam to
- read the font is limited to the 26 upper case letters only. But if
- you have to have both upper and lower case letters, you could make
- one line of upper case letters and one line of lower case letters.
-
- Both these lines could be related to the same font design. This is
- one way to accomplish upper and lower case font styles.
-
- Pressing the F10 key while in the TEXT mode will activate the font
- library. Press the space bar to view the font styles, and 'ENTER'
- key to select a font.
-
- Once you have selected a font style, you will be prompted to enter
- the text or message. When done press the enter key and the message
- will be inserted into the TEXT window at the current cursor row.
-
- Use the INSert key to position the letters inside the window. You
- can also press the ESC key while in the size mode to center text.
-
-
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 46 ║ │║ HOW TO CREATE OBJECTS ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
- The Adam object library comes with a set of predefined objects you
- can use immediately. Adam also contains two built-in SMART OBJECTS
- that allow you to create browse, lookup, picklists and another one
- that builds the custom edit window and gets procedures.
-
- Most of these objects are used for everyday database handling type
- of chores. One that deserves special attention is the file called
- 'CARDEX.OBJ' which allows you to include a cardfile with your app-
- lications.
-
- What makes the 'CARDEX' object unusual is that it was created with
- Adam. This capability to create new objects is what makes Adam so
- different from most systems that are using the so called latest in
- template technologies.
-
- This ability to take small library objects and combine them to be-
- come larger objects or even complete stand alone programs will re-
- invent software as we think of it today.
-
- The way to create your own objects is by taking advantage of these
- concepts in Adam. In creating the 'CARDEX' object we wanted it to
- have the appearance of a real card file, and yet keep it as simple
- and easy to use as possible.
-
- Below is a list of the steps used to create 'CARDEX.OBJ':
-
- 1. Create database with fields NAME, ADDRESS, CITY, ST, ZIP and
- PHONE.
-
- 2. Index the CARDEX database on field NAME to CARDEX.NTX
-
- 3. Create the title screen using the 'F7' , 'F8' keys to duplicate
- the text background.
-
- 4. Create a menu containing EDIT, VIEW, PACK and QUIT options.
-
- 5. Design a custom edit window for adding and editing records.
-
- 6. Create a lookup window to view the records quickly with the key
- index set to NAME, and the first field calling the EDIT window.
-
- 7. Attach the PACKFILE object to the PACK menu option.
-
- 8. Type EXIT in the QUIT menu option.
-
- 9. Press 'Q' to exit Adam and generate the program.
-
- The only part that was modified by hand was to insert the follow-
- ing call to an Adam library procedure to create the database file,
- if it does not exist.
-
- IF !FILE("CARDEX.DBF")
- DO MAKEDBF WITH "CARDEX","NAME","CARDEX"
- ENDIF
-
- This is the way we take small objects, and combine them in Adam to
- create a completely new object, that combined with other existing
- objects will become our completely new program or utility.
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ OBJECT FILES ║ ║ 47 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
-
- Adam includes the following object files that are designed to fill
- most of the requirements needed for maintaining a database.
-
-
- ADAMLIBA OBJ 13896 11-25-89 12:39p
- ADAMLIBB OBJ 13555 12-22-89 1:39p
- BACKUP OBJ 1017 11-25-89 12:36p
- CARDEX OBJ 6432 11-27-89 9:13a
- DCODE OBJ 5572 11-25-89 12:39p
- LABELS OBJ 2661 11-25-89 12:37p
- LETTERS OBJ 7366 11-25-89 12:39p
- MULTUSER OBJ 4524 11-25-89 1:12p
- PACKFILE OBJ 1050 11-25-89 12:38p
- POPCAL OBJ 6925 11-25-89 1:11p
- PRINTER OBJ 3052 11-25-89 1:07p
- REPOFORM OBJ 2935 11-25-89 12:40p
- REPORT OBJ 2724 11-25-89 12:38p
- TABLE OBJ 8150 11-25-89 12:38p
- USERHELP OBJ 3506 11-27-89 8:58a
-
-
- While generating your programs, Adam will automatically use these
- three library objects.
-
- ADAMLIBA.OBJ
- ADAMLIBB.OBJ
- MULTUSER.OBJ
-
- Adam will also automatically use any library objects starting with
- ADAMLIB*.OBJ. This gives you the ability to add new library files
- as you need them.
-
- Adam will always use any library objects that have been flagged in
- Adams procedure library with a '√' symbol. The only difference is
- that when Adam finds a file starting with 'ADAMLIB' it will flag
- these files automatically when you first run the Adam program.
-
- One of the features designed in Adam is that these library objects
- do not have to be documented as far as how they are called, or how
- many parameters to pass to them.
-
- About the only information you will need in order to use them, is
- what each file can be used for. Most of the time you will be able
- to determine this just by the files name. The following pages list
- all the library object files, what procedures or functions are in
- each file, and what each procedure or function is used for.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 48 ║ │║ OBJECT FILES ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
-
- ADAMLIBA.OBJ
- ____________
-
- WINDOW This procedure controls all of the different types
- of windows Adam can display. It can be called using
- the following syntax:
-
- DO window WITH rt,ct,rb,cb,'color',type,snd
-
- ZOOM() This function provides a zoom type window. Call it
- with the following code. Object file to zoom into,
- starting coordinates, ending window coordinates.
-
- ZOOM( 'obj',rt,ct,rb,cb,t,l,b,r )
-
- ZOOMIT() Function used by ZOOM()
- BROWTEST() Handles all browse, lookup and picklist keystrokes.
- GETANS() Returns the memory variable TRIM(ans). Can be used
- with the following code:
-
- GETANS( 'message','default','valid' )
-
- MEDIT() Used for memoedit in TABLE VIEW.
- PCHECK() Test for printer ready prompt user to retry or quit
- used by REPORT.OBJ and LABELS.OBJ.
-
- IF !PCHECK()
- RETURN
- ENDIF
-
- CENTER() Center messages.
-
- @ 0,0 SAY CENTER( 'message' )
-
- FCONTENT() Sort array. Used by LETTERS.OBJ and USERHELP.OBJ.
-
- FCONTENT( 'array' )
-
- READIT() Used in place of the following code:
-
- SET CURSOR ON
- READ
- SET CURSOR OFF
-
- DOS Provides a DOS shell.
- TODAY() Returns DATE() as MONTH,DAY,YEAR.
-
- @ 0,0 SAY TODAY( date() )
-
- GETDBF() Creates a popup menu for file selections, returns
- selection in variable 'dbf'.
-
- GETDBF( 'filemask','message' )
-
- SETUP Default clipper enviroment settings.
- EDITMENU() Default menu for custom EDIT windows.
-
-
-
-
- ┌──────┐
- ╔════════════════════════════════════════════════════════════════════╗ ╔═════╗ │
- ║ OBJECT FILES ║ ║ 49 ║ │
- ╚════════════════════════════════════════════════════════════════════╝ ╚═════╝─┘
-
- ADAMLIBB.OBJ
- ____________
-
- FILTER Controls filter condition database, used to store
- users filters.
-
- GETEXPR Used by FILTER procedure.
- GETPHRA Used by FILTER procedure.
- GOTOREC Used by FILTER procedure.
-
- OPENFILE() Opens a database in the next available workarea for
- single or multiuser mode.
-
- OPENFILE( 'filename' )
-
- MAKEDBF Create a database structure. See example in LETTERS
- .OBJ program.
-
- DBMENU() Popup menu function returns file selection in 'dbf'
-
- DBMENU( rt,ct,rb,'color','mask' )
-
- FILEOK() Checks if file exists and prompts user to overwrite
- if desired.
-
- DELAY() Time delay function used by animation code. A count
- of 5 is about one second on a 8mhz AT.
-
- DELAY( 50 )
-
- MOVE() Scroll text message at selected screen location.
- The WINDOW WIDTH is the area to contain the message
- inside of.
-
- MOVE( 'message',row,col,window width )
-
- PLAYIT() Plays music in Adam format created with MUSIC MAN.
- WAITFOR() Waits for a keypress.
-
- WAITFOR( 27 ) && wait for ESC keypress.
-
-
- BACKUP .OBJ Provides user assisted file backup utility.
- CARDEX .OBJ Index file database for name and address.
- DCODE .OBJ Prints bar code listings for code39.
- LABELS .OBJ Prints customer mailing labels.
- LETTERS .OBJ Mini word processor with mailmerge.
- MULTUSER.OBJ Contains all of Adams multiuser functions.
- PACKFILE.OBJ Removes deleted records and re-indexes file.
- POPCAL .OBJ Provides a pop-up calendar.
- PRINTER .OBJ Printer configuration utility.
- REPOFORM.OBJ Allows end user to select field list for reports.
- REPORT .OBJ Pre-designed report utility.
- TABLE .OBJ Provides automatic browse and edit window for file
- maintenance.
- USERHELP.OBJ Works similar to 'LETTERS.OBJ' but provides program
- documentation system.
-
-
-
-
- ┌──────┐
- ╔═════╗ │╔═════════════════════════════════════════════════════════════════════╗
- ║ 50 ║ │║ A BRIEF HISTORY ║
- ╚═════╝─┘╚═════════════════════════════════════════════════════════════════════╝
-
- The following information is provided to give you a look into how,
- and why Adam was created. It's been over two years since the first
- concept of Adam began.
-
- I was working with a template system called VIEWGEN, developed by
- a friend of mine, Luis Castro. At the time I was deeply involved
- with creating and modifying templates for this system.
-
- Over the course of the next two years, an idea crept into my mind
- about a new kind of software. I envisioned a program development
- system that had a built in intelligence.
-
- I kept thinking about a program or procedure that could reshape it
- self sort of a muli-purpose object that could become a totally new
- object based on certain conditions or information that we gave it.
-
- That's when the term SMART OBJECTS, first entered into the picture
- and totally started to consume my thoughts. What I was looking for
- was an object that could communicate with the developer and the
- development system. Kind of like passing question and answers back
- and forth between the two.
-
- At this time I did not have any idea about how all this would ever
- work, I just knew there had to be a better way of creating custom
- designed programs. Not just a database program, but any kind of
- program or utility.
-
- Meanwhile I kept working on templates and custom programming jobs,
- but I also started writing all kinds of small routines. One was a
- menu generator, and another was a screen design tool, etc. etc...
-
- I had no immediate use for these small utilities, so I just filed
- them away. This went on for about the first year and then all of a
- sudden it dawned on me... Why not take regular procedures and use
- the seldom used 'NOTE' command in Clipper which stands for comment
- and use this as a way to pass information from the procedure, to a
- developer. Besides almost everyone uses an asterisk '*' for their
- program comments anyway.
-
- The name for Adam came almost at the same time. I though of what
- I was trying to accomplish and came up with 'ADVANCED DATA ACCESS
- MANAGER' or ADAM for short.
-
- We'll by the time I had the name for the program I already had one
- year of tried and tested routines that I needed to make Adam work!
-
- The only strange thing about all this was that I found myself with
- programming utilities that only a program development system like
- Adam could use which means I wrote specific routines for a program
- that did not even exist at the time.
-
- I hope you find Adam as interesting and profitable as I do.
-
- Sincerely,
-
-
-
- Tom Dempsey
-
-