|   |   | 
| 
 | v7: Регистр.ОстаткиТоваров.СводныйОстаток(,,,) ↓ (Волшебник 23.01.2025 09:24) | ☑ | ||
|---|---|---|---|---|
| 0
    
        Pit0n_08 23.01.25✎ 09:02 | 
        Кто помнит? 
 Регистр.ОстаткиТоваров.СводныйОстаток(Товар,Склад,"Количество") работает ли по списку значений (СписокСкладов), а не отдельному значению Склад регистра? | |||
| 1
    
        mikecool 23.01.25✎ 09:17 | 
        справку отняли? проверить быстрее     | |||
| 2
    
        mishaPH 23.01.25✎ 09:19 | 
        (1) в справке этого нет кстати.
 СводныйОстаток(<?>,) Синтаксис: СводныйОстаток(<Измерен1>,<Измерен2>...,<ИмяРесурса>) Назначение: Возвращает значение сводного остатка заданного ресурса регистра. Параметры: <Измерен1>,<Измерен2>... - значения измерений регистра; <ИмяРесурса> - название требуемого ресурса регистра. Замечание: Измерения могут задаваться с пропусками (неуказанное значение - просто запятая), фиксируются только указанные измерения. Метод используется только для регистров остатков | |||
| 3
    
        mishaPH 23.01.25✎ 09:19 | 
        (0) никогда не пользовался. только запросами. А так по идее должен по аналогии с В запроса.     | |||
| 4
    
        mikecool 23.01.25✎ 09:22 | 
        (2) странно, но кмк я встречал, что должно работать как "=" и только 1 значение, но может и не в справке видел это     | |||
| 5
    
        Волшебник 23.01.25✎ 09:25 | 
        (0) А что, создать ветку на форуме быстрее, чем проверить самому? 
 Правило 14. ...избегать тратить время профессионалов на незначительные задачи. | |||
| 6
    
        mishaPH 23.01.25✎ 09:35 | 
        (4) ну х.з. не применял это, если честно, вообще никогда. 
 но группу-то никто не запрещает вроде. Хотя вот по логике есть СвеодныеОстаткИ и там группы. | |||
| 7
    
        Злоп 23.01.25✎ 10:04 | 
        Я не пробовал, но думаю что вряд ли будет по списку работать, ибо возвращает скаляр.
 . Рег.установитьзначениефильтра И рег.ВыгрузитьИтоги | |||
| 8
    
        trad 23.01.25✎ 11:37 | 
        Есть метод УстановитФильтр или как-то так     | |||
| 9
    
        Fedor-1971 23.01.25✎ 11:48 | 
        (0) СводныйОстатк работает только на равенство, без списка
 То что тебе нужно, можно сделать примерно так: Рег = СоздатьОбъект("Регистр.ТоварныйКредит"); Рег.УстановитьЗначениеФильтра(Клиент, СписокКлиентов, 2); //2 - это отбирать Рег.ВыбратьИтоги(); Пока Рег.ПолучитьИтог() = 1 Цикл ... КонецЦикла; Возможно придётся поморочиться с временным расчётом | |||
| 10
    
        Pit0n_08 23.01.25✎ 12:14 | 
        (9) это вряд ли подойдет. Приспичило в форме списка справочника "Номенклатура" показать остатки только по рабочим складам. А всякие "дутые" с браком и некондицией исключить     | |||
| 11
    
        Pit0n_08 23.01.25✎ 12:16 | 
        +(9) цикл по итогам форму просто подвесит     | |||
| 12
    
        Fedor-1971 23.01.25✎ 12:43 | 
        (10) а что мешает добавить фильтр по товару?
 Рег.УстановитьЗначениеФильтра("Номенклатура", ТекущийЭлемент(), 1); // чистый отбор по равенству цикл нужен для перебора твоих складов. Посмотри отладчиком, после рег.ВыбратьИтоги(), может быть, что в рег.Количество будет лежать полный остаток | |||
| 13
    
        Fedor-1971 23.01.25✎ 12:32 | 
        12+ сделай галку "Показать итоги" - кому надо поставит и будет мириться с подтормаживанием, остальным просто выбор номенклатуры без доп.данных     | |||
| 14
    
        Pit0n_08 23.01.25✎ 13:15 | 
        (6) Справочник Склады одноуровневый, если добавить уровни придется все формы в документах переделывать, где есть выбор склада((     | |||
| 15
    
        Fedor-1971 23.01.25✎ 14:05 | 
        (14) Зачем переделывать документы? Поправить нужно форму выбора склада на иерархическую и всё (возможно, поставить запрет выбора группы)     | |||
| 16
    
        Pit0n_08 23.01.25✎ 14:28 | 
        Всем спасибо. В сухом остатке - по списку метод не работает. пробую прямым запросом     | |||
| 17
    
        skafandr 23.01.25✎ 15:05 | 
        Работающая схема(на ходу упрощаю ибо у нас очень наворочено) для формы списка номенклатуры с остатками: 
 Массив складов Склады: заполнить с которых возможна продажа Колонки складов в том же порядке, в "Формула" колонок функция Остаток(3) - с номером склада. Функция Остаток(НомерСклада=0) Если (НомерСклада=0) Тогда Возврат ""; КонецЕсли; Возврат СокрЛП(Формат( Регистр.ОстаткиТоваров.Остаток(ПромФирма,ТекущийЭлемент(),Склады[НомерСклада],"ОстатокТовара"), МойФормат)); КонецФункции Подторамаживает только если поставить без иерархии | |||
| 18
    
        Arbuz 23.01.25✎ 16:48 | 
        Прямой запрос по товару в "окне+" и кэширование — ничего не тормозит.     | |||
| 19
    
        Pit0n_08 23.01.25✎ 18:33 | 
        Прямым запросом всё получилось. Проверили на нескольких одновременно работающих пользователях - тормозов нет     | |||
| 20
    
        Pit0n_08 23.01.25✎ 18:35 | 
        (17) Думал об этом, но состав рабочих складов может изменяться и при большом их количестве может плохо читаться     | |||
| 21
    
        skafandr 24.01.25✎ 10:50 | 
        (20) "на ходу упрощаю" у нас реализована возможность выбора менеджером складов остатки по которым ему хочется видеть (из всех возможных). Это кстати существенно уменьшает нагрузку на систему 
 ;-) | |||
| 22
    
        Pit0n_08 29.01.25✎ 11:01 | 
        (21) Ну, клиент просит, чтобы было привычнее. Добавил флажок на форму списка и по нему показываютя сводные остатки на всех складах, либо прямым запросом на складах, с установленным признаком "Показывать остатки"     | |||
| 23
    
        Pit0n_08 29.01.25✎ 11:02 | 
        (21) + ну а кому надо по любимому складу - "Отчет по остаткам"     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |