Имя: Пароль:
1C
1С v8
Запрос на каждую дату из Регистра сведений
0 Пеппи
 
21.06.12
23:42
Добрый вечер.
Составила запрос, по реквизиту БЦ11 1 марта меняется дата. Проблема в том что данные по Регистру основные начисления после этой даты задваиваются. Не пойму почему.
например:
5 200,00        доплата молодым специалистам            01.02.2012 0:00:00
2 500,00        Надбавка по положению 30-02            01.02.2012 0:00:00
6 466,16        Оплата отпуска по календарным дням    01.03.2012 0:00:00
6 466,16        Оплата отпуска по календарным дням    01.03.2012 0:00:00
16 165,40        Оплата отпуска по календарным дням    01.03.2012 0:00:00
16 165,40        Оплата отпуска по календарным дням    01.03.2012 0:00:00
759,88            Надбавка                            01.03.2012 0:00:00
759,88            Надбавка                                01.03.2012 0:00:00

   Запрос=Новый Запрос;
   Запрос.Текст=
   "ВЫБРАТЬ
   |    ОсновныеНачисленияРаботниковОрганизаций.ФизЛицо,
   |    ОсновныеНачисленияРаботниковОрганизаций.Результат,
   |    ОсновныеНачисленияРаботниковОрганизаций.ВидРасчета,
   |    ОсновныеНачисленияРаботниковОрганизаций.ВидРасчета.Код,
   |    ОсновныеНачисленияРаботниковОрганизаций.Сотрудник,
   |    РаботникиОрганизаций.БЦ11,
   |    ОсновныеНачисленияРаботниковОрганизаций.ПериодРегистрации,
   |    ЕСТЬNULL(РаботникиОрганизаций.БЦ11.Код, 0) КАК код,
   |    ЕСТЬNULL(РаботникиОрганизаций.БЦ11.Наименование, """") КАК наименование,
   |    РаботникиОрганизаций.Период,
   |    ОсновныеНачисленияРаботниковОрганизаций.ПериодДействия
   |ИЗ
   |    РегистрРасчета.ОсновныеНачисленияРаботниковОрганизаций КАК ОсновныеНачисленияРаботниковОрганизаций
   |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.РаботникиОрганизаций КАК РаботникиОрганизаций
   |        ПО ОсновныеНачисленияРаботниковОрганизаций.Сотрудник = РаботникиОрганизаций.Сотрудник
   |            И ОсновныеНачисленияРаботниковОрганизаций.Организация = РаботникиОрганизаций.Организация
   |            И ОсновныеНачисленияРаботниковОрганизаций.ПериодДействия <= РаботникиОрганизаций.Период
   |ГДЕ
   |    ОсновныеНачисленияРаботниковОрганизаций.ПериодДействияНачало >= &ПериодДействияНачало
   |    И ОсновныеНачисленияРаботниковОрганизаций.ПериодДействияКонец <= &ПериодДействияКонец
   |    И ОсновныеНачисленияРаботниковОрганизаций.Результат <> 0
   |    И РаботникиОрганизаций.БЦ11 <> &БЦ11";
   
   
   Запрос.УстановитьПараметр("ПериодДействияНачало",НачПериода);
   Запрос.УстановитьПараметр("ПериодДействияКонец",Конецмесяца(КонПериода));
   Запрос.УстановитьПараметр("БЦ11",Справочники.ЗначенияСвойствОбъектов.Пустаяссылка());
   результат0=запрос.Выполнить().Выгрузить();
1 1C-band
 
21.06.12
23:44
2 zak555
 
21.06.12
23:44
РС == РР ? о_О
3 Пеппи
 
21.06.12
23:46
(2) чего?
4 Amra
 
21.06.12
23:49
(33) РР = Регистр Расчета
5 andrewks
 
21.06.12
23:50
как звучит задача?
6 Пеппи
 
21.06.12
23:56
(5) реквизит БЦ11 это для соответствующего отчета. Я создала такой реквизит в РС РаботникиОрганизаций и пытаюсь присоединить его по периодам к начислениям.  Чтобы не править РР. Отбираю начисления по признаку БЦ11.
7 oleg_prg
 
21.06.12
23:58
Попробуй ВЫБРАТЬ РАЗЛИЧНЫЕ
8 Пеппи
 
22.06.12
00:06
(7) не помогло.

если убрать знак равенства из ОсновныеНачисленияРаботниковОрганизаций.ПериодДействия <= РаботникиОрганизаций.Период  то количество начислений становится нормально, но тогда значение реквизита БЦ11 не меняется с 1 марта.

Что то не так у меня в запросе?
9 Пеппи
 
22.06.12
00:07
мне группировать не нужно как это делается в Книга знаний: Срез последних на каждую дату в запросе  может в этом проблема?
10 Пеппи
 
22.06.12
08:45
ап
11 фросия
 
22.06.12
08:54
может тебе нужно добавить условие на рег сведений? срез последних взять например?
12 Пеппи
 
22.06.12
08:59
не, срез последних даст только последние данные а мне нужно учесть изменения в этот периоде.
13 фросия
 
22.06.12
09:06
смотри,
в РС у тебя есть записи с периодом < 1марта и с периодом =1 марта, при соединении обе эти записи подходят под условие
"ОсновныеНачисленияРаботниковОрганизаций.ПериодДействия <= РаботникиОрганизаций.Период"
и за март строчки задваиваются. а за февраль в РС 1 строка, поэтому набор из РР 1раз соединяется.
14 Пеппи
 
22.06.12
09:10
(13) да верно, я тоже так подумала, но если я уберу знак равенства то строки не задваиваются но тогда не меняется значение БЦ11 как мне нужно. :(

Я уже решила что вручную в цикле буду проверять даты.
Закон Брукера: Даже маленькая практика стоит большой теории.