процедуру можна передавати з викликає програми і назад параметри, які в самій процедурі визначаються командою
PARAMETERS <список параметрів>
яка повинна бути першою виконуваної командою в тілі процедури. Як параметр в списку може бути будь-яке припустиме вираз, що визначає змінну, в яку передаються дані з відповідного параметра викликає програми. Якщо ця змінна не оголошена глобальної (PUBLIC), то автоматично вона має статус локальної (PRIVATE). p align="justify"> Визначення змінних як локальних виконується командою
<список змінних>/[ALL [LIKE/EXCEPT <шаблон>]]
Глобальні змінні можна використовувати всюди в програмі і в спричинених нею процедурах. Для оголошення змінних і елементів масиву глобальними використовується команда
PUBLIC <список змінних>/[ARRAY <список елементів масиву>]
Щоб організувати в dBASE систему меню, спочатку треба визначити його окремі компоненти - меню вертикального і горизонтального типу. Для цього використовуються спеціальні команди, що починаються словом DEFINE - визначити. Визначення горизонтального меню виконується командою
MENU <ім'я Менк "[MESSAGE <вир.С>]
Ця команда ще не створює горизонтальне меню, а тільки призначає йому ім'я і, якщо потрібно, повідомлення, яке буде висвітлюватися в нижньому рядку екрана (рядку повідомлень). Для визначення позицій горизонтального меню використовується команда
DEFINE PAD <ім'я позиції>
OF <ім'я меню> PROMPT <вир.С>
[AT <рядок>, <ко'лонка>] [MESSAGE <вир.С>]
яка визначає одну позицію горизонтального меню. Для завдання декількох позицій дана команда повторюється відповідне число разів. Вертикальне меню визначається командою
DEFINE POPUP <ім'я Менк "<рядок 1>, <колонка 1> [ТО <рядок 2>, <колонка 2>] [PROMPT FIELD <ім'я поля>]/ PROMPT FILES [LIKE <шаблон>]/PROMPT STRUCTURE] [MESSAGE <вир.С>]
яка встановлює його ім'я (записується за тими ж правилами, що і для горизонтального меню) і координати вікна меню на екрані. Опції FROM і ТО визначають координати лівого верхнього і правого нижнього кутів вікна меню. p align="justify"> Призначення тексту та інших атрибутів однієї позиції раніше визначеного вертикального меню здійснюється командою
BAR <номер рядка> OF <ім'я меню> PROMPT <вир.С> [MESSAGE <вир.С>] [SKIP [FOR <умова>]]
Щоб визначити декількох позицій, треба цю команду повторити відповідне число разів.
Після того, як визначені позиції меню, звичайно потрібно призначити їм певні дії, які будуть виконуватися при їх виборі. Ці дії для позицій горизонтального меню призначаються командою
ON SELECTION PAD <ім'я позиції горизонтального меню> OF <ім'я горизонтального меню> [<команда>]
яка виконує задану команду при виборі зазначеної позиції горизонтального меню. В якості команди може бути будь-яка команда dBASE IV, в тому числі команда виклику програм і процедур. p align="justify"> Для призначення дій позиціях вертикального меню використовується команда
ON SELECTION POPUP <ім'я позиції вертикального MeHK>>/ALL [<команда>]
яка виконує задану команду або процедуру при виборі позиції вертикального меню.
Зазвичай для призначення позиціях меню яких дій використовується вихід на процедуру, в якій містяться команди для виконання цих дій. У такій процедурі найчастіше застосовується команда
DO CASE <умова>
<команди>
[CASE <умова>]
<команди>
[OTHERWISE]
<команди> ENDCASE
Можна формувати вкладені структури цієї команди, тобто всередині команди після ключового слова CASE поміщати іншу команду DO CASE, а також будь-які інші команди розгалуження та виконання циклів, наприклад IF ... ENDIF, DO WHILE ... ENDDO та ін
CASE Val> 1000 <команди> CASE Val> 100 <команди> CASE Val> 10 <команди> OTHERWISE <команди> ENDCASE
Якщо потрібно розгалужув процес тільки на два напрямки, можна використовувати команду
IF <умова> <команди> [ELSE], <команди> ENDIF
При реалізації операцій, призначуваних позиціях меню, нерідко потрібно організувати цикли повторюються дій, наприклад організувати обробку файлу БД і ін Це можна зробити за допомогою ряду команд і їх комбінацій. Однією з таких є команда