Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
16 Янв 2018, 22:16
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: УПП Товары на складах  (Прочитано 6704 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн AlenkaInt

  • ****
  • Сообщений: 266
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2012-08-21
  • Сайт: 
  • Профессия: Программист 1С
Всем привет. Такая задачка. Есть типовой отчет в УПП, Товары на складах называется. Просят добавить группировку еще и по ответственному. Т.е. идут группировки - Номенклатура, Склад, Ответственный. Как это сделать проще и быстрее, править тот отчет который есть или сделать новый? Спасибо.


Оффлайн AlenkaInt

  • ****
  • Сообщений: 266
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2012-08-21
  • Сайт: 
  • Профессия: Программист 1С
Ответственный это тот, кто в документе-регистраторе. Через настройки не получается вывести группировку. Уже 3 человека пробовали.
Добавлено: 12 Апр 2013, 21:23

Если делаешь группировку по регистратору, то выводится группировка, а если выбираешь Документ движения (регистратор).Ответственный, то пусто.

Оффлайн SlazZy

  • ***
  • Сообщений: 149
  • РЕПУТАЦИЯ: 15
  • КПД: 10%
  • Регистрация: 2012-04-28
  • Сайт: 
  • Профессия: Программист 1С
есть подозрение, что всё дело в том, что ответственного нет в полях выборки запроса. Тк данные получаются из оборотов, причем по периодичности Авто, то отчет не позволяет сделать разыменование.

Так что можно попробовать добавить в запрос самого ответственого. Это собственно хорошая новость. Плохая это то, что разработчики 1с упоролись в край и несмотря на то, что у отчета есть схема СКД,он строится исключительно на универсальном отчете, причем весь код формируется динамически в модуле универсального отчета.

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

Либо можно взять готовую схему СКД из типового отчета и сделать на её основе другой отчет. Второй вариант мне кажется как-то эффективнее.

Оффлайн AlenkaInt

  • ****
  • Сообщений: 266
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2012-08-21
  • Сайт: 
  • Профессия: Программист 1С
Спасибо. Но дело было в том, что надо было выбирать 2 группировки и регистратор и Документ движения (регистратор).Ответственный.

Оффлайн SlazZy

  • ***
  • Сообщений: 149
  • РЕПУТАЦИЯ: 15
  • КПД: 10%
  • Регистрация: 2012-04-28
  • Сайт: 
  • Профессия: Программист 1С
Спасибо. Но дело было в том, что надо было выбирать 2 группировки и регистратор и Документ движения (регистратор).Ответственный.
хмм, блин это же логично :bleh:

Оффлайн Dethmontt

  • Денис
  • Модератор
  • *****
  • Сообщений: 2859
  • РЕПУТАЦИЯ: 546
  • КПД: 19%
  • Адын Эс
  • Регистрация: 2010-11-01
  • Сайт: 
  • Профессия: Программист 1С
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Оффлайн AlenkaInt

  • ****
  • Сообщений: 266
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2012-08-21
  • Сайт: 
  • Профессия: Программист 1С
Спасибо. Но задача оказалась немного другая. Нужен отвтественный по складу.

Оффлайн SlazZy

  • ***
  • Сообщений: 149
  • РЕПУТАЦИЯ: 15
  • КПД: 10%
  • Регистрация: 2012-04-28
  • Сайт: 
  • Профессия: Программист 1С
Ну, тогда возвращаемся к моему первому сообщению в этой теме :) так совпало, что я как раз недавно делал примерно такую же работу (добавлял в отчет, построенный на универсальном несколько полей). Разница в том, что в моем отчете весь запрос был написан в модуле отчета, а в данном отчете запрос формируется динамически.

Как это сделать я написал выше, в модуле отчета есть процедура УстановитьНачальныеНастройки, из него вызывается процедура
   
// Заполнение начальных настроек универсального отчета
УниверсальныйОтчет.УстановитьНачальныеНастройки(Истина);

После этой процедуры запрос уже сформирован и доступен через
УниверсальныйОтчет.ПостроительОтчета.Текст

Там есть(ну или должны быть) специальные комментарии такие как //СОЕДИНЕНИЯ

Вот эти комментарии можно через СтрЗаменить заменить на нужный вам код. Это конечно не так легко ибо писать придется всё вручную, но в общем-то реализуемо. В вашем случае надо сделать одно левое соединение с регистром сведений ответственные лица по Склад=СтруктурнаяЕдиница, на дату скорее всего конец периода, или начало - тут надо подумать что правильнее. И добавить этого ответственного в поля выборки и итоги, так же надо добавить во все поля, которые указаны в фигурных скобках.

Вот шаблон.
// Описание исходного текста запроса.
// При написании текста запроса рекомендуется следовать правилам, описанным в следующем шаблоне текста запроса:
//
//ВЫБРАТЬ
// <ПсевдонимТаблицы.Поле> КАК <ПсевдонимПоля>,
// ПРЕДСТАВЛЕНИЕ(<ПсевдонимТаблицы>.<Поле>),
// <ПсевдонимТаблицы.Показатель> КАК <ПсевдонимПоказателя>
// //ПОЛЯ_СВОЙСТВА
// //ПОЛЯ_КАТЕГОРИИ
//{ВЫБРАТЬ
// <ПсевдонимПоля>.*,
// <ПсевдонимПоказателя>,
// Регистратор,
// Период,
// ПериодДень,
// ПериодНеделя,
// ПериодДекада,
// ПериодМесяц,
// ПериодКвартал,
// ПериодПолугодие,
// ПериодГод
// //ПОЛЯ_СВОЙСТВА
// //ПОЛЯ_КАТЕГОРИИ
//}
//ИЗ
// <Таблица> КАК <ПсевдонимТаблицы>
// //СОЕДИНЕНИЯ
//{ГДЕ
// <ПсевдонимТаблицы.Поле>.* КАК <ПсевдонимПоля>,
// <ПсевдонимТаблицы.Показатель> КАК <ПсевдонимПоказателя>,
// <ПсевдонимТаблицы>.Регистратор КАК Регистратор,
// <ПсевдонимТаблицы>.Период КАК Период,
// НАЧАЛОПЕРИОДА(<ПсевдонимТаблицы>.Период, ДЕНЬ) КАК ПериодДень,
// НАЧАЛОПЕРИОДА(<ПсевдонимТаблицы>.Период, НЕДЕЛЯ) КАК ПериодНеделя,
// НАЧАЛОПЕРИОДА(<ПсевдонимТаблицы>.Период, ДЕКАДА) КАК ПериодДекада,
// НАЧАЛОПЕРИОДА(<ПсевдонимТаблицы>.Период, МЕСЯЦ) КАК ПериодМесяц,
// НАЧАЛОПЕРИОДА(<ПсевдонимТаблицы>.Период, КВАРТАЛ) КАК ПериодКвартал,
// НАЧАЛОПЕРИОДА(<ПсевдонимТаблицы>.Период, ПОЛУГОДИЕ) КАК ПериодПолугодие,
// НАЧАЛОПЕРИОДА(<ПсевдонимТаблицы>.Период, ГОД) КАК ПериодГод
// //ПОЛЯ_СВОЙСТВА
// //ПОЛЯ_КАТЕГОРИИ
//}
//{УПОРЯДОЧИТЬ ПО
// <ПсевдонимПоля>.*,
// <ПсевдонимПоказателя>,
// Регистратор,
// Период,
// ПериодДень,
// ПериодНеделя,
// ПериодДекада,
// ПериодМесяц,
// ПериодКвартал,
// ПериодПолугодие,
// ПериодГод
// //УПОРЯДОЧИТЬ_СВОЙСТВА
// //УПОРЯДОЧИТЬ_КАТЕГОРИИ
//}
//ИТОГИ
// АГРЕГАТНАЯ_ФУНКЦИЯ(<ПсевдонимПоказателя>)
// //ИТОГИ_СВОЙСТВА
// //ИТОГИ_КАТЕГОРИИ
//ПО
// ОБЩИЕ
//{ИТОГИ ПО
// <ПсевдонимПоля>.*,
// Регистратор,
// Период,
// ПериодДень,
// ПериодНеделя,
// ПериодДекада,
// ПериодМесяц,
// ПериодКвартал,
// ПериодПолугодие,
// ПериодГод
// //ПОЛЯ_СВОЙСТВА
// //ПОЛЯ_КАТЕГОРИИ
//}
//АВТОУПОРЯДОЧИВАНИЕ

Ну, либо используйте уже готовую схему СКД.

Оффлайн AlenkaInt

  • ****
  • Сообщений: 266
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2012-08-21
  • Сайт: 
  • Профессия: Программист 1С
А как это через СтрЗаменить заменить на новый текст? Я могу его только просматривать..


Теги:
 


* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
109 Сообщений
AIFrame
105 Сообщений
alex0402
30 Сообщений
kiksi
19 Сообщений
alexandr_ll
19 Сообщений
pavl_vs
19 Сообщений
andron81_81
16 Сообщений
Norfolk
15 Сообщений
BuhRust
13 Сообщений
LexaK
13 Сообщений

* Кто онлайн

  • Точка Гостей: 388
  • Точка Скрытых: 0
  • Точка Пользователей: 7
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal