Здравствуйте!
Есть отчет на СКД на УФ, в котором есть колонки, день1, день2 и т.д.
Эти колонки заполняются произвольными цифрами. Подскажите, пожалуйста, как средствами скд подсчитать количество заполненных колонок?
Спасибо.
(3) Не так все очевидно. :) Возможно автору нужно посчитать не количество заполненных ячеек в таблице, а именно колонок (т.е. хотя бы одна ячейка колонки заполнена). Плюс не понятно, где именно эта информация должна отображаться.
(5) ну ждите настройки, я не против
количество решений конечно
1. добавить поле счетчика в запрос, но это ущербно, т.к. по группировкам могут быть не верны итоги;
2. добавить вычисляемое поле в схему СКД, что лучше п.1. и для фиксированных настроек прокатит, но тоже ущербно;
3. добавить пользовательское вычисляемое поле в логике примерно как я указал.
..
n. более ущербные варианты возбужденных умов.
Я сейчас попробовал такой вариант с вычисляемым полем. Указал выражение
(Выбор Когда ЗначениеЗаполнено(День1) Тогда 1 Иначе 0 Конец) + (Выбор Когда ЗначениеЗаполнено(День2) Тогда 1 Иначе 0 Конец) + (Выбор Когда ЗначениеЗаполнено(День3) Тогда 1 Иначе 0 Конец) + (Выбор Когда ЗначениеЗаполнено(День4) Тогда 1 Иначе 0 Конец) + (Выбор Когда ЗначениеЗаполнено(День5) Тогда 1 Иначе 0 Конец) + (Выбор Когда ЗначениеЗаполнено(День6) Тогда 1 Иначе 0 Конец) + (Выбор Когда ЗначениеЗаполнено(День7) Тогда 1 Иначе 0 Конец) + (Выбор Когда ЗначениеЗаполнено(День8) Тогда 1 Иначе 0 Конец) + (Выбор Когда ЗначениеЗаполнено(День9) Тогда 1 Иначе 0 Конец) + (Выбор Когда ЗначениеЗаполнено(День10) Тогда 1 Иначе 0 Конец) + (Выбор Когда ЗначениеЗаполнено(День11) Тогда 1 Иначе 0 Конец) + (Выбор Когда ЗначениеЗаполнено(День12) Тогда 1 Иначе 0 Конец) + (Выбор Когда ЗначениеЗаполнено(День13) Тогда 1 Иначе 0 Конец) + (Выбор Когда ЗначениеЗаполнено(День14) Тогда 1 Иначе 0 Конец) + (Выбор Когда ЗначениеЗаполнено(День15) Тогда 1 Иначе 0 Конец)
Реализация отвратительная, я это понимаю. Но день1 ... день15, конкретные реквизиты табличной части. Можно ли как-то уменьшить данный код?
Спасибо.
Спасибо за подсказку, я Вам очень признателен, но даже, если Вам кто-то из участников испортил настроение нет никакой нужны хамить, буду говорить за себя, мне лично, потому что мне необходимо было подсказать решение или направление решения, а не что и где включать. Надеюсь мои слова вы воспримите правильно. Спасибо.
(20) Я совершенно не хочу дискутировать на данную тему, т.к. я считаю иначе, и совершенно незнакомым людям "практичные советы" нужно давать в более корректной форме и, если они об этом попросят. Но я пока не встречал людей, которые просили бы совет по включению мозга )))
ВЫБРАТЬ
ТабельСписок.ФИО.Код КАК ФИОКод,
ТабельСписок.ФИО КАК ФИО,
ТабельСписок.ФИО.Должность КАК ФИОДолжность,
СУММА(ТабельСписок.День1) КАК День1,
СУММА(ТабельСписок.День2) КАК День2,
СУММА(ТабельСписок.День3) КАК День3,
СУММА(ТабельСписок.День4) КАК День4,
СУММА(ТабельСписок.День5) КАК День5,
СУММА(ТабельСписок.День6) КАК День6,
СУММА(ТабельСписок.День7) КАК День7,
СУММА(ТабельСписок.День8) КАК День8,
СУММА(ТабельСписок.День9) КАК День9,
СУММА(ТабельСписок.День10) КАК День10,
СУММА(ТабельСписок.День11) КАК День11,
СУММА(ТабельСписок.День12) КАК День12,
СУММА(ТабельСписок.День13) КАК День13,
СУММА(ТабельСписок.День14) КАК День14,
СУММА(ТабельСписок.День15) КАК День15,
ТабельСписок.Тариф КАК Тариф,
ТабельСписок.ЗарплатаПоТарифу КАК ЗарплатаПоТарифу,
ТабельСписок.ДатаДок КАК ДатаДок
ИЗ
Документ.Табель.Список КАК ТабельСписок
ГДЕ
ТабельСписок.ДатаДок = &ДатаДок
СГРУППИРОВАТЬ ПО
ТабельСписок.ФИО,
ТабельСписок.ФИО.Код,
ТабельСписок.ФИО.Должность,
ТабельСписок.Тариф,
ТабельСписок.ЗарплатаПоТарифу,
ТабельСписок.ДатаДок
УПОРЯДОЧИТЬ ПО
ФИО