|
"Мягкое" обновление табличного поля | ☑ | ||
---|---|---|---|---|
0
extrim-style
15.01.15
✎
16:20
|
Появилась необходимость добавить в справочник Номенклатуры табличное поле с остатками в разрезе складов для текущей номенклатуры. Обычные формы. Выбрал запросом данные, выгрузил в ТЗ, присвоил ТЗ данным табличного поля. При таком подходе при навигации по позициям номенклатуры каждый раз происходит "моржок", даже если данные по складам и остаткам не изменились. Написал такую "плюху":
ТЗ = Запрос.Выполнить().Выгрузить(); Колво = ОстаткиПоСкладам.Количество(); Для Сч = 1 по Колво Цикл Если ТЗ.Найти(ОстаткиПоСкладам[Колво - Сч].Склад, "Склад") = Неопределено Тогда ОстаткиПоСкладам.Удалить(Колво - Сч); КонецЕсли; КонецЦикла; Для каждого Стр из ТЗ Цикл СтрСклад = ОстаткиПоСкладам.Найти(Стр.Склад, "Склад"); Если СтрСклад <> Неопределено Тогда Если СтрСклад.Количество <> Стр.Количество Тогда СтрСклад.Количество = Стр.Количество; КонецЕсли; Иначе НовСтр = ОстаткиПоСкладам.Добавить(); НовСтр.Склад = Стр.Склад; НовСтр.Количество = Стр.Количество; КонецЕсли; КонецЦикла; ОстаткиПоСкладам.Сортировать("Склад, Количество"); Текущий вариант визуально устраивает, но "плюха" не устраивает. Может, можно решить эту задачу проще? Спасибо). |
|||
1
Garykom
гуру
15.01.15
✎
16:28
|
(0) вы извращенец батенька
1. Если остатки меняются не так часто или понемногу то в спр. номенклатура сделать таблчасть остатки по складам и перезаполнять ее периодически (когда нужны такие по всем) или при движениях (приход/расход - тут быстрее будет тольк для затронутой номенклатуры) т.к. данные уже готовые и у номенклатуры то показ мгновенно 2. Задержка расчета остатков пока движемся по номенклатуре )) Т.е. пока не постояли на номенклатуре 1 сек ничего не берем ниоткуда = сделать кнопку "Показать остатки" |
|||
2
mehfk
15.01.15
✎
16:31
|
(0) В типовой УТ ничего не моргает.
|
|||
3
extrim-style
15.01.15
✎
16:32
|
(2) я знаю, что это реализовано в типовой УТ. Но у меня её нет на посмотреть.
|
|||
4
extrim-style
15.01.15
✎
16:35
|
(1) обновлять открытые формы - еще тот гемор
|
|||
5
DexterMorgan
15.01.15
✎
16:36
|
(1) Сам извращенец для таких задач таб часть юзать. При каждом изменении остатков ловить перезапись объекта и т.д. Если уж и хранить то в РС.
|
|||
6
Garykom
гуру
15.01.15
✎
16:39
|
(5) изврат да, но табчасть быстрее будет и проще
ЗЫ доп.реквизиты же хранят в табчасти в типовых )) |
|||
7
DexterMorgan
15.01.15
✎
16:40
|
(6) есть доп реквизиты, а есть доп сведения которые хранятся в РС. Ничего она не быстрее и не проще. Правда хз, может ты только таб части можешь добавлять, тогда тебе проще
|
|||
8
DexterMorgan
15.01.15
✎
16:42
|
(6) соответственно изменения доп сведения не вызывают перезаписи объекта в отличии от доп реквизитов. Что юзать от прикладной задачи зависит
|
|||
9
Garykom
гуру
15.01.15
✎
16:43
|
(7) да согласен что в РС будет правильнее, но написал же в (1) что "если остатки меняются не так часто или понемногу"
если потом еще что захочется, не только по складам но и цены или срок годности там видеть, то однозначно РС |
|||
10
DexterMorgan
15.01.15
✎
16:43
|
(6) кстати пример РС "ДоступныеОстаткиПланируемыхПоступлений", который выводится в частности в панели навигации номенклатуры в УТ11
|
|||
11
extrim-style
15.01.15
✎
16:45
|
(2) как в УТ сделано?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |