Имя: Пароль:
1C
1С v8
КД 3.0 Выгружать УникальныйИдентификатор
0 ac13
 
08.06.20
09:25
Из УТ 11 выгружаю Номенклатуру в БП 3.
В БП у справочника Номенклатура есть реквизит УИД_УТ, в который нужно записывать уникальный идентификатор справочка в УТ.
Где нужно прописать выгрузку загрузку УИДа?

В процедуре ПриОтправке типа:
ДанныеXDTO.Вставить("УИД_УТ", XMLСтрока(ДанныеИБ.Ссылка);

Или как правильно, кто-нибудь реализовывал подобное?
1 ac13
 
08.06.20
09:30
И ещё вопрос - есть вариант через КД 3.0 установить отборы выгружаемых данных?
Например, мне нужно выгружать только Номенклатура, у которой стоит признак "Тип товара" - безакцизный.
2 Ненавижу 1С
 
гуру
08.06.20
09:32
1. При передаче объекта и так передается элемент Ссылка
2. В БСП есть РС СоответствияОбъектовИнформационныхБаз, как раз для объектов, где УИД не соответствует
3 Ненавижу 1С
 
гуру
08.06.20
09:36
(1) для этого можно настроить регистрацию соответствующих объектов
как ни странно делается через КД 2.1

получается что-то вроде такого:

    <ПравилаРегистрацииОбъектов>
        <Группа Отключить="false">
            <Код>000000002</Код>
            <Наименование>Справочники</Наименование>
            <ТипГруппы>Справочник</ТипГруппы>
            <Правило Отключить="false" Валидное="true">
                <Код>000000001</Код>
                <Наименование>Номенклатура</Наименование>
                <ОбъектНастройки>СправочникСсылка.Номенклатура</ОбъектНастройки>
                <ОбъектМетаданныхИмя>Справочник.Номенклатура</ОбъектМетаданныхИмя>
                <ОбъектМетаданныхТип>Справочник</ОбъектМетаданныхТип>
                <ОтборПоСвойствамПланаОбмена/>
                <ОтборПоСвойствамОбъекта>
                    <ЭлементОтбора>
                        <ТипСвойстваОбъекта>ПеречислениеСсылка.ВидыНоменклатуры</ТипСвойстваОбъекта>
                        <ВидСравнения>Равно</ВидСравнения>
                        <СвойствоОбъекта>ВидНоменклатуры</СвойствоОбъекта>
                        <Вид>АлгоритмЗначения</Вид>
                        <ЗначениеКонстанты>Значение = Перечисления.ВидыНоменклатуры.Товар;</ЗначениеКонстанты>
                        <ТаблицаСвойствОбъекта>
                            <Свойство>
                                <Наименование>ВидНоменклатуры</Наименование>
                                <Тип>ПеречислениеСсылка.ВидыНоменклатуры</Тип>
                                <Вид>Реквизит</Вид>
                            </Свойство>
                        </ТаблицаСвойствОбъекта>
                    </ЭлементОтбора>
                </ОтборПоСвойствамОбъекта>
            </Правило>
        </Группа>
4 ac13
 
08.06.20
09:36
(2) хорошо, но где в правилах обмена прописать, чтобы при загрузке записывать УИД именно в реквизит?
5 ac13
 
08.06.20
09:37
(3) понял, не регистрировать изменения объектов с ненужным мне признаком, спасибо!
6 Ненавижу 1С
 
гуру
08.06.20
09:57
(4) в загрузке ПриКонвертацииДанныхXDTO вытащить UUID()
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший