Универсальный двигатель регистров 1С 7.7
Документ не имеет ни одного реквизита. На форме размещена таблица значений, которая при открытии заполняется его движениями. Движения можно редактировать.
Возможно программное использование документа, для этого в процедуру проведения необходимо передать таблицу значений следующей структуры:
- Идентификатор (идентификатор вида регистра, в случае оборотного регистра может быть опущен)
- ТаблДвижений (таблица движений регистра)
Таблица движений имеет такую структуру:
- ФлагПриходаРасхода (1 — Приход, иначе Расход)
- <Измерение/Реквизит/Ресурс> (наименования колонок совпадают с идентификаторами атрибутов регистра)
Пример:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
// Создание таблицы значений для передачи в процедуру проведения ТаблРегистров = СоздатьОбъект("ТаблицаЗначений"); ТаблРегистров.НоваяКолонка("Идентификатор"); ТаблРегистров.НоваяКолонка("ТаблДвижений"); ТаблРегистров.НоваяСтрока(); ТаблРегистров.Идентификатор = "Поставщики" // Создание таблицы движений регистра ТаблДвижений = СоздатьОбъект("ТаблицаЗначений"); ТаблДвижений.НоваяКолонка("ФлагПриходаРасхода"); ТаблДвижений.НоваяКолонка("Контрагент"); ТаблДвижений.НоваяКолонка("Договор"); ТаблДвижений.НоваяКолонка("Сумма"); ТаблДвижений.НоваяКолонка("СуммаНДС"); ТаблДвижений.НоваяСтрока(); ТаблДвижений.ФлагПриходаРасхода = 1 // Приход ТаблДвижений.Контрагент = ВыбКонтрагент ТаблДвижений.Договор = ВыбДоговор ТаблДвижений.Сумма = 10000; ТаблДвижений.СуммаНДС = 1800; ТаблРегистров.ТаблДвижений = ТаблДвижений; // Проведение документа ДокУниверДвигРег.Провести( ,ТаблРегистров); |
В регистр «Поставщики» будет записан приход.