| 
    
        
     
     | 
    
  | 
вопрос по КД | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        novichok79    
     08.07.16 
            ✎
    11:20 
 | 
         
        Здравствуйте, уважаемые специалисты. Моя предыдущая тема остается без ответа, поэтому создаю новую.
 
        Собственно сабж: дорабатываю типовые правила обмена УТ 10.3 -> БП 3.0. делаю ПКО ВидыКонтактнойИнформацииОрганизацияКонтрагент, которые переносит виды КИ контрагента в виды КИ организации и наоборот. конвертации свойств: Наименование -> Наименование, Тип -> Тип, ПометкаУдаления -> ПометкаУдаления, Родитель -> Родитель. Поля поиска: Наименование -> Наименование и Родитель -> Родитель. Значения в ПКС берутся из входящих данных (на случай из в УТ 10.3 Вид КИ задан строкой). Значение "Родитель" подбирается по следующему алгоритму: ВидОбъектаКонтактнойИнформации = ВходящиеДанные.ВидОбъектаКонтактнойИнформации; Если ВидОбъектаКонтактнойИнформации = Перечисления.ВидыОбъектовКонтактнойИнформации.Контрагенты Тогда Значение = "СправочникОрганизации"; ИначеЕсли ВидОбъектаКонтактнойИнформации = Перечисления.ВидыОбъектовКонтактнойИнформации.КонтактныеЛица Тогда Значение = "СправочникКонтактныеЛица"; ИначеЕсли ВидОбъектаКонтактнойИнформации = Перечисления.ВидыОбъектовКонтактнойИнформации.КонтактныеЛицаКонтрагентов Тогда Значение = "СправочникКонтактныеЛица"; ИначеЕсли ВидОбъектаКонтактнойИнформации = Перечисления.ВидыОбъектовКонтактнойИнформации.ЛичныеКонтакты Тогда Пусто = Истина; ИначеЕсли ВидОбъектаКонтактнойИнформации = Перечисления.ВидыОбъектовКонтактнойИнформации.Организации Тогда Значение = "СправочникКонтрагенты"; ИначеЕсли ВидОбъектаКонтактнойИнформации = Перечисления.ВидыОбъектовКонтактнойИнформации.Пользователи Тогда Значение = "СправочникПользователи"; ИначеЕсли ВидОбъектаКонтактнойИнформации = Перечисления.ВидыОбъектовКонтактнойИнформации.ФизическиеЛица Тогда Значение = "СправочникФизическиеЛица"; ИначеЕсли ВидОбъектаКонтактнойИнформации = "" Тогда Пусто = Истина; КонецЕсли; т. е. как мы видим при выгрузке организаций в БП из УТ загружаются виды КИ контрагента, и наоборот - при выгрузке контрагентов в БП из УТ загружаются виды КИ организаций. далее при выгрузке из УТ свойство "Родитель" выгружается верно, как и должно. а при загрузке в БП. в обработчик при поиске непопадает, а попадается в обработчик перед загрузкой и при загрузке. и выдает что ссылку вида КИ алгоритм находит для контрагента, когда должен для организации. подставляет верные значения, но не записывает объект, т. к. установлена настройка в ПКО "не замещать объекты" вопрос - как сделать так, чтобы поиск в БП при загрузке работал верно? Заранее благодарю за помощь.  | 
|||
| 
    1
    
        VladZ    
     08.07.16 
            ✎
    11:32 
 | 
         
        Ничего не понял... При чем здесь "Родитель"?     
         | 
|||
| 
    2
    
        novichok79    
     08.07.16 
            ✎
    11:32 
 | 
         
        вот, если кому-то поможет кусок протокола загрузки:
 
        Загрузка объекта № 12 ИмяПКО = ВидыКонтактнойИнформацииОрганизацияКонтрагент ТипОбъекта = Вид контактной информации КодСообщения = ПКО_ВидыКонтактнойИнформацииОрганизацияКонтрагент_ПередЗагрузкойОбъекта --> Отказ = Нет Источник = Строка Источник = ЗначениеЗаполнено(Источник) = Нет ПКО_ВидыКонтактнойИнформацииОрганизацияКонтрагент_ПередЗагрузкойОбъекта <-- ПКО_ВидыКонтактнойИнформацииОрганизацияКонтрагент_ПриЗагрузкеОбъекта --> Отказ = Нет Ссылка.Родитель = Контактная информация справочника "Контрагенты" Ссылка = Другое (любая другая контактная информация) Объект = Другое Объект.Родитель = Контактная информация справочника "Организации" ОбъектНайден = Да ОбъектМодифицирован = Да НеЗамещатьОбъект = Да ПКО_ВидыКонтактнойИнформацииОрганизацияКонтрагент_ПриЗагрузкеОбъекта <--  | 
|||
| 
    3
    
        Cyberhawk    
     08.07.16 
            ✎
    11:33 
 | 
         
        Слишком много букв     
         | 
|||
| 
    4
    
        novichok79    
     08.07.16 
            ✎
    11:34 
 | 
         
        (1) ПКС родитель передается в поле "Родитель" (это группа Вида КИ в БП 3.0). без нее поиск не заданных в конвертации предопределенных значений будет идти по контрагенту (когда надо по организации)     
         | 
|||
| 
    5
    
        novichok79    
     08.07.16 
            ✎
    11:34 
 | 
         
        (3) да, но тем не менее, по существу есть что сказать?     
         | 
|||
| 
    6
    
        Cyberhawk    
     08.07.16 
            ✎
    11:37 
 | 
         
        (5) Так это по существу и есть: чтоб охотнее тебе помогали, сделай описание внятнее и компактнее. Зачем эта простыня текста     
         | 
|||
| 
    7
    
        novichok79    
     08.07.16 
            ✎
    11:37 
 | 
         
        (6) чтобы не уточнять лишние детали.     
         | 
|||
| 
    8
    
        Cyberhawk    
     08.07.16 
            ✎
    11:41 
 | 
         
        Источник = Строка
 
        Источник = ЗначениеЗаполнено(Источник) = Нет Это тебя не смущает?  | 
|||
| 
    9
    
        novichok79    
     08.07.16 
            ✎
    11:47 
 | 
         
        (8) честно говоря, да.
 
        но в файле при выгрузке все правильно записывается. <Запись><Свойство Имя="Вид" Тип="СправочникСсылка.ВидыКонтактнойИнформации" ИмяПКО="ВидыКонтактнойИнформацииОрганизацияКонтрагент"><Ссылка Нпп="12"> <Свойство Имя="{УникальныйИдентификатор}" Тип="Строка"> <Значение>411f5b28-b025-4be6-bae2-a8b95e84a62f</Значение> </Свойство> <Свойство Имя="Наименование" Тип="Строка"> <Значение>Другое</Значение> </Свойство> <Свойство Имя="Родитель" Тип="СправочникСсылка.ВидыКонтактнойИнформации"> <Значение>СправочникОрганизации</Значение> </Свойство> </Ссылка> </Свойство><Свойство Имя="Представление" Тип="Строка"> <Значение>http://www.youtube.ru</Значение> </Свойство><Свойство Имя="Тип" Тип="ПеречислениеСсылка.ТипыКонтактнойИнформации"> <Значение>Другое</Значение> </Свойство> </Запись>  | 
|||
| 
    10
    
        novichok79    
     08.07.16 
            ✎
    11:52 
 | 
         
        я думаю надо отключить поиск по UID и попробовать загрузить полученные данные в БП.     
         | 
|||
| 
    11
    
        Cyberhawk    
     08.07.16 
            ✎
    11:54 
 | 
         
        Покажи флажки у ПКО "ВидыКонтактнойИнформацииОрганизацияКонтрагент"     
         | 
|||
| 
    12
    
        novichok79    
     08.07.16 
            ✎
    11:57 
 | 
||||
| 
    13
    
        novichok79    
     08.07.16 
            ✎
    12:11 
 | 
         
        (11) выключил загрузку по UID, виды КИ подобрались верно. сейчас еще понасилую обработку поиска значения, чтобы посмотреть по каким значениям идет поиск.     
         | 
|||
| 
    14
    
        novichok79    
     08.07.16 
            ✎
    14:05 
 | 
         
        еще вопрос по КД:
 
        можно ли дать пользователю, который получит выгруженный по правилам XML файл возможность указывать например, склад и организацию в параметрах (уже в своей базе)? если да, можно ли использовать введенные значения при загрузке объектов?  | 
|||
| 
    15
    
        Cyberhawk    
     08.07.16 
            ✎
    19:24 
 | 
         
        (12) Ну у тебя уже есть в приемнике левый объект с таким ГУИДом и он подхватывается при загрузке, но не обновляется твоими новыми - прввильными - данными (из-за соответствующей галочки)
 
        (13) Ч.т.д. (14) Нельзя  | 
|||
| 
    16
    
        Cyberhawk    
     08.07.16 
            ✎
    19:25 
 | 
         
        +(14) Заведи настройку пользователя в базе-приемникеи где-нибудь храни ее (типа "Склад для загрузки"), а в правилах подхватывай значение настройки из того места в базе-приемнике, где оно будет храниться     
         | 
|||
| 
    17
    
        novichok79    
     08.07.16 
            ✎
    20:43 
 | 
         
        (16) спс, как вариант - есть основной склад и основная организация в настройках пользователя, беру оттуда.     
         | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |