Previous | Contents | Index |
If you have completed maintenance to the current help text file and want to maintain a different help file, the NEXT menu option allows you to select another existing help text file to maintain.
You are asked to enter the name of the next help text file that you want to maintain. After the name is entered, the file is opened and you can add topics or perform topic maintenance.
If the entered help text file is not found, an error message is displayed and you are asked for another help file name.
If you need to create a new help file, you can use the CREATE procedure.
12.2.8 PRINT - Print a HELP.LIS
The PRINT procedure creates a list of the topics and
text in the help file you are maintaining. The topics are listed in
alphabetical order.
You are asked if you want to proceed with list creation. If "Yes", the list is created. After creation, a print options menu is displayed and you can select where you want to print or display the list. SCREEN is the default option which displays the list on your screen.
The name of the list file is SYS$SCRATCH:HELP.LIS. Here is an example of part of a list:
BIRTH_DATE Enter the 8-character birth date in MMDDYYYY format. CITY Enter the city. FIRST_NAME Enter the first name. INITIAL Enter the 1-character middle initial. LAST_NAME Enter the last name. MENU OPTION Use the up- and down-arrow keys to select the menu option OR enter as many characters as necessary of the option name AND then press the RETURN key. Select ADD to add new records to the file. Select CHANGE to change field information in existing records. Select DELETE to delete existing records from the file. Select INQUIRE to view the contents of existing records. PROBLEM Enter a description of the problem. Press the PF1 and F keys simultaneously when finished. |
12.2.9 SHOW - Display a List of Topics
If you want to see what topics are in your help text file, you can
select the SHOW procedure.
The SHOW procedure displays a list of all the topics in the help text file. The topics are listed in alphabetical order.
Here is an example of output created by the SHOW option:
30-Apr-1997 Maintain: APPLICATION_HELP.DAT Option: SHOW birth_date city first_name initial last_name menu option problem proceed_add proceed_change proceed_delete solution ssn st zip Press the RETURN key to continue EXIT = Exit \ = Back HELP = Help |
12.2.10 RELATED - Display a List of Related Topics
If you want to find out what topics are "Related topics" in other topic
text, select the RELATED procedure.
The RELATED procedure asks for a topic and displays a list of the other topics that include the topic you entered as a "Related topic".
This procedure is helpful if you want to delete a topic and need to find out if it is included in the text of other topics. You can also run the PRINT option and compare the two lists.
The RELATED list appears as follows:
30-Apr-1997 Maintain: APPLICATION_HELP.DAT Option: RELATED Topic RELATED is a "Related topic" in these topics: procedure rename rename current Topic: RELATED is related in 3 topics EXIT = Exit \ = Back HELP = Help |
12.3 Using the Help System in Programs
The Help System is available when writing INTOUCH programs. There are
several requirements when you use the Help System in your programs.
The following lines of code MUST be part of your INTOUCH program source code. Also, the source code lines MUST be in this order. However, the lines need not be one after the other, they can be located in different sections of your program. The required source code lines are:
%include "tti_run:help.inc" help_structure$ = "help_file_name.DAT" help_initialize |
The above "%include" statement includes the HELP.INC module (located in TTI_RUN:) into your program. This is the module that actually displays the help text to the user when they enter HELP or press the [Help] key.
The other source code lines identify the help text file that you are using in your program and initialize it. help_file_name.DAT is the name of your help text file.
12.3.1 Help Topics in Program Source Code
If you want to use the Help System in your INTOUCH program, you simply
identify which help topic to use and "gosub" to the HELP module.
For each input prompt that you want to display help information for, you would include these lines of source code:
if _help then help_topic$ = 'topic_name' gosub help . . . end if |
The topic_name must be a topic name that exists in your help text file. gosub help tells the HELP module to display the help text information associated with topic_name. The internal variable _help is set to TRUE if the user enters HELP or presses the [Help] key.
Here is a common type of input routine which displays help text:
routine ask_city do line input prompt 'Enter city': city$ if _exit or _back then exit routine if _help then help_topic$ = 'city' gosub help repeat do end if end do end routine |
Here is a sample program which shows correct logic flow and how routines and loops are used. The routine headers tell what the routines do.
1 program application_a_1 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ! Program: CONVERT_DATE_TIME.INT ! Package: INTOUCH Examples ! Author : Fred Jones ! Date : June 1, 1996 ! Purpose: Ask the user for a date and time. Convert the date ! and time to various formats. !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1000 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ! M A I N L O G I C !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ! ! Brief description: ! Set up the first action and dispatch to that action. ! ! Expected: ! ! Locals: ! ! Results: ! action$ = contains the name of the first routine ! to be executed ! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% action$ = 'ask_date' do until action$ = 'exit' dispatch action$ loop stop 12000 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ! A S K D A T E !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ! ! Brief description: ! Clear the screen. Ask the user for a date in MMDDYYYY format. ! Change the input date to YYYYMMDD format. Convert the date to ! various formats. ! ! Expected: ! ! Locals: ! in_date$ = user input date in MMDDYYYY format ! ! Results: ! user_date$ = user input date in YYYYMMDD format ! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% routine ask_date clear message 'Enter a date in MMDDYYYY format' line input 'Date', at 3,1, valid 'date MDY', length 8: in_date$ if _back or _exit then action$ = 'exit' exit routine end if user_date$ = in_date$[5:8] + in_date$[1:4] convert_date action$ = 'ask_time' end routine 13000 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ! A S K T I M E !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ! ! Brief description: ! Ask the user for a time in HHMM 24-hour format. Validate the ! input time. Convert the 24-hour format to 12-hour format. ! ! Expected: ! ! Locals: ! in_time$ = user entered time in 24 hour format - HHMM ! ! Results: ! hour$ = hour ! minute$ = minute ! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% routine ask_time message 'Enter the time in 24-hour HHMM format - 0030, 1215, 2245' input 'Time', at 4,1, valid 'digits', length 4: in_time$ if _back then action$ = 'ask_date' exit routine end if if _exit then action$ = 'exit' exit routine end if hour$ = in_time$[1:2] minute$ = in_time$[3:4] if val(hour$) > 24 or val(minute$) > 60 then message error: 'Invalid time' repeat routine end if convert_time action$ = 'print_date_time' end routine 14000 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ! P R I N T D A T E T I M E !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ! ! Brief description: ! Print the date and time formats to the screen. ! ! Expected: ! u_day = "julian" of entered date ! u_day$ = day of week (Monday, Tuesday, etc.) ! u_yyyymmdd$ = yymmdd version of entered date ! u_mmddyyyy$ = mmddyy version of entered date ! u_ddmonyyyy$ = dd-mon-yyyy version of entered date ! u_monthddyyyy$ = month dd, yyyy version of entered date ! (padded to 18 characters) ! u_time$ = HH:MM AM or HH:MM PM ! ! Locals: ! ! Results: ! dates are displayed on the screen ! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% routine print_date_time print at 6,1: 'Date formats:'; print bold, at 6,15: u_day; '- Julian date' print bold, at 7,16: u_day$; ' - day of week' print bold, at 8,16: u_yyyymmdd$; ' - yyyymmdd version' print bold, at 9,16: u_mmddyyyy$; ' - mmddyyyy version' print bold, at 10,16: u_ddmonyyyy$; ' - dd-mon-yyyy' print bold, at 11,16: rtrim$(u_monthddyyyy$); ' - month day, year' print at 13,1: 'Time format :'; print bold, at 13,16: u_time$ action$ = 'exit' end routine 15000 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ! C O N V E R T D A T E !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ! ! Brief description: ! Convert the date to various date formats. ! ! Expected: ! user_date$ = input date in YYYYMMDD format ! ! Locals: ! ! Results: ! u_day = "julian" of entered date ! u_day$ = day of week (Monday, Tuesday, etc.) ! u_yyyymmdd$ = yymmdd version of entered date ! u_mmddyyyy$ = mmddyy version of entered date ! u_ddmonyyyy$ = dd-mon-yyyy version of entered date ! u_monthddyyyy$ = month dd, yyyy version of entered date ! (padded to 18 characters) ! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% routine convert_date u_day = days(user_date$) u_day$ = day$(u_day) u_yyyymmdd$ = date$(u_day, 0) u_mmddyyyy$ = date$(u_day, 1) u_ddmonyyyy$ = date$(u_day, 3) u_monthddyyyy$ = rpad$(date$(u_day, 4), 18) end routine 16000 !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ! C O N V E R T T I M E !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ! ! Brief description: ! Convert the time (hour and minute) to a 12-hour time format. ! ! Expected: ! hour$ = hour ! minute$ = minute ! ! Locals: ! ! Results: ! u_time$ = HH:MM AM or HH:MM PM ! !%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% routine convert_time select case hour$ case is < '12' u_time$ = hour$ + ':' + minute$ + ' AM' case is = '12' u_time$ = hour$ + ':' + minute$ + ' PM' case is > '12' z1% = val(hour$) z1% = z1% - 12 u_time$ = lpad$(str$(z1%), 2, '0') + ':' + minute$ + ' PM' end select end routine |
Date? 07041994 Time? 1645 Date formats: 144091 - Julian date Monday - day of week 19940704 - yyyymmdd version 07041994 - mmddyyyy version 04-Jul-1994 - dd-mon-yyyy July 4, 1994 - month day, year Time format : 04:45 PM |
Index | Contents |