Запрос

Тема в разделе "1C и всё что с ней связано", создана пользователем Renat11111, 10 июн 2009.

  1. Renat11111

    Renat11111 Well-Known Member

    Регистрация:
    20 апр 2008
    Сообщения:
    123
    Симпатии:
    0
    У перечисления ПричиныИзмененияСостояния есть еще три значения: Прием на работу, увольнение, перемещение. В запросе должны выбираться токо принятые и перемещенные сотрудники.
    Вот тут как бы отсекаются все кроме принятых тоесть и уволенные и перемещенные. В других местах тоже отбор указан токо для принятых. Как в запрос попадают перемещенные сотрудники для меня вот уже 3 дня загадка. Помогите кто может.
    ГДЕ
    РаботникиОрганизаций.Организация = &парамГоловнаяОрганизация
    И РаботникиОрганизаций.ПричинаИзмененияСостояния = &Прием




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

    Renat11111 Well-Known Member

    Регистрация:
    20 апр 2008
    Сообщения:
    123
    Симпатии:
    0
    Люди плиз помогите понять как все таки в данном запросе в выборку попадают перемещенные сотрудники?
     
  3. Natalya

    Natalya Active Member

    Регистрация:
    2 фев 2008
    Сообщения:
    25
    Симпатии:
    0
    Что значит перемещённые сотрудники? Сотрудники, у которых есть документ "Кадровое перемещение"? Если это так, то они должны попадать, так как у них есть "Приём на работу" и они являются штатными сотрудниками.
     
  4. WildAnther

    WildAnther Гость

    Может тогда метить, если перемещеный такими то доками ставь галочку в регистре, если уволен то галочку другую ну и т.д. и т.п.
     
  5. Renat11111

    Renat11111 Well-Known Member

    Регистрация:
    20 апр 2008
    Сообщения:
    123
    Симпатии:
    0

    Вы не поняли запроса.... Там в отборе отсекаются все записи регистра где реквизиту ИзмененияСостояния присвоено значение отличное от перечислтчения прием. То что отсекаются уволенные это хорошо, но перемещенные не убираются.
     
Загрузка...

Поделиться этой страницей