• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

СКД. Ошибка процессора компоновки.

  • Автор темы unknown181538
  • Дата начала
U

unknown181538

Дорабатываю в БП типовой отчет "Продажи" (Вызывается из панели функций).
Заменил типовой запрос к бух. оборотам своим запросом к документам.
В результате, при выводе отчета на строке "ПроцессорКомпоновки.Следующий()" 1С "падает".
В схеме компоновки один "набор данных - объект".
Результат запроса старался сделать похожим на типовой.
Куда копать, есть у кого-нибудь мысли?
 
U

unknown181538

Исходный текст запроса:
Код:
Запрос.Текст = 
"ВЫБРАТЬ РАЗРЕШЕННЫЕ
|	""+"" КАК Знак,
|	Доходы.СуммаОборотКт КАК Сумма,
|	Доходы.Субконто1 КАК НоменклатурнаяГруппа,
|	Доходы.Период КАК Период,
|	Доходы.Счет КАК Счет,
|	Доходы.КорСчет КАК КорСчет,
|	""Кт"" КАК БухВидРесурса
|ИЗ
|	РегистрБухгалтерии.Хозрасчетный.Обороты(&НачалоПериода, &КонецПериода, Месяц, Счет В ИЕРАРХИИ (ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.Выручка)), , Организация = &Организация И " + УсловиеСубконто + ", , ) КАК Доходы
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
|	""-"",
|	-НДС.СуммаОборотДт,
|	НДС.Субконто1,
|	НДС.Период,
|	НДС.Счет,
|	НДС.КорСчет,
|	""Дт""
|ИЗ
|	РегистрБухгалтерии.Хозрасчетный.Обороты(&НачалоПериода, &КонецПериода, Месяц, Счет В ИЕРАРХИИ (ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.Продажи_НДС)), , Организация = &Организация И " + УсловиеСубконто + ", , ) КАК НДС";

Мой код:
Код:
		Запрос.Текст = 
"ВЫБРАТЬ
|	""+"" КАК Знак,
|	РеализацияТоваровУслугТовары.Номенклатура КАК НоменклатурнаяГруппа,
|	НАЧАЛОПЕРИОДА(РеализацияТоваровУслугТовары.Ссылка.Дата, ДЕНЬ) КАК Период,
|	РеализацияТоваровУслугТовары.СчетДоходовБУ КАК Счет,
|	РеализацияТоваровУслугТовары.СчетРасходовБУ КАК КорСчет,
|	""Кт"" КАК ВидБухРесурса,
|	РеализацияТоваровУслугТовары.Сумма КАК Сумма
|ИЗ
|	Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
|ГДЕ
|	РеализацияТоваровУслугТовары.Ссылка.Дата МЕЖДУ &НачалоПериода И &КонецПериода
|	И РеализацияТоваровУслугТовары.Ссылка.Организация = &Организация
|ИТОГИ
|	СУММА(Сумма)
|ПО
|	Период ПЕРИОДАМИ(ДЕНЬ, &НачалоПериода, &КонецПериода)"

Если убрать секцию
Код:
|ИТОГИ
|	СУММА(Сумма)
|ПО
|	Период ПЕРИОДАМИ(ДЕНЬ, &НачалоПериода, &КонецПериода)"
, то ошибка не возникает, однако, и группировка не происходит.
Видимо неправильно описываю итоговую секцию...
 
U

unknown181538

Найлло , спасибо.
Впрочем, я как раз сам разобрался. Убрал итоги, добавил группировки - все заработало.
Правда, сейчас я не понимаю, зачем конструкция с итогами может быть использована.
 
G

Guest

Видимо там, где явно не выбирается период. Хотя СКД не люблю и точно сказать не могу.
 
E

evgenyatam

Правда, сейчас я не понимаю, зачем конструкция с итогами может быть использована
группировка - очень жесткая конструкция, если хоть одно поле не участвует в группировке или в вычислении - запрос работать не будет.
итоги же наоборот мягкая конструкция. то-есть могут быть поля которые не участвуют в группировке и по ним не вычисляются итоги.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!