Форум » Clipper » Как узнать есть ли переменная в программе ? » Ответить

Как узнать есть ли переменная в программе ?

Andrey: Всем привет. Как можно узнать, есть ли в программе переменная PUBLUC ? Я часть переменных храню в базе. При запуске считываю из поля, объявляю ее public и присваиваю ей значение из этой же базы. А потом эти переменные (реквизиты фирмы) я где-нибудь печатаю. Так вот, если нет такой переменной нет (любят юзера удалять и править), то прога вываливается по ошибке типа "Переменная не существует" Так вот хочу сделать проверку на существовании переменной, а как ?

Ответов - 3

Григорьев Владимир: У меня есть предложение по решению вашей проблемы. Почему бы вам не объявить эту переменную в самом начале программы, до считывания значения в нее из базы данных. Если память не изменяет, объявленные PUBLIC переменные по умолчанию принимают значение .F.. Если вы считываете из базы данных значение отличное от логического, то можно проверять, инициализирована ли ваша PUBLIC переменная значением из базы данных сравнением ее с .F.. Если снова нужно будет, условно говоря, "обнулить" значение этой переменной, то вы присвоите ей значение .F..

Andrey: Это хорошо когда известны названия переменных, а если потом ты добавляешь в базу и обновил программу где-нибудь на другом конце Москвы, а потом они печатать начали и прога сваливается. Приходиться опять туда переться. А так в проверке при печати или входе в программу проверяется наличие переменной.

Dima: Григорьев Владимир Мне кажется ты чуть не понял о чем речь. Предположим в проге есть и объявлены Public переменные A:=0 B:=1 C:=3 Юзверь имеет возможность "объявить" ряд переменных типа так F1:=A+B+C F2:=A/B и даже так F3:=F2+F1 и тд Ежели юзверь завалит переменную F1 к примеру , то переменная F3 при расчете "упадет". Видимо про это был вопрос от Андрея.




полная версия страницы