Имя: Пароль:
1C
 
Как получить код по КОМ Соединению?
,
0 Tarlich
 
22.02.18
15:22
Делаю свой перенос из УТ 11 по КОМ соединению

На определенном этапе делаю загрузку номенклатуры , поиск делаю по коду, не сразу понял что что то не то с кодом и он позадваивал мне (но эт исправлю)
А именно (Точка останова) :
смотрю : Товар.Родитель.Код = "00-00000179" а товар Код = "      "
что не так делаю ?
1 ejikbeznojek
 
22.02.18
15:27
(0) Код в студию!
2 Tarlich
 
22.02.18
15:30
То же самое и с контрагентами :
КонтрагентУТ.ИНН = "5032262329" а
КонтрагентУТ.Код = ""  как так ?
3 Tarlich
 
22.02.18
15:32
код детский то :

Контрагенты = Справочники.Контрагенты;
    Контрагент = "";
    Контрагент = Контрагенты.НайтиПоКоду(КонтрагентУТ.Код);
    Если Не ЗначениеЗаполнено(Контрагент) Тогда
        Контрагент = Контрагенты.НайтиПоНаименованию(КонтрагентУТ.Наименование, Истина);

        Если Не ЗначениеЗаполнено(Контрагент) Тогда

            Если ЗначениеЗаполнено(КонтрагентУТ.ИНН) Тогда
                Контрагент = Контрагенты.НайтиПоРеквизиту("ИНН", КонтрагентУТ.ИНН);
            КонецЕсли;
4 Tarlich
 
22.02.18
15:33
Если ЗначениеЗаполнено(Товар.Родитель.Код) Тогда
        Родитель = Справочники.Номенклатура.НайтиПоКоду(Товар.Родитель.Код);
        Если Родитель.Пустая() Тогда
            Родитель = СоздатьРодителя(Товар.Родитель);
        КонецЕсли;
    Иначе
        Родитель = Справочники.Номенклатура.ПустаяСсылка();
    КонецЕсли;
5 Tarlich
 
22.02.18
15:34
в УТ 10,3 код работает....
6 Tatitutu
 
22.02.18
15:40
что то в коде не хватает и код не "детский"

1.Если Не ЗначениеЗаполнено(Контрагент) Тогда
2.ЗначениеЗаполнено(Товар.Родитель.Код)
3.Если ЗначениеЗаполнено(КонтрагентУТ.ИНН) Тогда
4.Если Родитель.Пустая() Тогда
7 Tarlich
 
22.02.18
15:42
8 Franchiser
 
гуру
22.02.18
15:44
(7) причем тут это, у некоторых справочников можно целиком отключить станд. реквизит Код.
9 Franchiser
 
гуру
22.02.18
15:45
Так пробовал: КонтрагентУТ.Code ?
10 tndr
 
22.02.18
15:46
Попробуй СокрЛП(КонтрагентУТ.Код)
11 Tarlich
 
22.02.18
15:46
(9) КонтрагентУТ.Code = ""
12 Franchiser
 
гуру
22.02.18
15:48
(11) у тебя проблема с товарами или контрагентами?
13 Tarlich
 
22.02.18
15:53
(12) Оба справочника не могу получить код , а поиск надо делать мне именно по коду ...
14 Franchiser
 
гуру
22.02.18
15:54
1. Для всех Элементов?
2. Если встать в отладчике на КонтрагентУТ дерево реквизитов можно посмотреть?
Может надо писать Code_ или _Code
15 Tarlich
 
22.02.18
15:59
16 _Дайвер_
 
22.02.18
15:59
В поиске возврат где? что возвращается?
17 Tarlich
 
22.02.18
16:00
18 _Дайвер_
 
22.02.18
16:02
(17) В другой базе код есть?
19 hhhh
 
22.02.18
16:03
(17) понапились уже все, что ли? Ну нет у контрагентов кода в УТ11. Вопиющая безграмотность.
20 Tarlich
 
22.02.18
16:05
(19) я то же это не так давно слышал ... а как искать тогда ? можно ли по ИД?
21 DrShad
 
22.02.18
16:05
(20) можно,ну лучше по ИНН + КПП
22 Tarlich
 
22.02.18
16:06
так же и с товаром : http://ibb.co/mp7uNc
23 Вафель
 
22.02.18
16:06
вместо кода бери УникальныйИдентификатор()
24 Tarlich
 
22.02.18
16:06
(21) товар как ?
25 Вафель
 
22.02.18
16:06
(21) А если физ лицо?
26 Вафель
 
22.02.18
16:06
А если при след выгрузке у контргента уже будет другое КПП?
27 Tarlich
 
22.02.18
16:08
(23) Товар.УникальныйИдентификатор() = COMОбъект

получив я разве смогу назначить этот же УД товару в базе приемник ?
28 Вафель
 
22.02.18
16:09
КомБаза.String(Товар.УникальныйИдентификатор())
29 hhhh
 
22.02.18
16:10
(20) по коду партнера ищите
30 Tarlich
 
22.02.18
16:10
(28) не работает  = "COMОбъект"
31 DrShad
 
22.02.18
16:10
(27) сможешь, но придется поизвращаться
лучше на КД правила напиши
32 adva-li
 
22.02.18
16:11
(31)
Сможешь
33 DrShad
 
22.02.18
16:11
(32) я знаю что смогу )))
34 Tarlich
 
22.02.18
16:12
(29) Да ! КонтрагентУТ.Партнер.код = "00-00000002" -((
35 DrShad
 
22.02.18
16:16
(34) у одного партнера может быть несколько контрагентов, кроме того в партнерах иерархия элементов )))
36 adva-li
 
22.02.18
16:17
(30)
ГУИДОле = Оле.NewObject("УникальныйИдентификатор", Строка(идИзТекущейБазы));
СсылкаОле = Оле.Справочники[мд.Имя].ПолучитьСсылку(ГУИДОле);

Ну и для нового элемента тоже есть возможность назначить идентификатор
37 Tarlich
 
22.02.18
16:26
Товар по наименованию не могу т.к есть одинаковый но разный артикул ..
38 Tarlich
 
22.02.18
16:37
Смотрю УТ - но у некоторого товара код есть
http://ibb.co/ddLnax
39 trooba
 
22.02.18
17:00
(38) Функция НайтиСсылкуНаЭлементОУпоГУИД(СоединениеСОМ, ТипСправочника, ГУИД)
    
    НовыйGUID = СоединениеСОМ.NewObject("УникальныйИдентификатор", "" + ГУИД);
    СсылкаОУ = СоединениеСОМ.Справочники[ТипСправочника].ПолучитьСсылку(НовыйGUID);
    
    Если СсылкаОУ.Наименование <> "" Тогда
        
        Возврат СсылкаОУ;
        
    Иначе
        
        Возврат СоединениеСОМ.Справочники[ТипСправочника].ПустаяСсылка();
        
    КонецЕсли;

КонецФункции
40 Tarlich
 
22.02.18
17:22
я как понимаю что товар в начале был загружен из чего то и по этому у него нет кода : может просто перенумеровать?
41 Franchiser
 
гуру
22.02.18
18:31
Так сделай: СоединениеСОМ.XMLСтрока(Товар)
42 Franchiser
 
гуру
22.02.18
18:32
СоединениеСОМ.XMLСтрока(Товар.Ссылка)
43 Tarlich
 
22.02.18
18:49
(42) а что потом с этим делать ?
44 Franchiser
 
гуру
22.02.18
18:56
Это уникальный идентификатор в виде строки, синхронизируй по нему...
45 Tarlich
 
22.02.18
19:21
(44) а как его назначить новому элементу в базе приемника ?
46 lodger
 
22.02.18
19:27
(45)
СправочникМенеджер.<Имя справочника> (CatalogManager.<Имя справочника>)
ПолучитьСсылку (GetRef)
Синтаксис:

ПолучитьСсылку(<УникальныйИдентификатор>)
Параметры:

<УникальныйИдентификатор> (необязательный)

Тип: УникальныйИдентификатор.
Уникальный идентификатор, из которого будет формироваться ссылка.
Возвращаемое значение:

Тип: СправочникСсылка.<Имя справочника>.

Описание:

Формирует ссылку из значения типа УникальныйИдентификатор.
Данный уникальный идентификатор может быть в дальнейшем получен из ссылки методом УникальныйИдентификатор.
47 Tarlich
 
22.02.18
19:35
(46) не пойму ... как назначить УИ ?
Товар = Справочники.Номенклатура.СоздатьЭлемент();
а дальше ?
48 Mankubus
 
22.02.18
19:57
49 Franchiser
 
гуру
22.02.18
23:40
Новый УникальныйИдентификатор(СтрокаУИД)