Исправление расчета остатков отпусков в рабочих днях в ЗУП 2.5.54.1

04.08.12

Разработка - Механизмы типовых конфигураций

Если на вашем предприятии ведется учет отпусков не только в календарных днях, но и в рабочих, то Вам сюда

В одном из релизов ЗУП 8.2 господа программисты фирмы 1С поменяли модуль расчета остатков отпусков, возможно это не плохо и грамотно, но как обычно наделали кучу ошибок. В итоге при расчете остатков программа попусту перестала замечать дополнительные отпуска в рабочих днях, это можно проверить выведя например справку по отпуску.

Для временного решения пришлось покопаться в общем модуле ОстаткиОтпусков и внести кое какие изменения, а проще говоря закомментировать.

Ищем Функция ОстаткиОтпусков(ТаблицаДанных) в общем модуле ОстаткиОтпусков, в этой функции есть запрос

со строки 871 комментируем так :

    |ПОМЕСТИТЬ ВТВидыЕжегодныхОтпусков
    |ИЗ
    |    ВТТаблицаСотрудников КАК ТаблицаСотрудников
    |        ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ВидыЕжегодныхОтпусков КАК ВидыЕжегодныхОтпусков
    |        ПО (НЕ ВидыЕжегодныхОтпусков.ПометкаУдаления)
    //|            И (ВЫБОР
    //|                КОГДА ТаблицаСотрудников.ВидОсновногоОтпуска = ЗНАЧЕНИЕ(Справочник.ВидыЕжегодныхОтпусков.ПустаяСсылка)
    //|                        И ТаблицаСотрудников.ВидДополнительногоОтпуска = ЗНАЧЕНИЕ(Справочник.ВидыЕжегодныхОтпусков.ПустаяСсылка)
    //|                    ТОГДА ВЫБОР
    //|                            КОГДА ТаблицаСотрудников.ВидЕжегодногоОтпуска = ЗНАЧЕНИЕ(Справочник.ВидыЕжегодныхОтпусков.ПустаяСсылка)
    //|                                ТОГДА ТаблицаСотрудников.СпособРасчетаОтпусков = ВидыЕжегодныхОтпусков.СпособРасчетаОстаткаОтпуска
    //|                            ИНАЧЕ ТаблицаСотрудников.ВидЕжегодногоОтпуска = ВидыЕжегодныхОтпусков.Ссылка
    //|                        КОНЕЦ
    //|                ИНАЧЕ ТаблицаСотрудников.ВидОсновногоОтпуска = ВидыЕжегодныхОтпусков.Ссылка
    //|                            И НЕ ТаблицаСотрудников.ИсключитьОсновнойОтпуск
    //|                        ИЛИ ТаблицаСотрудников.ВидДополнительногоОтпуска = ВидыЕжегодныхОтпусков.Ссылка
    //|            КОНЕЦ)
    |        ЛЕВОЕ СОЕДИНЕНИЕ ПланВидовРасчета.ОсновныеНачисленияОрганизаций КАК НачисленияОсновногоОтпуска
    |        ПО (ВЫБОР
    |                КОГДА ТаблицаСотрудников.ПорядокРасчетаОсновногоОтпуска = ЗНАЧЕНИЕ(Перечисление.ПорядокРасчетаОтпуска.ПоШестидневке)
    |                    ТОГДА НачисленияОсновногоОтпуска.Ссылка = ЗНАЧЕНИЕ(ПланВидовРасчета.ОсновныеНачисленияОрганизаций.ОплатаПоСреднемуОтпШестидневка)
    |                ИНАЧЕ НачисленияОсновногоОтпуска.Ссылка = ЗНАЧЕНИЕ(ПланВидовРасчета.ОсновныеНачисленияОрганизаций.ОплатаПоСреднемуОтпКалендарныеДни)
    |            КОНЕЦ)

 

а также со строки 953 комментируем так :

 

    |            ПО ОстаткиОтпусков.Ссылка.Сотрудник = ОстаткиОтпусковСрез.Сотрудник
    |                И ОстаткиОтпусков.ВидЕжегодногоОтпуска = ОстаткиОтпусковСрез.ВидЕжегодногоОтпуска
    |                И ОстаткиОтпусков.Ссылка = ОстаткиОтпусковСрез.Ссылка
    |        ПО ТаблицаСотрудников.Сотрудник = ОстаткиОтпусков.Ссылка.Сотрудник
    //|            И (ВЫБОР
    //|                КОГДА ТаблицаСотрудников.ВидОсновногоОтпуска = ЗНАЧЕНИЕ(Справочник.ВидыЕжегодныхОтпусков.ПустаяСсылка)
    //|                        И ТаблицаСотрудников.ВидДополнительногоОтпуска = ЗНАЧЕНИЕ(Справочник.ВидыЕжегодныхОтпусков.ПустаяСсылка)
    //|                    ТОГДА ВЫБОР
    //|                            КОГДА ТаблицаСотрудников.ВидЕжегодногоОтпуска = ЗНАЧЕНИЕ(Справочник.ВидыЕжегодныхОтпусков.ПустаяСсылка)
    //|                                ТОГДА ТаблицаСотрудников.СпособРасчетаОтпусков = ОстаткиОтпусков.ВидЕжегодногоОтпуска.СпособРасчетаОстаткаОтпуска
    //|                            ИНАЧЕ ТаблицаСотрудников.ВидЕжегодногоОтпуска = ОстаткиОтпусков.ВидЕжегодногоОтпуска.Ссылка
    //|                        КОНЕЦ
    //|                ИНАЧЕ ТаблицаСотрудников.ВидОсновногоОтпуска = ОстаткиОтпусков.ВидЕжегодногоОтпуска
    //|                            И НЕ ТаблицаСотрудников.ИсключитьОсновнойОтпуск
    //|                        ИЛИ ТаблицаСотрудников.ВидДополнительногоОтпуска = ОстаткиОтпусков.ВидЕжегодногоОтпуска
    //|            КОНЕЦ)
    |
    |УПОРЯДОЧИТЬ ПО
    |    Сотрудник,

 

После этих действий сохраняем конфигурацию и проверяем остатки отпусков в рабочих днях.

Надеюсь в будущих релизах 1С исправит эту ошибку, а пока жду ваших предложений по решению данного вопроса, может кто лучше сделает?

Важно: В Справочнике Виды ежегодных отпусков должен быть только 1 вид отпуска с флажком Предоставлять отпуск всем сотрудникам

См. также

СКД Механизмы типовых конфигураций Запросы Программист Платформа 1С v8.3 1С:Зарплата и кадры государственного учреждения 3 1С:Зарплата и Управление Персоналом 3.x Россия Бесплатно (free)

Работая с типовыми отчетами в конфигурациях «Зарплата и управление персоналом, редакция 3», «Зарплата и кадры государственного учреждения, редакция 3» и подобных, в схемах компоновки данных можно встретить конструкции запросов, которые обращаются к некоторым виртуальным таблицам.

20.08.2024    1178    PROSTO-1C    0    

17

Механизмы типовых конфигураций Программист Платформа 1С v8.3 1С:Комплексная автоматизация 2.х Россия Бесплатно (free)

Эта ошибка была обнаружена мной в типовой конфигурации 1С:Комплексная автоматизация 2 (2.5.16.115), БСП версия 3.1.9.302. Возникает она после того, как вы добавляете в расширение бизнес-процесс или задачу, выполняете обновление идентификаторов метаданных расширений, но ошибка при записи любого элемента справочника "Профили групп доступа" всё равно остаётся.

01.07.2024    1299    Vidz    0    

9

Механизмы типовых конфигураций Программист Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

Очень часто в написании кода требуется обращаться к предопределённым значениям. Если идёт обращение к типовым предопределённым значениям, то проблем не возникает.

24.06.2024    954    olja-ljaaa    0    

3

Механизмы типовых конфигураций Программист Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Статистическая выборка сценариев и точек изменения отчетов на общей форме ФормаОтчета в типовых конфигурациях. Примеры кода.

03.06.2024    4065    Serg2000mr    32    

104

Механизмы типовых конфигураций Ценообразование, анализ цен Программист Пользователь Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Россия Абонемент ($m)

Продолжение темы вынесения кусков повторно-используемого кода в запрос. В прошлый раз мы сделали это с вычислением пользовательских формул. Здесь замахнулись на формулы, задаваемые пользователем запросами.

1 стартмани

11.04.2024    937    tango    5    

3

Механизмы типовых конфигураций Программист Платформа 1С v8.3 1С:Управление торговлей 11 Россия Абонемент ($m)

Какому-либо элементу списка сопоставляется числовое значение, зависящее от других значений, причем эта зависимость изменяется от элемента к элементу. Так, в справочнике "Валюты" курс какой-либо валюты может быть задан формулой (или даже запросом) от значения другой валюты. А в справочнике "Виды цен" формула определяет расчет цены для товарной позиции, т.е. элементов справочника "Номенклатура", у которых в карточке указан этот вид цены. А в 1С:ERP, например, этот механизм используется в ресурсной спецификации.

10 стартмани

11.04.2024    796    tango    5    

4

Механизмы типовых конфигураций Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Россия Бесплатно (free)

В первом сезоне мы рассмотрели (с точки зрения программиста) внутренний механизм, помещающий цены в регистр "Цены". Из этого регистра цена попадает в исходящие УПД (в продажи). Но эта цена (в прайс-листе) дифференцирована (ценообразована) в разрезах свойств самой номенклатуры. Но стратегия ценообразования, ценовая власть - это в первую очередь о работе с ценами для клиента. И тут вступает в дело второй акт марлезонского, Скидки (наценки) и кешбек.

08.04.2024    1078    tango    0    

2
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. NPMar 08.08.12 09:02 Сейчас в теме
2. Cristal725 12.09.12 11:12 Сейчас в теме
Спасибо большое,что обратили внимание на эту ситуацию. Очень мало информации в интеренте по этому поводу.
4. Alex Star 10 12.09.12 21:02 Сейчас в теме
(2) Cristal725, Обратишь тут, когда на всём заводе остатки отпусков поменялись, а уж расчет резерва отпусков что показывал... Самое интересное 1Сники сами на это не отреагировали, прошло обновление, а всё так-же глючно осталось, пришлось опять комментить...
3. Cristal725 12.09.12 11:21 Сейчас в теме
И еще чем грозит то, что решение временное. Ну кроме того, что при обновлениях конфу придется постоянно подправлять.
5. Cristal725 13.09.12 08:50 Сейчас в теме
А у нас беда: в Справочнике Виды ежегодных отпусков 2 вида отпуска с флажком Предоставлять отпуск всем сотрудникам. Как допилить?
6. Alex Star 10 13.09.12 18:07 Сейчас в теме
(5) Cristal725, Я просто убрал один флажок, этот вид добавился с каким то обновлением, и у нас нет на предприятии этого вида отпуска. А что касается допила, то по этому это решение и является временным, потому что разбираться времени нет, как только 1С исправит косяки так сразу эту галочку можно и поставить, только это в корне не правильно, т.к. у нас только основной отпуск всем дается. Жаль что больше никто не предложил решения, а так хотелось посмотреть :(
7. Эсти 8 16.03.15 07:59 Сейчас в теме
спасибо. полезная статья
Оставьте свое сообщение