ГОСТ Р ИСО 13584-31—2010
error_variable = zero, чтобы восстановить интерфейс в состоянии «отсутствие ошибки» (error_state =
fatso). Выбираемая стратегия исправления ошибок интерфейса соответствует нижеследующей класси
фикации ошибок:
- класс I — ошибки, приводящие к заранее известной реакции системы;
- класс II — ошибки, связанные с попыткой сохранить результаты или предшествующие операции;
- класс III — ошибки, приводящие к непредсказуемым результатам, включая разрушение CAD.
Интерфейс распознает три ситуации выявления ошибки:
- ситуация А — ошибка в функции интерфейса:
- ситуация Б — ошибка в функции, вызываемой из интерфейса (функции CAD. функции операци
онной системы и т. д.).
- ситуация
В
— ошибка вне интерфейса.
Если ошибки выявлены вне интерфейса (ситуация В), то либо прикладная программа принимает
на себя управление выполнением операций, либо выполнение программы заканчивается ненормаль
но. В последнем случае результаты являются непредсказуемыми (класс III), это может привести к раз
рушению CAD. Если тем не менее прикладная программа принимает на себя управление, то она может
попытаться вернуться в LMS, чтобы попробовать закрыть интерфейс надлежащим образом (см. раз
дел 5.7). Операции, определенные в разделе 5.7, могут быть также выполнены самим интерфейсом.
Это стандартная реакция на ошибки класса II.
Все ошибки, явно представленные в перечне как часть определения функции интерфейса, при
надлежат к классу I. Они либо возникают внутри самого интерфейса (ситуация А), либо возникают, ког да
функция, вызванная из интерфейса, передает управление обратно некоторой функции интерфейса
вместе с соответствующей информацией об ошибке (ситуация Б). Во всех случаях выявления ошибок
класса I интерфейс задает значения переменным ошибки error_variable. crror_origin и errortext. Если в
процессе создания функции сущности имеет место сбой и сущность не может быть создана, то имя
сущности, вычисленное функцией, устанавливается равным 0. Если функция интерфейса активизиру
ется с более чем одним состоянием ошибки, толюбой из соответствующих номеров ошибки может быть
присвоен переменной ошибки.
Функция запроса lnq_Error_State позволяет исправлять ошибки с помощью прикладного програм
мирования. Функция Reset_Error_State выводит интерфейс из состояния ошибки. Закрытие открытого
вида при значении переменной error_state = true позволяет LMS заранее предупредить CAD о том. что
вид является неправильным.
При наступлениисостояния ошибки функции запросадействуют в соответствии с их функциональ
ным описанием (см. приложение А), их действия не должны генерировать новых ошибок. Поэтому для
функций запроса описаний ошибок не существует. Для сообщений о возможных трудностях в процессе
выполнения функций используется особый выходной параметр: errorjndicator (индикатор ошибок).
Каждая ошибка имеет свой индивидуальный номер:
1) номера менее 1001 не используются. Они зарезервированы для последующих обновлений
стандарта;
2) номера ошибок от 1000 до 2000 зарезервированы для привязок языка программирования.
5.8.2 Сообщения об ошибках
Т аб лиц а 1 — Сообщения об ошибках входа
Номер ошибки
Описание ошибки
1
Имя сущности не определено (значение равно 0. значение неизвестно)
2
Недопустимый тип сущности
3
Значение меры длины находится вне допустимого диапазона
4
Значение меры плоского угла находится вне допустимого диапазона
5
Целочисленное значение находится вне допустимого диапазона
6
Значение строки находится вне допустимого диапазона
7
Действительное значение находится вне допустимого диапазона
13