|   |   | 
| 
 | УФ -Модуль формы | ☑ | ||
|---|---|---|---|---|
| 0
    
        Вася Теркин 12.11.21✎ 13:48 | 
        При каждой передаче с клиента на сервер и с сервера на клиент переменные модуля на сервере нужно инициировать?
 Делаю в модуле примерно такой вариант: &НаСервере Перем ТаблицаСпр; &НаСервере Процедура ЗаполнитьТаблицаСпр() ... ТаблицаСпр = Запрос.Выполнить().Выгрузить(); КонецПроцедуры &НаСервере Функция НайтиСпрПоКодуРекурсивно(Код,КодРодитель) ... Строчки = ТаблицаСпр.НайтиСтроки(Новый Структура("Код, Родитель"), Код, КодРодитель) ... Возврат Строчки[0].Ссылка; КонецФункции &НаКлиенте Процедура Сформировать() ЗаполнитьТаблицаСпр(); Для каждого Строчка из Таблица Цикл СправочникСсылочка = НайтиСпрПоКодуРекурсивно(Строчка.Код,Строчка.КодРодитель); КонецЦикла; КонецПроцедуры Не совсем так, немного сложнее рекурсия но идея думаю ясна. Хочется одним запросом на серваке выгрузить весть справочник в ТЗ и по нему серфить. Или можно только с сервака как массив структур на клиента передать, снова ТЗ собрать и там серфить? Найти по коду в цикле с рекурсией очень долго однако... Вопрос конкретный: когда снова возвращаюсь на сервер переменная ТаблицаСпр вроде объявлена, но равна Неопределено. | |||
| 1
    
        Вася Теркин 12.11.21✎ 13:49 | 
        Или второй вариант сделать МВТ, но там такие же грабли.     | |||
| 2
    
        ДенисЧ 12.11.21✎ 13:49 | 
        " когда снова возвращаюсь на сервер переменная ТаблицаСпр вроде объявлена, но равна Неопределено."
 Так и должно быть. И это даже описано в документации. | |||
| 3
    
        Вася Теркин 12.11.21✎ 13:49 | 
        МВТ - МенеджерВременныхТаблиц.     | |||
| 4
    
        Вася Теркин 12.11.21✎ 13:49 | 
        (2) Печалька....     | |||
| 5
    
        Вася Теркин 12.11.21✎ 13:50 | 
        А если МВТ объявить или Запрос она его тоже очевидно занеопределенит. Жаль, будем тогда на клиента массивом все тащить или ещё как.     | |||
| 6
    
        Галахад гуру 12.11.21✎ 13:52 | 
        А реквизит добавить?     | |||
| 7
    
        ДенисЧ 12.11.21✎ 13:53 | 
        А ХЗ взять?     | |||
| 8
    
        Ryzeman 12.11.21✎ 13:53 | 
        (0) а зачем вообще на клиент возвращаться в цикле\рекурсии? Требуются какие-то интерактивные действия в каждой итерации?     | |||
| 9
    
        bolder 14.11.21✎ 08:45 | 
        (3) +100500.Тоже непонятно зачем таскать ссылки а клиента.     | |||
| 10
    
        pechkin 14.11.21✎ 10:59 | 
        нужны не переменные, а поместитьвовременноехранилище     | |||
| 11
    
        pechkin 14.11.21✎ 11:00 | 
        примерно так https://infostart.ru/public/76309/ | |||
| 12
    
        ДедМорроз 14.11.21✎ 13:05 | 
        Если что-то нужно хранить между серверными вызовами,то временное хранилище,если не хочется пихать в базу.     | |||
| 13
    
        серый КТУЛХУ 14.11.21✎ 19:25 | 
        кстати в связи с тем что переменные модуля &НаСервере живут только один серверный вызов - вопрос: а в каких случаях в принципе может понадобиться использование таких переменных модуля?     | |||
| 14
    
        acht 14.11.21✎ 22:00 | 
        (13) > в принципе может понадобиться 
 Для протаскивания приватных данных между методами объекта на протяжении серверного вызова. Ваш К.О. P.S. Объект.ДополнительныеСвойства - публичный. | |||
| 15
    
        серый КТУЛХУ 14.11.21✎ 22:40 | 
        (14): вопрос был про модуль формы а не модуль объекта есичо     | |||
| 16
    
        acht 14.11.21✎ 23:00 | 
        (15) А, да, точно.
 Для протаскивания приватных данных между методами формы на протяжении серверного вызова. Ваш К.О. | |||
| 17
    
        Ненавижу 1С гуру 10.12.21✎ 10:33 | 
        +(16) 
 еще как счетчик вызовов сервера ))) | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |