Добрый день! Помогите с таким вопросом: Есть функция которая получает GUID объекта 1С например такой запрос.
Select1C.text = 'ВЫБРАТЬ Ссылка, Наименование, ЮрФизЛицо.Ссылка как ЮФС, КодПоОКПО, НаименованиеПолное, ИНН, КПП, Регион.Ссылка как Рег ИЗ Справочник.Контрагенты
из него можно получить GUID контрагента 1С. Функция как я понял преобразует XML в строку и получаем GUID. Я его запоминаю в MemoryDataset для того чтобы потом пользователь изходя из названия контрагента мог решить добавлять его в базу или нет. Так же мне нужно еще кроме этого добавить адреса контрагента. как мне преобразовать строковый GUID снова в объект или может можно хранить объект в MemoryDataset так как в параметр нужно передать не строку а именно объект. Вот часть кода запроса куда нужно передать параметр. Помогите очень нужно.
AccountID1C = Param.Obj1C.XMLString(Select1C['Ссылка'].UUID());
Select2C.Text = 'ВЫБРАТЬ КонтактнаяИнформация.Объект, '
+' Контрагенты.Ссылка как Кон, Контрагенты.Регион как Регион, '
+' Контрагенты.Наименование как Наме, КонтактнаяИнформация.Поле1 как Поле1, '
+' КонтактнаяИнформация.Поле2 как Поле2, КонтактнаяИнформация.Поле3 как Поле3, '
+' КонтактнаяИнформация.Поле4 как Поле4, КонтактнаяИнформация.Поле5 как Поле5, '
+' КонтактнаяИнформация.Поле6 как Поле6, КонтактнаяИнформация.Поле7 как Поле7, '
+' КонтактнаяИнформация.Поле8 как Поле8, КонтактнаяИнформация.Поле9 как Поле9, '
+' КонтактнаяИнформация.Представление как Представление, КонтактнаяИнформация.Вид как Вид, '
+' КонтактнаяИнформация.Вид.Представление как ТипАдрес ИЗ Справочник.Контрагенты КАК '
+' Контрагенты ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация '
+' ПО (КонтактнаяИнформация.Объект = Контрагенты.Ссылка) Где КонтактнаяИнформация.Вид.Ссылка.Тип =&Тип и Контрагенты.Ссылка = &Контрагент';
Select2C.УстановитьПараметр("Тип", Adres);
Select2C.УстановитьПараметр("Контрагент", AccountID);
+' Контрагенты.Ссылка как Кон, Контрагенты.Регион как Регион, '
+' Контрагенты.Наименование как Наме, КонтактнаяИнформация.Поле1 как Поле1, '
+' КонтактнаяИнформация.Поле2 как Поле2, КонтактнаяИнформация.Поле3 как Поле3, '
+' КонтактнаяИнформация.Поле4 как Поле4, КонтактнаяИнформация.Поле5 как Поле5, '
+' КонтактнаяИнформация.Поле6 как Поле6, КонтактнаяИнформация.Поле7 как Поле7, '
+' КонтактнаяИнформация.Поле8 как Поле8, КонтактнаяИнформация.Поле9 как Поле9, '
+' КонтактнаяИнформация.Представление как Представление, КонтактнаяИнформация.Вид как Вид, '
+' КонтактнаяИнформация.Вид.Представление как ТипАдрес ИЗ Справочник.Контрагенты КАК '
+' Контрагенты ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация '
+' ПО (КонтактнаяИнформация.Объект = Контрагенты.Ссылка) Где КонтактнаяИнформация.Вид.Ссылка.Тип =&Тип и Контрагенты.Ссылка = &Контрагент';
Select2C.УстановитьПараметр("Тип", Adres);
Select2C.УстановитьПараметр("Контрагент", AccountID);
Нравится
1 комментарий
12 марта 2010 08:54
все сам нашел ответ на вопрос. Если кому понадобиться вот как
это делается
var obj = Param.Obj1C['Справочники']; AccountID = Param.Obj1C.NewObject('UUID','64CC534E-91F0-11DE-B140-001A92CC2FA8'); obj = obj['Контрагенты']; AccountID = obj.GetRef(AccountID);
пример взял из утилиты интеграции..:smile:
Показать все комментарии
Войдите или зарегистрируйтесь, что бы комментировать