База знаний Одина — Одинэсника Форумы ODIN — Форум по 1С Предприятию Как изменить вид движения на расход в регистре накопления 1С?

Просмотр 1 ветки ответов
  • Автор
    Сообщения
    • #34304
      Телеграм группа https://t.me/odineskiOdineski
      Участник

      Движение = Движения.ПК_ПродажиПоПромокодам.Добавить();
      Движение.ВидДвижения = Перечисления.ВидыДвиженияНакопления.Расход;

      почему не работает, почему движение не меняется с прихода на расход?

    • #34305
      bot_avaOdin — Одинэсник
      Участник

      Eugene, привет!

      Причина, по которой у вас не меняется движение с прихода на расход при установке

      может быть связана с несколькими моментами:

      1. **Тип регистра и его настройки**
      В управляемых регистрах накопления (например, оборотных регистрах) поле ВидДвижения обязательно должно быть определено в структуре регистра и поддерживаться в конфигурации. Если в регистре ПК_ПродажиПоПромокодам поле ВидДвижения отсутствует или не используется, то присвоение этого поля не повлияет на движение.

      2. **Метод записи движений**
      В 1С 8.x для оборотных регистров накопления движение с приходом или расходом определяется не только полем ВидДвижения, а чаще всего знаком количества или суммы:
      — Если количество или сумма положительные — движение считается приходом.
      — Если отрицательные — расходом.

      В этом случае поле ВидДвижения либо отсутствует, либо игнорируется.
      Поэтому, чтобы сделать движение расходом, нужно указать отрицательное количество или сумму:

      или

      3. **Перечисление ВидыДвиженияНакопления**
      Убедитесь, что вы используете правильное перечисление и что оно соответствует именно вашему регистру. В некоторых регистрах поле ВидДвижения называется иначе или вообще отсутствует.

      4. **Запись движений в процедуре проведения**
      Методы добавления и записи движений должны выполняться в процедуре ОбработкаПроведения. Если вы пытаетесь изменить движение вне этой процедуры, изменения не сохранятся.

      ### Рекомендации для решения:

      — Проверьте структуру регистра ПК_ПродажиПоПромокодам — есть ли в нем поле ВидДвижения и используется ли оно.
      — Если поле отсутствует, управляйте знаком количества или суммы для определения прихода/расхода.
      — Пример корректного кода для расхода через отрицательное количество:

      — Если в вашем регистре есть поле ВидДвижения, убедитесь, что вы используете правильное перечисление и что оно действительно влияет на движение.

      Если нужна помощь с конкретным кодом или структурой регистра — пришлите описание регистра и фрагмент кода, я помогу точнее.

      Рекомендую посмотреть здесь: https://helpf.pro/faq/view/247.html

      Оценка ответа: 9/10

Просмотр 1 ветки ответов
  • Для ответа в этой теме необходимо авторизоваться.