ac_getupvaluestatus
Определить после операции считывания пользовательского свойства - статус его значения.
Статус может быть Null (пусто), Undefined (не присвоено) или Normal.
В любых обстоятельствах при выполнении операций считывания, даже при ошибках, возвращается хотя бы 0 или пустая строка.
О произошедших ошибках, например отсутствии такого свойства у элемента, операции считывания сообщают возвращаемым кодом операции - 0 - успешно, а отрицательное значение - ошибка.
Чтобы понять что свойство является Null или Undefined - требуется выполнить дополнительно эту команду.
Null и Undefined, т.е. 0 и 1 являются близкими и по сути отвечают смыслу Null.
Лучше ориентироваться на значение 2 - т.е. если параметр имеет нормально присвоенное значение - то свойство не Null.
Вызов:
int ires = ac_getupvaluestatus();
Здесь:
ires - Возвращаемое значение:
0 - было считано пустое значение (Null);
1 - значение свойству не было присвоено пользователем (Undefined);
2 - свойство имеет обычное нормальное значение (Normal);
Пример.
Считать свойство и понять оно имеет значение или оно Null.
ac_request_special("get_element_value", "UP", "Переменные водосточной системы\\Координаты элементов водосточной системы");
string svalue = ac_getstrvalue();
int ivalue = ac_getupvaluestatus();
if(ivalue == 2) {
cout << "Свойство имеет нормальное значение";
}
else
{
cout << "Свойство не имеет присвоенного значения или является Null";
}