Имеется отчет на СКД. Несколько детальных записей, группировок. Задал Для каждой группировки свой макет.
При выводе отчета между группировками автоматически вставляется пустая строка.

Задача: Убрать пустые строки между группировками

Сломал голову, облазил множество форумов.

Вывод один:
Убирать пустые строки программно. В обработчике события ОбновлениеОтображения формы отчета
вставил код:

 Таб = ЭлементыФормы.Результат;
 Таб.Очистить();
 ЭтотОбъект.СкомпоноватьРезультат(Таб);

 мсвПустыеСтроки = Новый Массив;
 Для Стр=1 По Таб.ВысотаТаблицы Цикл
  ЭтоПустаяСтрока = Истина;
  Для Кол=1 По Таб.ШиринаТаблицы Цикл
   Обл = Таб.Область(Стр,Кол);
   Если ЗначениеЗаполнено(Обл.Текст) Тогда
    ЭтоПустаяСтрока = Ложь;
    Прервать;
   КонецЕсли;
  КонецЦикла;
  Если ЭтоПустаяСтрока Тогда
   мсвПустыеСтроки.Вставить(0,Стр);
  КонецЕсли;
 КонецЦикла;

 Для Каждого Эл Из мсвПустыеСтроки Цикл
  Таб.УдалитьОбласть(Таб.Область(Эл,,Эл),ТипСмещенияТабличногоДокумента.ПоВертикали);
 КонецЦикла;

После этого отчет выводится как надо, без пустых строк между группировками
---
В настройке группировки где не нужны пустые заголовки, устанавливаешь отбор, "Имя группировки" <> пустоезначениеМетаданных (скд по умолчанию устанавливает это условие).
---
а группировку ты выбирал запросом ?? если да, то нужно посмотреть на текст запроса, може ты уже выбираешь данные с пустыми строками и все во лишь нужно подправить запрос
---
Не должно быть пустых строк. Глянуть бы на запрос твой, скорее всего в нем что-то не так.
---
На счет пустых строк в запросе - НЕТ, их нету. Проверял результат запроса в консоли запросов - нет пустых строк.
Запросы были самые разные, в результатах запросов НЕТ ПУСТЫХ СТРОК.
пустая строка при выводе отчета на СКД появляется независимо от запроса.
Пустая строка НЕ ЯВЛЯЕТСЯ строкой данных запроса. Она вставляется автоматически системой СКД между группировками.

Я не открывал велосипед, эта проблема давно известна.
На данную тему есть обсуждения на форумах, кому интересно, ГУГЛ в помощь.

Я предложил одно из решений данной проблемы. Это решение работает у меня и у других людей.

Решение достаточно кривое (ищутся и удаляются все пустые строки в форме, куда выводится запрос).
У меня в отчете, например, возникла необходимость удалять не все пустые строки (в СКД выводил данные с помощью своего макета), поэтому пришлось извращатся с условиями на поиск пустых строк (несколько первых строк не удалял).

У кого есть более изящное решение (более универсальное), прошу вас ответить.
---
На счет группировки - в запросе не делал группировок.

Группировки в СКД.
---
Спасибо тебе, добрый человек. Воспользовалась советом.
Сама облазила все, что могла, переделывала отчет разными способами, по-другому не получилось. Но тоже жду, может кто напишет более изящное решение.
---
В настройке группировки где не нужны пустые заголовки, устанавливаешь отбор, "Имя группировки" <> пустоезначениеМетаданных (скд по умолчанию устанавливает это условие).
---
5552007, добрый день, подскажите, а как сделать, так чтобы была возможность в отборе прописать Документ.НазваниеДокумента.ПустаяСсылка
а то мне выбрать только дает сам документ или поле компановки
---
bluntschi, сам документ без выбора. Это и есть пустая ссылка. шифт+ф4.
---
bluntschi,
В отборе компоновки данных, чтобы выбрать пустой документ нужного вида, достаточно в поле выбора выбрать вид документа и не заполнять поле.
Таким образом сравнение поля компоновки данных будет с пустым документом нужного вида.
---
Это частное решение, не работает в общем случае.
Я не так часто, но встречал подобные проблемы, когда СКД НЕ ЗАВИСИМО от хорошо написанного запроса вставляет пустые строки.
Нужно курить механизм изменения Запроса Системой СКД.
В отдельных случаях (МНОГОЭТАЖНЫЕ ЗАПРОСЫ) приходится ЗНАЧИТЕЛЬНО УПРОШАТЬ ЗАПРОС (Уплощать, переводить из пакетных запросов на вложенные!)

