| 
    
            
         
         | 
    
  | 
Конвертация данных: перенос подчиненного справочника | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        neo1109    
     29.12.14 
            ✎
    11:57 
 | 
         
        Приемник: база Розницы.
 
        Соответственно имеем следующую структуру: справочника "Номенклатура" и подчиненный ему справочник "ЕдиницыИзмерения". Плюс у номенклатуры есть реквизиты "ЕдиницаХраненияОстатков" типа СправочникСсылка.ЕдиницыИзмерения. Из источника переносится справочник "Номенклатура". Надо: 1. автоматом создать элемент спр-ка ЕдиницыИзмерения с именем "шт", естественно с подчинением номенклатуре 2. заполнить реквизит ЕдиницаХраненияОстатков Вот я и понять не могу: как создать ПКО для переноса в справочник ЕдиницыИзмерения я представляю, но че то не допетрю, как заполнять поле Владелец, если номенклатура еще не перенеслась. Сорри за сумбур, НГ, почти ПТ. Что разъяснить - спрашивайте...  | 
|||
| 
    1
    
        Бригада бронепоезда    
     29.12.14 
            ✎
    12:02 
 | 
         
        берешь процедуру ПослеЗагрузки объекта и пишешь там создание эл спр ЕдИзм
 
        в этой процедуре у тебя есть инициализированные переменные - Объект и Ссылка твоей номенклатуры  | 
|||
| 
    2
    
        neo1109    
     29.12.14 
            ✎
    12:05 
 | 
         
        (1) Думал об этом...
 
        Это получается самому обыгрывать повторный перенос, в смысле проверять, нет ли такой единицы уже? Да, Объект есть, а вот Ссылка... Насильно записывать придется.  | 
|||
| 
    3
    
        Бригада бронепоезда    
     29.12.14 
            ✎
    12:08 
 | 
         
        (2) ну попробуй еще процедуру ВыгрузитьПоПравилу(), хотя и сомневаюсь будет ли работать в ситуации с новой номенклатурой     
         | 
|||
| 
    4
    
        Vovan1975    
     29.12.14 
            ✎
    12:23 
 | 
         
        слабак     
         | 
|||
| 
    5
    
        Vovan1975    
     29.12.14 
            ✎
    12:28 
 | 
         
        создаешь ПКО и для свойства владелец указываешь правило, по которому у тебя номенклатура переносится, в чем проблема то?     
         | 
|||
| 
    6
    
        Godofsin    
     29.12.14 
            ✎
    12:29 
 | 
         
        (5) +100500. (0)Хотя бы типовые бы глянул для начала     
         | 
|||
| 
    7
    
        neo1109    
     29.12.14 
            ✎
    12:31 
 | 
         
        (5) т.е. переносить в 2 этапа: первый раз чтобы номенклатура появилась и второй для единиц измерения?     
         | 
|||
| 
    8
    
        Vovan1975    
     29.12.14 
            ✎
    12:32 
 | 
         
        (7) нафига? Все в один заход     
         | 
|||
| 
    9
    
        Vovan1975    
     29.12.14 
            ✎
    12:33 
 | 
         
        посмотри в типовой как делаются ПКО с использованием внешних данных.     
         | 
|||
| 
    10
    
        neo1109    
     29.12.14 
            ✎
    12:34 
 | 
         
        (5) плюс в источнике есть ТОЛЬКО Номенклатура. Элемент справочника ЕдиницыИзмерения создается правилами - всем "шт".     
         | 
|||
| 
    11
    
        neo1109    
     29.12.14 
            ✎
    12:36 
 | 
         
        (9) с входящими/исходящими я уже работал. но как их тут применить - понятия не имею...     
         | 
|||
| 
    12
    
        Vovan1975    
     29.12.14 
            ✎
    12:36 
 | 
         
        еще раз - смотри в примерах конвертации как делается перенос с использованием внешних данных     
         | 
|||
| 
    13
    
        Рэйв    
     29.12.14 
            ✎
    12:37 
 | 
         
        (10)в ПослеЗагрузки проверяй Объект.Если  Объект.ссылка.Пустая(), то записывай объект, а потом проверяй есть у него уже созданная шт или нет.Если нет, то создавай.
 
        Потом в Объект заполняй  | 
|||
| 
    14
    
        neo1109    
     29.12.14 
            ✎
    12:38 
 | 
         
        (13) после лучше этого варианта - не вижу     
         | 
|||
| 
    15
    
        Рэйв    
     29.12.14 
            ✎
    12:39 
 | 
         
        (14)Если у тебя только номенклатура в источнике, то это для теб единственный:-)
 
        Можно конечно самому сделать из ВходящихДанных в КД, но боюсь ты не потянешь:-)  | 
|||
| 
    16
    
        Boroda    
     29.12.14 
            ✎
    12:40 
 | 
         
        У меня сделано так из семерки в восьмерку:
 
        У номенклатуры в "После выгрузки" записано: спрОКЕИ = СоздатьОбъект("Справочник.ОКЕИ"); спУпаковок = глРазложить("уп,пал,упбрутто,палбрутто"); Для ц=1 по спУпаковок.РазмерСписка() Цикл Если спрОКЕИ.НайтиПоНаименованию(спУпаковок.ПолучитьЗначение(ц),0,1)=0 Тогда Продолжить; КонецЕсли; Если спрЕ.НайтиПоРеквизиту("ОКЕИ",спрОКЕИ.ТекущийЭлемент(),0)=0 Тогда Продолжить; КонецЕсли; ВыгрузитьПоПравилу(спрЕ.ТекущийЭлемент(),,,,"ЕдиницыНоменклатуры_УпаковкиНоменклатуры"); КонецЦикла;  | 
|||
| 
    17
    
        Boroda    
     29.12.14 
            ✎
    12:47 
 | 
         
        спрЕ  - это:
 
        спрЕ = СоздатьОбъект("Справочник.Единицы"); спрЕ.ИспользоватьВладельца(Источник);  | 
|||
| 
    18
    
        neo1109    
     29.12.14 
            ✎
    12:47 
 | 
         
        "Можно конечно самому сделать из ВходящихДанных в КД"     
         | 
|||
| 
    19
    
        neo1109    
     29.12.14 
            ✎
    12:48 
 | 
         
        (18) Сорри
 
        (15) "Можно конечно самому сделать из ВходящихДанных в КД" Каким образом? Если есть что посоветовать - напишите, а допру/не допру это уже другая история ;)  | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |