|   |   | 
| 
 | Сложить строки в запросе | ☑ | ||
|---|---|---|---|---|
| 0
    
        ONE1 12.08.22✎ 17:24 | 
        https://ibb.co/mBTthSs 
 люди добрые, помогите. Можно ли как-то сложить строки одного объекта в одну? Нужно для динамического списка, чтобы не ругался "Обнаружено дублирование ключевых значений в колонках" | |||
| 1
    
        DayDreamer 12.08.22✎ 17:27 | 
        что мешает через Объединить?     | |||
| 2
    
        PR 12.08.22✎ 17:28 | 
        (1) Сколько раз?     | |||
| 3
    
        PR 12.08.22✎ 17:29 | 
        +(2) И как фильтровать по одному элементу?     | |||
| 4
    
        FN 12.08.22✎ 17:30 | 
        (0) три левых соединения к основной таблице     | |||
| 5
    
        Fragster гуру 12.08.22✎ 17:36 | 
        такая ошибка говорит о том, что это динамический список. а в нем характеристики и так поддерживаются, просто вытащить на форму надо.     | |||
| 6
    
        ONE1 12.08.22✎ 17:43 | 
        Выведены на форму поля, но т.к. в запросе 3 раза одна ссылка встречается дин. список выдаёт ошибку     | |||
| 7
    
        AlvlSpb naïve 12.08.22✎ 17:44 | 
        (0) Это динамический список, как понимаю. Как устанавливаешь параметры Распечатано, Выдано, Отдано?     | |||
| 8
    
        ONE1 12.08.22✎ 17:46 | 
        Список.Параметры.УстановитьПараметр, передаю планывидовхарактеристик.дополнительныерек. НайтиПоНаименованию     | |||
| 9
    
        PR 12.08.22✎ 17:50 | 
        А, так просто три свойства что ли, то есть три левых соединения
 И тебе не стыдно спрашивать такую легкотню? | |||
| 10
    
        AlvlSpb naïve 12.08.22✎ 17:52 | 
        (9) Да тут дело в том, что по идеи должно работать так как он указал, без костылей с соединениями     | |||
| 11
    
        AlvlSpb naïve 12.08.22✎ 17:53 | 
        (8) Ну считаем что опечатался "УстановитьЗначениеПараметра", а не "УстановитьПараметр"?     | |||
| 12
    
        Said_We 12.08.22✎ 17:53 | 
        Выбрать
 т.ссылка ,МАКС(т.Распечатано) ,МАКС(т.ВыданоНаСклад) ,МАКС(т.ОтданоКлиенту) ... сгрупировать по т.Ссылка | |||
| 13
    
        AlvlSpb naïve 12.08.22✎ 17:54 | 
        А сделай-ка запрос к регистру доп сведения без отборов или просто посмотри. Там нет каких-либо задвоений?     | |||
| 14
    
        Said_We 12.08.22✎ 17:56 | 
        (13) Конечно есть. Даже затроение есть. Когда и распечатали и выдали на склад и клиенту.     | |||
| 15
    
        Said_We 12.08.22✎ 17:58 | ||||
| 16
    
        MaQo 12.08.22✎ 18:06 | 
        Король костылей:
 выгружаешь результат запроса в таблицу значений и обрабатываешь каждую строку, создавая новую таблицу, где строки будут созданы сразу со всеми параметрами Тз1 = Запрос.Выполнить().Выгрузить(); СтрПр = Неопределено; Тз2 = Новый ТаблицаЗначений; Для каждого Стр из Тз1 Цикл Если СтрПр <> Стр Тогда СтрТз2 = Тз2.Добавить(); СтрТз2 = Стр; Иначе Если Стр.ВыданоНаСклад <> Неопределено Тогда СтрТз2.ВыданоНаСклад = Стр.ВыданоНаСклад; КонецЕсли; Если Стр.отданоКлиенту<> Неопределено Тогда СтрТз2.отданоКлиенту= Стр.отданоКлиенту; КонецЕсли; КонецЕсли; СтрПр = Стр КонецЦикла; | |||
| 17
    
        Garykom гуру 12.08.22✎ 18:09 | 
        (0) Архитектурная ошибка детектед.
 Почему три булевых доп.сведения вместо одного с тремя разными статусами? | |||
