Материалы курса «Подготовка к Аттестации по Платформе 8.2» — Раздел 3, задача 3.20
Это еще одна задача раздела «Расчетные задачи» — задача 3.20
- Изучите материалы задачи.
- Вопросы, возникшие в ходе изучения этих материалов, задавайте в комментариях на текущей странице. Ответы преподавателя и комментарии других участников будут Вам доступны, только если Вы залогинены и у Вас есть доступ в Мастер-группу.
- Общие вопросы по курсу (в т.ч. организационные) задавайте на стартовой странице.
К сожалению, у Вас недостаточно прав для дальнейшего просмотра.
Если Вы приобрели курс, но еще не активировали токен — пожалуйста, активируйте доступ по инструкциям, высланным на Ваш email после покупки.
Если Вы не залогинены на сайте — залогиньтесь, вернитесь на эту страницу и обновите ее.
Если Вы залогинены, у Вас активирован токен доступа, но Вы все равно видите эту запись — напишите нам на e-mail поддержки.
Комментарии / обсуждение (54):
Комментарии закрыты

Если в Вашем примере у проведенного документа нажать кнопку Рассчитать а затем закрыть то движения этого документа удалятся. Получается у проведенного документа не будет движений.
Не совсем понимаю, что я должен ответить.
1. Расчет производится в транзакции, данные базы после отката транзакции не меняются.
2. У команды «Расчитать» можно установить флаг «Изменяет данные», тогда у документа появится флаг модифицированности.
У Вас в процедуре Рассчитать() в конце стоит ЗафиксироватьТранзакцию(), наверное Вы хотели написать ОтменитьТранзакцию() ?
Опечатка. Бывает. Странно, что никто не заметил раньше.
У меня вопрос по поводу получения компенсации за обед, правильно ли я понимаю что необходимо для основных начислений хранить в реквизитах ещё и плановое количество дней,а при получении базы для расчета брать разрез по этому реквизиту или это нужно сделать по другому?
Зачем хранить плановое количество дней в регистре расчета, его можно вытащить из данных графика.
Приветствую!
Павел, если мы все же поместили Компенсацию в ДопНачисления, получается, чтобы удовлетворить условие «деленная на количество рабочих дней в том же периоде» по получению рабочих дней, нужно запросом из РС Графики с фильтром от начала расчетного месяца до конца получить Количество() только по тем записям, где Значение не равно 0.
И это не будет ошибкой?
Ведь брать «рабочие дни» из РС ОсновныхНачислений невозможно, если не хранить их в Ресурсе.
Нужно получить данные графика по периоду действия (не фактическому) это и будет количество рабочих дней.
Это и понятно. Но в ДопНачислениях у нас не настроен ПериодДействия! Как тогда?
Я обосную: Компенсацию нельзя хранить в РР Основные начисления — это будет ошибкой (уже кто-то написал ниже, что с него сняли баллы на Сертификации), поскольку не зависящие от Периода Действия виды расчета не должны храниться в РР, где Периода Действия настроен.
Прошу прощения, видимо спутал о чем идет речь.
Компенсация без периода действия.
Рабочие дни надо брать из РС, так как ресурс в РР хранить плохо, вытеснения и сторно-записи на плановый ресурс непонятно как повлияют.
Добрый день!
Для отчета использовалось много реквизитов для всего регистра, но фактически они нужны только для вида расчетов «Компенсация за обеды». Не посчитают ли на экзамене это за избыточное хранение реквизитов в регистре? Ведь отчет можно построить и без них, хотя он и будет дольше строиться.
Как понять, где можно добавлять реквизиты в регистр «для упрощения жизни», а где это будет считаться ошибкой на экзамене?
Ответить на Ваш вопрос не могу. Нет такого правила «упрощают жизнь».
Есть показатели — они хранятся в регистрах. Если их в регистрах нет, то можно имитировать их получение, что и будет ошибкой.
Спасибо
Здравствуйте!
В тексте задач часто встречается такая формулировка: В течение периода начисления может изменяться не чаще, чем один раз в день, но берется на начало текущего расчетного периода.
Длительность расчетного периода определяется свойством «Периодичность» регистра расчета. Исходя из этого не понятно, требуется ли при изменении оклада учитывать историю изменений (разбивать расчетный период на длительность действия значения оклада), или не зависимо от изменений оклада использовать значение на начало периода (к примеру на первое число месяца)?
Брать на начало периода.
И свойство «Периодичность» ничего не имеет общего с разбивкой оклада.
Здравствуйте!
Правильно ли я понимаю, что если в условии задачи для расчета какого-либо начисления требуется показатель ОтработанноеВремя за предыдущий период(ы), то единственный способ получения этого показателя — создание ресурса в РР.
Из данных графика этот показатель получить невозможно.
Приветствую.
Правильно. В данных графика хранится информация о норме, а не о фактически отработанном времени.
Здравствуйте!
В ветке http://курсы-по-1с.рф/dev-attestation/startpage/task-3_6-business-trips/ вы написали:
/////////////////////
Рабочих = можно брать дни/часы базы
Отработанных = нужно ресурс создавать
/////////////////////
В задаче 3.20 в отношении начисления «Компенсация за обед» использована такая формулировка: «Компенсация за один обед рассчитывается как 5% от суммы начисления по тарифу в текущем расчетном периоде, деленная на количество рабочих дней в том же периоде.»
Если идет речь про рабочие часы, зачем в решении был создан ресурс РР ОтработаноЧасов?
Приветствую.
В такой формулировке не нужно. Возможно создавал по привычке.
…
(текст комментария доступен только участникам Мастер-группы)
После первоначального написания вопроса, решил еще раз самостоятельно разобраться, поэтому удалил текст вопроса. Как удалить сообщение полностью — не знаю.
Спасибо за внимательность.
В этом случае правильнее самому себе ответить — возможно у кого-то возникнет похожий вопрос..
Здравствуйте Павел!
Можете дать краткую консультацию по поводу решения задач в которых ведение учета заработной платы ведется в разных валютах и количество валют заранее не известно (например 3.48)? Что и где будет храниться? За ранее огромное спасибо.
Измерение «Валюта» в регистре. Базу получать в разрезе валют.
В реальных билетах ни разу не видел такие задачи.
Спасибо Павел огромное. Не буду тогда даже заморачиваться, раз нет таких задач на экзамене, а в реальной жизни не думаю, что буду работать в компании в которой оклад начисляют в тугриках, больничный в рублях, а штрафы в долларах.
Здравствуйте Павел!
На всех видео по расчетным задачам вы в Общем модуле расчета после некого запроса по получению необходимых данных обходите именно НаборЗаписей, затем ищите соответствующую запись в результате запроса. Можно ли обходить результат запроса, находить нужную запись в наборе записей (например так: Запись = НаборЗаписей [Выборка.НомерСтроки — 1])??? Правильно ли это? Лично я никакой разницы не вижу, но не будет ли это ошибкой на экзамене?
Я тоже не вижу разницы, но говорят, что поиск в выборке намного эффективнее, чем получение по индексу записи из набора, особенно большого.
А почему для большого количества записей будет эффективнее?? Ну например у нас в документе 300 записей из них например всего 5 записей больничного. Если перебирать весь набор, то перебирать будем все 300, а если выборку, то только нужные 5 записей. ГЛАВНОЕ «На экзамене могут за обход результата запроса в данном случае снять балы?»
А по элементу выборки искать в наборе будете, получать по индексу запись? Это и неэффективно.
Про ГЛАВНОЕ — это мелочи, на подобные механизмы обращают внимание, только если есть сомнения в оценке.
Здравствуйте Павел!
Павел на курсе совсем не разбирается работа с табелем, не могли бы вы выложить свое решение любой задачи с табелем. За ранее огромное спасибо.
Видео в ближайшее не планирую записывать. Думаю, могу написать статью по решению задачи. Следите за новостями на сайте.
Сейчас существует такая статья? Можно ссылку?
Такой статьи нет.
Чем не устраивает видео, которое записал Евгений?
Почему порядок следования строк в наборе записей влияет на вытеснение? Если вытесняющий вид расчета стоит позже вытесняемого, то вытеснение не работает.
Обновите платформу. Не должен влиять.
Вопрос по определению тарифа в задаче. Фраза «Тарифная ставка должна быть
определена отдельно для каждого подразделения по специальной шкале в зависимости от
отработанного времени» подразумевает, что необходимо собрать отработанные часы всего подразделения, выбрать из шкалы тариф, и его применить ко всем сотрудникам подразделения.
Это так же подтверждает отчет, в котором все вместе сотрудники Отдела внедрения отработали 304 часа, и для всего отдела применили тариф 35 рублей.
Что-то даже не могу придумать как правильно реализовать это ((. Как вариант, нужно сначала ввести данные по всем сотрудникам, и уже после этого производить расчет. А базу отработанных часов, при определении тарифа, брать по одному измерению — Подразделение.
Да.
Однако ж задача решена относительно отработанных часов каждого сотрудника, которые уже сравниваются со шкалой, которая для каждого подразделения своя. Есть мнение, что в отчете какой-то бред нарисован.
Дабы не создавать еще 1 вопрос спрошу тут же.
Есть какое-то правило, которое однозначно бы говорило, что надо создать доп. ресурсы (помимо результата)?
Поясню. Данную задачу можно решить через 2 РР, в каждом из которых будет только 1 ресурс — результат. Получать необходимые данные можно, если получить базу по тарифу в разрезе регистратора и номера строки, по которым можно связаться с данными графика основных начислений, откуда получить план, факт дней/часов, стаж. Т.е. доп ресурсы — это фактически более простой способ получения отчета.
Насколько методически неправильно такое решение? Если можно с комментарием, если это действительно очень неправильно.
Разные ресурсы в РР — это разные виды измерения одного и того же показателя, к примеру результат расчета в рублях и долларах, или трудоднях. Если мыслить такой схемой, то в случае если результат можно представить в нескольких видах — то можно все поместить в один регистр.
Добрый день, Павел.
Вопрос по задаче 3.16.
Второй абзац:
В целях управленческого учета, дополнительно необходимо хранить, информацию о начисленном окладе, исходя из отработанного времени в днях. Если сотрудник отработал полдня, то в часах сумма оклада будет меньше, чем в днях.
Как реализовать данное условие?
1. Вариант, вынести реквизит табличной части «Отработано часов», и при расчете РезультатВЧасах брать не фактический период действия, а значение времени в часах.
2. Вариант, создать ПВР «Невыход в часах» и вытеснять им оклад?
Мне больше нравится второй вариант. Точнее, я бы сделал не «Невыход в часах», а «Оклад за не полностью отработанный день».
Добрый день!
1.Поясните пожалуйста, каким принципом руководствоваться при выборе «Значения графика» у регистра расчета. Я имею в виду, когда оперируем и днями и часами. В этой задаче Евгений указал Часы, но в задаче с примерно теми же условиями 3.35 Павел выбирал дни. Как это определять?
Значение графика влияет на числитель и знаменатель в пропорции когда система считает базу. В разных задачах нужно выбирать разные значения. Все зависит от того, как нужно выбирать базу. Если база всегда берется целиком за базовый период, то то что указано в «Значение графика» не важно.
я же задал вопрос в разделе по обсуждению задачи 3.20
Простите, не заметил.
Да компенсация — это доп. начисления.
Спасибо, я разобрался. В видео решении компенсация представлена как основное начисление. Можно и как основное и как дополнительное. Второй вариант мне больше нравится, хотя подглядывал в решение и сделал компенсацию основным начислением )))
Если под доп.начислениями понимать виды расчетов, не обладающие периодом действия(в отличии от основных начислений), то как тогда получить плановое значение рабочего времени, которое мы должны получить согласно условия задачи: «Компенсация за один обед рассчитывается как 5% от суммы начисления по тарифу в текущем периоде, деленная на количество РАБОЧИХ дней в том же периоде». Рабочие дни — это только данные графика, которые могут быть только у регистра с периодом действия. По-моему, в решении этот момент показан правильно и он однозначен. А «основные/дополнительные» — это игра слов, не более…
Ок. Спорить не будем. Для себя перерешаю задачу еще раз. У меня есть уверенность, что если запись ничего не вытесняет и ее ничто не вытесняет, то мучить механизм фактического периода действия не стоит.
Ничто не мешает получить Количество рабочих дней из данных графика регистра «Основные начисления». При этом «Компенсация за обед» будет принадлежать дополнительным начислениям.
Приветствую всех. Совсем недавно (19.11.2013) сдавал экзамен на Специалиста по платформе. Попалась практически идентичная задача по сложным периодическим расчетам, единственным отличием был лишь иной порядок определения часовой тарифной ставки. В решении задачи компенсацию за обед реализовал как основное начисление. Экзамен я сдал, но за данный способ реализации все же сняли баллы, если быть более точным, то вот формулировка ошибки — «использование периода действия для вида расчета, не нуждающегося в нем». Итог — правильным (да и более логичным все же) будет реализация компенсации через доп. начисление. Для хранения количества рабочих дней, как вариант, можно добавить в регистр основных начислений ресурсы вида «НормаДней», «НормаЧасов», куда записывать количество рабочих дней/часов, приходящихся на период действия часовой тарифной ставки. В типовой конфигурации ЗУП (ред. 2.5), кстати, используются аналогичные ресурсы в регистре расчета «Основные начисления».
Еще небольшое отступление. Если решаете билет на основе пустой (не каркасной) конфигурации, то копируйте план счетов из каркасной конфигурации. В данном случае проверяется состав счетов (предопределенных), которые содержит план счетов из каркасной конфигурации. В моем случае при решении задачи были использованы лишь счета, обозначенные в задаче из бух. части билета. Итог — замечание «БУ: удалены счета из плана счетов(!)», хотя само решение было верным.
В остальном хочу поблагодарить автора за хороший курс, который систематизирует знания в области платформы и дает четкие и понятные разъяснения относительно порядка решения задач при прохождении аттестации: с чего начинать решение билета, на что следует обращать внимание, на что можно «забить». Еще раз спасибо.
Спасибо за комментарий из «зоны боевых действий»:). Тоже были сомнения, насчет того, что компенсация все же не должна иметь период действия.
Доброго времени суток!
Подскажите пожалуйста, будет ли считаться ошибкой определить вид расчета Компенсация за обеды как доп начисление?
По названию вида расчета невозможно определить куда он должен входить.