gifts2017

ТиС 7.7: Остатки ТМЦ в колонках по фирмам

Опубликовал tAndy (tandy82) в раздел Отчеты - Управленческие

Отчет показывает остатки по ТМЦ в колонках по фирмам

Работает на стандартной ТиС 7.7.

Написано для организации с большим количество фирм.

Элементарный отчет, может, кому будет полезным.

Скачать файлы

Наименование Файл Версия Размер
- 272
.1249895145 37,00Kb
25.09.09
272
.1249895145 37,00Kb Бесплатно

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Епрст (Ёпрст) 10.08.09 15:37
Весьма странный код..

-Зачем 2 раза выполнять запрос ?
-Чем обычная ведомость по остаткам не угодила ?
-Зачем 2 раза Группировка Фирма в тексте запроса ?
-Про Все ВошедшиеВЗапрос знаем ?

Итого - в топку.

Если (Наим.ПринадлежитГруппе(Наимен)=1) Тогда
{.. .\ОСТАТКИПОФИРМАМ.ERT(48)}: Значение не представляет агрегатный объект (ПринадлежитГруппе)
2. Епрст (Ёпрст) 10.08.09 15:38
+1 Весьма странный фильтр.. гораздо проще типовой отчет переделать для разворота "направо" по любой группировке... там и МФ есть и настройка группировок и т.д.
3. tAndy (tandy82) 10.08.09 18:50
Не спорю код может и не самый оптимальный. Все придет с опытом.
На гениальность не претендую.

Что значит "Итого - в топку" вроде все верно считает ?
А ошибка в модуле при выборе какого поля появилась ?
4. tAndy (tandy82) 10.08.09 19:15
Что касается запросов:
1 запрос для того чтобы вывести названия фирм в шапку отчета
2 запрос собственно для формирования данных

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

Если бы не требовалось собирать итоги по группам номенклатуры, то тогда не было необходимости в использовании ТЗ и можно было бы воспользоваться Все ВошедшиеВЗапрос

5. Епрст (Ёпрст) 11.08.09 13:57
(4) Ты не поверишь, но умею.. И за 2 раза выполнить один и тот-же запрос - уволил бы к едрени фени.

И сбор данных в ТЗ - не нужен. И таким способом как у вас вытягивать всю иерархию - не надо, это умеет сам запрос.
И итоги в разрезе колонок фирмы - сделает вам тоже сам запрос.
6. Епрст (Ёпрст) 11.08.09 13:58
+5 ОДИН ... достаточно переделать ШТатную ведомость по останкам.. для разворота Направо.
Добавив только Все ВошедшиеВЗапрос в группировку по фирме и вывод секций.. и всё.

7. Епрст (Ёпрст) 11.08.09 14:02
Да, на будующее.. Посмотрите, что возвращает метод ПолноеНаименование().. будет вам еще очередное открытие..
8. tAndy (tandy82) 12.08.09 10:44
Если вы мне подскажите, как получить итоги по группам номенклатуры в разрезе колонок Фирм через запрос, я буду очень вам благодарен. Еще раз посмотрел документацию и штатные обработки. Не могу понять как это можно сделать без ТЗ.

По поводу ПолноеНаименование() - скажу честно не знал, написал свой вариант.
Теперь знаю, спасибо.
9. Епрст (Ёпрст) 12.08.09 11:31
(8) посмотрите штатную ведомость по остаткамТМЦ в ТиСе ..там всё есть.. и итоги по группам в том числе.
Разница лишь в выводе "вниз" а не в "право"...
10. Епрст (Ёпрст) 12.08.09 19:07
+9 Без ТЗ - Группировка Фирма Все ВошедшиеВЗапрос и привет..
+ 1 раз выполняешь запрос + 2 раза обходишь группировку фирма:

один раз для формирования шапки, второй раз - при формировании всей таблицы..

Обходить несколько раз полученный набор данных из запроса и выполнять один и тот же запрос несколько раз - 2 разные разницы.
11. tAndy (tandy82) 12.08.09 19:21
Ёпрст прочтите еще раз мое сообщение (8). Я уже посмотрел отчеты ТиС: «Остатки ТМЦ» и «Ведомость по остаткам ТМЦ»
Мне вот интересно вы хоть сами то их смотрели? или так просто написали к слову…

В отчет «Ведомость по остаткам ТМЦ»
По группе номенклатуры не выводит итоги по складам (только элементам).
Используется рекурсивный вызов процедуры ВывестиГруппировку(), в которой по порядку перебираются все выбранные в отчет группировки. Это отчет не выводит итогов по группам элементов номенклатуры в разрезе группировки Фирмы.

