Страница 1 из 1

Возможно ли реализовать?

Добавлено: 23 апр 2007, 11:23
Alexander
Допустим, что есть фэйс1, внутри которого вызывается фэйс2.
Interface фэйс1;
....
RunInterface('фэйс2'...);
....
end.

Во 2 фэйсе создаются временный таблицы, можно ли сделать так, чтобы они были доступны после его закрытия фэйс2 ???
т.е фэйс2 заполняет таблицы и я фэйс1 смогу эти данные использовать??

Добавлено: 23 апр 2007, 11:41
aleks1232321
Например, объявить временную теблицу как глобальную, т.е.
вставить ее объявление (описание) в проект.


Table STRUCT ChoiceDO "Временная для выбора спецификации по ДО"
(
nrecsp :comp,
kolchoice :double,
koldo :double,
kolnakl :double,
Price :double,
NameMC :string[80],
NameED :string[30]
)
With Index
(
icReco = NameMC + nrecsp
);
#make 'MY_FACE1.vip'

Добавлено: 23 апр 2007, 11:50
Alexander
а при закрытии интерфейса она разве не почистится???

Добавлено: 23 апр 2007, 12:09
aleks1232321
Нет, только после закрытия всего проекта

Добавлено: 23 апр 2007, 12:44
Алексей
aleks1232321
подскажите, как в Галактике запустить проект, состоящий из двух отдельных интерфейсов? :-(
Всегда думал что файлы *.prj сделаны для удобства компиляции, и никаких таких "проектов" в самой галактике нет.


Alexander
создайте временные таблицы в первом фейсе.
перед вызовом второго почистите.
во втором наполните.
при возврате в первый фейс - юзайте свою таблицу.

Добавлено: 23 апр 2007, 14:01
aleks1232321
Немного не понятно что значит "из 2-х отдельных интерфесов"?
Как я понял из первого вопроса - есть 2 фейса, один вызывает другой. Нужно, чтобы временная таблица (таблица в памяти) заполнялась во втором, а в перфом фейсе она используется для чего-либо, например, отображения.
Создаем проект myprj.prj, который имеет, например, такой вид
Table STRUCT ChoiceDO "Временная для выбора спецификации по ДО"
(
nrecsp :comp,
kolchoice :double,
koldo :double,
kolnakl :double,
Price :double,
NameMC :string[80],
NameED :string[30]
)
With Index
(
icReco = NameMC + nrecsp
);

#make 'my_face2.vip'
#make 'my_face1.vip'
В первом заполняем таблицу, во-вотором используем.

Можно сделать иначет
в перфом фейсе объявляем тадицу (как глобальную), во-втором заполняем.

Table STRUCT ChoiceDO "Временная для выбора спецификации по ДО"
(
nrecsp :comp,
kolchoice :double,
koldo :double,
kolnakl :double,
Price :double,
NameMC :string[80],
NameED :string[30]
)
With Index
(
icReco = NameMC + nrecsp
);


interface my_face1..........

Добавлено: 23 апр 2007, 14:51
Alexander
да у меня просто большой проект. Маленький пример сделал-работает, реальный-не хочет... надо смотреть почему.... странно.... не пойму в чем ошибка. пойду дефайны проверять.... всем спасибо... буду глюки искать!

Добавлено: 23 апр 2007, 16:09
hope
Чтобы данные из временной таблицы не удалялись при выходе из интерфейса, я делаю так:

mtChangeRefCount(#TMP_Nab, 1);

А когда надо очистить и удалить временную таблицу:

DELETE ALL Tmp_Nab;
mtChangeRefCount(#TMP_Nab, -1);