|
Запрос конструкция В не отрабатывает | ☑ | ||
---|---|---|---|---|
0
Пеппи
11.07.12
✎
00:00
|
Имеется запрос
| ВЫБРАТЬ | ОсновныеНачисленияРаботниковОрганизаций.ФизЛицо КАК ФизЛицо, | СУММА(ОсновныеНачисленияРаботниковОрганизаций.Результат) КАК ЗарПлата, | СУММА(ВЫБОР | КОГДА ОсновныеНачисленияРаботниковОрганизаций.ВидРасчета В (&ТарифнаяЧасть) | ТОГДА ОсновныеНачисленияРаботниковОрганизаций.Результат | КОНЕЦ) КАК ТарифныйЗаработок, | СУММА(ВЫБОР | КОГДА ОсновныеНачисленияРаботниковОрганизаций.ВидРасчета В (&РК) | ТОГДА ОсновныеНачисленияРаботниковОрганизаций.Результат | КОНЕЦ) КАК РК, | СУММА(ВЫБОР | КОГДА ОсновныеНачисленияРаботниковОрганизаций.ВидРасчета.ЗачетОтработанногоВремени | ТОГДА ОсновныеНачисленияРаботниковОрганизаций.ОтработаноЧасов | ИНАЧЕ ОсновныеНачисленияРаботниковОрганизаций.ОтработаноЧасов | КОНЕЦ) КАК ОтработаноЧасов1, | СУММА(ОсновныеНачисленияРаботниковОрганизаций.НормаЧасов) КАК НормаЧасов, | ОсновныеНачисленияРаботниковОрганизаций.Сотрудник.Должность.КатегорияСтатистическогоУчета КАК СотрудникДолжностьКатегорияСтатистическогоУчета | ИЗ | РегистрРасчета.ОсновныеНачисленияРаботниковОрганизаций КАК ОсновныеНачисленияРаботниковОрганизаций | ГДЕ | ОсновныеНачисленияРаботниковОрганизаций.ПериодДействияНачало >= &НачалоПериода | И ОсновныеНачисленияРаботниковОрганизаций.ПериодДействияКонец <= &КонецПериода | И ОсновныеНачисленияРаботниковОрганизаций.Организация = &Организация | И ОсновныеНачисленияРаботниковОрганизаций.ВидРасчета В(&КодНачислений) СписокНачислений = Новый СписокЗначений; СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00003")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00006")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00007")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00011")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00012")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00013")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00018")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00019")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00023")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00029")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00031")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00046")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00048")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00049")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00035")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00036")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00039")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00045")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("04")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00008")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00021")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00042")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00052")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00072")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00047")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00010")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00015")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00016")); СписокНачислений.Добавить(ПланыВидовРасчета.ДополнительныеНачисленияОрганизаций.НайтиПоКоду("00034")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00044")); СписокНачислений.Добавить(ПланыВидовРасчета.ДополнительныеНачисленияОрганизаций.НайтиПоКоду("00054")); СписокНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.НайтиПоКоду("00065")); Запрос.УстановитьПараметр("КодНачислений",СписокНачислений); Видно что не все начисления указанные в СписокНачислений попадают в запрос. Список Значений слишком большой? И как быть тогда? Мне нужны только эти начисления. |
|||
1
France
11.07.12
✎
00:03
|
а найти по коду всегда срабатывает?? а сделать цикл и проверять не судьба??
|
|||
2
Пеппи
11.07.12
✎
00:05
|
Если уменьшить количество значений в СписокЗначений то отрабатывает, запрос выводит их.
|
|||
3
andrewks
11.07.12
✎
00:05
|
"Видно что не все начисления указанные в СписокНачислений попадают в запрос"
мне не видно |
|||
4
Пеппи
11.07.12
✎
00:05
|
вот мне и непонятно почему так.
|
|||
5
Пеппи
11.07.12
✎
00:06
|
(3) я проверяю же результат запроса.
|
|||
6
дущ
11.07.12
✎
00:06
|
(0) Может в регистре расчета тупо нет ВСЕХ указанных видов расчета за этот период по этой организации?
|
|||
7
Пеппи
11.07.12
✎
00:07
|
(6) да, это так. это имеет значение?
|
|||
8
acsent
11.07.12
✎
00:08
|
СписокНачислений вообще нет в запросе
|
|||
9
Пеппи
11.07.12
✎
00:09
|
(8) параметру КодНачислений присваивается
|
|||
10
дущ
11.07.12
✎
00:10
|
(7) естественно, ты же вроде как записи из регистра выбираешь, а уже НА ВЫБРАННЫЕ накладываешь ограничение. И если их нет в исходной выборке, откуда ж они появятся?
|
|||
11
andrewks
11.07.12
✎
00:12
|
(10) чего-чего?
|
|||
12
Пеппи
11.07.12
✎
00:13
|
(10) не так, всех перечисленных видов расчета может и не быть в этом периоде, но основные то точно есть- по окладу например. я собираю отработанные часы в этом периоде. ну и увидела что часы у некоторых нулевые, т.е. оклад не попал в выборку почему то.
|
|||
13
Maniac
11.07.12
✎
00:14
|
эээ а у тебя точно все они элементы? или есть группы
|
|||
14
andrewks
11.07.12
✎
00:14
|
релиз платформы какой?
|
|||
15
Maniac
11.07.12
✎
00:14
|
и почему внизу есть разные типы значений
|
|||
16
Пеппи
11.07.12
✎
00:14
|
или мне только совет в (1) поможет?
|
|||
17
Пеппи
11.07.12
✎
00:16
|
(15) я не показала запрос для регистра ДополнительныеНачисленияРаботниковОрганизаций. я использую объединение запросов.
|
|||
18
acsent
11.07.12
✎
00:16
|
а без фильтра попадают?
|
|||
19
Пеппи
11.07.12
✎
00:16
|
(14) 8.2.15
|
|||
20
Maniac
11.07.12
✎
00:16
|
(17) и парамтр для них одинаковый чтоли?
|
|||
21
Пеппи
11.07.12
✎
00:16
|
(18) конечно
|
|||
22
andrewks
11.07.12
✎
00:17
|
(19) мало цифр
(17) мало кода |
|||
23
Пеппи
11.07.12
✎
00:17
|
(20) да, один использую. нельзя так?
|
|||
24
andrewks
11.07.12
✎
00:17
|
(21) зер шлехт
|
|||
25
Maniac
11.07.12
✎
00:21
|
Мне кажется из за смешанных типов в параметре. плюс проверить есть ли там группы тк условие уже тогда должно быть другим.
|
|||
26
Пеппи
11.07.12
✎
00:21
|
v8: условие в тексте запроса
Оператор В позволяет проверить, совпадает ли значение выражения, указанного справа от него, с одним из значений, описанных слева. Если совпадает хотя бы с одним – результатом оператора будет Истина, иначе – Ложь. Вроде должно работать |
|||
27
Пеппи
11.07.12
✎
00:22
|
(25) да, спасибо. поняла. попробую.
|
|||
28
Maniac
11.07.12
✎
00:23
|
И вообще является ли ВИД РАСЧЕТА типом ОсновныеНачисленияОрганизаций
А то я хоть зарплату ни бум бум но интуиция подсказывает что это вообще две РАЗНЫЕ вещи. |
|||
29
Maniac
11.07.12
✎
00:24
|
да если условие не работает это сто пудово ставится условие по какому то левому типу значений.
|
|||
30
Maniac
11.07.12
✎
00:25
|
какой тип значения имеет вид расчета? ты уверена что начисления? как то даже по слуху это две разные вещи.
|
|||
31
Пеппи
11.07.12
✎
00:26
|
(30) да конечно. видимо проблема в (25). Групп точно нет.
|
|||
32
Maniac
11.07.12
✎
00:29
|
да хрень у тебя в запросе
КОГДА ОсновныеНачисленияРаботниковОрганизаций.ВидРасчета В (&ТарифнаяЧасть) плюс еще в ГДЕ одно исключает другое в принципе |
|||
33
Maniac
11.07.12
✎
00:32
|
или полный текст тогда показывай со всеми параметрами
|
|||
34
Пеппи
11.07.12
✎
00:35
|
Да это не мой запрос, корректирую его под себя.
//Начисления Запрос.Текст = "ВЫБРАТЬ | Начислено.ФизЛицо КАК ФизЛицо, | СУММА(Начислено.ЗарПлата) КАК ЗарПлата, | СУММА(Начислено.ТарифныйЗаработок) КАК ТарифныйЗаработок, | СУММА(Начислено.РК) КАК РК, | СУММА(Начислено.НормаЧасов) КАК НормаЧасов, | СУММА(Начислено.ОтработаноЧасов1) КАК ОтработаноЧасов |ПОМЕСТИТЬ Начисления |ИЗ | (ВЫБРАТЬ | ОсновныеНачисленияРаботниковОрганизаций.ФизЛицо КАК ФизЛицо, | СУММА(ОсновныеНачисленияРаботниковОрганизаций.Результат) КАК ЗарПлата, | СУММА(ВЫБОР | КОГДА ОсновныеНачисленияРаботниковОрганизаций.ВидРасчета В (&ТарифнаяЧасть) | ТОГДА ОсновныеНачисленияРаботниковОрганизаций.Результат | КОНЕЦ) КАК ТарифныйЗаработок, | СУММА(ВЫБОР | КОГДА ОсновныеНачисленияРаботниковОрганизаций.ВидРасчета В (&РК) | ТОГДА ОсновныеНачисленияРаботниковОрганизаций.Результат | КОНЕЦ) КАК РК, | СУММА(ВЫБОР | КОГДА ОсновныеНачисленияРаботниковОрганизаций.ВидРасчета.ЗачетОтработанногоВремени | ТОГДА ОсновныеНачисленияРаботниковОрганизаций.ОтработаноЧасов | ИНАЧЕ ОсновныеНачисленияРаботниковОрганизаций.ОтработаноЧасов | КОНЕЦ) КАК ОтработаноЧасов1, | СУММА(ОсновныеНачисленияРаботниковОрганизаций.НормаЧасов) КАК НормаЧасов, | ОсновныеНачисленияРаботниковОрганизаций.Сотрудник.Должность.КатегорияСтатистическогоУчета КАК СотрудникДолжностьКатегорияСтатистическогоУчета | ИЗ | РегистрРасчета.ОсновныеНачисленияРаботниковОрганизаций КАК ОсновныеНачисленияРаботниковОрганизаций | ГДЕ | ОсновныеНачисленияРаботниковОрганизаций.ПериодДействияНачало >= &НачалоПериода | И ОсновныеНачисленияРаботниковОрганизаций.ПериодДействияКонец <= &КонецПериода | И ОсновныеНачисленияРаботниковОрганизаций.Организация = &Организация | И ОсновныеНачисленияРаботниковОрганизаций.ВидРасчета В(&КодНачислений) | | СГРУППИРОВАТЬ ПО | ОсновныеНачисленияРаботниковОрганизаций.ФизЛицо, | ОсновныеНачисленияРаботниковОрганизаций.Сотрудник.Должность.КатегорияСтатистическогоУчета | | ОБЪЕДИНИТЬ | | ВЫБРАТЬ | ДополнительныеНачисленияРаботниковОрганизаций.ФизЛицо, | СУММА(ДополнительныеНачисленияРаботниковОрганизаций.Результат), | СУММА(ВЫБОР | КОГДА ДополнительныеНачисленияРаботниковОрганизаций.ВидРасчета В (&ТарифнаяЧасть) | ТОГДА ДополнительныеНачисленияРаботниковОрганизаций.Результат | КОНЕЦ), | NULL, | NULL, | NULL, | ДополнительныеНачисленияРаботниковОрганизаций.Сотрудник.Должность.КатегорияСтатистическогоУчета | ИЗ | РегистрРасчета.ДополнительныеНачисленияРаботниковОрганизаций КАК ДополнительныеНачисленияРаботниковОрганизаций | ГДЕ | ДополнительныеНачисленияРаботниковОрганизаций.ПериодРегистрации МЕЖДУ &НачалоПериода И &КонецПериода | И ДополнительныеНачисленияРаботниковОрганизаций.ВидРасчета В(&КодНачислений) | И ДополнительныеНачисленияРаботниковОрганизаций.Организация = &Организация | И ДополнительныеНачисленияРаботниковОрганизаций.ВидРасчета В(&КодНачислений) | | СГРУППИРОВАТЬ ПО | ДополнительныеНачисленияРаботниковОрганизаций.ФизЛицо, | ДополнительныеНачисленияРаботниковОрганизаций.Сотрудник.Должность.КатегорияСтатистическогоУчета) КАК Начислено | |СГРУППИРОВАТЬ ПО | Начислено.ФизЛицо"; Конструкция Выбор используется для другого, сначала отрабатывает условие ГДЕ |
|||
35
Пеппи
11.07.12
✎
00:38
|
СпВидовНачислений = Новый СписокЗначений;
СпВидовНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.ОкладПоДням); СпВидовНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.ОкладПоЧасам); СпВидовНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.ТарифДневной); СпВидовНачислений.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.ТарифЧасовой); Запрос.УстановитьПараметр("ТарифнаяЧасть", СпВидовНачислений); СпВидовНачислений_РК = Новый СписокЗначений; СпВидовНачислений_РК.Добавить(ПланыВидовРасчета.ОсновныеНачисленияОрганизаций.РайонныйКоэффициент); Запрос.УстановитьПараметр("РК", СпВидовНачислений_РК); |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |