- Очищать ли старые движения???
И нужно ли ещё Движения.ДополнительныеНачисления.Записать(); ?
чтобы записать пустой набор записей по аналогии с Регистрами Накопления?
Очищать не очищать в тонком клиенте значения не имеет набор пуст, но поскольку большинство программистов работали на обычных формах, то у них уже привычка очищать наборы, поэтому и решения в большинстве своем такие. (набор может быть не пуст если у набора в форме стоит галка использовать всегда как пример документ операция или запущен толстый клиент обычное приложение)
1. Экзамен уже давно принимается на упр.формах. Большинство форумчан при подготовке работают именно с ними.
2. Зачем нужны строки:
Движения.Основной.Очистить();
Движения.Основной.Записать();
Движения.Основной.Записывать = Истина;Данная конструкция нужна
только в ОУ и БУ, да и то лишь в случае использования старой методики контроля остатков,
когда сначала делается запрос к остаткам (+к себестоимости), а уже по результатам этого запроса формируются движения.
В результат запроса не дожны попасть движения сделанные ранее этим же документом (если он проведен), поэтому делаются первые две строки
Движения.Основной.Очистить();
Движения.Основной.Записать();Третья строка всего лишь означает, что
Движения.Основной надо будет записать при записи всех
Движений (по умолчанию они бы не записывались)
Запись всех Движений в конце
ОбработкиПроведения выполняется автоматически.
В задачах на ПР алгоритм в корне отличается. Там нет ни старой ни новой методики, там все, в принципе, по другому.
Сначала, в ОбрПроведения док Начисление формируются движения, тут же записываются, а после этого выполняется их
Расчет (в идеале в общем модуле). Т.е. предварительно очищать и записывать движения по РР смысла нет.
2) Про Период Регистрации: Почему нельзя взять его от Даты документа? Или всё же необходимо его вручную писать в документе
В задаче внизу идет ключевая фраза: "
В одном документе могут быть данные за разные расчетные периоды"
Она означает, что ПерРег у каждой записи может быть своим, то есть заполнять его из ДатыДон - это упрощение задачи.
Значит ПерРег надо делать в ТЧ и расчеты начислений выполнять от него.
3) Про измерения в ВТ ДополнительныеНачисленияБазаОсновныеНачисления - указываю одно "Сотрудник", -норм отрабатывает, указываю ещё "Подразделения" - точно также )) сколько указывать то лучше
В начале задачи сказано: "
Каждый сотрудник может работать одновременно только в одном подразделении компании, то есть совместительство не допускается". В этом случае Подразделение должно быть реквизитом, а измерением его надо делать когда совместительство допускается.
может в этой задаче нужно поставить галочку у ВР Премия "Период действия как базовый период"
"ПД является базовым периодом" можно включить только у ВР, имеющего ПД. У Премии не может быть ПД, так как это ВР не протяженный во времени (поэтому он находится в ДН, а не в ОН)