| 18
    
        PR 12.08.22✎ 18:09 | 
        (10) Да тут дело в том, что его запрос говно изначально
 Выбирать нужно три раза, в каждом одно свойство И потом группировать по объекту в одну строку вместо трех Ну или (что логичнее) сразу выбирать объекты из родной таблицы или различные из таблицы свойств, а потом к ней уже цеплять слева три соединения | |||
| 19
    
        Garykom гуру 12.08.22✎ 18:10 | 
        (16) Нахер так?
 Три подзапроса и объединить | |||
| 20
    
        Garykom гуру 12.08.22✎ 18:11 | 
        (18) Это уже вкусовщина     | |||
| 21
    
        Garykom гуру 12.08.22✎ 18:11 | 
        (20)+ Чтобы получить все доки даже без статусов     | |||
| 22
    
        AlvlSpb naïve 12.08.22✎ 18:15 | 
        Правильно в (12). У него ошибка не потому, что три раза вызывается значение (свойства-то разные), а в том что объект.ссылка - трижды одинаковый. Просто сгруппировать по ссылке в запросе как в (12) и должно работать     | |||
| 23
    
        AlvlSpb naïve 12.08.22✎ 18:20 | 
        ВЫБРАТЬ
 ДополнительныеСведения.Объект КАК Объект, МАКСИМУМ(ВЫБОР КОГДА ДополнительныеСведения.Свойство = &РеспечатаноЗадание ТОГДА ДополнительныеСведения.Значение КОНЕЦ) КАК РеспечатаноЗадание, МАКСИМУМ(ВЫБОР КОГДА ДополнительныеСведения.Свойство = &ВыданоНаСклад ТОГДА ДополнительныеСведения.Значение КОНЕЦ) КАК ВыданоНаСклад, МАКСИМУМ(ВЫБОР КОГДА ДополнительныеСведения.Свойство = &ОтданоКлиенту ТОГДА ДополнительныеСведения.Значение КОНЕЦ) КАК ОтданоКлиенту ИЗ РегистрСведений.ДополнительныеСведения КАК ДополнительныеСведения СГРУППИРОВАТЬ ПО ДополнительныеСведения.Объект | |||
| 24
    
        Garykom гуру 12.08.22✎ 18:20 | 
        (22) операция группировки очень затратная     | |||
| 25
    
        PR 12.08.22✎ 18:24 | 
        (23) Хочется блевануть, если честно
 Сделай такое на таблице с сотней тысяч записей | |||
| 26
    
        1Сергей 12.08.22✎ 18:28 | 
        Как уже сказали, правильно сделать три левых соединение к таблице документа     | |||
| 27
    
        Said_We 13.08.22✎ 11:58 | 
        (24), (25), (26) Читайте внимательно про затратные операции в (15). Удивитесь.     | |||
| 28
    
        ONE1 15.08.22✎ 10:16 | 
        (12) Помогло, всем ❤     | |||
| 29
    
        Simod 15.08.22✎ 17:21 | 
        (0) Делай нормальный запрос к таблице документа, а остальное:
 https://wonderland.v8.1c.ru/blog/obrabotka-i-oformlenie-dannykh-dinamicheskogo-spiska/?sphrase_id=316520 | |||
| 30
    
        rudnitskij 15.08.22✎ 18:41 | 
        Непонятно, зачем на каждое свойство одного объекта отдельная строка в регистре сведений?     | |||
| 31
    
        Said_We 16.08.22✎ 00:14 | 
        (30) Из интересов вашего аккаунта:
 "Роберт Шекли:"Чтобы правильно задать вопрос, нужно знать бOльшую часть ответа" -------------------------------------------------------- Судя по вопросам, некоторые не знают и 5%". Без обид, но тут как раз к месту. :-) Это же 1С тут есть составные типы. Есть планы видов характеристик. И как всё это в СУБД хранится не так важно, так как запросы в 1С всё равно пишутся по структуре метаданных. | |||
| 32
    
        AXZ 16.08.22✎ 14:05 | 
        (0) Узнай какие поля у тебя дублируются, все остальные группируй, эти - через агрегатные функции     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |