Быстродействие операции

1. login1020 133 26.10.18 11:41 Сейчас в теме
Добрый день, где можно почитать про разницу в быстродействии для след варианта:

в цикле создаются документы, что будет работать оптимальнее:
в цикле каждый раз обращаться к метаданным или передавать их в функцию заранее подготовленной структурой?


Метаданные типа перечислений, и т.п.
	ДокПрихода.НалогообложениеНДС = Перечисления.ТипыНалогообложенияНДС.ПродажаОблагаетсяНДС;
ДокПрихода.Менеджер = Пользователи.ТекущийПользователь();
ДокПрихода.СпособДоставки	 = Перечисления.СпособыДоставки.СиламиПоставщикаДоНашегоСклада;
ДокПрихода.ПорядокОплаты	= Перечисления.ПорядокОплатыПоСоглашениям.РасчетыВРубляхОплатаВРублях;
ДокПрихода.ФормаОплаты	= Перечисления.ФормыОплаты.Безналичная;
ДокПрихода.ЗакупкаПодДеятельность = Перечисления.ТипыНалогообложенияНДС.ПродажаНеОблагаетсяНДС;
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
4. Sashares 34 26.10.18 12:40 Сейчас в теме
(1)Если документов не 100500, то разницу вы не заметите.
А если 100500, то разница будет в несколько секунд - как уже сказали, один раз обратиться к значениям перечислений будет быстрее, чем каждый раз цикле, но эта разница мизерна..
Поэтому смысла особого так-то и нет... как удобней/понятней будет код, так и стоит делать.
5. spacecraft 26.10.18 12:50 Сейчас в теме
(1) можете использовать:
ПредопределенноеЗначение("Перечисление.ТипыНалогообложенияНДС.ПродажаОблагаетсяНДС")
так будет совсем оптимально.
acanta; login1020; +2 Ответить
7. login1020 133 26.10.18 13:15 Сейчас в теме
(5)Чем? Разве это не такой же серверный запрос, только Неявный?
8. spacecraft 26.10.18 13:27 Сейчас в теме
(7) это будет запрос, но только один раз для конкретного значения. Затем это значение будет браться из кеша. В кеше оно будет находится вплоть до изменения конфигурации. Затем все повторится.
9. login1020 133 26.10.18 13:31 Сейчас в теме
(8)т.е. единожды обратившись ПредопределенноеЗначение("ОбъектМетаданных"), а затем проделывая ту же операцию в других обработках метаданных или внутри конфигурации (для этого же объекта) - серверного вызова не будет, а значение будет браться из кэша?
10. spacecraft 26.10.18 13:34 Сейчас в теме
(9) да, до изменения конфигурации или версии платформы. Читайте СП:
Результат выполнения кэшируется при первом обращении до изменения конфигурации или версии платформы.
2. DenisCh 26.10.18 11:48 Сейчас в теме
Лучше заранее готовь все структуры
3. DmitriiKopasov 13 26.10.18 12:11 Сейчас в теме
Обращение к метаданным инициирует выполнение запроса к БД.
Т.е. в Вашем случае происходит выполнение запроса к БД в цикле.
Оптимальнее будет один раз получить все данные и поместить в структуру.
6. starjevschik 26.10.18 13:00 Сейчас в теме
Методика 1с - собрать все в структуры сначала. Потом передавать огромную гору огромных структур между процедурами, которые собственно делают всякие действия.
Но! не факт, что это так сделано для быстродействия, а не по каким-то другим важным причинам.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот