Имя: Пароль:
1C
1С v8
БП: Вычисляемые поля в списках документов
0 slafor
 
07.09.20
22:21
Для примера и дальнейшего, так сказать, "осознания" ) .
Есть типовая конфигурация.
Есть документ РеализацияТоваровУслуг, в нем в списке товаров есть вычисляемое поле - например, объем по всему количеству товара по строке.
Есть вычисляемое поле ИтогоОбъем для всего документа, по всем позициям в целом.
И надо выводить этот итоговый объем по всем документам в списке.

Понятно, на ум приходит, что можно сделать реквизиты (в табличной части документа, в самом документе), и по ним все решить. А можно все это оформить в виде вычисляемых, но не сохраняемых в базе полей формы. Только в списке документов тогда тоже придется вычислять общий объем по каждому документу, который, в свою очередь, сам вычисляется на основании данных табличной части документа.

Само собой, на производительности это скажется плохо (насколько, кто-нибудь проверял?). Зато не придется создавать новые реквизиты. Менять придется только формы документов и их модули. Значительно ли я уменьшу временные потери при обновлении, если конфигурация типовая?

Если говорю глупости - простите, не выспался ) .
1 1CnikPetya
 
07.09.20
22:25
Расширения есть возможность использовать?
2 slafor
 
07.09.20
22:27
Нежелательно. В общем, нельзя.
3 1CnikPetya
 
07.09.20
22:32
Отбор, фильтр, группировка по данным предполагается? Если нет, то можно ПриПолученииДанныхНаСервере использовать. Но тормозной вариант. Еще можно через дополнительные атрибуты + подписку на события.
4 mistеr
 
07.09.20
23:48
(0) Если под списком документов понимать динамический список (например, в форме списка), то я не вижу нормального решения.

Но пользователям скорее всего не нужен общий объем для произвольного списка документов, в т.ч. без всяких ограничений. Нужно выяснить, что им нужно на самом деле. И скорее всего, это реализуется отчетом.
5 slafor
 
07.09.20
23:57
(4) Да, именно динамический список... Про отчеты пока не спрашивал.
6 slafor
 
08.09.20
00:01
Я один раз вставлял запрос при формировании динамического списка. Но там выводились только реквизиты документа, а вот если надо формировать его на основе реквизитов ТЧ (это тоже понятно как), да еще таких данных, которые сами по себе формируются в тч...
7 ДенисЧ
 
08.09.20
04:59
А в чём проблема в запросе динсписка левосоединить с тч документа и просуммировать эту тч?
8 ILM
 
гуру
08.09.20
05:43
(7) Абсолютно правильная мысль, причем считать сумму не по всем документам, а только по тем которые видны в списке.
У меня так выводятся заказы на производство, с указанием частичной или полной обеспеченности и возможности запуска в работу. Так как некоторые ПФ ещё готовятся и будут на складе в нужный этап производства, но на старте их ещё пока нет. (Всё это в динамике и звучит "нечеловеческая музыка")...
9 ILM
 
гуру
08.09.20
05:51
Вернее так: «должно быть весело, все бы двигалось и звучала неземная музыка».
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший