Здравствуйте! Помогите решить пжл задачу для стажера.
В типовой конфигурации «Бухгалтерия предприятия 3.0» требуется установить нулевые остатки по всем счетам в регистре бухгалтерии Хозрасчетный на заданную дату.
---
Ну если бухучет позволяет все сразу на нулевой списать, тогда пожалуй да.

```1c
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | ХозрасчетныйОстатки.Счет КАК Счет,
    | ХозрасчетныйОстатки.СуммаОстаток КАК СуммаОстаток
    |ИЗ
    | РегистрБухгалтерии.Хозрасчетный.Остатки(&Период, НЕ Счет.Забалансовый, , Организация = &Организация) КАК ХозрасчетныйОстатки";

    Запрос.УстановитьПараметр("Период", Новый Граница(Период, ВидГраницы.Включая));
    Запрос.УстановитьПараметр("Организация", Организация);
    РезультатЗапроса = Запрос.Выполнить();

    Выборка = РезультатЗапроса.Выбрать();
    НаборЗаписей = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
    НаборЗаписей.Отбор.Регистратор.Установить(ДокументОперация);

    Пока Выборка.Следующий() Цикл
    НоваяЗапись = НаборЗаписей.Добавить();
    НоваяЗапись.СчетКт = Выборка.Счет;
    НоваяЗапись.СчетДт = Счет000;
    НоваяЗапись.Сумма = Выборка.СуммаОстаток;
    НоваяЗапись.Период = Период;
    НоваяЗапись.Организация = Организация;
    КонецЦикла;

    НаборЗаписей.Записать();
```

Но я думаю, что месяц при этом в программе не закроется никогда))
---
Напишите обработку для выполнения этой задачи
А вы, товарищ не охренели? т.е. даже не подскажите, а напишите?
---
Извините, это задание так написано. Просто скопировал и вставил.
---
Запросом остатки на этот момент времени.

И документ "Ручная операция" или "Бухгалтерская операция": делов-то ненадолго там уже будет.
---
А можно подробнее? Не сталкивался некогда с БП. Только начинаю изучать 1с
---
helpme1s.ru/registry-buxgalterii-v-yazyke-1s-8-v-primerax

там есть примеры и остатков и оперБух
---
Кто поможет написать запрос? кто приведет строки кода? Могу повысить вознаграждение до 0,3
---
Могу повысить вознаграждение до 0,3 С 11 до 21 рубля??? Да вы так разоритесь скоро...
---
Странная задача. Если бы речь не шла про период, то очистить регистр дело плевое. Но поскольку речь идет о нулевых остатках на дату, то это надо по каждому счету делать отдельные записи списания. Причем, если в бухучете не разбираешься, то получиться полнейшая ерунда.

Вот например код для нулевого остатка по счету 10.05. Примерно такой же надо по каждому счету сделать. При этом из-за двойной записи в любом случае будут остатки по счетам. Тут больше надо по бухучету смотреть как списать в ноль все остатки.

Может в задаче речь шла про обороты? Тогда это просто.

```1c
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | ХозрасчетныйОстатки.Счет КАК Счет,
    | ХозрасчетныйОстатки.СуммаОстаток КАК СуммаОстаток
    |ИЗ
    | РегистрБухгалтерии.Хозрасчетный.Остатки(&Период, Счет = &Счет1005, , Организация = &Организация) КАК ХозрасчетныйОстатки";

    Запрос.УстановитьПараметр("Период", Новый Граница(Период, ВидГраницы.Включая));
    Запрос.УстановитьПараметр("Счет1005", Счет1005);
    Запрос.УстановитьПараметр("Организация", Организация);
    РезультатЗапроса = Запрос.Выполнить();

    Выборка = РезультатЗапроса.Выбрать();

    Пока Выборка.Следующий() Цикл
    НаборЗаписей = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
    НаборЗаписей.Отбор.Регистратор.Установить(ДокументОперация);
    НоваяЗапись = НаборЗаписей.Добавить();
    НоваяЗапись.СчетКт = Счет1005;
    НоваяЗапись.СчетДт = Счет4401;
    НоваяЗапись.Сумма = Выборка.СуммаОстаток;
    НоваяЗапись.Период = Период;
    НоваяЗапись.Организация = Организация;
    НаборЗаписей.Записать();
    КонецЦикла;
```
---
Так обычно через 000 делают все, если на текущий момент в ОСВ нет остатков по 000, т.е. Дт = Кт, то и после списания их не будет.
---
Ну если бухучет позволяет все сразу на нулевой списать, тогда пожалуй да.

```1c
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | ХозрасчетныйОстатки.Счет КАК Счет,
    | ХозрасчетныйОстатки.СуммаОстаток КАК СуммаОстаток
    |ИЗ
    | РегистрБухгалтерии.Хозрасчетный.Остатки(&Период, НЕ Счет.Забалансовый, , Организация = &Организация) КАК ХозрасчетныйОстатки";

    Запрос.УстановитьПараметр("Период", Новый Граница(Период, ВидГраницы.Включая));
    Запрос.УстановитьПараметр("Организация", Организация);
    РезультатЗапроса = Запрос.Выполнить();

    Выборка = РезультатЗапроса.Выбрать();
    НаборЗаписей = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
    НаборЗаписей.Отбор.Регистратор.Установить(ДокументОперация);

    Пока Выборка.Следующий() Цикл
    НоваяЗапись = НаборЗаписей.Добавить();
    НоваяЗапись.СчетКт = Выборка.Счет;
    НоваяЗапись.СчетДт = Счет000;
    НоваяЗапись.Сумма = Выборка.СуммаОстаток;
    НоваяЗапись.Период = Период;
    НоваяЗапись.Организация = Организация;
    КонецЦикла;

    НаборЗаписей.Записать();
```

Но я думаю, что месяц при этом в программе не закроется никогда))
---
Но я думаю, что месяц при этом в программе не закроется никогда)) Задача тестовая. Она на понимание работы механизма регистра, а не на знания нюансов бухучета.
---
Все равно задача дурацкая. Лучше бы попросили программно изменить проводку документа по регистру. Это бы и знания проверило и уже гораздо ближе к реальной практике. Ну например замена субконто по всей базе.
---
Ну например замена субконто по всей базе. Такие задачи джунам даже в страшном сне не раздают. Их даже миддлам не доверяют.
---
Бэкапы наше все, а там пускай на копии возится.
---
То есть вы и активные, и пассивные, и активно-пассивные счета собрались закрывать строго через Дт000? И даже на субконто наплевали?
---
Да, тут можно много нюансов еще накопать, но пусть сам дальше думает. Формально остатки я обнулил. Как минимум запрос выходит пустым.
---
Спасибо большое за все! А если, подсказывали ранее, сделать запись остатков в регистр со знаком минус. А вообще можно получить остатки по счетам не придавая значение двойной записи (понятно, это глупо звучит), т.е получать счет на котором определенная остаточная сумма?
---
запись остатков в регистр со знаком минус. Я вам просто напомню, что речь идет о регистре бухгалтерии, а не о регистре накопления.
---
Нельзя, только не для этого регистра. Вся суть регистра бухгалтерия в двойной записи.