ПОИСК Статьи Рисунки Таблицы Определение объемов работ и сметных расценок на материалы трубопроводов из "Автоматизация проектирования трубопроводных систем химических производств" База данных СВЕТА используется для хранения не только фрагментов ЯВЕСС, но и нормативно-справочных данных, используемых в этих фрагментах. Данные, помещаемые в СВЕТА, следует организовать в виде таблиц. Это отражено в названии СВЕТА — это система ведения таблиц. Смысловой единицей языка ЯВЕСС служат операторы. [c.72] Для записи фрагментов ЯВЕСС используется 80-колонный бланк. Первые две колонки занимает тип, следующие три — метка, затем 45 колонок занимает оператор, остальные — комментарий. Запись в поле оператор должна кончаться звездочкой. Оператор может занимать несколько строк. Тип и метка оператора записываются в первой его строке. Как уже говорилось, фрагменты ЯВЕСС хранятся как таблицы в СВЕТА и различаются по номеру, который им дается при задании в СВЕТА. [c.73] Оператор строка AB . Тип оператора — АВ. Назначение — сформировать строку АВС и поместить ее в задание на смету. В поле оператор записывается строка по правилам АВС. Элементы этой строки могут быть переменными величинами. Тогда в соответствующем месте строки надо написать обозначение переменной величины, обрамленное слева вопросительным знаком, а справа точкой. При выполнении данного оператора переменные величины заменяются их значениями и полученная таким образом строка помещается в задание на смету. [c.74] Допустим, что переменные, входящие в первую из этих строк, имеют следующие значения ПОЗ-161 —1 ПОПР= (81А) КОЛ-126. Тогда в задание на смету первая строка войдет в виде Ц12—161 — 1 (81А) 126. Если переменная, входящая в строку АВС, не имеет значения или ее значение — вопросительный знак, то оператор не выполняется. Эта ситуация не считается ошибочной. [c.74] Оператор присваивания . Тип оператора — ПР. Назначение — указать (присвоить) значения переменных. В поле оператор записываются равенства, разделенные кавычкой. В левой части равенства стоит обозначение переменной, а в правой — ее значение. Правила записи переменных и значений приведены выше. [c.74] Эта запись означает, что значение переменной ПОПР (поправка) — пустая строка, т. е. поправка отсутствует. [c.74] Одной и той же переменной можно дать различные значения, используя разные операторы присваивания. При этом новое значение переменной уничтожает старое. Дополнительные сведения об операторе присваивания содержатся в дальнейшем изложении. [c.74] Поиск в таблице, содержащейся в СВЕТА. Тип оператора — СВ. Его назначение — нахождение необходимых данных в информационном фонде. Осуществляется это следующим образом. В заданной таблице, хранящейся в СВЕТА, ищется строка, удовлетворяющая определенным условиям. Из этой строки и из указанных выходных граф берутся данные, которые становятся значениями заданных выходных переменных. Остановимся на условиях поиска. Они заключаются в выполнении определенных соотношений между указанными входными переменными и значениями соответствующих входных граф. [c.74] Соотношениями могут быть равенство и неравенства больше, меньше, больше или равно, меньше или равно. [c.74] СВ номер таблицы условие поиска ТО результат Результат представляет собой перечень равенств, разделенных кавычкой. В левой части каждого равенства стоит обозначение выходной переменной, а в правой — номер графы, из которой берется значение этой переменной. [c.74] Отметим, что номера входных и выходных граф могут быть не только константами, но и переменными. Может случиться, что в таблице не найдется строки, удовлетворяющей условию поиска. В этом случае значением выходных переменных становится вопросительный знак, т. е. . Еще одно условие поиска специальное равенство рассматривается далее в тексте. [c.75] Отметим, что пробелы в последнем операторе между знаком равенства и кавычкой кодируют отсутствие поправки. Создав эти графы, мы тем самым включили таблицу поправок во фрагмент. В таблице, включенной в фрагмент с помощью операторов графа, можно осуществлять поиск. Для этого служит оператор поиск в таблице, имеющий тип ТА. Этот оператор в основном аналогичен оператору СВ. Различие заключается в том, что для оператора ТА не надо указывать номер таблицы, а вместо номеров граф указываются их обозначения. [c.75] В результате выполнения этого оператора действие переходит к оператору с указанной меткой. Метка не должна занимать более трех позиций. Метку можно записывать любым сочетанием букв, цифр и знаков. Если в качестве метки указать букву К, то это означает переход на конец фрагмента, т. е. в этом случае фрагмент прекращает свою работу. [c.75] УП условие ТО МЕТКА Г, ИН МЕТКА 2. [c.76] В предыдущем примере фигурировали два простых условия ВЫС 5 и ЯР = 1. Составное условие состоит из простых условий, соединенных союзами и и или . Союзы отделяются от простых условий кавычкой. В рассмотренном примере использовано составное условие, состоящее из двух простых условий, соединенных союзом И . Дополнительные сведения об операторе условного перехода содержатся далее в тексте. [c.76] Работа оператора заключается в том, что выдается указанное сообщение, и фрагмент прекращает работу. [c.76] Оператор комментарий никак не влияет на выполнение фрагмента. Переобозначение переменных. В некоторых случаях желательно изменить обозначение переменной. Это можно сделать при помощи оператора присваивания. В левой части равенства указывается новое обозначение переменной, а в правой старое. При этом старое обозначение, стоящее в правой части равенства, должно обрамляться вопросительным знаком и точкой. [c.77] Если переменная ЮЛЕМ имеет значение 1, то переменная ПОПР равна (81А). Если ЮЛЕМ = 2, то ПОПР=(81Б) и т. д. [c.77] Условие поиска в таблице специальное равенство . Как указывалось выше, операторы СВ и ТА осуществляют поиск строки таблицы, удовлетворяющей определенным условиям. Эти условия заключаются в выполнении соотношений между входными переменными и содержимым входных граф. В качестве соотношений используются равенство и неравенство. Имеется еще одно соотношение специальное равенство. Его обозначение = =. Специальное равенство считается выполненным, если содержимое входной графы совпало со значением входной переменной или если оно состоит из пробелов. Использование специального равенства позволяет в ряде случаев сократить размеры таблиц, в которых осуществляется поиск. [c.77] Вернуться к основной статье