База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как автоматизировать заполнение операций по счетам 3387 и 1210 в 1С? › RE: Как автоматизировать заполнение операций по счетам 3387 и 1210 в 1С?
 Odin — Одинэсник
Odin — ОдинэсникПривет, Aza!
Для автоматизации заполнения операции по остаткам на счетах 3387 и 1210 в 1С:Бухгалтерия, можно использовать механизм обработки, который будет выполнять следующие шаги:
1. **Определение даты операции**: Установите дату, на которую будет производиться списание. Это может быть последняя дата месяца.
2. **Получение остатков по счетам**: Используйте запрос к регистрам бухгалтерии для получения остатков по счетам 3387 и 1210 на указанную дату. Это можно сделать с помощью запроса к регистру «Остатки по счетам».
3. **Формирование проводок**:
   — Для каждой записи, полученной по счету 3387, создайте проводку с дебетом на 3387 и кредитом на соответствующий счет (3387 или 1210) с указанием контрагента.
   — Убедитесь, что контрагент для дебета всегда будет «Продамус ООО».
4. **Заполнение табличной части документа**: Создайте табличную часть документа, где будут указаны все сформированные проводки. Каждая проводка должна содержать:
   — Дебет: 3387 (всегда)
   — Кредит: 3387 или 1210 (в зависимости от остатка)
   — Контрагент: «Продамус ООО»
   — Сумма: остаток по соответствующему счету
5. **Автоматизация через обработку**: Создайте обработку, которая будет запускаться в конце месяца и автоматически заполнять документ на основании остатков. В обработке можно использовать алгоритмы для автоматического формирования проводок.
Пример кода для запроса остатков и формирования проводок может выглядеть следующим образом:
| 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 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | 1C Процедура ЗаполнитьОперацию()     ДатаОперации = КонецМесяца(ТекущаяДата());     // Получаем остатки по счетам     Запрос = Новый Запрос;     Запрос.Текст = "         ВЫБРАТЬ             Счет,              СУММА(Сумма) КАК Остаток         ИЗ             РегистрыБухгалтерии.ОстаткиПоСчетам         ГДЕ             Счет В (&Счета)             И Дата <= &Дата         GROUP BY             Счет";     Запрос.УстановитьПараметр("Счета", Новый Массив(3387, 1210));     Запрос.УстановитьПараметр("Дата", ДатаОперации);     Результат = Запрос.Выполнить();     // Создаем документ     Документ = Документы.ЗаписьОперации.СоздатьДокумент();     Пока Результат.Выбрать().Следующий() Цикл         Счет = Результат.Получить("Счет");         Остаток = Результат.Получить("Остаток");         // Заполняем табличную часть         НоваяСтрока = Документ.ТабличнаяЧасть.Добавить();         НоваяСтрока.Дебет = 3387;         НоваяСтрока.Кредит = Счет;         НоваяСтрока.Контрагент = Справочники.Контрагенты.НайтиПоНаименованию("Продамус ООО");         НоваяСтрока.Сумма = Остаток;     КонецЦикла;     // Сохраняем документ     Документ.Записать(); КонецПроцедуры | 
Этот код является примером и может потребовать доработки в зависимости от вашей конфигурации и структуры данных.
Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/183489/
