![]() |
![]() |
![]() |
|
СКД: урезает временную таблицу Fish, TormozIT, craxx, vyaz, Hawk_1c, reg0303, okmail, CaIIIka, Климов Сергей, d4rkmesa, СвинТуз, obs191, DemonShinji2, Хряк, alexis_nov, anikev, KJlag, Timon1405, 1Снеговик, Crusher, Alex33, rbcvg, Prog_man, patapum, Мультук, ndrv, maxar, youalex, zzz_zzz_zzz, arsik, Гипервизор, piter3, LoneMan, who respawn, DimVad, lubitelxml, Галахад, DiMel_77, pasha_d, Жеглофф, Ильф, formista2000, andryscha1c, DimR_71, Andy13
| ☑ | ||
---|---|---|---|---|
0
CaIIIka
03.07.25
✎
10:08
|
Здравствуйте! У меня 1С 8.2.19.130 (УФ). Отчет на СКД. Набор данных "Запрос".
Вчера пол дня мучил сложный отчет, никак не мог понять, что происходит в расчетах. Перекинул все основное в консоль запросов, там все правильно считает. Уже в конце дня убрал в отчете все до минимума ради эксперимента и мягко скажем... ОБАЛДЕЛ! Создал простейший отчет без привязки к данным БД - ситуация аналогичная. Пример простого отчета. Запрос: ВЫБРАТЬ "а" КАК Буква, "б" КАК Буква2, 0 КАК Ключ ПОМЕСТИТЬ Таб ОБЪЕДИНИТЬ ВЫБРАТЬ "а", "б", 1 ОБЪЕДИНИТЬ ........... ВЫБРАТЬ "а", "и", 1 ; ВЫБРАТЬ Таб.Буква, Таб.Буква2, Таб.Ключ ИЗ Таб КАК Таб Первая колонка всегда "а". Вторая колонка от "а" до "и". Третья колонка хаотично 1 и 0. На выходе только детальные записи всех полей. При таком варианте вывода все правильно. На выходе будет табличка: Буква Буква2 Ключ а б а б 1 а в 1 а г 1 а д а е а ё а ж 1 а з 1 а и 1 НО. Если закомментировать вторую колонку, то система выдает: Буква Ключ а а 1 Это как вообще понимать??? Я не просил ее выбрать РАЗЛИЧНЫЕ... Если сгруппировать вывод: ВЫБРАТЬ Таб.Буква, Сумма(Таб.Ключ) ИЗ Таб КАК Таб Сгруппировать по Таб.Буква Система выдает: Буква Ключ а 1 Это вообще что и как это бороть??? Я понимаю, оптимизация и т.п. НО в данном случае это же полный бред. Мне нужны все строки, а лучше всех их сумма, а не только двух. |
|||
1
arsik
гуру
03.07.25
✎
10:12
|
Ну так в СКД выбирается только то что используется, что не используется мимо пролетает
|
|||
2
1Снеговик
гуру
03.07.25
✎
10:17
|
(1) сам перечитай что ты написал и попробуй еще раз.
1 и 3 колонки используются, и чо. |
|||
3
Ильф
03.07.25
✎
10:19
|
ОБЪЕДИНИТЬ - это и есть РАЗЛИЧНЫЕ
ОБЪЕДИНИТЬ ВСЕ тогда пиши |
|||
4
Ильф
03.07.25
✎
10:19
|
и СКД тут не причем
|
|||
5
CaIIIka
03.07.25
✎
10:21
|
(1) Как быть-то? Я понимаю при выводе. Но это же на стадии запроса все происходит. Как может быть мимо? Посчитать нужно, а она фильтрует данные. Есть способ заставить ВЫБРАТЬ ВСЕ?
|
|||
6
Timon1405
03.07.25
✎
10:20
|
СРОЧНО В НОМЕР! ВЫ НЕ ПОВЕРИТЕ! ЧТО СКРЫВАЕТСЯ В ВАШИХ ОТЧЕТАХ? ПРОГРАММИСТ В ШОКЕ!
ТЕОРИЯ ЗАГОВОРА РАЗОБЛАЧЕНА! Вы думали, что программы ДЕЛАЮТ то, что вы им говорите? ХА! ВНИМАНИЕ! ЭТО КАСАЕТСЯ КАЖДОГО! Сколько ваших отчетов страдают от этой «оптимизации»? Какие ДАННЫЕ ВЫ ТЕРЯЕТЕ прямо сейчас? Мы продолжаем следить за развитием событий! Следите за новостями! ПОДЕЛИТЕСЬ ЭТОЙ СТАТЬЁЙ, ЧТОБЫ УЗНАЛИ ВСЕ! |
|||
7
CaIIIka
03.07.25
✎
10:21
|
(3) Написал же. В таблице на выходе есть все строки.
|
|||
8
CaIIIka
03.07.25
✎
10:22
|
(6) Че курил?
|
|||
9
Timon1405
03.07.25
✎
10:23
|
(8) просто ваше сообщение чем-то напомнило такие статьи)
поставьте галку обязательное в роли у полей 1 и 2 и будет вам счастье |
|||
10
KJlag
03.07.25
✎
10:25
|
(7) а если добавить "а б 1" еще два раза, то в первом варианте он выводит "а б 1" трижды?
|
|||
11
CaIIIka
03.07.25
✎
10:27
|
(9) Поставил. Без сгруппировать по-прежнему выдает:
Буква Ключ а а 1
|
|||
12
KJlag
03.07.25
✎
10:28
|
||||
13
Мультук
гуру
03.07.25
✎
10:40
|
(9)
А название статьи такое "Последнюю надежду Надежде подарила правильная Галка. Услышит ли Надежда Галку и обретёт ли она своё счастье !?" |
|||
14
CaIIIka
03.07.25
✎
10:30
|
(10) Задача из временной таблицы:
Буква Буква2 Ключ а б а б 1 а в 1 а г 1 а д а е а ё а ж 1 а з 1 а и 1 Получить: Буква Ключ а 6 Ну или хотя бы: Буква Ключ а а 1 а 1 а 1 а а а а 1 а 1 а 1 |
|||
15
Fish
гуру
03.07.25
✎
10:31
|
(3) +100. Автору учить матчасть.
|
|||
16
CaIIIka
03.07.25
✎
10:31
|
(13) см. (11)
|
|||
17
Мультук
гуру
03.07.25
✎
10:33
|
(16)
ОБЪЕДИНИТЬ ВСЕ -- сделал ? Поле "Буква2" -- обязательное сделал ? |
|||
18
Timon1405
03.07.25
✎
10:39
|
(14), у меня всё работает. загрузите схему в СКД
<?xml version="1.0" encoding="UTF-8"?> <DataCompositionSchema xmlns="http://v8.1c.ru/8.1/data-composition-system/schema xmlns:dcscom="http://v8.1c.ru/8.1/data-composition-system/common xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings xmlns:v8="http://v8.1c.ru/8.1/data/core xmlns:v8ui="http://v8.1c.ru/8.1/data/ui xmlns:xs="http://www.w3.org/2001/XMLSchema xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance <dataSource> <name>ИсточникДанных1</name> <dataSourceType>Local</dataSourceType> </dataSource> <dataSet xsi:type="DataSetQuery"> <name>НаборДанных1</name> <field xsi:type="DataSetFieldField"> <dataPath>Буква</dataPath> <field>Буква</field> <title xsi:type="v8:LocalStringType"> <v8:item> <v8:lang>ru</v8:lang> <v8:content>Буква</v8:content> </v8:item> </title> <role> <dcscom:dimension>true</dcscom:dimension> <dcscom:required>true</dcscom:required> </role> <appearance/> <inputParameters/> </field> <field xsi:type="DataSetFieldField"> <dataPath>Буква2</dataPath> <field>Буква2</field> <title xsi:type="v8:LocalStringType"> <v8:item> <v8:lang>ru</v8:lang> <v8:content>Буква2</v8:content> </v8:item> </title> <role> <dcscom:dimension>true</dcscom:dimension> <dcscom:required>true</dcscom:required> </role> <appearance/> <inputParameters/> </field> <field xsi:type="DataSetFieldField"> <dataPath>Ключ</dataPath> <field>Ключ</field> <title xsi:type="v8:LocalStringType"> <v8:item> <v8:lang>ru</v8:lang> <v8:content>Ключ</v8:content> </v8:item> </title> <appearance/> <inputParameters/> </field> <dataSource>ИсточникДанных1</dataSource> <query>ВЫБРАТЬ "а" КАК Буква, "б" КАК Буква2, 0 КАК Ключ ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "а", "б", 1 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "а", "в", 1 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "а", "г", 1 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "а", "д", 0 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "а", "е", 0 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "а", "ё", 0 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "а", "ж", 1 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "а", "з", 1 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "а", "и", 1</query> </dataSet> <totalField> <dataPath>Ключ</dataPath> <expression>Сумма(Ключ)</expression> </totalField> <settingsVariant> <dcsset:name>Основной</dcsset:name> <dcsset:presentation xsi:type="xs:string">Основной</dcsset:presentation> <dcsset:settings xmlns:style="http://v8.1c.ru/8.1/data/ui/style xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows <dcsset:selection> <dcsset:item xsi:type="dcsset:SelectedItemField"> <dcsset:field>Буква</dcsset:field> </dcsset:item> <dcsset:item xsi:type="dcsset:SelectedItemField"> <dcsset:field>Ключ</dcsset:field> </dcsset:item> </dcsset:selection> <dcsset:item xsi:type="dcsset:StructureItemGroup"> <dcsset:order> <dcsset:item xsi:type="dcsset:OrderItemAuto"/> </dcsset:order> <dcsset:selection> <dcsset:item xsi:type="dcsset:SelectedItemAuto"/> </dcsset:selection> </dcsset:item> <dcsset:item xsi:type="dcsset:StructureItemGroup"> <dcsset:groupItems> <dcsset:item xsi:type="dcsset:GroupItemField"> <dcsset:field>Буква</dcsset:field> <dcsset:groupType>Items</dcsset:groupType> <dcsset:periodAdditionType>None</dcsset:periodAdditionType> <dcsset:periodAdditionBegin xsi:type="xs:dateTime">0001-01-01T00:00:00</dcsset:periodAdditionBegin> <dcsset:periodAdditionEnd xsi:type="xs:dateTime">0001-01-01T00:00:00</dcsset:periodAdditionEnd> </dcsset:item> </dcsset:groupItems> <dcsset:order> <dcsset:item xsi:type="dcsset:OrderItemAuto"/> </dcsset:order> <dcsset:selection> <dcsset:item xsi:type="dcsset:SelectedItemAuto"/> </dcsset:selection> </dcsset:item> </dcsset:settings> </settingsVariant> </DataCompositionSchema> |
|||
19
CaIIIka
03.07.25
✎
10:45
|
(3), (15) Спасибо, учту! В этом примере уже заработало.
На самом деле капец какой-то. В одном наборе данных семь запросов. Запрос с объединить первый. Это для расчета остатков по дням, с последующими средними остатками и коэф.оборачиваемости. В каждых последующих запросах эта таблица работает исправно. Режет только в шестом по счету запросе, который отчасти является дублем предыдущих, только урезанный. Тут я и поймался. Я такого не ожидал, что готовая таблица, уже правильно отработавшая в нескольких запросах, в последнем порежется из-за ОБЪЕДИНИТЬ без ВСЕ в самом начале... Всем еще раз спасибо за помощь! На юмор не реагировал, потому что замудохался с этим отчетом :) Всем добра! |
|||
20
TormozIT
гуру
03.07.25
✎
14:00
|
В конструкторе запроса (ИР) есть флажок для защиты от такого беспредела СКД https://www.hostedredmine.com/issues/998323
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |