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

Выбрать 1 документ в РегистреБухгалтерии

Автор JOG, 14 дек 2014, 12:17

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

JOG

Всем привет!
Столкнулся с очередной проблемой. Делаю РегистрБухгалтерии. При проведении Залога мне нужно чтоб регистр прописывал все значения 1 раз. В этом направлении добился двух результатов:
1)Бредовый (дошел потём "попробуем так). В результате у меня обходятся все документы, но НомерСтроки в результате циклично заполняется.
Сделал это следующим образом:

Процедура ОбработкаПроведения(Отказ, Режим)
Движения.Управленческий.Записывать = Истина;
ДокЗалог = Документы.Залог;
Выборка = ДокЗалог.Выбрать();
Пока Выборка.Следующий() Цикл
Движение = Движения.Управленческий.Добавить();
Движение.СчетДт = ПланыСчетов.Основной.РасчетыПоКредитам;
Движение.СчетКт = ПланыСчетов.Основной.ОперационнаяКасса;
Движение.Период = Дата;
Движение.Сумма = Выборка.СуммаКредита;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Клиенты] = Выборка.Клиент;
КонецЦикла
КонецПроцедуры

Однако это глупость, ибо цикл обходит все документы существующие. Тут всё ясно.

2) Уже ближе к нужному. Решил не заморачиваться с циклами, предположив что модуль объекта предполагает, что мы в создаваемом объекте. Написал следующее:


Процедура ОбработкаПроведения(Отказ, Режим)
Движения.Управленческий.Записывать = Истина;
Движение = Движения.Управленческий.Добавить();
Движение.СчетДт = ПланыСчетов.Основной.РасчетыПоКредитам;
Движение.СчетКт = ПланыСчетов.Основной.ОперационнаяКасса;
Движение.Период = Дата;
Движение.Сумма = СуммаКредита;
Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Клиенты] = Клиент;
КонецПроцедуры

Получилось, в общем и целом то, что надо! Но при проведении документа в этом регистре записывается в графу НомерСтроки всё время 1.



Делаю всё ориентируясь на книгу Радченко - Хрусталёвой и там пример с циклом для ТабЧасти. Но у меня таб части нет, вот собственно и упёрся в тупик.

Вопрос: как правильно написать код, чтобы запись при проведении документа заполнялась 1 раз и номер строки писался как НомерСтроки = НомерСтроки + 1 ? И нужна ли она вообще графа НомерСтроки?

sertak

Номер строки означает номер строки в коллекции строк, записанных в регистр конкретным документом. Записали 1 строку - присвоен номер 1. Записали 2 строки - присвоены номера 1 и 2. А сквозная нумерация строк в регистрах не ведется.

JOG


Теги:

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

Рейтинг@Mail.ru

Поиск