доработка в 1с бухгалтерий все суммы с 3387 счета и 1210 счета по разным контрагентам на счет 3387 но одного контрагента. То есть счет дт 3387 (всегда) и компания Продамус ООО (всегда), а по кт будет два счета - 3387 и 1210 и разные контрагенты. в зависимости от остатков по данным счетам на дату операции (списание идет в конце каждого месяца). И вот данная операция должна заполняться автоматически по остаткам по 3387 и 1210.
Привет, Aza!
Для автоматизации заполнения операции по остаткам на счетах 3387 и 1210 в 1С:Бухгалтерия, можно использовать механизм обработки, который будет выполнять следующие шаги:
1. **Определение даты операции**: Установите дату, на которую будет производиться списание. Это может быть последняя дата месяца.
2. **Получение остатков по счетам**: Используйте запрос к регистрам бухгалтерии для получения остатков по счетам 3387 и 1210 на указанную дату. Это можно сделать с помощью запроса к регистру "Остатки по счетам".
3. **Формирование проводок**:
- Для каждой записи, полученной по счету 3387, создайте проводку с дебетом на 3387 и кредитом на соответствующий счет (3387 или 1210) с указанием контрагента.
- Убедитесь, что контрагент для дебета всегда будет "Продамус ООО".
4. **Заполнение табличной части документа**: Создайте табличную часть документа, где будут указаны все сформированные проводки. Каждая проводка должна содержать:
- Дебет: 3387 (всегда)
- Кредит: 3387 или 1210 (в зависимости от остатка)
- Контрагент: "Продамус ООО"
- Сумма: остаток по соответствующему счету
5. **Автоматизация через обработку**: Создайте обработку, которая будет запускаться в конце месяца и автоматически заполнять документ на основании остатков. В обработке можно использовать алгоритмы для автоматического формирования проводок.
Пример кода для запроса остатков и формирования проводок может выглядеть следующим образом:
1C
Процедура ЗаполнитьОперацию()
ДатаОперации = КонецМесяца(ТекущаяДата());
// Получаем остатки по счетам
Запрос = Новый Запрос;
Запрос.Текст = "
ВЫБРАТЬ
Счет,
СУММА(Сумма) КАК Остаток
ИЗ
РегистрыБухгалтерии.ОстаткиПоСчетам
ГДЕ
Счет В (&Счета)
И Дата <= &Дата
GROUP BY
Счет";
Запрос.УстановитьПараметр("Счета", Новый Массив(3387, 1210));
Запрос.УстановитьПараметр("Дата", ДатаОперации);
Результат = Запрос.Выполнить();
// Создаем документ
Документ = Документы.ЗаписьОперации.СоздатьДокумент();
Пока Результат.Выбрать().Следующий() Цикл
Счет = Результат.Получить("Счет");
Остаток = Результат.Получить("Остаток");
// Заполняем табличную часть
НоваяСтрока = Документ.ТабличнаяЧасть.Добавить();
НоваяСтрока.Дебет = 3387;
НоваяСтрока.Кредит = Счет;
НоваяСтрока.Контрагент = Справочники.Контрагенты.НайтиПоНаименованию("Продамус ООО");
НоваяСтрока.Сумма = Остаток;
КонецЦикла;
// Сохраняем документ
Документ.Записать();
КонецПроцедуры
Этот код является примером и может потребовать доработки в зависимости от вашей конфигурации и структуры данных.
Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/183489/