v7: Помогите с условием в запросе
☑
0
GuRuLol
13.06.12
✎
09:04
Как добавить условие в запросе на текущий элемент перебираемоего справочника??
прСотр = СоздатьОбъект("Справочник.Сотрудники");
СпрСотр.ВключатьПодчиненные(1);
СпрСотр.ИспользоватьДату(ВыбКонПериода);
СпрСотр.ВыбратьЭлементы();
Пока СпрСотр.ПолучитьЭлемент()=1 Цикл
уу=Уволен(СпрСотр.ТекущийЭлемент(),ВыбНачПериода,ВыбКонПериода);
Если уу=0 Тогда
ТекСотр = СпрСотр.ТекущийЭлемент();
Сообщить (ТекСотр);
Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать)
|Период с ВыбНачПериода по ВыбКонПериода;
|Обрабатывать НеПомеченныеНаУдаление;
|Сотрудник = Документ.ПриказПоОтпуску.Сотрудник.ТекущийЭлемент;
|Начало = Документ.ПриказПоОтпуску.Начало;
|Окончание = Документ.ПриказПоОтпуску.Окончание;
|НачалоПериода = Документ.ПриказПоОтпуску.НачалоПериода;
|ОкончаниеПериода = Документ.ПриказПоОтпуску.ОкончаниеПериода;
|КоличествоДнейДополнительногоОтпуска =
Документ.ПриказПоОтпуску.КоличествоДнейДополнительногоОтпуска;
|КоличествоДнейОтпуска = Документ.ПриказПоОтпуску.КоличествоДнейОтпуска;
|Подразделения =
Документ.ПриказПоОтпуску.Сотрудник.Подразделение.ТекущийЭлемент;
|ВидОтпуска = Документ.ПриказПоОтпуску.ВидОтпуска;
|Группировка Подразделения упорядочить по Подразделения.Наименование;
|Группировка Сотрудник без групп;
|Группировка Начало;
|Группировка Окончание;
|Группировка НачалоПериода;
|Группировка ОкончаниеПериода;
|Группировка КоличествоДнейОтпуска;
|Группировка КоличествоДнейДополнительногоОтпуска;
|Условие(Подразделения в ВыбПодразделения);
|Условие(Сотрудник = ТекСотр);
|"//}}ЗАПРОС
1
Гефест
13.06.12
✎
09:06
За запрос в цикле знаешь что отрывают?
2
Мимохожий Однако
13.06.12
✎
09:06
Запрос в цикле - это круто. Ты же написал ТекСотр = СпрСотр.ТекущийЭлемент();
3
GuRuLol
13.06.12
✎
09:07
дело в том что ничего не приходит, хотя документы по отпускам точно есть
4
Rie
13.06.12
✎
09:10
(3) Если убрать условие на подразделение - тоже ничего не приходит?
5
GuRuLol
13.06.12
✎
09:11
(4) ничего
6
Rie
13.06.12
✎
09:15
(5) А как смотришь, что ничего не приходит?
И почему
Сотрудник = Документ.ПриказПоОтпуску.Сотрудник.ТекущийЭлемент;
а не
Сотрудник = Документ.ПриказПоОтпуску.Сотрудник;
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший