Введение
Назначение zCode
Информационные системы, предназначенные для сбора и обработки данных о
движении материальных и финансовых средств, часто разрабатываются с
использованием специализированных языков программирования.
Например, система "1C:Бухгалтерия" имеет встроенный интерпретатор
отчетов, позволяющий даже неподготовленному пользователю создавать различные
виды бухгалтерских документов.
Другие распространенные бухгалтерские системы, такие как "Турбо
бухгалтер", "RS баланс", "Финансы без проблем", также
имеют более или менее развитые языки обработки информации, ориентированные на
данную предметную область.
Проблемно-ориентированные языки могут охватывать и более широкий класс
понятий, приближаясь к универсальным языкам управления базами данных. На
развитых проблемно-ориентированных интерпретаторах с успехом можно создавать
информационные системы из смежных областей: кадровые ИС, системы планирования
производства и т.п.
К числу таких интерпретаторов относится разработанный на УАЗе интеpпpетатоp
zCode, реализующий достаточно универсальный язык управления базами
данных. (Название "zCode" связано с тем, что на этом языке сначала
были написаны программы для подсистемы "Зарплата").
zCode предназначен в основном для построения сложных комплексов задач
(в том числе с оверлейным вызовом отдельных составляющих), которые реализуют
разветвленные видеосценарии или формируют многопроходные отчеты сложной
структуры с высокой степенью вложенности составляющих элементов.
Сложные сценарии, многократно превосходящие по суммарному объему программ
возможности оперативной памяти, в оверлейном режиме выполняются даже на PC-XT
почти без потери быстродействия.
zCode автоматически поддерживает работу в сети, и разработчику не
нужно заботиться об обеспечении корректности сетевого взаимодействия
пользователей.
zCode обеспечивает достаточно высокую степень автоматизации
разработки программ, многие простые системы сбора и обработки информации
реализуются на этом языке в стиле "программирования без
программирования". zCode достаточно прост в освоении и эффективен в
использовании.
Понятие задачи
Под задачей понимается программа на языке zCode, реализующая
некоторый алгоритм ввода, преобразования и вывода данных. В качестве задачи
часто используется видеосценарий или сценарий отчета.
Такой сценарий обычно состоит из одного или нескольких взаимосвязанных
образов видеоформ или элементов отчета - так называемых "фреймов" (от
английского frame - образ, шаблон, заготовка, рамка).
Фрейм - это рисунок (шаблон), задающий конструкцию экрана или отчета
в совокупности с описанием данных, которые должны войти в отчет или появиться на
экране.
Итак, программа на zCode - это, как правило, либо отчет, либо
видеосценарий. С точки зрения интерпретатора языка они неразличимы. Любой отчет
можно "проиграть" на экране, а любую экранную форму представить на
бумаге в виде отчета. Поэтому правила построения экранных форм и отчетов
одинаковы.
Имена файлов с экранными и отчетными формами выбираются произвольными, а
расширения желательно назначить: для экранных форм - ".pan" (от
слова panel), для отчетных форм - ".blk" (от слова blank). В
определенных ситуациях zCode ориентируется именно по этим двум
расширениям.
Нейтральным программам лучше присваивать нейтральное расширение, например,
".tsk" (от слова task).
Видеосценарии полностью основаны на событийных механизмах интерактивного
взаимодействия с пользователем, что позволяет за счет использования встроенных
(умолчательных) реакций интерпретатора на рутинные события избежать
программирования однообразных операций по обработке этих событий.
Программы реакций на события могут располагаться не в той
последовательности, в какой наступают реальные события в процессе интерактивного
взаимодействия с пользователем.
Элементами задачи на zCode, наряду с такими традиционными
элементами, как переменные, процедуры и операторы, являются меню, фреймы,
события, поля ввода вывода (гнезда), кодировочные таблицы, базы данных, списки
индексных файлов.
Выполнение программ
Для выполнения программы на zCode надо иметь интерпретатор
"Z.EXE", программу приложения и необходимые данные.
Если в задаче используются базы данных, индексные файлы, кодовые таблицы и
другие элементы, эти элементы также должны быть доступны.
(О размещении файлов - см. Приложение A).
Выполнение приложения на языке zCode осуществляется путем запуска программы
Z.EXE из командной строки или командного файла (z.bat). При этом могут быть
заданы дополнительные параметры (См. Приложение D).
Примеры вызова программ:
Z.EXE VI_DKS.PAN
На экране появится видеоформа, которая позволит нам просматривать и
редактировать базу данных DKS.DBF, используя для этого разнообразные встроенные
средства обработки данных интерпретатора zCode. Большинство операций
может быть выполнено с помощью "мышки". (При нажатии клавиши
"F1" можно получить контекстную подсказку.)
Z.EXE PRT_DKS.PAN
На экране появится динамическая "линейка" - индикатор выполнения
отчета. Вслед за ней на экране появится сам отчет, который можно посмотреть,
переименовать (по умолчанию ему присваивается имя REPORT.PRN), распечатать на
принтере.
(Примеры программ - см. Приложение C).