Отчет «Остатки ТМЦ» действительно выводит итоги по группам номенклатуры в разрезе колонок Складов, но что мы видим в модуле - отчет полностью построен на первоначальном накоплении данных в ТЗ и последующем выводе этих данных на экран. Есть даже процедура РассчитатьИтогиПоГруппам(), которая опять таки накапливает данные в ТЗ.
Запрос выполняется один раз но, по нему проходятся два раза:
1ый раз когда формируется заголовки шапки
2раз при помощи команды Запрос.ВНачалоВыборки() когда собираются данные в ТЗ

По поводу вашего сообщения (4). Если вы посмотрите мой отчет. Запрос действительно выполняется 2 раза. Но если вы еще внимательней посмотрите на него, то увидите что там выполняется 2 разных запроса. Первый запрос выполняется по одной группировке, второй запрос по двум.
Так что следи за своим языком… уволил бы он меня... и ведите себя культурно. Мало того что вы неуважительно относитесь к чужой работе, так еще и других людей вводи в заблуждение… Собственно из за вас весь это флейм на ветке с моей программой образовался.

Ваше стремление повернуть Отчет "Ведомость по остаткам ТМЦ" не поддается никакой логике. Проще уж переделать отчет "Остатки ТМЦ", там достаточно изменить название группировки "Склад" на "Фирма" по тексту модуля.
12. tAndy (tandy82) 12.08.09 19:22
Ёпрст надеюсь у вас хватит смелости признать что вы были не правы и получить итоги по группам элементов 1ой группировки в разрезе 2ой группировки не возможно без использования ТЗ.

Если вы это можете сделать в один запрос без использования ТЗ, как вы утверждаете это в сообщении (4), то докажите это?
13. tAndy (tandy82) 12.08.09 19:46
(10) я так понимаю вы запрос видите следующий:
Номенклатура = Регистр.ОстаткиТМЦ.Номенклатура;
Фирма = Регистр.ОстаткиТМЦ.Фирма;
Группировка Номенклатура;
Группировка Фирма Все ВошедшиеВЗапрос;

Каким же образом по группе элементов из группировки Номенклатура вы получите итоги по группировке Фирмы? Это запрос выведет:

НаименованиеТМЦ Фирма1 Фирма2
-------------------------------------------------------------
Группа
Элемент Значение11 Значение21
Элемент Значение12 Значение22

Для строки Группа1 он не выведет итогов по Фирма1 и Фирма2, которые должны быть Фирма1= Значение11+Значение12 и Фирма2 = Значение21+Значение22. Или вы утверждаете обратное. В 1с откройте данный запрос, посмотрите его результат…
14. Епрст (Ёпрст) 12.08.09 19:49
(12) Не надо меня тут на слабо разводить...
(13) конечно нет.

15. tAndy (tandy82) 12.08.09 20:04
(14) причем тут ваше слабо, вы сослались на типовые отчеты из ТиС. У меня получение итогов сделано подобный образом.
Объясните как можно сделать это по другому. Ответье за свои слова в сообщении (5)...
16. Анжелика Кузнецова (Anjelikast) 25.08.09 13:48
в отчете к номенклатуре желательно добавить и артикул
17. tAndy (tandy82) 20.11.09 12:03
Прошло время, много времени, да и я уж было все забыл и занялся другими делами. Ан нет столкнулся опять с задачей получения итогов по группам первой группировки в разрезе элементов второй группировки,
а Ёпрст так и молчит, видимо он посчитал что ответ (14) всех устраивает...
сдулся дядя, а может надулся от своего самомнения... больше вони было...

Видимо все таки СЛАБО и по другому сделать нельзя! ;)
Жду ответа...
18. Владимир Б (antares_of) 15.04.13 14:17
А в отчете имеется возможность выводить таблицу свернутую по фирмам. Так чтобы только итого было по номенклатуре, без фирм и без складов. Если нет подскажите плиз где такой есть)
19. 1с7.7 1с8.2 (1c8.2) 28.10.14 13:16
у меня фирмы не выводит. Что можно исправить или посмотреть ?
20. tAndy (tandy82) 29.10.14 09:17
(19) 1c8.2,
какая у вас конфигурация ?
21. Юленька (s_uu) 02.12.14 23:23
Очень нужный отчет, спасибо. А недовольных критиканов прошу приводить конструктивную критику и без оскорблений автора.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа