Запрос в 1cv81
15.05.2009
08:47
#1
Такой вопрос: можно ли создать запрос для отчета, который выводил бы все виды расчетов вместе с базовыми видами расчета для каждого, т.е. с вложенными таблицами? Второй день бьюсь уже, не могу разобраться.
15.05.2009
17:07
#2
помочь не могу, но дам ссылку [промодерировано] там запросы очень подробно разбираются
18.05.2009
03:17
#3
Такой запрос не подходит, по причине того, что он не выводит виды расчета, которые не имеют базовых видов. Ткните хоть ссылкой (в личку, раз тут такая модерация) на статьи, где подробно разбирается язык запросов.
ВЫБРАТЬ
ОсновныеНачисленияОрганизацийБазовыеВидыР асчета.Ссылка.Ссылка КАК ВидРасчета,
ОсновныеНачисленияОрганизацийБазовыеВидыРасчета.ВидРасчета КАК Базовый
ИЗ
ПланВидовРасчета.ОсновныеНачисленияОрганизаций.БазовыеВидыРасчета КАК ОсновныеНачисленияОрганизацийБазовыеВидыРасчета
ОБЪЕД ИНИТЬ ВСЕ
ВЫБРАТЬ
ДополнительныеНачисленияОрганизацийБаз овыеВидыРасчета.Ссылка,
ДополнительныеНачисленияОрганизацийБазовыеВидыРасчета.ВидРасчета
ИЗ
ПланВидовРасчета.ДополнительныеНачисленияОрганизаций.БазовыеВидыРасчета КАК ДополнительныеНачисленияОрганизацийБазовыеВидыРасчета
ВЫБРАТЬ
ОсновныеНачисленияОрганизацийБазовыеВидыР
ОсновныеНачисленияОрганизацийБазовыеВидыРасчета.ВидРасчета КАК Базовый
ИЗ
ПланВидовРасчета.ОсновныеНачисленияОрганизаций.БазовыеВидыРасчета КАК ОсновныеНачисленияОрганизацийБазовыеВидыРасчета
ОБЪЕД
ВЫБРАТЬ
ДополнительныеНачисленияОрганизацийБаз
ДополнительныеНачисленияОрганизацийБазовыеВидыРасчета.ВидРасчета
ИЗ
ПланВидовРасчета.ДополнительныеНачисленияОрганизаций.БазовыеВидыРасчета КАК ДополнительныеНачисленияОрганизацийБазовыеВидыРасчета
19.05.2009
16:08
#4
Если нужны только базовые виды расчета, то запрос очень прост:
ВЫБРАТЬ
ОсновныеНачисленияОрганизацийБазовыеВидыРасчета.ВидРасчета КАК Базовые,
ОсновныеНачисленияОрганизацийБазовыеВидыРасчета.Ссылка
ИЗ
ПланВидовРасчета.ОсновныеНачисленияОрганизаций.БазовыеВидыРасчета КАК ОсновныеНачисленияОрганизацийБазовыеВидыРасчета
При настройке(например в консоле отчетов) выбрать группировку по Ссылке - Ссылка в табличной части указывает на вид расчета, для которого определен базовый вид расчета.
Если нужны выводить еще те виды расчета, для которых базовые не определены, то запрос будет выглядеть так:
ВЫБРАТЬ
ОсновныеНачисленияОрганизацийБазовыеВидыРасчета.ВидРасчета КАК Базовые,
ОсновныеНачисленияОрганизаций.Ссылка КАК Ссылка
ИЗ
ПланВидовРасчета.ОсновныеНачисленияОрганизаций КАК ОсновныеНачисленияОрганизаций
ЛЕВОЕ СОЕДИНЕНИЕ ПланВидовРасчета.ОсновныеНачисленияОрганизаций.БазовыеВидыРасчета КАК ОсновныеНачисленияОрганизацийБазовыеВидыРасчета
ПО ОсновныеНачисленияОрганизаций.Ссылка = ОсновныеНачисленияОрганизацийБазовыеВидыРасчета.Ссылка
Если же нужно выводить не только базовые, но и ведущие с вытесняющими, то запрос будет сложнее. Нужно использовать ОБЪЕДИНЕНИЕ.Приведенный запрос не совсем корректен, но все же выводит все три типа для Вида расчета, правда не красиво):
ВЫБРАТЬ
ОсновныеНачисленияОрганизацийБазовыеВидыРасчета.Ссылка,
ОсновныеНачисленияОрганизацийБазовыеВидыРасчета.ВидРасчета КАК Базовые,
NULL КАК Ведущие,
NULL КАК Вытесняющие
ИЗ
ПланВидовРасчета.ОсновныеНачисленияОрганизаций.БазовыеВидыРасчета КАК ОсновныеНачисленияОрганизацийБазовыеВидыРасчета
ОБЪЕД ИНИТЬ ВСЕ
ВЫБРАТЬ
ОсновныеНачисленияОрганизацийВедущиеВидыРасчета.Ссылка,
NULL,
ОсновныеНачисленияОрганизацийВедущиеВидыРасчета.ВидРасчета,
NULL
ИЗ
ПланВидовРасчета.ОсновныеНачисленияОрганизаций.ВедущиеВидыРасчета КАК ОсновныеНачисленияОрганизацийВедущиеВидыРасчета
ОБЪЕД ИНИТЬ ВСЕ
ВЫБРАТЬ
ОсновныеНачисленияОрганизацийВытесняющиеВидыРасчета.Ссылка,
NULL,
NULL,
ОсновныеНачисленияОрганизацийВытесняющиеВидыРасчета.ВидРасчета
ИЗ
ПланВидовРасчета.ОсновныеНачисленияОрганизаций.ВытесняющиеВидыРасчета КАК ОсновныеНачисленияОрганизацийВытесняющиеВидыРасчета
В езде при выводе нужна группировка по Ссылке.
ВЫБРАТЬ
ОсновныеНачисленияОрганизацийБазовыеВидыРасчета.ВидРасчета КАК Базовые,
ОсновныеНачисленияОрганизацийБазовыеВидыРасчета.Ссылка
ИЗ
ПланВидовРасчета.ОсновныеНачисленияОрганизаций.БазовыеВидыРасчета КАК ОсновныеНачисленияОрганизацийБазовыеВидыРасчета
При настройке(например в консоле отчетов) выбрать группировку по Ссылке - Ссылка в табличной части указывает на вид расчета, для которого определен базовый вид расчета.
Если нужны выводить еще те виды расчета, для которых базовые не определены, то запрос будет выглядеть так:
ВЫБРАТЬ
ОсновныеНачисленияОрганизацийБазовыеВидыРасчета.ВидРасчета КАК Базовые,
ОсновныеНачисленияОрганизаций.Ссылка КАК Ссылка
ИЗ
ПланВидовРасчета.ОсновныеНачисленияОрганизаций КАК ОсновныеНачисленияОрганизаций
ЛЕВОЕ СОЕДИНЕНИЕ ПланВидовРасчета.ОсновныеНачисленияОрганизаций.БазовыеВидыРасчета КАК ОсновныеНачисленияОрганизацийБазовыеВидыРасчета
ПО ОсновныеНачисленияОрганизаций.Ссылка = ОсновныеНачисленияОрганизацийБазовыеВидыРасчета.Ссылка
Если же нужно выводить не только базовые, но и ведущие с вытесняющими, то запрос будет сложнее. Нужно использовать ОБЪЕДИНЕНИЕ.Приведенный запрос не совсем корректен, но все же выводит все три типа для Вида расчета, правда не красиво):
ВЫБРАТЬ
ОсновныеНачисленияОрганизацийБазовыеВидыРасчета.Ссылка,
ОсновныеНачисленияОрганизацийБазовыеВидыРасчета.ВидРасчета КАК Базовые,
NULL КАК Ведущие,
NULL КАК Вытесняющие
ИЗ
ПланВидовРасчета.ОсновныеНачисленияОрганизаций.БазовыеВидыРасчета КАК ОсновныеНачисленияОрганизацийБазовыеВидыРасчета
ОБЪЕД
ВЫБРАТЬ
ОсновныеНачисленияОрганизацийВедущиеВидыРасчета.Ссылка,
NULL,
ОсновныеНачисленияОрганизацийВедущиеВидыРасчета.ВидРасчета,
NULL
ИЗ
ПланВидовРасчета.ОсновныеНачисленияОрганизаций.ВедущиеВидыРасчета КАК ОсновныеНачисленияОрганизацийВедущиеВидыРасчета
ОБЪЕД
ВЫБРАТЬ
ОсновныеНачисленияОрганизацийВытесняющиеВидыРасчета.Ссылка,
NULL,
NULL,
ОсновныеНачисленияОрганизацийВытесняющиеВидыРасчета.ВидРасчета
ИЗ
ПланВидовРасчета.ОсновныеНачисленияОрганизаций.ВытесняющиеВидыРасчета КАК ОсновныеНачисленияОрганизацийВытесняющиеВидыРасчета
В
22.05.2009
07:14
#5
Спасибо большое. Одно вот только осталось - а можно ли каким-то образом отобрать только те виды расчета, которые когда-либо использовались (т.е. встречаются в регистре расчетов)? И в каких пособиях разбираются принципы языка запросов?
UP: А запрос как-то не совсем правильно работает. Например, для северной надбавки выводится 6 базовых видов расчета, а должен всего 1.
UP: А запрос как-то не совсем правильно работает. Например, для северной надбавки выводится 6 базовых видов расчета, а должен всего 1.
08.06.2009
18:34
#6
запрос просто получает данные, которые хранятся у вас в базе. а вот как настроено, есть ли базовые виды расчета для северных или нет, сколько и так далее, уже ваше дело настроить )) называется - не нравится как настроено, так настройте по-своему ))
09.06.2009
03:27
#7
При просмотре базовых видов расчета для определенного вида через сам регистр расчета выводятся одни вида расчета, а при просмотре через запрос - другие (точнее, те же самые плюс еще несколько). Не могу понять, с чем это связано.
10.06.2009
20:16
#8
"При просмотре базовых видов расчета для определенного вида через сам регистр расчета" - с этого месте поподробнее пожалуйста!
11.06.2009
03:05
#9
УППшка, полный интерфейс. Идем в Операции - План видов расчета - Дополнительные начисления организации - к примеру, Месячная премия. В базовых начислениях значится только один пункт - "Доплата за ночные часы".
Формируем отчет с помощью нашего запроса. Получаем, что у Месячной премии в базовых начислениях значится:
Оклад по дням
Оплата по производственным нарядам
Оплата по ночному часовому тарифу
Оплата сверхурочных часов
Доплата за работу в праздники и выходные
Доплата за ночные часы
Оплата праздничных и выходных дней
Доплата за вечерние часы
Оплата по дневному часовому тарифу
Оклад по часам
Каюсь, прошлый раз коряво объяснил.
Формируем отчет с помощью нашего запроса. Получаем, что у Месячной премии в базовых начислениях значится:
Оклад по дням
Оплата по производственным нарядам
Оплата по ночному часовому тарифу
Оплата сверхурочных часов
Доплата за работу в праздники и выходные
Доплата за ночные часы
Оплата праздничных и выходных дней
Доплата за вечерние часы
Оплата по дневному часовому тарифу
Оклад по часам
Каюсь, прошлый раз коряво объяснил.
Читают тему
(гостей: 1)