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