Ниже кодовый шаблон. Почему переменная %FileList пуста несмотря на то, что файлы в схематике присутствуют. Подскажите что я сделал
неправильно? Мне нужно получить в %FileList список всех открытых файлов в процедуре. Спасибо.
Код: Выделить всё
#CODE(SaveFileState,'Сохранить состояние файла(ов)')
#PREPARE
#DECLARE(%FileList),UNIQUE
#IF(%Primary)
#ADD(%FileList,%Primary)
#ENDIF
#FOR(%Secondary)
#ADD(%FileList,%Secondary)
#ENDFOR
#FOR(%OtherFiles)
#ADD(%FileList,%OtherFiles)
#ENDFOR
#ENDPREPARE
#BOXED,SECTION
#BOXED,AT(,0),WHERE(ITEMS(%FileList))
#BOXED('Сохранить состояние выбранных файлов')
#PROMPT('Файлы:',FROM(%FileList)),%SelectedFiles,SELECTION('Доступные файлы'),INLINE
#ENDBOXED
#ENDBOXED
#BOXED,AT(,0),WHERE(~ITEMS(%FileList))
#DISPLAY('Данная процедура не содержит файлов в файловой схематике.'),AT(,,180)
#ENDBOXED
#ENDBOXED
начальник отдела ПТО
ООО "ОРК"
mail: alex@jrcn.donetsk.ua, icq: 62605472
www: http://atinet.hypermart.net
http://www.nikasoft.co.uk
http://clarionline.comprise-software.com (FAQ-онлайн)
irc: irc.lucky.net:6669, channel #clarion, Bambino
origin: "Пpодаются часы с боем. Бой бyдет ходить вслед за Вами и носить часы."
(Добавление)
У тебя в список не вносятся файлы, входящие в шаблоны.
Код: Выделить всё
#If (%Primary)
#Add(%FileList,%Primary)
#For(%Secondary)
#Add(%FileList,%Secondary)
#End
#EndIf
#For (%ActiveTemplate)
#For(%ActiveTemplateInstance)
#Add(%FileList,%Primary)
#For(%Secondary)
#Add(%FileList,%Secondary)
#End
#EndFor
#EndFor
#For(%OtherFiles)
#Add(%FileList,%OtherFiles)
#End
C уважением,
Юрий Философов,
Главный программист
Корпорация "Диполь", Саратов
E-mail yufil@tacis-dipol.ru (служ)
yufil@renet.com.ru (дом)
ICQ# 75924439
(Добавление)
В том то и дело, что все %Primary,%Secondary,%OtherFiles пустые...
Алексей,
начальник отдела ПТО
ООО "ОРК"
(Добавление)
В целом-да, но для внутренних контролов (%ActiveTemplate) - нет...
--
C уважением,
Юрий Философов
Дык и так делал... не работает
--
Алексей
Что-то ни фига я вас не пойму...
да работает оно!! только что проверял
Код: Выделить всё
#PREPARE
#DECLARE(%FileList),UNIQUE
#For (%ActiveTemplate)
#For(%ActiveTemplateInstance)
#IF(%Primary) ! Если не проверять то в список попадает
! пустая строка
#Add(%FileList,%Primary)
#For(%Secondary)
#Add(%FileList,%Secondary)
#End
#ENDIF
#EndFor
#EndFor
#For(%OtherFiles)
#Add(%FileList,%OtherFiles)
#End
#ENDPREPARE
...
С уважением, Владимир Дегтяренко
Написал: ClaList(2)