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


1С:Предприятие :: 1С:Предприятие 8 общая

Не могу понять ошибку в запросе.Помогите!

Не могу понять ошибку в запросе.Помогите!
Я
   ijusti
 
09.01.13 - 12:54
Запрос строится динамически, поэтому на небольшую кривоватость не обращайте внимание. Ошибка в последнем запросе для поля удержано, хотя как по мне от остальных не отличается
Итак запрос:
ВЫБРАТЬ РАЗЛИЧНЫЕ
    РаботникиОрганизации.Сотрудник КАК Сотрудник,
    РаботникиОрганизации.Ссылка.ВидВыплаты КАК ВидВыплаты,
    ЕСТЬNULL(РаботникиОрганизации.СуммаГрязными, 0) КАК Начислено,
    ЕСТЬNULL(НДФЛ.Налог, 0) КАК НДФЛ,
    ЕСТЬNULL(ВзносыЕСВоплататруда.Налог, 0) КАК ВзносыЕСВоплататруда
ПОМЕСТИТЬ ЗарплатаКВыплате
ИЗ
    Документ.ЗарплатаКВыплатеОрганизаций.РаботникиОрганизации КАК РаботникиОрганизации
        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗарплатаКВыплатеОрганизаций.НДФЛ КАК НДФЛ
        ПО РаботникиОрганизации.Ссылка = НДФЛ.Ссылка
            И РаботникиОрганизации.Сотрудник = НДФЛ.Сотрудник
        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗарплатаКВыплатеОрганизаций.Взносы КАК ВзносыЕСВоплататруда
        ПО РаботникиОрганизации.Сотрудник = ВзносыЕСВоплататруда.Сотрудник
            И РаботникиОрганизации.Ссылка = ВзносыЕСВоплататруда.Ссылка
            И (ВзносыЕСВоплататруда.ВидРасчета = &ВзносыЕСВоплататруда) 
ГДЕ
    РаботникиОрганизации.Ссылка.Проведен
    И РаботникиОрганизации.Ссылка.Дата МЕЖДУ &НачалоПериода И &КонецПериода
    И РаботникиОрганизации.Ссылка.Организация = &Организация
    И РаботникиОрганизации.Ссылка.ВидВыплаты В (&ВидыВыплат)

ИНДЕКСИРОВАТЬ ПО
    ВидВыплаты

;

 ////////////////////////////////////////////////////////////////////////////////
 
ВЫБРАТЬ
    ЗарплатаКВыплате.Сотрудник КАК Сотрудник,
    ЗарплатаКВыплате.Начислено,
    ЗарплатаКВыплате.НДФЛ    ,
    ЗарплатаКВыплате.ВзносыЕСВоплататруда
ПОМЕСТИТЬ НачисленоАванс
ИЗ
    ЗарплатаКВыплате КАК ЗарплатаКВыплате
ГДЕ
    ЗарплатаКВыплате.ВидВыплаты = &НачисленоАванс
ИНДЕКСИРОВАТЬ ПО
    Сотрудник
;

 ////////////////////////////////////////////////////////////////////////////////
 
ВЫБРАТЬ
    ЗарплатаКВыплате.Сотрудник КАК Сотрудник,
    ЗарплатаКВыплате.Начислено,
    ЗарплатаКВыплате.НДФЛ    ,
    ЗарплатаКВыплате.ВзносыЕСВоплататруда
ПОМЕСТИТЬ НачисленоАванспопредварительномурасчету
ИЗ
    ЗарплатаКВыплате КАК ЗарплатаКВыплате
ГДЕ
    ЗарплатаКВыплате.ВидВыплаты = &НачисленоАванспопредварительномурасчету
ИНДЕКСИРОВАТЬ ПО
    Сотрудник
;

 ////////////////////////////////////////////////////////////////////////////////
 
ВЫБРАТЬ
ЕСТЬNULL( НачисленоАванс.Сотрудник,ЕСТЬNULL( НачисленоАванспопредварительномурасчету.Сотрудник,"Не указано"))   КАК Сотрудник,
ЕСТЬNULL( НачисленоАванс.Сотрудник.Физлицо.КодПоДРФО,ЕСТЬNULL( НачисленоАванспопредварительномурасчету.Сотрудник.Физлицо.КодПоДРФО,"Не указано"))   КАК ИНН,
СУММА(ЕСТЬNULL(НачисленоАванс.НДФЛ, 0) + ЕСТЬNULL(НачисленоАванспопредварительномурасчету.НДФЛ, 0))   КАК НДФЛ,
СУММА(ЕСТЬNULL(НачисленоАванс.Начислено, 0)) + СУММА(ЕСТЬNULL(НачисленоАванспопредварительномурасчету.Начислено, 0))   КАК Начислено,
СУММА(ЕСТЬNULL(НачисленоАванс.ВзносыЕСВоплататруда, 0) + ЕСТЬNULL(НачисленоАванспопредварительномурасчету.ВзносыЕСВоплататруда, 0)) + 
СУММА(ЕСТЬNULL(НачисленоАванс.НДФЛ, 0) + ЕСТЬNULL(НачисленоАванспопредварительномурасчету.НДФЛ, 0))   КАК Удержано,
  СУММА(ЕСТЬNULL(НачисленоАванс.Начислено, 0)) КАК НачислениеАванс,
  СУММА(ЕСТЬNULL(НачисленоАванспопредварительномурасчету.Начислено, 0)) КАК НачислениеАванспопредварительномурасчету,
  СУММА(ЕСТЬNULL(НачисленоАванс.ВзносыЕСВоплататруда, 0) + ЕСТЬNULL(НачисленоАванспопредварительномурасчету.ВзносыЕСВоплататруда, 0)) КАК ВзносыЕСВоплататруда
ИЗ
    НачисленоАванс КАК НачисленоАванс 
        ПОЛНОЕ СОЕДИНЕНИЕ НачисленоАванспопредварительномурасчету КАК НачисленоАванспопредварительномурасчету
        ПО НачисленоАванс.Сотрудник = НачисленоАванспопредварительномурасчету.Сотрудник
СГРУППИРОВАТЬ ПО

ЕСТЬNULL( НачисленоАванс.Сотрудник,ЕСТЬNULL( НачисленоАванспопредварительномурасчету.Сотрудник,"Не указано")) , 
ЕСТЬNULL( НачисленоАванс.Сотрудник.Физлицо.КодПоДРФО,ЕСТЬNULL( НачисленоАванспопредварительномурасчету.Сотрудник.Физлицо.КодПоДРФО,"Не указано"))

УПОРЯДОЧИТЬ ПО
    Сотрудник
 
 
   mikecool
 
1 - 09.01.13 - 12:56
а ошибка где?
   ijusti
 
2 - 09.01.13 - 12:56
здесь
СУММА(ЕСТЬNULL(НачисленоАванс.НДФЛ, 0) + ЕСТЬNULL(НачисленоАванспопредварительномурасчету.НДФЛ, 0))   КАК Удержано,
   Deon
 
3 - 09.01.13 - 13:00
а текст ошибки-то какой?
   Defender aka LINN
 
4 - 09.01.13 - 13:03
(3) Так неинтересно же будет
   ijusti
 
5 - 09.01.13 - 13:04
ошибка приустановке значения атрибута контекста(текст):{65,7}:неверные параметры "+"
СУММА(<<?>>ЕСТЬNULL(НачисленоАванс.НДФЛ, 0) + ЕСТЬNULL(НачисленоАванспопредварительномурасчету.НДФЛ, 0))   КАК Удержано,
   hhhh
 
6 - 09.01.13 - 13:07
(5) а почему по-разному делаете? НДФЛ так, а в следующих строчках другой способ? мегаэксперимент какой-то затеяли?
   viktor_vv
 
7 - 09.01.13 - 13:10
(5) Так у тебя там
Сумма() + Сумма()

Не покатит.
   Ёпрст
 
8 - 09.01.13 - 13:11
(7) ? с чего это не покатит ?
И у него не так, кстати, у него сумма (аргумент+аргкмент)
   viktor_vv
 
9 - 09.01.13 - 13:11
Так скорее всего.

СУММА(ЕСТЬNULL(НачисленоАванс.ВзносыЕСВоплататруда, 0) + ЕСТЬNULL(НачисленоАванспопредварительномурасчету.ВзносыЕСВоплататруда, 0) + 
ЕСТЬNULL(НачисленоАванс.НДФЛ, 0) + ЕСТЬNULL(НачисленоАванспопредварительномурасчету.НДФЛ, 0))   КАК Удержано,
   Deon
 
10 - 09.01.13 - 13:11
(7) Да ладно, там же Сумма(а+б)
 
 Рекламное место пустует
   ijusti
 
11 - 09.01.13 - 13:12
(7) запрос динамический
   viktor_vv
 
12 - 09.01.13 - 13:12
Скопировал.


СУММА(ЕСТЬNULL(НачисленоАванс.ВзносыЕСВоплататруда, 0) + ЕСТЬNULL(НачисленоАванспопредварительномурасчету.ВзносыЕСВоплататруда, 0)) + 

СУММА(ЕСТЬNULL(НачисленоАванс.НДФЛ, 0) + ЕСТЬNULL(НачисленоАванспопредварительномурасчету.НДФЛ, 0))   КАК Удержано,
   Reset
 
13 - 09.01.13 - 13:12
(5)Скорее всего .НДФЛ не нравится агрегатной ф-ии
   Deon
 
14 - 09.01.13 - 13:13
А в НДФЛ точно число хранится везде?
   Reset
 
15 - 09.01.13 - 13:15
(13) точнее, не агрегатной функции, а еще при сложении (+)
   ijusti
 
16 - 09.01.13 - 13:18
ту же ошибку выдает, если писать так
ЕСТЬNULL(НачисленоАванс.ВзносыЕСВоплататруда, 0)  +ЕСТЬNULL(НачисленоАванспопредварительномурасчету.ВзносыЕСВоплататруда, 0)
то есть без суммы
   Reset
 
17 - 09.01.13 - 13:18
Тип Документ.ЗарплатаКВыплатеОрганизаций.НДФЛ.Налог проверь
   mikecool
 
18 - 09.01.13 - 13:21
а сумма() + сумма() работает в запросе? что то сомневаюсь
   viktor_vv
 
19 - 09.01.13 - 13:22
(8) Таки да
Сумма() + Сумма() 

прокатит.
   hhhh
 
20 - 09.01.13 - 13:22
(16) ну вот это бредовое выражение исправь
ЕСТЬNULL(НДФЛ.Налог, 0) КАК НДФЛ,

зачем ты одно и то же слово НДФЛ в восьми местах используешь?
   ijusti
 
21 - 09.01.13 - 13:23
я понял ошибку
я взял НДФЛ.налог - это число, а взносы.налог - это не число
   Reset
 
22 - 09.01.13 - 13:23
ну и так, поворчать:

Использовать "НДФЛ" одновременно как алиас и как имя поля не комильфо.
Я бы предложил ЗарплатаКВыплатеОрганизацийНДФЛ для тч и
НДФЛНалог или НДФЛЗначение или НалогЗначение для имени поля
   Reset
 
23 - 09.01.13 - 13:24
(20) Опередил :)


Список тем форума
Рекламное место пустует  Рекламное место пустует
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует