Добрый день всем.
Суть в том, что после после перехода с БП 2.0 на 3.0 пришлось затереть доработку. Заключалась она в том, что где стоит в дополнительных сведениях у номенклатуры СчетМЦ05 должен на такой счет и падать. Но если бы подходила старая доработка, то и темы (к счастью) бы не было.
Делаю через ПодпискуНаСобытия. Источником указал документ сам (ПередачаМатериалаВЭксплуатацию), событие ОбработкаПроведения, обработчиком созданный ОбщийМодуль (СчетМЦ05).
Делаю запросомпроверку есть ли в Источнике (это сам документ получается) такая номенклатура, у которой в доп.сведениях стоит СчетМЦ05 и если есть, то Дт=МЦ05. Выглядит код следующим образом:

```1c
    Процедура СчетМЦ05ОбработкаПроведения(Источник, Отказ, РежимПроведения) Экспорт

    Запрос=Новый Запрос;
    Запрос.Текст="ВЫБРАТЬ
    | ПередачаМатериаловВЭксплуатациюСпецодежда.Номенклатура
    |ПОМЕСТИТЬ Материалы
    |
    |ВЫБРАТЬ
    | ПередачаМатериаловВЭксплуатациюИнвентарьИХозяйственныеПринад­лежности.Номенклатура
    |ИЗ
    | Документ.ПередачаМатериаловВЭксплуатацию.ИнвентарьИХозяйственныеПринадлежности КАК ПередачаМатериаловВЭксплуатациюИнвентарьИХозяйственныеПринад­лежности
    |ГДЕ
    | ПередачаМатериаловВЭксплуатациюИнвентарьИХозяйственныеПринад­лежности.Ссылка = &Ссылка
    |;
    |
    |ВЫБРАТЬ
    | Материалы.Номенклатура
    |ИЗ
    | Материалы КАК Материалы
    |ГДЕ
    | Материалы.Номенклатура.ДополнительныеРеквизиты.Значение = &СчетМЦ05";

    Запрос.УстановитьПараметр("Ссылка", Источник.Ссылка);
    Запрос.УстановитьПараметр("Имя", "СчетМЦ05");
    Запрос.УстановитьПараметр("СчетМЦ05",ПланыСчетов.Хозрасчетный.НайтиПоНаименованию("МЦ.05"));
    Выбор = Запрос.Выполнить().Выбрать();

    Пока Выбор.Следующий() Цикл

    Для Каждого ТекДвижение ИЗ Источник.Движения.Хозрасчетный Цикл
    Если ТекДвижение.СчетДт = ПланыСчетов.Хозрасчетный.ИнвентарьИХозяйственныеПринадлежностиВЭксплуатации И ТекДвижение.СубконтоДт.Номенклатура = Выбор.Номенклатура Тогда
    ТекДвижение.СчетДт = ПланыСчетов.Хозрасчетный.НайтиПоНаименованию("СчетМЦ05");
    Источник.Движения.Хозрасчетный.Записать();
    КонецЕсли;
    КонецЦикла;
```

Не выходит. Пробую другой текст запроса:

```1c
    "ВЫБРАТЬ
    | ПередачаМатериаловВЭксплуатациюИнвентарьИХозяйственныеПринад­лежности.Номенклатура КАК Номенклатура
    |ИЗ
    | Документ.ПередачаМатериаловВЭксплуатацию.ИнвентарьИХозяйственныеПринадлежности КАК ПередачаМатериаловВЭксплуатациюИнвентарьИХозяйственныеПринад­лежности
    | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
    | ПО ПередачаМатериаловВЭксплуатациюИнвентарьИХозяйственныеПринад­лежности.Номенклатура = НоменклатураДополнительныеРеквизиты.Ссылка
    |ГДЕ
    | ПередачаМатериаловВЭксплуатациюИнвентарьИХозяйственныеПринад­лежности.Ссылка = &Ссылка
    | И НоменклатураДополнительныеРеквизиты.Свойство.Имя = &Имя
    |
    |СГРУППИРОВАТЬ ПО
    | ПередачаМатериаловВЭксплуатациюИнвентарьИХозяйственныеПринад­лежности.Номенклатура" ;
    Запрос.УстановитьПараметр("Ссылка", Источник.Ссылка);
    Запрос.УстановитьПараметр("Имя", "СчетМЦ05"); //имя у тебя может отличатся

    Выбор = Запрос.Выполнить().Выбрать();
```

Тоже ничего. Честно пару дней пытался что-то сделать, менял названия Счета, но в итоге безрезультатно.

1 скрин: сам код.
2 скрин: сведения о доп. реквизите
3 скрин: что у данной номенклатуры реально стоит СчетМЦ05 ДА.
---
```1c
    ТЗ = Источник.ИнвентарьИХозяйственныеПринадлежности.Выгрузить(,"Номенклатура");

    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
    | ТЗ.Номенклатура КАК Номенклатура
    |ПОМЕСТИТЬ вт_тз
    |ИЗ
    | &ТЗ КАК ТЗ
    |;
    |
    |////////////////////////////////////////////////////////////­////////////////////
    |ВЫБРАТЬ
    | вт_тз.Номенклатура КАК Номенклатура
    |ИЗ
    | вт_тз КАК вт_тз
    | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ДополнительныеСведения КАК ДополнительныеСведения
    | ПО вт_тз.Номенклатура = ДополнительныеСведения.Объект
    | И (ДополнительныеСведения.Свойство = &Свойство)
    | И (ДополнительныеСведения.Значение = ИСТИНА)
    |";

    Запрос.УстановитьПараметр("ТЗ", ТЗ);
    Запрос.УстановитьПараметр("Свойство", ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("СчетМЦ05 (Номенклатура)")); // тут нужно посмотреть точно как называется свойство в плане видов характеристик

    Выбор = Запрос.Выполнить().Выбрать();
```
---
на момент запроса движения еще могут быть не записаны. Следовательно в запросе данные по ссылке на документ могут быть неверными.
Проще через Источник получить всю номенклатуру и в запросе отобрать нужную номенклатуру из имеющейся, без использования ссылки на документ.
Ну, или перед запросом сделать запись движений источника. Но первый вариант лучше.
---
попробуй так:
   НаборЗаписей = Источник.Движения["Хозрасчетный"];
   Если НаборЗаписей.Количество() = 0 Тогда
    НаборЗаписей.Прочитать();
   КонецЕсли;
   ТаблицаДвижений = НаборЗаписей.Выгрузить();
   Для Каждого ЗаписьТаблицы Из ТаблицаДвижений Цикл
    //по нужному условию меняй счет:
    ЗаписьТаблицы[СчетДт] = ПланыСчетов.Хозрасчетный.НайтиПоНаименованию("СчетМЦ05");
   КонецЦикла;
   НаборЗаписей.Очистить();
   НаборЗаписей.Записать();
   НаборЗаписей.Загрузить(ТаблицаДвижений);
   НаборЗаписей.Записать(Ложь);
---
Переменная не определена (СчетДт). Что странно.
---
ЗаписьТаблицы["СчетДт"]
---
при проведении:
Запись не верна! Не заполнены оба счета! (Регистр бухгалтерии: Журнал проводок (бухгалтерский и налоговый учет); Номер строки: 2)
---
отладчиком смотрите в подписке ДО замены счета на МЦ - заполнены ли счета дт и кт.
---
получается при вашем способе надо будет ещё дописывать проводку для Кт?
---
мой способ проверенный и дописывать ничего не надо. Мы просто делаем подмену счетаДт и всё.
Проверьте что все ваши остальные дописки по этому поводу отключены.
---
я удаляю полностью свой текст, вставляю Ваш и происходит данная ошибка. До этого же всё заполняло. Остальных дописок нет никаких. Ни здесь, ни где либо ещё. Странно как то
---
где условие по которому должна быть замена счетаДт? У вас в каждой строке меняется счетДт!
---
Так. Извиняюсь конечно, я во все это только вникаю, ооочень сложно всё это понять пока что. Надо оставить текст запроса? Или как мне ещё сделать это условие? По идее же именно запросом выбираю номенклатуру из документа в которой стоит доп. реквизит и там уже подменяю. Но я сейчас попробовал, естественно не сработало. Как тогда написать данное условие?
---
теперь все же прочитать (2).
Вариант выполнения:
1. Выгрузить номенклатуру из ТЧ документа через Источник:
ТЗ = Источник.ИнвентарьИХозяйственныеПринадлежности.Выгрузить(,"НомерСтроки, Номенлатура");
2. Загрузить в запрос полученную ТЗ.
3. Из временной таблицы с загруженной ТЗ выбрать те записи, которые соответствуют нужным параметрам.
4. Полученный результат обрабатываем.
---
знать бы как всё это делать. Я же только стажируюсь. С 1С знаком 1,5мес. только
---
не могли бы подсказать каким кодом это делается всё? Я правда вчера сидел, чо то пытался сделать, смотрел как всё это делается в стандартных доках, но не получается.
---
что именно не получается?
В ТЗ выгрузили номенклатуру из документа?
В запрос поместить ТЗ и получить нужную выборку. Пример:

```1c
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | ТЗ.Номенклатура КАК Номенклатура
    |ПОМЕСТИТЬ вт_тз
    |ИЗ
    | &ТЗ КАК ТЗ
    |;
    |
    |////////////////////////////////////////////////////////////­////////////////////
    |ВЫБРАТЬ
    | вт_тз.Номенклатура КАК Номенклатура
    |ИЗ
    | вт_тз КАК вт_тз
    |ГДЕ
    | вт_тз.Номенклатура.Артикул = "М2" ";

    Запрос.УстановитьПараметр("ТЗ", ТЗ);
    РезультатЗапроса = Запрос.Выполнить();

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

Далее уже обрабатываете выборку.
Конструктором запроса будет невозможно работать при таком запросе. Будет ругаться. Но это всего лишь ограничение конструктора запроса. Работать будет и опыт набирать запрос без конструктора пригодится.
Но если вообще никак без конструктора, тогда можно выразить номенклатуру в запросе:

```1c
    |ГДЕ
    | ВЫРАЗИТЬ(вт_тз.Номенклатура КАК Справочник.Номенклатура).Артикул = "М2"";
```

Соответственно условие заменить на свое.
---
не получается написать код, не хватает опыта, не знаю как. Сейчас попробую по Вашему примеру, хотя и это будет не легко. Мне сейчас сложно ещё понять как это писать и как потом делать обработку результата. Какими командами и пр.
---
вот например мне не понятно, что значит вт_тз. Что тут писать, как тут писать я хз. Только учусь. И чую все праздники на это задание убью :D
---
вт_тз это произвольное имя которое дается временной таблице. Можно оставить как есть. Можно свое присвоить.
Весь запрос можно оставить как есть, только условие в секции ГДЕ свое поставить:

```1c
    |ГДЕ
    | вт_тз.Номенклатура.ДополнительныеРеквизиты.Значение = &СчетМЦ05
```
---
Это вот которое М2? Вместо него я так понимаю наименование этого счета МЦ05? В моем случае это "Автомобильные шины для..."?
(33)
---
Понял, невнимателен, извиняюсь
---
Пишет, что переменная ТЗ не определена в Запрос.УстановитьПараметр("ТЗ", ТЗ); Что не так?
---
я выше приводил код получения переменной ТЗ

```1c
    ТЗ = Источник.ИнвентарьИХозяйственныеПринадлежности.Выгрузить(,"Номенлатура");
```
---
при проведении пишет Не задано значение параметра "СчетМЦ05"
вт_тз.Номенклатура.ДополнительныеРеквизиты.Значение = <<?>>&СчетМЦ05
---
так ведь нужно передать этот параметр в запрос. Он же в (0) приведен. Я думал это очевидно.

```1c
    Запрос.УстановитьПараметр("СчетМЦ05",ПланыСчетов.Хозрасчетный.НайтиПоНаименованию("МЦ.05"));
```
---
ну да.
Сразу извиняюсь за глупый вопрос, но мне так понятнее будет, сразу избежим много ошибок.
Запрос который Вы мне дали мы пишем внутри

```1c
    НаборЗаписей = Источник.Движения["Хозрасчетный"];
    Если НаборЗаписей.Количество() = 0 Тогда
    НаборЗаписей.Прочитать();
    КонецЕсли;
    ТаблицаДвижений = НаборЗаписей.Выгрузить();
    Для Каждого ЗаписьТаблицы Из ТаблицаДвижений Цикл
    //по нужному условию меняй счет:
    ЗаписьТаблицы[СчетДт] = ПланыСчетов.Хозрасчетный.НайтиПоНаименованию("СчетМЦ05");
    КонецЦикла;
    НаборЗаписей.Очистить();
    НаборЗаписей.Записать();
    НаборЗаписей.Загрузить(ТаблицаДвижений);
    НаборЗаписей.Записать(Ложь);
```

Или где? Правильно же я сейчас делаю?
---
это уже не ко мне. Я этот код не приводил.
---
Это то я понимаю. Но запрос то внутри писать? Или для чего он мне?
---
Или можно попробовать как я изначально делал, только с Вашим запросом?
---
именно. Только не нужно в цикле делать каждый раз запись. Запись после цикла.
---
я сейчас попробую и отпишусь
---
не сработало. Наимнование в плане счетов именно такое. Заходил, копировал и вставлял. Но всё равно встаёт МЦ04. Есть какая нибудь мысль почему? Написано то всё верно вроде.

```1c
    ТЗ = Источник.ИнвентарьИХозяйственныеПринадлежности.Выгрузить(,"Номенклатура");

    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | ТЗ.Номенклатура КАК Номенклатура
    |ПОМЕСТИТЬ вт_тз
    |ИЗ
    | &ТЗ КАК ТЗ
    |;
    |
    |////////////////////////////////////////////////////////////­////////////////////
    |ВЫБРАТЬ
    | вт_тз.Номенклатура КАК Номенклатура
    |ИЗ
    | вт_тз КАК вт_тз
    |ГДЕ
    | вт_тз.Номенклатура.ДополнительныеРеквизиты.Значение = &СчетМЦ05";

    Запрос.УстановитьПараметр("ТЗ", ТЗ);
    Запрос.УстановитьПараметр("СчетМЦ05",ПланыСчетов.Хозрасчетный.НайтиПоНаименованию("Автомобильные шины для летнего (зимнего) сезона"));
    РезультатЗапроса = Запрос.Выполнить();
    Выбор = Запрос.Выполнить().Выбрать();

    Пока Выбор.Следующий() Цикл

    Для Каждого ТекДвижение ИЗ Источник.Движения.Хозрасчетный Цикл
    Если ТекДвижение.СчетДт = ПланыСчетов.Хозрасчетный.ИнвентарьИХозяйственныеПринадлежностиВЭксплуатации И ТекДвижение.СубконтоДт.Номенклатура = Выбор.Номенклатура Тогда
    ТекДвижение.СчетДт = ПланыСчетов.Хозрасчетный.НайтиПоНаименованию("Автомобильные шины для летнего (зимнего) сезона");

    КонецЕсли;
    КонецЦикла;
    КонецЦикла;

    Источник.Движения.Хозрасчетный.Записать();
```

прошу, подкиньте идею или укажите на ошибку в коде. Может в Запрос.УстановитьПараметр("СчетМЦ05"...)? Там надо устанавдивать параметр откуда?
---
в условие Если заходит? Еще подписки на это событие есть?
---
Подписок точно нет. В условие сейчас гляну.
---
Поставил ТочкуОстанова на КонецЕсли, но при проведении документа не остановилось ничего. Значит нет?
---
значит какое-то условие не выполняется.
Поставить условие на Если и смотреть ТекДвижение.СчетДт и ТекДвижение.СубконтоДт.Номенклатура.
---
Это точка останова с условием? И если да, то какое вписывать?
---
можно без условия. Там много наименований в документе?
---
нет, одно всего. Если ставить точку останова на Если, то тоже ничего, проводит. Если на Пока, то тогда останавливает
---
на Пока останавливается один раз? Тогда запрос возвращает пустую выборку.
Что покажет в отладчике ПланыСчетов.Хозрасчетный.НайтиПоНаименованию("Автомобильные шины для летнего (зимнего) сезона") ?
---
странно, но при наведении мышкой ничего не показывает. Только при наведении на СчетМЦ05 показывает ОбщийМодуль. На остальных вообще ничего. Ну и на ТЗ таблица значений.
---
Это не из за того, что у меня модуль так же называется?
---
выделить ПланыСчетов.Хозрасчетный.НайтиПоНаименованию("Автомобильные шины для летнего (зимнего) сезона") и нажать Shift-F9
---
сделал, продолжил отладку, при проведении останавливается на данной строчке и всё. Опять при наведении мышкой ничего.
---
Shift+F9 или Вычислить выражение из меню
---
Ага, поле объекта не обнаружено
---
еще раз. Выделить полностью:
ПланыСчетов.Хозрасчетный.НайтиПоНаименованию("Автомобильные шины для летнего (зимнего) сезона")
---
извиняюсь
---
В точке останова на Пока вызвать тоже меню Вычислить выражение и ввести в поле следующий код:
Запрос.Пустой()
---
Метод объекта не обнажружен... Я на всякий случай все повыделял (и сразу все, и по оттдельности, и вообще не выделял) и в поле Выражение вводил Запрос.Пустой(), но всё то же, метод не обнаружен. Что именно надо сделать?
---
выделять ничего не надо. Да, неправильно указал. Ввести в поле Выражение:
Запрос.Выполнить().Пустой()
---
ПКМ либо на точке останова, либо на пустом месте перед пока
---
в точке остановки на слове Пока !
---
я скорее всего дурак, но реально не хочет. Я щелкал на пока и дальше тоже самое
---
на скрите остановка произошла на Запрос.УстановитьПараметр....
Нужно продолжить пока остановка не произойдет на строке начала цикла.
---
я понял о чем Вы. Вот на каплю стал умнее. Значение Истина пишет.
---
теперь там же.
ТЗ.Количество()
---
1 пишет (ну как и в доке)
---
теперь смотрим саму номенклатуру и убеждаемся, что для нее не выполняется условие ДополнительныеРеквизиты.Значение = нужный счет.
---
А это где простите?
---
что? открыть элемент справочника номенклатуры где? В режиме предприятия конечно. Странный вопрос учитывая "Заключалась она в том, что где стоит в дополнительных сведениях у номенклатуры СчетМЦ05" Вот это и проверить для номенклатуры из документа.
---
А, это то да. Ну в общем да. Я специально делал (на копии естс) тренеровочный документ с нужным типом номенклатуры
---
а теперь внимательно посмотрите, что находится в дополнительных сведениях и условие в запросе. Чему там Значение равно? Причем тут счет?
---
Тогда строчку Запрос.УстановитьПараметр("СчетМЦ05",ПланыСчетов.Хозрасчетный.НайтиПоНаименованию("Автомобильные шины для летнего (зимнего) сезона"));
заменить на
Запрос.УстановитьПараметр("СчетМЦ05",Истина);?
В правильном хоть направлении думаю?
---
не так все просто. Нужно делать соединение с регистром сведений ДополнительныеСведения
---
Я не могу просить, но придётся. Не мог бы помочь с написанием этого "соединения". Я даже отдаленно не представляю как это делается. А заодно посмторю и в будущем уже будет меньше вопросов.
---
```1c
    ТЗ = Источник.ИнвентарьИХозяйственныеПринадлежности.Выгрузить(,"Номенклатура");

    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
    | ТЗ.Номенклатура КАК Номенклатура
    |ПОМЕСТИТЬ вт_тз
    |ИЗ
    | &ТЗ КАК ТЗ
    |;
    |
    |////////////////////////////////////////////////////////////­////////////////////
    |ВЫБРАТЬ
    | вт_тз.Номенклатура КАК Номенклатура
    |ИЗ
    | вт_тз КАК вт_тз
    | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ДополнительныеСведения КАК ДополнительныеСведения
    | ПО вт_тз.Номенклатура = ДополнительныеСведения.Объект
    | И (ДополнительныеСведения.Свойство = &Свойство)
    | И (ДополнительныеСведения.Значение = ИСТИНА)
    |";

    Запрос.УстановитьПараметр("ТЗ", ТЗ);
    Запрос.УстановитьПараметр("Свойство", ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("СчетМЦ05 (Номенклатура)")); // тут нужно посмотреть точно как называется свойство в плане видов характеристик

    Выбор = Запрос.Выполнить().Выбрать();
```
---
Спасибо большое. Ушел пробовать
---
"Запись не верна! Вид субконто "Работники организаций" не доступен для данной записи!"
Кстати говоря я посмотрел, у счета МЦ04 этот вид есть. Там всего 3. У МЦ05 такие же два и этого не хвататет
---
Добавил идентичный вид Субконто в МЦ05, на что ругалось. Теперь Вылезает следующая ошибка:
Хотя я создавал и сответственно проводил документ с поступланием этих шин на этот склад, да и до этого не ругалось. Как то странно.
А название свойства Вы правильно написали, идентично.
---
это уже на пальцах не проверить. Нужно подробно смотреть саму базу.
---
да, шерстю вот. Но по идее все должно быть правильно. Но до обращения к регистру сведений все считалось отлично. Буду смотреть в общем.
---
возможно где-то проверяется количество по старому МЦ04 счету.
---
Спасибо за наводку.
---
А смотреть проверяется ли количество остатков надо где то в конифгураторе? Ибо в самой проге не нашёл.
---
я думаю в этом направлении и надо двигаться. Ибо на основании старого документа (с такой же номенклатурой) сделал списание материалов из экспуатации. И как раз вылезла ошиюка с проверкой кол-ва по счету МЦ04
---
и в оборотно-сальдовой ведомости по счету МЦ04 тоже моих шин нет.
---
Менял либо на Истина, либо на "Да", но это не спасло.
---
Запись не верна! Вид субконто "Статьи затрат" не доступен для данной записи! (Регистр бухгалтерии: Журнал проводок (бухгалтерский и налоговый учет); Номер строки: 1)

Теперь то что 1С-ке не нравится? Чего она от меня хочет. (я вижу конечно, но как это то поправить)
---
такое подозрение, что источник.Организация не хватает
---
Нужно делать подписку на событие набора записей регистра.
Там ловить набор записей, анализировать его и подменять нужный счет.
---
набор записей прекрасно отлавливается и в подписке объекта-документа.
---
Не всегда и не везде. Во многих современных типовых отражение в рег. учете идет уже после проведения документа.

И даже если проводки будут сделаны в момент проведения документа это не значит что они не будут в последсвии переотражены в рамках закрытия месяца или проведения отложенных расчетов.
---
мы сейчас работаем в рамках конкретного вопроса и документа. В данном случае нет смысла постоянно дергать подписку регистра т.к. она будет вызываться при проведении кучи документов.
---
Тут очень конктретно названа конфигурация БП 3.0 в которой есть отложенный пересчет. Вы гарантируете что в последствии движения по этому регистратору не будут записаны заново после расчета стоимости материалов ?

Вообще эту задачу (с заменой счета учета в зависимости от условий) можно решить без изменений конфигурации, но это уже другая история.
---
что вы подразумеваете под "расчетом стоимости материалов" ?
---
Определение стоимости МПЗ, зачет авансов и расчеты с контрагентами могут происходить в рамках закрытия месяца, а не в момент проведения документа.

Общая идея такая что часть проводок могут быть иногда перезаписаны без проведения документа и чтобы при этом не потерять свои изменения, такие как подмена счетов учета стоит работать с набор записи в момент записи регистра, а не с моментом проведения документа.
---
в данном документе проводки пишутся при проведении.
---
я смотерел как поменять счет учета штатными средставми, но информации не нашёл. Если есть можете поделиться?
---
Можно сделать свое регламентное задание из внешней обработки, БСП БУХ 3 это позволяет. И уже с помощью рег. задания анализировать движения определенных документов по определенным счетам и подменять счет учета и аналитику если нужно.
Никаких изменений конфигурации.
---
внешнюю обработку писать с нуля для меня сейчас это мрак будет. Я с простейшей колупался пару недель, и то у меня образец был, а тут ещё такое.
---
Этот запрос должен выполняться в последнюю очередь, т.е после записи и проведения документа, лучше сделать просто вызов общего модуля в последней строчке, а так все отладчиком смотреть надо
---
вызов сделать уже в самом документе?
---
и я почему то думал, что как раз проводки формируются во время проведения документа и соответственно в этот самый момент
 должен счет Дт подменяться
---
Я писала в самом конце Процедуры ОбработкаПроведения()
---
Делайте подписку на запись набора.