Так что подобная задача ЗНАЧИТЕЛЬНО НЕ ТРИВИАЛЬНАЯ как кажется новичкам.
Попробуйте, для примера, подобную задачу решить в случае 30 этажного ПАКЕТНОГО запроса вычисления себестоимости товаров.
Это задача достаточно ТЯЖЕЛАЯ, не сложная, а кропотливая.

ТАк что в этом вопросе нет универсальных решений, все решает опыт.
---
недавно обнаружил что нулевые записи можно убрать используя не объединить, а через разные наборы!
---
Самое изящное решение - изучать СКД. СКД это великая вещь! Все элементарно настраивается в отборах. Респект 5552007 за хороший ответ.
---
corelius, СКД далеко не такой изящный инструмент как кажется.
Разработчики 1с постарались, но есть множество отчетов, которые средствами СКД не построить в принципе.

СКД - это рабочий интрумент, как и любой инструмент, у него есть свои ограничения.
Другое дело если бы СКД позиционировали как комплекс инструментов, охватывающих от и до весь процесс разработки отчетов, но это было бы слишком круто и дорого.

1с ленивые (точнее сказать жадные). Они СКД недоделали (до комплекса инструментов по разработке отчетов) по той причине, что это для них слишком дорого и затратно.

Зато они радостно вопят на каждом углу что СКД мощно и круто и наценивают свою 1с с дикой накруткой. Это все реклама и маркетинг.

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

Что касается "универсальности" - это сильно загромоздило неудобный интерфейс и инструмент помощи разработчику превратился в монстра. Чтобы что-то настроить нужно закликивать до умопомрачения и разбиратся в связях каждого элемента интерфейс-монстра.

1с пошли по пути коммерции, раскрутки, саморекламы. Удобный и мощный по-задумке инструмент они превратили в красивое гламурное, но очень громоздкое средство рекламы 1с 8.

1с могли пойти по-другому пути (помощи ОПЫТНОМУ разработчику) и сделать НАБОР инструментов без гарантии результата, для помощи при разработке отчета. Такой вариант вполне устраивает программистов с головой, которые разбираются в коде и которым не важен внешний вид инструмента. Важна степень помощи и время, сокращенное при разработке благодаря инструменту. В этом плане СКД сильно проигрывает народным средствам ("народное СКД")
---
А простой отбор по пустым строкам почему не подходит?
---
Если там значение null, то можно выбрать на вкладке Наборы данных -> Роли : поставить галку "Игнорировать значение null"
---
Так же учит Белоусов! Спасибо за ответ!
---
мне помогло спасибо
Наборы данных -> Роли : поставить галку "Игнорировать значение null"
---
и шо, никто не решил траблу Петра???
---
Сергей, прошу больше не выражаться. Я вас не знаю, и не потерплю фамильярностей в моем отношении. Это раз.
Эта проблема уже давным давно решена (на дворе 2016 год).
С тех пор я из детских штанишек давно вырос, и подобные проблемы каждый день пачками решаю легко и непринужденно.
Собственно, это даже не проблема а пшик. Опытный программист легко обойдет.
Она решается просто. Решений куча в инете, могу найти описание подробнейшие.
Если кому понадобиться, дам ссылку.
НЕ вижу смысла флудить решениями, если они уже многократно описаны.
---
Извиняюсь, за фамильярность. ( слово "трабла" - это такой жаргон, переводится как "проблема", то есть я писал "проблема" Имя).

Если Вам не сложно, тыкните в "подбробнейшее описание".
На моем примере - запрос выводит записи, нет никаких пакетов и сложных соединений.

П.С. Да, на дворе скоро 2017 год, но не все используют новые платформы.
---
Петр, подскажите пожалуйста как Вы решили проблему пустых строк в отчете СКД. У меня простейший отчет карточка счета на СКД со своим макетом и почему то между группировками есть пустые строки. Вариант с редактированием итоговой таблицы это на крайний случай. Может есть вариант изящнее?
---
Хороший вопрос, Игорь.
С тех времен, как был открыт пост (2011) разработчики 1с видимо успешно решили данный вопрос.
В новых версиях платформы (я щас работаю на 1с 8.3.10.2375) эту траблу решили. На данный момент, СКД выводит группировки без пробелов (я по крайней мере не встречал отчетов где есть пробелы в последние года).
Может я и не прав, если у вас все еще эта проблема встречается, просьба сообщить:
1. Версию платформы
2. Скриншот
Если хотите, чтобы я подумал чем могу помочь, просьба выложить отчет и версию конфигурации в которой запускаете, я попробую воспроизвести и поразмыслю над причинами.

И попробуйте установить платформ не ниже указанной у меня 8.3.10.2375. Если исчезнут пробелы между группировками, значит 1с это дело исправило в текущих релизах.
---
Не работает
 Платформа 8.3 (8.3.14.1630)

(21)
---
Оживлю немного тему, ибо тоже потратил время на решение этого вопроса.
Достаточно создать пустую группировку детальных записей с отключенными авто-полями и к ней уже дочерними группировками добавлять произвольные группировки, которые должны идти вместе, с одной шапкой и без промежутков между ними.
Далее, на закладке Макеты создаём макеты группировок (Добавить макет группировки ) с типом Заголовок для всех группировок, включая Шапку.
Получаем единую таблицу с общей шапкой и единой структурой.
Надеюсь это сэкономит кому-нибудь время и нервы ))
---
Я тоже потратила много времени на решение этого вопроса.
Жаль, что Ваш пост увидела после, а не до.

Всем, у кого похожая проблема - обратите внимание на 22-й комментарий.
---
Спасибо тебе, добрый человек!
---
Спасибо автору комментария. Тоже потратил достаточно много времени на поиск данного решения.
---
Спасибо тебе, добрый человек!!!
---
У меня такая же проблема в отчете расчет с клиентами выводятся пустые строки, как убрать строки где в поле долг конечный остаток является пустым
---
В сообщении (22) содержится ответ. Главное чтобы группировки были вложены хоть в одну какую-нибудь группировку (можно считать ее шапкой группировок) как в упомянутом мной сообщении. Автополя можно не выключать.
---
Сделал, к сожалению все подсказки не помогли , сам додумался , не програмно, без автополей
---
тот же вопрос
отчет обычный как убрать пустые строки с отчета
формируется отчет по справочнику
структура
реквизит
родитель
наименование

убрать нужно вывод отдельно
пустой группы со всеми родителями
---
В статье описано простое решение. Вы его попробовали? Вы попробовали другие способы, предложенные в комментариях. Вы их попробовали? Если у вас КОНКРЕТНЫЙ вопрос, опишите что у вас не получилось, на какой версии платформы, при каких условиях, приложите обработку или отчет с примером вашего кода. Какой вопрос такой и ответ.
Если вы желаете получить помощь, разворачивайте полно ваш вопрос и приложите некоторые усилия, чтобы я вас понял, что вы хотите.
---
slavko_ku, как Вы убрали?
---
На мой взгляд, все подробно расписано по шагам. И в самом коде все расписано. Далее в комментариях описано изменение решения проблемы с течением времени. В более новых версиях платформы данная проблема была решена разработчиками. Если у вас старая версия, попробуйте на практике те способы решения, которые были предложены в рамках данной статьи и в комментариях.
Если у вас не получается, конкретизируйте ваш вопрос.
Я тоже могу задать вам общий вопрос: "А почему вы не убрали? А почему не получилось? А какая версия платформы? А какой отчет? А не предоставите ли ваш код, способы его проверки, сколько раз проверяли, при каких условиях?"
---
Мне помог 14 комментарий. Одна галочка в роли и нет проблем.
---
Респект тебе, добрый человек! Весь день голову ломал. Положил в копилку