|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
значение переменной
Доброго дня!
Проблемка неоднозначная. Програмка, работает с БД на ADO. Окно MDI - главный список записей, двойной щелчек открывает дочернее MDI с подробностяпи по записи главного списка. Соответсвенно в дочернее окно из главного при открытии передается две переменные (MasterKey в БД для поиска записи), на основе которых остальные запросы к бд выводят остальную инф. Запись в бд содержит связи с другими таблицами (ForeginKey (помоему неправильно написал:)). Дочерний модуль содержит процедуры, которые могут менять состав этих самых FK для MasterKey. Так вот какая проблема: не всегда, но! если открыто больше одного дочернего окна и в том, которое открыто последнем (Окно2) произвести операцию по смене FK иногда происходит ситуация которую скорее всего можно описать как подмена значений переменных. Поясню: в дочернем модуле используются переменные с одним и тем же названием (POS_ID, TO_ID). Точно не знаю но слышал что для каждого нового экземпляра одного и тогоже модуля (окна) выделяется свое пространство в памяти под его переменные. Но если смотреть результат процедуры то получается что в процедуре окна2 используется значение переменной POS_ID окна1. Как то путанно получается, но уж извините сам не пойму что происходит. Вообщем по короче выглядет это так: Может ли (и при каких условиях) значение переменной первого экземпляра модуля передасться второму экземпляру модуля? |
#2
|
||||
|
||||
А каким образом и где переменные POS_ID, TO_ID у вас описаны?
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#3
|
|||
|
|||
q
Цитата:
обычным методом в процедуре FormCreate, тип String, В главном модуле есть глобальные переменные T_ID и P_ID, в процедуре FromCreate они передают свои значения локальным переменным POS_ID и TO_ID |