С виду простой вопрос по СКД #779040


#0 by ghostishe
Всем привет. Пожмогите, плз, с задачкой: есть непериодический независимый РС. В нём три измерения. Одно ссылочного типа "Справочник.Контрагенты", другие - перечисления "СтавкиНДС" (10, 18, 0) и "ДеньМесяца". Ресурсов нет. Это начальные условия. их менять нельзя. Периода нет. День месяца - это просто перечисление из 31 элемента. Необходимо построить отчет вида: По вертикали дни месяца (все 31). По горизонтали Контрагент. СтавкаНДС должна быть на пересечении Контрагента и Дня. Я добавил ее (ставку НДС) в ресурсы. Выражение равно самому полю. Не минимум, максимум, количество различных, а просто СтавкаНДС. При выводе получаю "лесенку"            01       02       03 Клиент1 Ставка10 Должно быть 2 строки.            01       02       03 Клиент1 Ставка10 Ставка10 Клиент1 Ставка18 Вопрос: как реализовать? С виду просто. Но СКД делает "Лесенку" и добавляет еще одну строку.
#1 by Рэйв
я плакалъ...перечисление из 31 элемента....
#2 by f_vadim
>> День месяца - это просто перечисление из 31 элемента. серьёзно?
#3 by Рэйв
Шедевр чо:-)
#4 by Рэйв
такого я еще ПРАВДА не видел:-)
#5 by Fragster
добавь по горизонтали не детальные записи, а группировку по контрагенту
#6 by f_vadim
>>есть непериодический независимый РС. В нём три измерения. Одно ссылочного типа "Справочник.Контрагенты", другие - перечисления "СтавкиНДС" (10, 18, 0) и "ДеньМесяца". Ресурсов нет. Это начальные условия. их менять нельзя. Периода нет. День месяца - это просто перечисление из 31 элемента. вот это вот всё... всё вот это... очень пятнично
#7 by Fragster
можжет тестовое задание такое
#8 by Fragster
и там может не "перечисление", а число
#9 by f_vadim
правильное решение задания: сказать "вы тут все наркоманы штоле?"
#10 by f_vadim
>> просто перечисление из 31 элемента как-то не очень похоже на описание числа
#11 by ghostishe
Да, это задачка. В реальной жизни такое представить страшно. Задача на умение использовать СКД. я добавлял контрагента. В этом случае ОНО оставляет только одну ставку НДС и множит данные в колонках. То есть задача состоит в том, чтобы вывести отчет с нечисловым значением ресурса. я хз, как делать. 5й час пошёл.
#12 by ghostishe
Могу скриншотиков накидать, если нужно. Я не считаю себя асом в СКД, но тут явно что-то нестандартное должно быть (помимо добавления СтавкиНДС в ресурсы на соотв. закладке.)
#13 by Fragster
в колонках группировка по ставке
#14 by f_vadim
я максимум по ставке поставил - вроде работает
#15 by ghostishe
#16 by ghostishe
на закладке СКД "ресурсы"? Ща попробую
#17 by Другая
добавить вычисляемое поле, в котором вызывать внешнюю функцию, которая будет преобразовывать строку в число. Вычисляемое поле добавить в ресурсы.
#18 by ghostishe
если так сделать, тогда ресурс будет числом. А фишка в том, что с ним не нужно делать преобразований. Нельзя Суммировать, Вычислять максимум итп. То есть если в одни день были разные ставки, то должно быть две строки. Как будто, это поле и в ресурсе, и в группировке должно участвовать. Оставляет только одну строку на одного контрагента.
#19 by ghostishe
Заменил Ставку НДС на Час дня И день месяца на день недели (лень 31 элемент забивать) Вот так (неправильно) выглядит отчет, если просто на закладке ресурсы добавить Час с выражением Час.
#20 by Рэйв
а описанию сабжа- дурак дураком.
#21 by Рэйв
*по описанию
#22 by ghostishe
Не знаю, как прокомментировать это сообщение. Если недостаточно описал суть проблемы, готов уточнить
#23 by ghostishe
Задачу придумывал не я. почем купил - так и продаю
#24 by Рэйв
да не...Мне перечисление с 31 элементами даже понравилось:-) Буду предлагать некоторым для перезагрузки:-)
#25 by ghostishe
По одному клиенту строк должно быть столько, сколько разных Ставок (ну или часов). Может, сперва получить таблицу Контрагент-Ставка? Потом ее соединить с основной. Попытаться использовать приемы, которые работают при расчете ресурсов нарастающим итогом или получении актуального курса валюты на каждую дату, даже когда он не указан некоторые дни. Явно какая-то хитрость напрашивается
#26 by Рэйв
Я понял в чем твоя беда. В косноязычности.
#27 by Рэйв
Прости если обидел. Но это факт.:-)
#28 by ghostishe
Я над задачей молча уже сижу часами =) Беда точно не в косноязычности
#29 by Рэйв
ты так объясняешь... как в голливудских фильмах старый монах рассказывает про путь к сокровищам.
#30 by Рэйв
В ней. Ты не умеешь простыми словами сказать суть
#31 by Рэйв
не дано
#32 by Cyberhawk
Так и не понял, по какому принципу в первой табличке из должна строиться требуемая табличка...
#33 by ghostishe
Первая табличка - это пример правильного результата. Это и есть требуемая. Вторая табличка - это то, как у меня сейчас. Это неправильно. Данные в табличках не связаны. Это примеры правильного и неправильного результатов. Если отталкиваться от второй таблички (неправильной), то из нее нужно сделать следующее:
#34 by Рэйв
вот ты извращенец... Ты ее еще и смотрел???
#35 by Cyberhawk
Объединение объединений: внешнее объединение - это ставки НДС, внутреннее - контрагенты
#36 by ghostishe
По порядку это как? Объединения в запросе? Или речь о СКДшных типах данных?
#37 by Cyberhawk
Пришли мне базу с заполненным регистром
#38 by ghostishe
#39 by RomanYS
режим совместимости хотя бы поставил... качаю 8.3.9
#40 by ghostishe
У меня 8.3.8.1747 Обычное приложение. не упр.
#41 by Cyberhawk
Быстро сделать не удалось. Если в понедельник будет актуально - отпишусь
#42 by ghostishe
окей.
#43 by RomanYS
так?
#44 by ghostishe
Не-а. Новая строка в таблице должна добавляться только в том случае, если часы нельзя поместить в уже существующую строку для данного контрагента и дня недели. То есть, по твоему скриншоту должно быть по 2 строки на каждого контрагента. Воскресенье 14 часов должно быть в первой строке.
#45 by echo77
В одну ячейку все ставки контрагента за день запихнуть не вариант?
#46 by RomanYS
это из не следует. Но теперь понятно, чего надо)). Жди.
#47 by RomanYS
так?
#48 by echo77
Похоже. Я пронумеровал строки в запросе, у меня так же получилось
#49 by echo77
А еще вот это хорошая статья :-)
#50 by ghostishe
Да, так. Нумерация - подзапросом с упорядочиванием?
#51 by ghostishe
Да, теперь и у меня получилось. А как удалось спрятать для пользователя колонку с Номером? Ведь нужно группировать по Контрагенту и этому номеру. Номер вылезает отдельной колонкой.
#52 by Горогуля
а если взять и нахально не выводить некоторые поля?
#53 by ghostishe
Поле нужно добавить в группировку. Если не добавить, отчет не получится. Если добавить - видим доп.колонку
#54 by Горогуля
а если всё-таки взять и нахально не выводить некоторые поля?
#55 by ghostishe
Ну если совсем нахально, то сработало.
#56 by Горогуля
не за что
#57 by echo77
Ответ на вопрос: "Как спрятать колонку по которой выполняется группировка?" или "Как не выводить одно из полей группировки?"
#58 by echo77
+ Просто в выбранных полях группировки разворачиваете(удаляете) автополе и перечисляете те поля, которые необходимо вывести
#59 by almar
Интересно, а в чем смысл этого регистра? ООО Ромашка каждое первое число каждого месяца отгружает без ндс, каждое второе число с НДС 10%, а пятнадцатого числа каждого месяца - с ндс 18%?
#60 by Cyberhawk
А где же описание, как это сделать в СКД?
#61 by Radkt
в ресурсы загоняйте не числовое поле которое должно быть на пересечении столбцов и колонок, в ресурсах убираете функцию "сумма" (по умолчанию) и все будет выводить в схеме таблица с нужными колонками и строками ;)
#62 by RomanYS
всё как расписано в следующих постах - нумерация строк в запросе - группировка "контрагент, номер" - поле номер скрыто, общие итоги скрыты
#63 by ghostishe
Если интересует сам запрос, могу выложить.
#64 by trust
Добрый день. Очень интересует запрос. Выложите пожалуйста.
#65 by Cyberhawk
Ага, давай уже выкладывай для ленивых
#66 by RomanYS
ВЫБРАТЬ     ЗаказыКонтрагентам.Контрагент,     ВТ.День,
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям