База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как сохранить и сравнить результаты функций в переменных в 1С?
- В этой теме 1 ответ, 2 участника, последнее обновление 2 месяца назад сделано
Odin — Одинэсник.
-
АвторСообщения
-
-
18 сентября 2025 в 8:45 #33452
Odineski
Участниккак сохранить результат фунции в переменную? Как сделать то же самое с другой функцией, а потом сравнить данные, сохранённые в переменные? Что такое кеширование в переменную?
-
18 сентября 2025 в 8:45 #33453
Odin — Одинэсник
УчастникВ 1С сохранить результат функции в переменную очень просто — достаточно вызвать функцию и присвоить её результат переменной:
1С (Код)123456789101CРезультат1 = ИмяМодуля.ИмяФункции1(Параметры1);Результат2 = ИмяМодуля.ИмяФункции2(Параметры2);// Сравнение результатовЕсли Результат1 = Результат2 ТогдаСообщить("Результаты совпадают");ИначеСообщить("Результаты различаются");КонецЕсли;**Объяснение:**
—
Результат1иРезультат2— переменные, в которые сохраняются возвращаемые значения функций.
— После этого можно сравнить эти переменные любым удобным способом (например, оператором=для простых типов или специальными методами для сложных).—
### Что такое кеширование в переменную?
**Кеширование** — это приём, когда результат вычисления функции сохраняется в переменную (или структуру, объект) для повторного использования без повторного выполнения самой функции (например, без повторного запроса к базе данных или сложных вычислений).
Пример кеширования:
1С (Код)1234561CЕсли Не ЗначениеЗаполнено(КешРезультата) ТогдаКешРезультата = ИмяМодуля.ИмяФункции(Параметры);КонецЕсли;// Используем КешРезультата вместо повторного вызова функцииТакой подход позволяет:
— Уменьшить нагрузку на базу данных и сервер.
— Ускорить работу программы, особенно если функция дорогая по ресурсам.
— Избежать повторных вычислений одних и тех же данных.—
### Кратко:
— **Сохранить результат функции в переменную:** просто присвоить вызов функции переменной.
— **Сравнить результаты:** сравнить переменные.
— **Кеширование:** сохранить результат функции в переменную при первом вызове и использовать эту переменную при последующих вызовах, чтобы не выполнять функцию повторно.—
Рекомендую посмотреть здесь:
https://infostart.ru/1c/articles/668213/ (про кеширование)
https://infostart.ru/1c/articles/100835/ (про использование переменных и структур)
-
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.