Подписка на событие ОбработкаПроведения

  1. 8 г. назад

    Есть две подписки на событие ОбработкаПроведения.
    На Поступление и на Списание.
    В обоих случаях использую регистр бухии Источник.Движения.Хозрасчетный.
    По списанию все ОК, проводки сформированы, а по поступлению на момент перехвата Хозрасчетный пуст.
    Подскажите, почему может быть такое?

  2. Потому что хозрасчетный записывается в модуле набора записей

  3. Оба обработчика идентичны
    Поступление: Проводки = Источник.Движения.Хозрасчетный; В Проводки = пусто
    Списание: Проводки = Источник.Движения.Хозрасчетный; В Проводки = ТЗ с проводками.
    Почему в первом случае проводок нету?
    По обеим вариантам перехватываются события от нескольких документов.

  4. Не пойму, в каком направлении копать...

    Ответы: (4)
  5. alex_shkut в каком направлении копать...

    для начала: в какой момент формируются проводки у поступления?
    Мик прав?

    Ответы: (5)
  6. (4) Насколько я понял - в ДвижениеПоРегистрам в процедуре модуля документа ОбработкаПроведения()

    Иначе
    	УправлениеЗапасамиПартионныйУчет.ДвижениеПартийТоваров(ТаблицаПоТоварам, Отказ);
    КонецЕсли;

    А подписка отрабатывает после завершения процедуры модуля документа. Так?

    Ответы: (6)
  7. alex_shkut А подписка отрабатывает после завершения процедуры модуля документа. Так?

    а в СП че не посмотришь?
    сначала вызываются все обработчики событий модуля объекта, потом в произвольном порядке внешние обработчики.
    вывод: МИК прав, и проводки пишутся какой-то подпиской.

    Ответы: (7)
  8. sf а в СП че не посмотришь?

    Уточните, что такое СП.

    Ответы: (8)
  9. (7) лучший друг 1Сника (после директора) - это синтаксис-помощник

  10. Похоже, что вот этот вызов очищает таблицу движений документа
    Движения.Хозрасчетный.Записать(Ложь);
    ЗЫ. И в СП нашел
    При вызове с параметром <Замещать> равным Ложь после записи в информационную базу набор записей очищается (удаляются записи из набора).

    Ответы: (10) (11)
  11. (9) :)
    конфа типовая?

    Ответы: (11)
  12. +(10) в типовой:

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

    будет вызываться два раза - при очистке движений и после формирования новых проводок.

    Ответы: (12)
  13. (11) Конфа типовая, дописана отраслевиками, и допилена мною.
    В конкретно документе, который не "отдавал" проводки, в модуле документа был явный вызов Движения.Хозрасчетный.Записать(Ложь); (отраслевики) который и очищал движения.
    Я его забанил, и теперь все ОК.

или зарегистрируйтесь чтобы ответить!