Новости для бухгалтера, бухучет, налогообложение, отчетность, ФСБУ, прослеживаемость и маркировка, 1С:Бухгалтерия

Вход или Регистрация

Показывать по 10 20 40 сообщений
Новая тема Ответить
Письмо в техподдержку 1С
[Прочее]

ЗУП 8.1. Запрос по начислениям физ лиц.

agile_roman
читатель
офлайн
Дата регистрации: 06.02.2010
Сообщений: 51
Пост №1
 
13.09.2010 16:06

Добрый день. Задача состоит в следующем. У физ лица есть несколько сотрудников, надо собрать все начисления по физ лицу, но ставку взять максимальную, т.е. я делаю так:<br>ИТОГИ<br> СУММА(Результат),<br> МАКСИМУМ(КоличествоСтавок)<br>ПО<br> ОБЩИЕ,<br> Сотрудник<br>Только вот в итоговой строке надо получить не максимум из всех ставок, а сумму ставок именно по группировкам(если для физ лица из всех сотрудников макс =1 ее и суммируем). Нельзя поставить СУММА(КоличествоСтавок), тогда и для физ лица, и для общих итогов получится сумма всех сотрудников. Делать через вложенный запрос не получится, потому что мой запрос состоит из четырех, три из которых временные таблицы.

ВРедная
читатель
офлайн
Дата регистрации: 03.02.2007
Сообщений: 954
Пост №2
 
13.09.2010 18:11

А четвертую временную таблицу сделать, в которой будет считаться максимум, а в итоговом запросе суммирование?<br>И почему наличие временных таблиц мешает вложенному запросу?

agile_roman
читатель
офлайн
Дата регистрации: 06.02.2010
Сообщений: 51
Пост №3
 
13.09.2010 18:15

"Начисления складываются из четырех подазпросов <br>1) основные начисления по полной ставке<br>2) доп начисления по полной ставке<br>3,4) то же самое для совмещения<br>поэтому сложно их все слепить и вывести максимум<br> "ВЫБРАТЬ<br> | ЗанятыеШтатныеЕдиницыОрганизаций.Сотрудник,<br> | МАКСИМУМ(ЗанятыеШтатныеЕдиницыОрганизаций.Период) КАК Период<br> |ПОМЕСТИТЬ ЗанимаемыхСтавок<br> |ИЗ<br> | РегистрНакопления.ЗанятыеШтатныеЕдиницыОрганизаций КАК ЗанятыеШтатныеЕдиницыОрганизаций<br> |ГДЕ<br> |ЗанятыеШтатныеЕдиницыОрганизаций.Период <= &начпер<br> |СГРУППИРОВАТЬ ПО<br> | ЗанятыеШтатныеЕдиницыОрганизаций.Сотрудник<br> |;<br> |<br> |////////////////////////////////////////////////////////////­////////////////////<br> |ВЫБРАТЬ<br> | ЗанимаемыхСтавок.Сотрудник,<br> | ЗанятыеШтатныеЕдиницыОрганизаций.КоличествоСтавок,<br> | ЗанимаемыхСтавок.Период,<br> | ЗанятыеШтатныеЕдиницыОрганизаций.Должность<br> |ПОМЕСТИТЬ Ставки<br> |ИЗ<br> | РегистрНакопления.ЗанятыеШтатныеЕдиницыОрганизаций КАК ЗанятыеШтатныеЕдиницыОрганизаций<br> | ЛЕВОЕ СОЕДИНЕНИЕ ЗанимаемыхСтавок КАК ЗанимаемыхСтавок<br> | ПО ЗанятыеШтатныеЕдиницыОрганизаций.Период = ЗанимаемыхСтавок.Период<br> | И ЗанятыеШтатныеЕдиницыОрганизаций.Сотрудник = ЗанимаемыхСтавок.Сотрудник<br> |ГДЕ<br> | ЗанятыеШтатныеЕдиницыОрганизаций.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)<br> |;<br> |<br> |////////////////////////////////////////////////////////////­////////////////////<br> |ВЫБРАТЬ РАЗЛИЧНЫЕ<br> | ОН.ФизЛицо<br> |ПОМЕСТИТЬ ФизЛица<br> |ИЗ<br> | РегистрРасчета.БУОсновныеНачисления КАК ОН<br> | ЛЕВОЕ СОЕДИНЕНИЕ Ставки КАК Ставки<br> | ПО ОН.Сотрудник = Ставки.Сотрудник<br> |ГДЕ<br> | ОН.ПериодРегистрации >= &НачПер<br> | И ОН.ПериодРегистрации <= КОНЕЦПЕРИОДА(&КонПер, МЕСЯЦ)<br> | И (НЕ ОН.ВидРасчета В (&КомпЛит))<br> | И ОН.Сотрудник.ВидЗанятости = &ОснМестоРаботы<br> | И Ставки.КоличествоСтавок >=1<br> | И (НЕ ОН.Сотрудник В<br> | (ВЫБРАТЬ<br> | ОсновныеНачисленияРаботниковОрганизаций.Сотрудник<br> | ИЗ<br> | РегистрРасчета.БУОсновныеНачисления КАК ОсновныеНачисленияРаботниковОрганизаций<br> | ГДЕ<br> | ОсновныеНачисленияРаботниковОрганизаций.ВидРасчета В (&почасовка)))"<br> +ТекстУсловия+"<br> |;<br> |<br> |////////////////////////////////////////////////////////////­////////////////////<br> |ВЫБРАТЬ РАЗЛИЧНЫЕ<br> | ОН.Сотрудник.Наименование КАК Сотрудник,<br> | ОН.Сотрудник.Должность КАК Должность,<br> | СУММА(ОН.Результат) КАК Результат,<br> | Ставки.КоличествоСтавок КАК КоличествоСтавок<br> |ИЗ<br> | РегистрРасчета.БУОсновныеНачисления КАК ОН<br> | ЛЕВОЕ СОЕДИНЕНИЕ Ставки КАК Ставки<br> | ПО ОН.Сотрудник = Ставки.Сотрудник<br> |ГДЕ<br> | ОН.ПериодРегистрации >= &НачПер<br> | И ОН.ПериодРегистрации <= КОНЕЦПЕРИОДА(&КонПер, МЕСЯЦ)<br> | И (НЕ ОН.ВидРасчета В (&КомпЛит))<br> | И ОН.Сотрудник.ВидЗанятости = &ОснМестоРаботы<br> | И Ставки.КоличествоСтавок >=1<br> | И ОН.Результат <> 0<br> | И (НЕ ОН.Сотрудник В<br> | (ВЫБРАТЬ<br> | ОсновныеНачисленияРаботниковОрганизаций.Сотрудник<br> | ИЗ<br> | РегистрРасчета.БУОсновныеНачисления КАК ОсновныеНачисленияРаботниковОрганизаций<br> | ГДЕ<br> | ОсновныеНачисленияРаботниковОрганизаций.ВидРасчета В (&почасовка)))<br> | И ОН.КОСГУ = &КОСГУ211"<br> +ТекстУсловия+"<br> |СГРУППИРОВАТЬ ПО<br> |ОН.Сотрудник.Наименование,<br> |ОН.Сотрудник.Должность,<br> |Ставки.КоличествоСтавок<br> |<br> |ОБЪЕДИНИТЬ ВСЕ<br> |<br> |ВЫБРАТЬ<br> | ДополнительныеНачисленияРаботниковОрганизаций.Сотрудник.Наименование,<br> | ДополнительныеНачисленияРаботниковОрганизаций.Сотрудник.Должность,<br> | СУММА(ДополнительныеНачисленияРаботниковОрганизаций.Результат),<br> | Ставки.КоличествоСтавок<br> |ИЗ<br> | РегистрРасчета.БУДополнительныеНачисления КАК ДополнительныеНачисленияРаботниковОрганизаций<br> | ЛЕВОЕ СОЕДИНЕНИЕ Ставки КАК Ставки<br> | ПО ДополнительныеНачисленияРаботниковОрганизаций.Сотрудник = Ставки.Сотрудник<br> |ГДЕ<br> | ДополнительныеНачисленияРаботниковОрганизаций.ПериодРегистрации >= &НачПер<br> | И ДополнительныеНачисленияРаботниковОрганизаций.ПериодРегистрации <= КОНЕЦПЕРИОДА(&КонПер, МЕСЯЦ)<br> | И ДополнительныеНачисленияРаботниковОрганизаций.Сотрудник.ВидЗанятости = &ОснМестоРаботы<br> | И Ставки.КоличествоСтавок >=1<br> | И ДополнительныеНачисленияРаботниковОрганизаций.Результат <> 0<br> | И ДополнительныеНачисленияРаботниковОрганизаций.ВидРасчета <> &ДоговорПодряда<br> | И ДополнительныеНачисленияРаботниковОрганизаций.КОСГУ = &КОСГУ211"<br> <br> +ТекстУсловияДоп+"<br> |СГРУППИРОВАТЬ ПО<br> |ДополнительныеНачисленияРаботниковОрганизаций.Сотрудник.Наименование,<br> |ДополнительныеНачисленияРаботниковОрганизаций.Сотрудник.Должность,<br> |Ставки.КоличествоСтавок<br> |<br> |ОБЪЕДИНИТЬ ВСЕ<br> |<br> |ВЫБРАТЬ<br> | ОН.Сотрудник.Наименование,<br> | ОН.Сотрудник.Должность,<br> | СУММА(ОН.Результат) КАК Результат,<br> | Ставки.КоличествоСтавок КАК КоличествоСтавок<br> | ИЗ<br> |ФизЛица КАК ФизЛица<br> | ЛЕВОЕ СОЕДИНЕНИЕ РегистрРасчета.БУОсновныеНачисления КАК ОН<br> | ЛЕВОЕ СОЕДИНЕНИЕ Ставки КАК Ставки<br> | ПО ОН.Сотрудник = Ставки.Сотрудник<br> | ПО ФизЛица.ФизЛицо = ОН.ФизЛицо<br> |<br> |ГДЕ<br> | ОН.ПериодРегистрации >= &НачПер<br> | И ОН.ПериодРегистрации <= КОНЕЦПЕРИОДА(&КонПер, МЕСЯЦ)<br> | И (НЕ ОН.ВидРасчета В (&КомпЛит))<br> | И ОН.Сотрудник.ВидЗанятости = &ВнутрСовм<br> | И ОН.Результат<> 0<br> | И ОН.КОСГУ = &КОСГУ211"<br> +ТекстУсловия+"<br> |СГРУППИРОВАТЬ ПО<br> |ОН.Сотрудник.Наименование,<br> |ОН.Сотрудник.Должность,<br> |Ставки.КоличествоСтавок<br> |<br> |ОБЪЕДИНИТЬ ВСЕ<br> |<br> |ВЫБРАТЬ<br> | ДополнительныеНачисленияРаботниковОрганизаций.Сотрудник.Наименование,<br> | ДополнительныеНачисленияРаботниковОрганизаций.Сотрудник.Должность,<br> | СУММА(ДополнительныеНачисленияРаботниковОрганизаций.Результат),<br> | Ставки.КоличествоСтавок<br> |ИЗ<br> | РегистрРасчета.БУДополнительныеНачисления КАК ДополнительныеНачисленияРаботниковОрганизаций<br> | ЛЕВОЕ СОЕДИНЕНИЕ Ставки КАК Ставки<br> | ПО ДополнительныеНачисленияРаботниковОрганизаций.Сотрудник = Ставки.Сотрудник<br> | ЛЕВОЕ СОЕДИНЕНИЕ ФизЛица КАК ФизЛица<br> | ПО ДополнительныеНачисленияРаботниковОрганизаций.ФизЛицо = ФизЛица.ФизЛицо<br> |ГДЕ<br> | ДополнительныеНачисленияРаботниковОрганизаций.ПериодРегистрации >= &НачПер<br> | И ДополнительныеНачисленияРаботниковОрганизаций.ПериодРегистрации <= КОНЕЦПЕРИОДА(&КонПер, МЕСЯЦ)<br> | И ДополнительныеНачисленияРаботниковОрганизаций.Сотрудник.ВидЗанятости = &ВнутрСовм<br> | И ДополнительныеНачисленияРаботниковОрганизаций.ВидРасчета <> &ДоговорПодряда<br> | И ДополнительныеНачисленияРаботниковОрганизаций.результат <> 0<br> | И ДополнительныеНачисленияРаботниковОрганизаций.КОСГУ = &КОСГУ211"<br> +ТекстУсловияДоп+"<br> <br> |СГРУППИРОВАТЬ ПО<br> |ДополнительныеНачисленияРаботниковОрганизаций.Сотрудник.Наименование,<br> |ДополнительныеНачисленияРаботниковОрганизаций.Сотрудник.Должность,<br> |Ставки.КоличествоСтавок<br> |<br> |УПОРЯДОЧИТЬ ПО<br> |Сотрудник<br> |ИТОГИ<br> |СУММА(Результат),<br> |МАКСИМУМ(КоличествоСтавок)<br> |ПО<br> |Сотрудник";"

ВРедная
читатель
офлайн
Дата регистрации: 03.02.2007
Сообщений: 954
Пост №4
 
14.09.2010 08:26

Последнюю таблицу делаешь временной, убирая из нее итоги оставляешь группировку только там, где нужен максимум.<br>Потом добавляешь еще 1 запрос, уже финальный, не временную таблицу, в которой используешь эту предыдущую, группируешь уже как надо со всем суммами.

agile_roman
читатель
офлайн
Дата регистрации: 06.02.2010
Сообщений: 51
Пост №5
 
14.09.2010 11:09

я так пробовал в первую очередь. Ошибка получается "синтаксическая ошибка в "поместить". Я так понимаю это из-за того, что четыре запроса у меня объединены в результирующем и "поместить" ставится после первого "выбрать", а таких выбрать там 4.

ВРедная
читатель
офлайн
Дата регистрации: 03.02.2007
Сообщений: 954
Пост №6
 
15.09.2010 09:57

Пользуйтесь конструктором, будет понятно, что можно, что нет и как.

Показывать по 10 20 40 сообщений

Читают тему:

Быстрый переход
Для технических специалистов
  • Книга жалоб и предложений по работе сайта
  • Для технических специалистов
  • Представление регламентированной отчетности
  • Говорильня
  • Бухгалтерский учет: обсуждаем проекты нормативных актов и рекомендаций по ведению учета от БМЦ
  • Новый порядок применения ККТ (онлайн кассы с передачей сведений в ФНС)
  • Интернет-конференция: Оформление командировок по новым правилам
  • МАРКИРОВКА
  • ЕГАИС
  • Учет, налогообложение, автоматизация