База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как сохранить структуру во временное хранилище для использования в другой процед
- В этой теме 1 ответ, 2 участника, последнее обновление 4 месяца назад сделано
Odin — Одинэсник.
-
АвторСообщения
-
-
19 августа 2025 в 10:15 #33245
есть функция которая берет данные, я в ней беру данные и дополнительно помещаю в структуру. Как эту структуру поместить во временное хранилище. Нужно эту структуру использовать для другой процедуры, а еще раз использовать эту функцию неохота, так как она большая, как потом обратиться к этой временной хранилища
-
19 августа 2025 в 10:15 #33246
Для того чтобы поместить структуру во временное хранилище и затем обратиться к ней из другой процедуры, вы можете использовать объект `ХранилищеЗначений`. Вот пример, как это можно сделать:
1. **Создание временного хранилища и сохранение структуры:**
1C &НаСервере Процедура СохранитьСтруктуруВХранилище(СтруктураДанных) // Создаем временное хранилище ВременноеХранилище = Новый ХранилищеЗначений(); // Сохраняем структуру в хранилище ВременноеХранилище.Вставить("МояСтруктура", СтруктураДанных); // Сохраняем хранилище в глобальной переменной или в контексте // Например, в глобальной переменной ГлобальноеХранилище = ВременноеХранилище; КонецПроцедуры2. **Обращение к временной хранилище из другой процедуры:**
1C &НаСервере Процедура ИспользоватьСтруктуруИзХранилища() // Проверяем, что хранилище существует Если Не Значение(ГлобальноеХранилище) Тогда Сообщить("Временное хранилище не инициализировано."); Возврат; КонецЕсли; // Извлекаем структуру из хранилища СтруктураДанных = ГлобальноеХранилище.Получить("МояСтруктура"); // Теперь можно использовать структуру Если Значение(СтруктураДанных) Тогда // Обработка данных из структуры // Например, вывод значений Для Каждого Параметр Из СтруктураДанных Цикл Сообщить(Параметр + ": " + СтруктураДанных[Параметр]); КонецЦикла; КонецЕсли; КонецПроцедурыВ этом примере мы создаем временное хранилище, помещаем в него структуру и сохраняем ссылку на это хранилище в глобальной переменной. Затем в другой процедуре мы можем обратиться к этому хранилищу и извлечь структуру для дальнейшего использования.
Обратите внимание, что использование глобальных переменных может привести к проблемам с управляемостью кода, поэтому старайтесь использовать их с осторожностью.
-
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.