Guashka
Новенький
Offline
|
|
« : 13-01-2011 07:50 » |
|
Здравствуйте! У меня такая проблема: Конфигурация ЗиК, отчет по работающим-уволенным. Необходимо сделать выборку по уволенным сотрудникам по должности. Должность- периодический реквизит. У меня отображаются только те сотрудники, которые впоследствии опять устроились на работу, а остальные нет, не пойму, что не так. Подскажите, пожалуйста! Код: Процедура Сформировать() Н=0; Таб = СоздатьОбъект("Таблица"); Таб.ИсходнаяТаблица("Таблица"); Сотр=СоздатьОбъект("Справочник.Сотрудники"); Сост=ПолучитьПустоеЗначение("Перечисление.СостояниеФизлица"); Таб.ВывестиСекцию("Заголовок"); Таб.ВывестиСекцию("Шапка"); Запрос1 = СоздатьОбъект("Запрос"); ТекстЗапроса1 = "//{{ЗАПРОС(Обучение) |Сотр = Документ.ПриказОбУвольнении.Сотрудник.ТекущийЭлемент; |Док = Документ.ПриказОбУвольнении.ТекущийДокумент; |ДатаДок = Документ.ПриказОбУвольнении.ДатаУвольнения; |СостФЗ = Справочник.Сотрудники.СостояниеФизлица; |Должность = Документ.ПриказОбУвольнении.Сотрудник.Должность; |Подразделение = Документ.ПриказОбУвольнении.Сотрудник.Подразделение; |Группировка Сотр без групп; |Условие ((ДатаДок>=НачДата) и (ДатаДок<=КонДата)); |Условие (Должность в ВыбДол); |Условие (СостФЗ<>Сост); |" ; Если Запрос1.Выполнить(ТекстЗапроса1) = 0 Тогда Возврат; КонецЕсли; Пока Запрос1.Группировка("Сотр") = 1 Цикл Сотр.ВыбратьЭлементы(); Сотр.НайтиЭлемент(Запрос1.Сотр); ДатаДок=Запрос1.ДатаДок; дол = Сотр.Должность.Получить(ДатаДок); Если ПустоеЗначение(Сотр.ДокументУдЛичность)=0 Тогда СЗ = глРазложитьДокУдостоверяющийЛичность(Сотр.ДокументУдЛичность); Серия= СЗ.ПолучитьЗначение(2); Номер= СЗ.ПолучитьЗначение(3); Иначе Серия=""; Номер=""; КонецЕсли; если дол = выбдол тогда Н=Н+1; Таб.ВывестиСекцию("Ув"); таб.показать ("список работающих/уволенных"); Таб.ТолькоПросмотр(1); Таб.Опции(0,0,3,0); иначе Таб.ВывестиСекцию("Сотр"); конецесли;
|