Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 09:59

Проблема с отпусками ЗУП 2.5

Автор ksander-fars, 03 июн 2016, 03:28

0 Пользователей и 1 гость просматривают эту тему.

ksander-fars

ДД!

1) Создан документ отпуска для работника с 26.04.2016 по 29.05.2016
+ дополнительный отпуск с 30.05.2016  по 05.06.2016
2) Затем создали второй документ-исправление где убрали дополнительный отпуск.

Вопрос: Теперь при попытке указать рабочее время в сдельном наряде например на 30.05.2016 появляется сообщение с ошибкой (скрин).
Процедура ВывестиНеявкиЗаМесяц(пСотрудник, Д1, Д2) Экспорт
   Запрос = Новый Запрос("ВЫБРАТЬ РАЗРЕШЕННЫЕ РАЗЛИЧНЫЕ
                         |   ОсновныеНачисленияРаботниковОрганизаций.Регистратор КАК Регистратор,
                         |   ОсновныеНачисленияРаботниковОрганизаций.ПериодДействияНачало КАК ПериодДействияНачало,
                         |   ОсновныеНачисленияРаботниковОрганизаций.ПериодДействияКонец КАК ПериодДействияКонец,
                         |   ОсновныеНачисленияРаботниковОрганизаций.Сотрудник КАК Сотрудник,
                         |   ОсновныеНачисленияРаботниковОрганизаций.ВидРасчета КАК ВидРасчета
                         |ИЗ
                         |   РегистрРасчета.ОсновныеНачисленияРаботниковОрганизаций КАК ОсновныеНачисленияРаботниковОрганизаций
                         |ГДЕ
                         |   НЕ ОсновныеНачисленияРаботниковОрганизаций.ВидРасчета.ЗачетОтработанногоВремени
                         |   И ОсновныеНачисленияРаботниковОрганизаций.ВидРасчета.ЗачетНормыВремени
                         |   И ОсновныеНачисленияРаботниковОрганизаций.Сотрудник = &Сотрудник
                         |   И (&Д1 МЕЖДУ ОсновныеНачисленияРаботниковОрганизаций.ПериодДействияНачало И ОсновныеНачисленияРаботниковОрганизаций.ПериодДействияКонец
                         |         ИЛИ &Д2 МЕЖДУ ОсновныеНачисленияРаботниковОрганизаций.ПериодДействияНачало И ОсновныеНачисленияРаботниковОрганизаций.ПериодДействияКонец)
                         |
                         |УПОРЯДОЧИТЬ ПО
                         |   ПериодДействияНачало,
                         |   ПериодДействияКонец");
                   
   Запрос.УстановитьПараметр("Д1", НачалоДня(Д1));
   Запрос.УстановитьПараметр("Д2", КонецДня(Д2));
   Запрос.УстановитьПараметр("Сотрудник", пСотрудник);
   
   
   Выборка = Запрос.Выполнить().Выбрать();
   
   ТекстПредупреждение = "";
   ТекстСотрудник = "";
   Пока Выборка.Следующий() Цикл
      ТекстСотрудник = Выборка.Сотрудник.Наименование;
      ТекстПредупреждение = ТекстПредупреждение + "[" + Выборка.ВидРасчета.Наименование + "] за период с "+ Формат(Выборка.ПериодДействияНачало, "ДЛФ=D") +" по "+ Формат(Выборка.ПериодДействияКонец, "ДЛФ=D") +" ("+ Выборка.Регистратор +")"+Символы.ПС;
      //Сообщить(Выборка.Сотрудник.Наименование + " начисление [" + Выборка.ВидРасчета.Наименование + "] за период с "+ Формат(Выборка.ПериодДействияНачало, "ДЛФ=D") +" по "+ Формат(Выборка.ПериодДействияКонец, "ДЛФ=D") +" ("+ Выборка.Регистратор +")");
   КонецЦикла;
   Если ЗначениеЗаполнено(ТекстПредупреждение) Тогда
      #Если ТолстыйКлиентОбычноеПриложение тогда
         Предупреждение(ТекстПредупреждение, , ТекстСотрудник);
      #КонецЕсли
   КонецЕсли;
   
КонецПроцедуры

Код прописан в общем модуле, подскажите в какую сторону копать? Как я понимаю что по идее документ-исправление должно перекрывать основной документ.


ksander-fars

Как я понял нужно сделать условие что если документ сторно, то делать проверку по его периоду действия(указанному периоду отпуска)? Как в случае нахождения сторно документа не проверять исправленный документ?

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск