|
Оле соединение, помогите! | ☑ | ||
---|---|---|---|---|
0
Tumakota
10.03.13
✎
18:45
|
Как мне по оле соединению, передать ссылку! Подключаюсь с одной базы в другую по оле и создаю там элемент справочника номенклатуры, как мне заполнить группу
Номенклатура = База.Справочники.Номенклатура.СоздатьЭлемент(); Номенклатура.Артикул = ЭтотОбъект.Артикул; Номенклатура.БазоваяЕдиницаИзмерения = База.Справочники.КлассификаторЕдиницИзмерения.НайтиПоНаименованию(ЭтотОбъект.БазоваяЕдиницаИзмерения.Наименование); Номенклатура.Импортер = ЭтотОбъект.Импортер; Номенклатура.Код = ЭтотОбъект.Код; Номенклатура.Комментарий = ЭтотОбъект.Комментарий; Номенклатура.Наименование = ЭтотОбъект.Наименование; Номенклатура.НаименованиеПолное = ЭтотОбъект.НаименованиеПолное; Номенклатура.НоменклатурнаяГруппа = База.Справочники.НоменклатурныеГруппы.НайтиПоНаименованию(ЭтотОбъект.НоменклатурнаяГруппа.Наименование); Номенклатура.НомерГТД = База.Справочники.НомераГТД.НайтиПоНаименованию(ЭтотОбъект.НомерГТД.Наименование); Номенклатура.Производитель = База.Справочники.Контрагенты.НайтиПоНаименованию(ЭтотОбъект.Производитель.Наименование); Номенклатура.Родитель = База.Справочники.Номенклатура.НайтиПоНаименованию(ЭтотОбъект.Родитель); вот в принципе код, но он не заполняет группу |
|||
1
Amra
10.03.13
✎
18:50
|
Номенклатура.Родитель = База.Справочники.Номенклатура.НайтиПоНаименованию(ЭтотОбъект.Родитель.Наименование);
|
|||
2
Tumakota
10.03.13
✎
18:54
|
(1) Так пишу он мне пишет что родитель это Группа
|
|||
3
Amra
10.03.13
✎
19:19
|
(2) Чегось пишет, не понятно?
|
|||
4
m-serg74
10.03.13
✎
19:53
|
(2) [Номенклатура.Родитель = База.Справочники.Номенклатура.НайтиПоНаименованию(ЭтотОбъект.Родитель);]
нормально) может для начала в текущей базе его создать(или найти но наименованию полученному из ОЛЕ базы) не пробовали? |
|||
5
a_alenkin
10.03.13
✎
19:54
|
а чу - у группы не может быть наименования?
может надо сначала создать группу чтоб потом ее найти? А вообще для этого подходит типовой механизм обмена по правилам которые созданы с помощью КД |
|||
6
Torquader
10.03.13
✎
20:57
|
Ссылка не ссылка, OLE не OLE.
В общем так, в каждой базе объект представляется через GUID. То есть нужно сформировать строку гуид. В нашей базе мы это можем сделать через Строка(Объект.УникальныйИдентификатор()); В OLE базе мы это сделаем через ТаБаза.String(ОбъектТойБазы.УникальныйИдентификатор()); То есть для любого использования мы имеем строку GUID. Потом из неё легко создать GUID: ГуидТам=ТаБаза.NewObject("УникальныйИдентификатор",СтрокаГуид); А когда мы знаем гуид, мы можем сделать ссылку на объект: ГруппаТам=ТаБаза.Справочники.Номенклатура.ПолучитьСсылку(ГуидТам); Ну и после этого можно смело присваивать полученное значение куда угодно. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |