double arrow
Ход работы. 1.Изучить теоретический материал, изложенный выше в данной методичке, а также в главах 3.2 и 3.3 методических указаний в формате PDF

1.Изучить теоретический материал, изложенный выше в данной методичке, а также в главах 3.2 и 3.3 методических указаний в формате PDF.

2.Из меню Cache-куба открыть Cache Studio, ознакомиться с его интерфейсом и создать новую программу. См. рисунок 3.

Рисунок 3 – Создание новой программы на языке Cache Object Script.

3.На примерах, изложенных ниже, изучить основные приёмы работы с глобалами с использованием циклических структур:

· Занести следующие данные о пациентах в глобал ^Medizine:

Таблица 1 – Данные о пациентах.

Фамилия пациента Возраст Пол Кровяное давление Температура тела
Иванов мужской 125/60 36,6
Сидорова женский Нет данных Нет данных
Тарасов мужской 110/80 38,6
Петров мужской Нет данных 36,6
Иваненко женский 115/85 Нет данных
Горбунков мужской 100/80 39,3
Иващенко мужской 140/60 36,9
Турчинов мужской Нет данных Нет данных

Программа имеет вид, приведённый на рисунке ниже:

После набора кода в центральном окне, рисунок 4, программу следует откомпилировать, путём нажатии клавиш Ctrl+F7. Перекомпилируйте программу каждый раз, когда что-то в ней меняете или исправляете ошибки!

После первой компиляции программа попросит сохранение, см. рисунок 5.

Рисунок 4 – Работа над собственной программой в Cache Studio.

Рисунок 5 – Сохранение программы на диске.

Для выполнения программы используйте программу «Терминал», также вызываемую из меню Cache-куба.См. рисунок 6.




Вызов программы осуществляется с помощью оператора «do», далее пробел, далее знак циркумфлекс «^» и затем полное имя программы, которая тестируется. В конце каждой строки нажимается «Enter».

Рисунок 6 – Выполнение созданной программы в «Терминале».

Убедитесь в том, что все данные сохранены на диске в глобале ^Medizine. Для этого откройте портал управления системой:

Рисунок 7 – Просмотр глобалов в области User.

· Работа с функцией $Data. Функция $Data (коротко $D) – это функция с именем переменной в качестве аргумента. Эта функция может работать с локальной или с глобальной, скалярной или индексированной переменной. Значение функции $Data определяет, существует ли заданная в виде аргумента переменная и какая у неё структура. Функция возвращает четыре различных результата:

1. Если её значение равно 0 (10), то переменная не существует;

2. Если её результат 1(11), то переменная существует.



Пример программы, которая позволяет определить имеется ли данный пациент на лечении или нет, приведена на рисунке ниже:

Программа имеет вид:

Здесь применён оператор косвенности - @, который преобразует в данном случае имя переменной в её значение. В общем случае он предназначен для преобразования строки символов в программный код.

Результат её работы может быть следующим:

Рисунок 8 – Результат работы программы.

· Работа с функцией $Order.Она является основной функцией, служащей для получения очередного в последовательности сортировки индекса локальной или глобальной индексированной переменной. Применяя цикл, в соответствии с последовательностью сортировки могут быть получены все существующие индексы данного уровня. Для того, чтобы задать самый первый индекс в пределах заданного уровня, использую пустую строку. Пример применения выполним в Терминале:

USER> w $O(^Medizine(65))

Получим ответ на следующий вопрос: Пациенты, каких возрастов присутствуют на лечении? Ответом будет программа:

Результат отладки программы в «Терминале» имеет вид, представленный на рисунке 9.

Рисунок 9 – Получение списка возрастов.

Это один из классических циклов Cache ObjectScript, использование которого либо в этой форме, либо в различных модификациях при прямом доступе к глобалам остаётся актуальным.

Каким образом получают к уже заданному индексу (27 к примеру) первый индекс на втором уровне? Это осуществляется точно таким же способом, как и ранее, путём использования пустой строки на втором уровне индексации:

USER>w $O(^Medizine(27,""))






Сейчас читают про: