|
СКД: запрос по регистру и ВТ | ☑ | ||
---|---|---|---|---|
0
Вжескрыылг
21.09.17
✎
08:06
|
Есть запрос по продажам продукции "Номенклатура", есть ВТ "ЦеныОпераций" с полями "Номенклатура, Операция, Количество, Цена", т.е. кол-во и цена операции на единицу продукции.
Запрос в СКД ВЫБРАТЬ Продажи.Номенклатура КАК Номенклатура, Продажи.КоличествоОборот КАК Количество, ЦеныОпераций.Операция КАК Операция, ЦеныОпераций.Цена КАК ЦенаОперации, ЦеныОпераций.Количество * Продажи.КоличествоОборот КАК КоличествоОперации, ЦеныОпераций.Цена * Продажи.КоличествоОборот КАК Выручка, ЦеныОпераций.Цена * Продажи.КоличествоОборот КАК Наценка ИЗ РегистрНакопления.Продажи.Обороты(&НачалоПериода, &КонецПериода, Авто, ) КАК Продажи ВНУТРЕННЕЕ СОЕДИНЕНИЕ ТаблицаЦеныОпераций КАК ЦеныОпераций ПО Продажи.Номенклатура = ЦеныОпераций.Номенклатура В консоли все киргуду, в отчете выводит не всю номенклатуру. |
|||
1
Wirtuozzz
21.09.17
✎
08:16
|
м.б. проблема в том, что не было продаж за этот период?
Что бы выводить портянку из всей номенклатуре, надо обратиться к справочнику, и к нему левым соединением соединять РН Продажи. |
|||
2
Вжескрыылг
21.09.17
✎
08:27
|
(1) Продажи есть, показывает отдельный отчет. Да и в консоли все есть, но не будешь же юзерам про консоль рассказывать.
|
|||
3
VladZ
21.09.17
✎
08:30
|
(0) "выводит не всю номенклатуру." А с чего решил, что будет "вся"? И что ты понимаешь под словом "вся"? Согласно запроса выводиться будет номенклатура, которая есть в продажа и в ЦеныОпераций (см. Внутреннее соединение).
|
|||
4
Вжескрыылг
21.09.17
✎
08:34
|
(3) Делал всякое соединение. Как обычно, все равно - соединяет налево. Полное соединение делается по-другому, после СОЕДИНЕНИЕ {ВЫБРАТЬ...}
|
|||
5
Вжескрыылг
21.09.17
✎
08:35
|
Объединить тоже делал - те же яйца..
|
|||
6
VladZ
21.09.17
✎
08:36
|
(4) "Как обычно, все равно - соединяет налево" - вот тут какой-то бред. Программа делает именно то, что ты ей пишешь. Сама она не может заменить "внутреннее соединение" на "левое".
|
|||
7
Rokford
21.09.17
✎
08:39
|
Как получается ВТ "ЦеныОпераций" ?
|
|||
8
Вжескрыылг
21.09.17
✎
08:41
|
(6) короче, сделал сейчас налево - то же самое. и номенклатура именно проданная за период, сначала специально выбранная:
ВЫБРАТЬ РАЗЛИЧНЫЕ Продажи.Номенклатура КАК Номенклатура ИЗ РегистрНакопления.Продажи.Обороты(&НачалоПериода, &КонецПериода, Авто, ) КАК Продажи |
|||
9
Вжескрыылг
21.09.17
✎
08:45
|
(7) Есть у меня такой веселый регистр "ЗатратыНаНоменклатуру". Номенклатура состоит из заготовок, те состоят из еще заготовок и т.д. При выпусках продукции/заготовок состав комлектующих переписывается на выпущенную номенклатуру, и в конечном счете продукция состоит из маталла, краски, болтов и прочих гаек.
ВЫБРАТЬ РасходыНаНоменклатуру.Номенклатура КАК Номенклатура, РасходыНаНоменклатуру.Аналитика КАК Операция, СУММА(РасходыНаНоменклатуру.СуммаОборот) КАК Сумма, СУММА(РасходыНаНоменклатуру.КоличествоОборот) КАК Количество, СУММА(РасходыНаНоменклатуру.КоличествоАналитикаОборот) КАК КоличествоОпераций ПОМЕСТИТЬ ТаблицаОперации ИЗ РегистрНакопления.РасходыНаНоменклатуру.Обороты(ДОБАВИТЬКДАТЕ(&НачалоПериода, МЕСЯЦ, -3), &КонецПериода, Авто, ) КАК РасходыНаНоменклатуру ГДЕ РасходыНаНоменклатуру.Аналитика ССЫЛКА Справочник.Номенклатура И РасходыНаНоменклатуру.Аналитика.ВидНоменклатуры В (ЗНАЧЕНИЕ(Перечисление.ВидыНоменклатуры.Работа), ЗНАЧЕНИЕ(Перечисление.ВидыНоменклатуры.Услуга)) И РасходыНаНоменклатуру.Номенклатура В (ВЫБРАТЬ РАЗЛИЧНЫЕ Продажи.Номенклатура КАК Номенклатура ИЗ РегистрНакопления.Продажи.Обороты(&НачалоПериода, &КонецПериода, Авто, ) КАК Продажи) СГРУППИРОВАТЬ ПО РасходыНаНоменклатуру.Номенклатура, РасходыНаНоменклатуру.Аналитика Аналитика - это ТМЦ, работы, статьи затрат |
|||
10
Вжескрыылг
21.09.17
✎
08:47
|
(7) Потом
ВЫБРАТЬ ТаблицаОперации.Номенклатура КАК Номенклатура, ТаблицаОперации.Операция КАК Операция, СРЕДНЕЕ(ТаблицаОперации.КоличествоОпераций / ТаблицаОперации.Количество) КАК Количество, СРЕДНЕЕ(ТаблицаОперации.Сумма / ТаблицаОперации.КоличествоОпераций) КАК Цена ПОМЕСТИТЬ ТаблицаЦеныОпераций ИЗ ТаблицаОперации КАК ТаблицаОперации СГРУППИРОВАТЬ ПО ТаблицаОперации.Номенклатура, ТаблицаОперации.Операция |
|||
11
Rokford
21.09.17
✎
08:54
|
(9),(10)Я бы смотрел с помощью консоли компоновки какой получается результирующий запрос. Думаю СКД меняет запрос. Поэтому результаты в консоли запросов и в отчете - разные.
|
|||
12
Вжескрыылг
21.09.17
✎
08:56
|
(11) Я ж писал, что в консоли все есть, а в СКД даже системы выборки операций нет, выбирает от балды.
|
|||
13
Вжескрыылг
21.09.17
✎
08:58
|
(11) Сколько отчетов написал на СКД, простых и сложных, все равно чувствую, что знаю ее процентов на 50. Тут нужен гуру по СКД.
|
|||
14
Rokford
21.09.17
✎
08:58
|
Я про консоль компоновок говорю, а не про консоль запросов.
|
|||
15
Rokford
21.09.17
✎
08:59
|
Например на ИТС есть КонсольСистемыКомпоновкиДанных83.erf или в инструментах разработчика от TormozIT
|
|||
16
Вжескрыылг
21.09.17
✎
09:03
|
(15) ИТС нет, КонсольСистемыКомпоновкиДанных83 не гуглится. Кинь ссылку, а?
|
|||
17
KrasnSergey
21.09.17
✎
09:08
|
(16) инструменты разработчика скачай там в составе есть консоль компоновки я ей пользуюсь
|
|||
18
Rokford
21.09.17
✎
09:14
|
https://its.1c.ru/db/metod8dev#content:3401:hdoc:_top:консольсистемыкомпоновкиданных
Хотя мне тоже больше из инструментов разработчика нравится (правда она на обычных формах). |
|||
19
Rokford
21.09.17
✎
09:16
|
(16) проверь почту
|
|||
20
Вжескрыылг
21.09.17
✎
09:23
|
(16), (17), (18) Скачал и так, и из письма. Работает только в толстои клиенте. блин!
|
|||
21
Вжескрыылг
21.09.17
✎
09:33
|
(19) Загрузил. Выполнил. Надо разбираться, что эта консоль может.
|
|||
22
Rokford
21.09.17
✎
09:48
|
(21) Покажи настройку отчета (выбранные поля интересуют)
|
|||
23
Вжескрыылг
21.09.17
✎
09:50
|
(0) что-то в соединении. как соединяется с ВТ "ЦеныОпераций", если там этих номенклатур несколько?
|
|||
24
Rokford
21.09.17
✎
09:55
|
Проверил. Запрос не меняется. Нужно копать в другую сторону.
|
|||
25
alxxsssar
21.09.17
✎
09:59
|
Так может дело и не в запросе. Смотри на вкладке настроек, может СКД на уже сформированную таблицу какие-то отборы накладывает или что-то в таком духе. Параметры запроса поковыряй.
|
|||
26
AneJIbcuH
21.09.17
✎
10:00
|
(0) Отборов нет?
|
|||
27
LordCMEPTb
21.09.17
✎
10:00
|
Т.е. если выполнить в консоли запросов оптимизированный запрос из макета компоновки (ну или из консоли отчета, который получился на какой-то из закладок) и исходный запрос с одинаковыми параметрами, то результат разный? При том, что по информации из (24) запросы одинаковые?
Что-то не так в исходных данных... |
|||
28
Вжескрыылг
21.09.17
✎
10:38
|
(26) только период
|
|||
29
Вжескрыылг
21.09.17
✎
11:01
|
(27) Да, тексты одинаковые. Данные проверялись отчетом по продажам и отчетом "Затраты на номенклатуру", содержание промежуточных ВТ в консоли. Что-то в соединении.
|
|||
30
LordCMEPTb
21.09.17
✎
11:16
|
(29) Не понимаю фразу "Данные проверялись отчетом по продажам и отчетом "Затраты на номенклатуру", содержание промежуточных ВТ в консоли"
Требуется либо поставить точку останова в модуле отчета при компоновке результата, либо взять оптимизированный запрос из консоли СКД. ОПТИМИЗИРОВАННЫЙ, а не ИСХОДНЫЙ. Выполнить в консоли запросов. Затем взять исходный текст запроса и с теми же параметрами выполнить. После этого анализировать результаты. |
|||
31
write
21.09.17
✎
12:12
|
(0) Перенеси ДОБАВИТЬКДАТЕ(&НачалоПериода, МЕСЯЦ, -3) из параметров виртуальной талицы РегистрНакопления.РасходыНаНоменклатуру.Обороты в параметры этой же виртуальной таблицы только на вкладке "КОМПОНОВКА ДАННЫХ"
|
|||
32
h-sp
21.09.17
✎
12:33
|
(29) да, вот эту хрень ДОБАВИТЬКДАТЕ(&НачалоПериода, МЕСЯЦ, -3) туда не пиши. Она всё равно на нее наплюет. И вставит свою дату.
|
|||
33
Вжескрыылг
21.09.17
✎
13:05
|
(31), (32). Действительно, вместо ДОБАВИТЬКДАТЕ(&НачалоПериода, МЕСЯЦ, -3) вставляет что-то.
|
|||
34
Вжескрыылг
21.09.17
✎
14:29
|
(31) Спец! Взлетело!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |