Здравствуйте, создал небольшую конвертацию между практически одинаковыми документами, все хорошо переносится кроме значения одного перечисления, создал для него отдельное ПКС, в ПКС документа указал его как правило конвертации, ПВД только для документа. Подскажите пожалуйста почему может не переноситься?
P.S. Конвертацию делаю в одной базе (из нее выгружаю, в нее загружаю), только разные документы, перечисление естественно тоже самое.
---
вот так
---
В файле обмена поле заполняется?
---
Пока что смог найти это:

```1c
    <Правило>
    <Код>КВД</Код>
    <Источник>ПеречислениеСсылка.КВД</Источник>
    <Приемник>ПеречислениеСсылка.КВД</Приемник>
    </Правило>
```
---
Само перечисление?
Зачем там правило? Вроде бы должно без него выгрузиться
---
Пробовал и с ним и без него
---
Само значение выгружается ?
---
нет. На сколько понимаю оно и не должно. По факту я из одной базы выгружаю и в нее же и загружаю.
---
На работе конфигурации КД нет, поэтому не смогу назвать правильно как называются места, куда это нужно добавить, но я попробую.
Можно попробовать так:
На первом скриншоте встать на "КВД" в колонке "Источник", нажать F2. В обработчике "ПередВыгрузкой" вставьте этот код

```1c
    Значение = Метаданные.Перечисления["КВД"].ЗначенияПеречисления[Перечисления["КВД"].Индекс(Источник.КВД)].Имя;
```

В итоге мы вставим имя перечисления, так как оно задано в конфигураторе. Конвертация все правильно поймет.
Единственно в чем могу ошибиться(без конфигурации КД), это в написании "Источник.КВД".
---
Спасибо, сейчас попробую!)
---
Ошибка при выгрузке данных: {ВнешняяОбработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(1693)}: Ошибка в обработчике события ПередВыгрузкой (свойства)
 ПКО = МЗ_СписаниеАптека (Документ: Списание материалов (Аптека))
 ПКС = 29 (КВД --> КВД)
 Объект = Списание материалов (Аптека) 00026050 от 30.05.2019 20:00:16 (Списание материалов (Аптека))
 СвойствоПриемника = КВД (ПеречислениеСсылка.КВД)
 Обработчик = ПередВыгрузкойСвойства
 ОписаниеОшибки = Ошибка при вызове метода контекста (Индекс): Несоответствие типов (параметр номер '1')
 ПозицияМодуля = (1)
 КодСообщения = 55
---
Скорее всего где то не заполнено поле это, проверку на пустое значение нужно, если не пустое - тогда уже
(4)
---
проблема в том что оно в принципе выходит пустое, а как заполнить не могу понять. А эта ошибка выходит на код :
```1c
    Значение = Метаданные.Перечисления["КВД"].ЗначенияПеречисления[Перечисления["КВД"].Индекс(Источник.КВД)].Имя;
```
---
а конвертацию предопределенных значений то настроили?
---
не понимаю о чем вы
---
вот такую вкладку у перечисления в КД.
в ней настраивается какое значение источника какому значению приемника соответствует. без этого ничего не выгрузится.
---
вот
---
а что написано в обработчике перед выгрузкой в ПКО?
---
уже ничего, экспериментировал...
---
вот этот значок говорит что есть код, откройте КВД
---
Да, я понял, я в тот момент экспериментировал, сейчас там ничего нет
---
при такой настройке все должно выгружаться, даже без кода, пришлите что ли файл самих правил, я посмотрю
---
странно, в файле точно нет данных?
настроено все верно. если не попадает в файл - уверены вы что этот реквизит заполнен в документе?

и почему в коде ОбъектКоллекции.КВД? должен быть Источник.КВД. Объект коллекции только внутри табчасти существует, а у Вас реквизит обычный.
---
Пробовал и так и так. Реквизит абсолютно точно заполнен.
---
Эх, в отладчике бы поставить точку останова и посмотреть почему так пишет...
Хотя понятно почему: "Источник.КВД" возвращает не перечисление.
Дома попробую воспроизвести. Какая конфигурация?
---
БГУ 1.0
---
и по-моему нужно к строке приводить результат, разве нет?

Значение = "ИмяЗначенияПеречисления";

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

```1c
    Значение = Метаданные.Перечисления["КВД"].ЗначенияПеречисления[Перечисления["КВД"].Индекс(ОбъектКоллекции.КВД)].Имя;
```

(14) Все так, результат моего кода и есть строка.
---
Ошибка при выгрузке данных: {ВнешняяОбработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(1693)}: Ошибка в обработчике события ПередВыгрузкой (свойства)
 ПКО = МЗ_СписаниеАптека (Документ: Списание материалов (Аптека))
 ПКС = 29 (КВД --> КВД)
 Объект = Списание материалов (Аптека) 00026050 от 30.05.2019 20:00:16 (Списание материалов (Аптека))
 СвойствоПриемника = КВД (ПеречислениеСсылка.КВД)
 Обработчик = ПередВыгрузкойСвойства
 ОписаниеОшибки = Значение не является значением объектного типа (КВД)
 ПозицияМодуля = (2)
 КодСообщения = 55
---
А там хоть есть что то?
Закоментируйте код и напишите

```1c
    Сообщить(ОбъектКоллекции.КВД)
```

Что напишет?
---
Если пишу Сообщить(ОбъектКоллекции.КВД) то выдает

Ошибка в обработчике события ПередВыгрузкой (свойства)
 ПКО = МЗ_СписаниеАптека (Документ: Списание материалов (Аптека))
 ПКС = 29 (КВД --> КВД)
 Объект = Списание материалов (Аптека) 00000893 от 23.01.2018 20:12:19 (Списание материалов (Аптека))
 СвойствоПриемника = КВД (ПеречислениеСсылка.КВД)
 Обработчик = ПередВыгрузкойСвойства
 ОписаниеОшибки = Значение не является значением объектного типа (КВД)
 ПозицияМодуля = (2)
 КодСообщения = 55

Ошибка при выгрузке данных: {ВнешняяОбработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(1693)}: Ошибка в обработчике события ПередВыгрузкой (свойства)
 ПКО = МЗ_СписаниеАптека (Документ: Списание материалов (Аптека))
 ПКС = 29 (КВД --> КВД)
 Объект = Списание материалов (Аптека) 00000893 от 23.01.2018 20:12:19 (Списание материалов (Аптека))
 СвойствоПриемника = КВД (ПеречислениеСсылка.КВД)
 Обработчик = ПередВыгрузкойСвойства
 ОписаниеОшибки = Значение не является значением объектного типа (КВД)
 ПозицияМодуля = (2)
 КодСообщения = 55
---
Надо так Сообщить(Строка(ОбъектКоллекции.КВД))
---
Сообщить(Строка(ОбъектКоллекции.КВД))

Ошибка в обработчике события ПередВыгрузкой (свойства)
 ПКО = МЗ_СписаниеАптека (Документ: Списание материалов (Аптека))
 ПКС = 29 (КВД --> КВД)
 Объект = Списание материалов (Аптека) 00026050 от 30.05.2019 20:00:16 (Списание материалов (Аптека))
 СвойствоПриемника = КВД (ПеречислениеСсылка.КВД)
 Обработчик = ПередВыгрузкойСвойства
 ОписаниеОшибки = Значение не является значением объектного типа (КВД)
 ПозицияМодуля = (3)
 КодСообщения = 55

Ошибка при выгрузке данных: {ВнешняяОбработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(1693)}: Ошибка в обработчике события ПередВыгрузкой (свойства)
 ПКО = МЗ_СписаниеАптека (Документ: Списание материалов (Аптека))
 ПКС = 29 (КВД --> КВД)
 Объект = Списание материалов (Аптека) 00026050 от 30.05.2019 20:00:16 (Списание материалов (Аптека))
 СвойствоПриемника = КВД (ПеречислениеСсылка.КВД)
 Обработчик = ПередВыгрузкойСвойства
 ОписаниеОшибки = Значение не является значением объектного типа (КВД)
 ПозицияМодуля = (3)
 КодСообщения = 55
---
А в документе списание аптека, который вы выгружаете это поле заполнено?
---
Да, точно заполнено, без него нельзя провести.
---
Не ОбъектКоллекции.КВД а Источник.КВД должно быть
---
попробуйте в параметр выгрузить это поле
---
подскажите пожалуйста как...
---
вот так
---
Кстати значение перечисления из документе есть в КД? может вы новое добавляли а метаданные в кд не обновили?
---
Есть
---
А какое значение КВД выбрано в выгружаемом документе?
---
покажите поле в документе , который выгружаете
---
Сейчас, я начал выгружать и забыл указать период, придется подождать.
---
У меня сейчас тоже была проблема с перечислением, оказалось что не было правила конвертации значения.
---
Точно есть)
---
и какое значение в документе?
---
там перечисление от 1 до 7, в каждом документе этот реквизит заполнен, так как без него документ не проведется
---
Как выгружаете? С помощью "Универсальный обмен данными в формате XML"? Не хотите уже в отладчике посмотреть что на самом деле в этом выгружаемом поле? Это не сложно сделать, всего 4 шага )))
---
расскажете как?)
---
Выполните эти шаги, показанные на скриншоте, потом в конфигураторе откройте эту созданную обработку. Найдите поиском "Сообщить(Строка(ОбъектКоллекции.КВД))" или любой другой код интересующего правила, ставим точку останова, запускаем выгрузку, попадаем в конфигуратор, исследуем.