Остатки по нескольким складам в списке подбора. #387298


#0 by miron16
Можно ли в списке побора справочника Номенклатура выводить остатки по нескольким складам? Если да, то как это реализовать?
#1 by ДенисЧ
А как ты выводишь остаток по одному складу?
#2 by miron16
сейчас я никак не вывожу, просто надо учесть что этот склад будет не один... нагрузка на базу - примерно 150 пользователей
#3 by ДенисЧ
150 пользователей и онлайн расчёт остатков на 77 - тут даже вазелин не поможет.
#4 by Guk
юзай кнопочку Остатки, как в типовой ТиС. иначе твои пользователи попрощаются со справочником Номенклатура...
#5 by miron16
мне больше интересует механиз отображения остатков именно в колонках в списке номенклатуры!!! как по кнопочке это сделать это понятно...но не так наглядно
#6 by Sadovnikov
Вазелин не поможет. А вот прямые запросы - еще как.
#7 by Мулька
Ниче не понял. Каким боком к-во юзеров к остаткам. Вместо определенного субконто в запрос- список. Ну и не 2, а 1 - разворачивать
#8 by ДенисЧ
Самый простой - колонка с функцией расчёта. онлайн при 150 зверях? Сильно сумлеваюсь.
#9 by Мулька
А с чего ты взял, что у него ТиС?
#10 by miron16
ТиС!!!!
#11 by miron16
ДенисЧ Самый простой - колонка с функцией расчёта.  - очень медленно!!!
#12 by Sadovnikov
Зря сомневаешься.
#13 by ДенисЧ
А это уже зависит от реализации функции расчёта :-) Опыт есть.
#14 by Дядя Васька
Текст на форму выведи, с функцией расчета. Вполне наглядно, и без тормозов.
#15 by miron16
нужно не на форму а именно в колонки!!!
#16 by Дядя Васька
На 150 зверей не советую.. Съедят...
#17 by Guk
Только что сделал тест: Остаток 1С: 52.6  Время: 4 Остаток SQL: 52.6  Время: 5 Остаток 1С: 52.6  Время: 3 Остаток SQL: 52.6  Время: 5 Остаток 1С: 52.6  Время: 4 Остаток SQL: 52.6  Время: 6 Остаток 1С: 52.6  Время: 4 Остаток SQL: 52.6  Время: 6 Остаток 1С: 52.6  Время: 4 Остаток SQL: 52.6  Время: 6 Остаток 1С: 52.6  Время: 4 Остаток SQL: 52.6  Время: 5 Остаток 1С рассчитан через Сводный остаток, Остаток SQL рассчитан через прямой запрос с использованием виртуальной таблицы остатков регистра в 1С++. Где выигрыш?...
#18 by Sadovnikov
У меня тоже есть :) Пора для себя открыть функции :)
#19 by Guk
Открой для меня. В доке не нашел...
#20 by Дядя Васька
Для столбца не думаю что сильно поможет. Там проблема не во времени выполнения запроса, а в их количестве. Пока юзер справочник крутит, по каждому товару по запросу фигачит. Так как большую часть времени все активные пользователи именно этим и занимаются, сервак они нагрузят мама не горюй.
#21 by Sadovnikov
В смысле? В какой доке? Есть про них все в BOL. CREATE FUNCTION и далее по тексту. И не использовать виртуальные таблицы.
#22 by AcaGost
Заведи справочник ПОДБОРА и сливай туда товар, имеющийся в наличии
#23 by Guk
Так а внутри функции то что будет? То же что в отладке дает виртуальная таблица?...
#24 by Дядя Васька
Т.е. если пользователей мало, по справочнику они поползут быстрее, и все равно будет стопроцентная загрузка в рамках выеделенных под сессию. Когда их 150, и хотя бы треть этим занимается постоянно, сервак они моментально вешают, и опять же начинаются у всех тормоза.
#25 by Sadovnikov
Согласен, что запросов получится много. Но и работает оно прекрасно. Сейчас посчитал максимальное количество рассчетных колонок в справочнике в нашей базе - 11. По разным регистрам. В базе трудится в среднем 80 человек. Все летает.
#26 by Дядя Васька
Еще вопрос сколько из 80 активных...
#27 by Sadovnikov
Например, такое:    |CREATE FUNCTION " + ИмяРегистра + "ОстатокТовар(@ДатаТА char, @ИдТовар Char) Returns Numeric(19,3)
#28 by Guk
Можешь привести пример расчета хотя бы одного столбца, допустим по остаткам?...
#29 by Sadovnikov
Все, блин... Они в день по 4-5 тысяч документов заколачивают. И отчеты вечно гоняют.
#30 by Дядя Васька
Ну на ТА-то любой дурак может :) Хотя кстати с расчетом разница не большая почему-то. Один мой мегадок на 10000 движений на ТА проводится 16 сек, а задним числом 20...
#31 by miron16
а как это выводится в колонки??? ещё проблема что зачастую пользователь отключает иерахию...в базе около 10 тысяч номенклатуры
#32 by Sadovnikov
Э нет... Остатки в форму списка справочника не на ТА пусть кто-нибудь другой выводит...
#33 by FN
А в чем отличие (в частности в скорости) между вариантом из и скалярным запросом из 1Cpp?
#34 by Guk
Можешь тестануть на сколько это быстрее сводного остатка?...
#35 by Дядя Васька
Запросы только по тем что на экране идут, за иерархию не парься. А выводится штатно.
#36 by Sadovnikov
План запроса каждый раз не компилится, а берется готовый. Щас сделаем.
#37 by Дядя Васька
Ну а какой смысл? Лезут подправить док сделанный час назад, и видят совершенно не ту картину, которая была на документ.
#38 by AcaGost
->
#39 by Sadovnikov
. Результат: Сводный остаток: 222
#40 by Sadovnikov
" видят совершенно не ту картину, которая была на документ" - и правильно. Ситуация-то изменилась. Хотя, здесь, конечно, можно долго спорить и не придти к одному мнению.
#41 by miron16
Sadovnikov - в ячейке вызывать эту процедуру???
#42 by Guk
Пример Садовникова еще раз доказывает, что даже применяя 1С++, всё равно всё приходится делать через анус ;)...
#43 by Sadovnikov
Измерения в делал на своем компе на небольшой базе. Вот замер на реальной базе (размер базы 44 гига, в этот момент в ней трудилось 70 пользователей) :
#44 by Sadovnikov
Да. А еще лучше - свою форму справочника нарисовать на табличном поле. Эт почему??
#45 by Guk
Потому что слишком всё нетривиально...
#46 by Sadovnikov
Где нетривиально? :)
#47 by Guk
Ну допустим для меня, человека который видит 1С++ пятый день, совершенно нетривиально. Я думал получу удобный, простой, мощный инструмент, а получил, судя по твоему коду, приблизительно то же самое, что имел в 2000 году, когда писал прямые запросы из 1С через ДМО. А мощные инструменты 1С++ типа виртуальных таблиц, работают с такой же или меньшей скоростью, чем стандартные средства 1С...
#48 by Sadovnikov
Инструмент, действительно, "удобный, простой, мощный". Но знание T-SQL при этом никто не отменял :) Покажи, на каком запросе ты эксперименты ставил?
#49 by Guk
ТекстЗапроса="
#50 by Sadovnikov
Офигеть :) Зачем если    Номенклатура=:ВыбТовар AND Фирма=:ВыбФирма ?
#51 by Guk
Фиг знает. Из доки выдергивал...
#52 by Guk
+ Убрал. Стало вот так: Остаток 1С: 52.6  Время: 4 Остаток SQL: 52.6  Время: 6 Остаток 1С: 52.6  Время: 4 Остаток SQL: 52.6  Время: 5 Остаток 1С: 52.6  Время: 3 Остаток SQL: 52.6  Время: 6 Остаток 1С: 52.6  Время: 3 Остаток SQL: 52.6  Время: 6...
#53 by Guk
+ сильно повлияло...
#54 by Sadovnikov
Это что за дока такая? Может, все-таки чего-то перепутал? Я вот такую функцию гонял:
#55 by Sadovnikov
Так ты при каждом вызове заставляешщь метапарсер напрягаться и скуль приходтся каждый раз план запроса строить. Сделай функцию и сравни.
#56 by Sadovnikov
Нифига я граматических ошибок наделал... :(
#57 by Guk
во,во... и в доке такие же примеры ;)...
#58 by Sadovnikov
А давай считать это тестом на профпригодность? :) Типа, понял доку - первый дан!
#59 by Guk
Ну то что мне запрос хоть что-то выдал, это значит уже первый дан. Вот так вот с ходу с сайта 1Срр скачать что-то 100%-но работающее, по крайней мере мне не удалось...
#60 by Sadovnikov
Это ты зря... Скачивай, например, из раздела Репозитарий.
#61 by Guk
Попробую. Я так и не понял, почему за столько лет существования ВК, не нашлось ни одного человека, который доку по этой ВК смог бы собрать в одном месте. Так и приходится знания из разных мест дергать. Что-то из снм, что-то из вордовой доки, что-то из статьи на сайте...
#62 by povar
сделай (с) "ВР"
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С