|   |   | 
| 
 | Конвертация 2. Правило | ☑ | ||
|---|---|---|---|---|
| 0
    
        nAPACEHAK 24.05.19✎ 08:16 | 
        Доброго
 Слишком большого опыта нет в конвертации. Не могу понять как сделать ПКО Две разные конфы В одной реквизит тип Справочник.МашМех. В другой - два справочника: Справочник.Маш и Справочник.Мех (из одного сделано два) Элементы МашМех перенесены в Маш и Мех. В документе источника реквизит типа Спр.МашМех надо перенести в реквизит дока назначения составного типа. Маш, Мех, Строка что то вида Если НЕ Справочник.Маш.НайтиПоНаименованию (Источник.<Чтототам_МашМех.Наименование> = Справочник.Маш.ПустаяСсылка() тогда Значение = Справочник.Маш.НайтиПоНаименованию (Источник.<Чтототам_МашМех.Наименование>; ИначеЕсли НЕ Справочник.Мех.НайтиПоНаименованию (Источник.<Чтототам_МашМех.Наименование> = Справочник.Мех.ПустаяСсылка() тогда Значение = Справочник.Мех.НайтиПоНаименованию (Источник.<Чтототам_МашМех.Наименование>; Иначе Значение = Источник.<Чтототам_МашМех.Наименование>; КонецЕсли; Пробовал и через параметр и через значение. видать лыжи плохо смазал Спасибо | |||
| 1
    
        K1RSAN 24.05.19✎ 08:20 | 
        (0) А в первой конфе можно как-то различить Мех от Маша?     | |||
| 2
    
        Йохохо 24.05.19✎ 08:53 | 
        а реквизитов много в трех этих справочниках переносится?     | |||
| 3
    
        nAPACEHAK 24.05.19✎ 15:13 | 
        (1) нет
 (2) много справочник из одного переносился так: сначала вся куча в один, другой. Потом руками удалялось лишнее. там все в куче было и никаких признаков для отделения мух от котлет (только глядя по наименованию Камаз от Бензопила.. При чем Камаз может быть Камаз новый, Камаз1, Камаз сам сделал итд) | |||
| 4
    
        garantNo4x 24.05.19✎ 15:19 | 
        у вас в одной конфигурации 1 справочник а принимает два ? 
 Ну тогда при выгрузке наверное надо или указать по какому правилу ПКО выгружать .. т.е. при выгрузке условие и принудительное указание правила или при загрузке уже обрабатывать разделяя там в коде. Но это я так .. особенно я не помню что там. | |||
| 5
    
        Glup0sti 24.05.19✎ 15:52 | 
        удобней всего сделать 2 параметра в ПКО документа (маш и мех) и выгружать и так и так, в настройках этих правил поставить "не создавать новый". В обработчике после загрузки определить, какой параметр заполнен и подставить в документ     | |||
| 6
    
        nAPACEHAK 24.05.19✎ 15:54 | 
        (4) написал же. конфы две.
 в одной конфе это МашМех во второй 1)Маш 2)Мех При выгрузке в ПКО указано выгружать МашМех.Наименование в строковый параметр /Свойство><ЗначениеПараметра Имя="МашМех" Тип="Строка"> <Значение>Автомобиль LADA LARGUS</Значение> вот теперь, при загрузке, надо как то определиться, это наименование в Спр.Маш или Спр.Мех. Найденное значение и подставить в реквизит составного типа приемника (ну или какую нить пустую ссылку если ничего не нашли) примерное условие выше только не пойму в куда его привернуть В ПКО пробовал и Перед загрузкой, и При загрузке, и Поля поиска..... не едут лыжи хоть убейся (((( | |||
| 7
    
        nAPACEHAK 24.05.19✎ 15:55 | 
        (5) о. мысль     | |||
| 8
    
        Йохохо 24.05.19✎ 16:04 | 
        (7) на этапе выгрузки ни как не определить тип приемника? в типовых примерах кд гляньте "перечисление в справочник на этапе загрузки"     | |||
| 9
    
        Йохохо 24.05.19✎ 16:11 | 
        что то подумалось, что если код из (0) исправить для обработчика полей поиска, то всё взлетит     | |||
| 10
    
        garantNo4x 24.05.19✎ 16:37 | 
        v8: Конвертация данных: Один справочник в два вот так один справочник перегружается в два.     | |||
| 11
    
        garantNo4x 24.05.19✎ 16:38 | 
        если же у вас при выгрузке нельзя определить что на выходе, то вам поможет только секция призагрузке     | |||
| 12
    
        nAPACEHAK 27.05.19✎ 15:07 | 
        Если СтрНайти (Источник.Родитель.Наименование, "механизация") > 0
 Или СтрНайти (Источник.Наименование, "ЭСМ") > 0 Тогда ВыгрузитьПоПравилу (Источник,,ВходящиеДанные,,"МашМех_В_Мех"); Сообщить (Источник.Код + " " + Источник.Родитель.Наименование + " " + Источник.Наименование + " мех"); Иначе ВыгрузитьПоПравилу (Источник,,ВходящиеДанные,,"МашМех_В_Маш"); Сообщить (Источник.Код + " " + Источник.Родитель.Наименование + " " + Источник.Наименование + " МАШ"); КонецЕсли; | |||
| 13
    
        nAPACEHAK 27.05.19✎ 15:10 | 
        вроде взлетело
 ПКО МашМех_В_Маш, МашМех_в_Мех, Автомобили и (12) в Перед выгрузкой в автомобили в доке в ПКС правио Автомобили | |||
| 14
    
        Йохохо 27.05.19✎ 15:17 | 
        (12) так если всё известно "если блаблабла ИмяПКО = "МатМех_В_Торжок" " и всё     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |