Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия Следующая версия Следующая версия справа и слева | ||
common_all:priemyraboty:ole [2018/08/19 18:32] alexander [Передача таблицы значений запросу через COM (OLE) соединение] |
common_all:priemyraboty:ole [2018/08/19 18:48] alexander |
||
---|---|---|---|
Строка 147: | Строка 147: | ||
ПерегрузитьТаблицуСОМвТаблицуЗначений(сомНайденыеДоговора, НайденыеДоговора); | ПерегрузитьТаблицуСОМвТаблицуЗначений(сомНайденыеДоговора, НайденыеДоговора); | ||
</code> | </code> | ||
+ | |||
+ | Еще вариант создания таблицы значений: | ||
+ | <code>Таблица = v8.NewObject("ТаблицаЗначений"); | ||
+ | Таблица.Колонки.Добавить("Номенклатура", v8.NewObject("ОписаниеТипов", "СправочникСсылка.Номенклатура")); // | ||
+ | КвалификаторСтроки = v8.NewObject("КвалификаторыСтроки", "100"); | ||
+ | ДоступныеТипы = v8.NewObject("ОписаниеТипов", "Строка", КвалификаторСтроки); | ||
+ | Таблица.Колонки.Добавить("КолонкаСтрока", ДоступныеТипы);</code> | ||
+ | |||
+ | |||
+ | ==== Варианты получения данных из COM объекта ==== | ||
<code>Процедура ПерегрузитьТаблицуСОМвТаблицуЗначений(сом_ТЗ, ТаблицаРезультатаВрем) | <code>Процедура ПерегрузитьТаблицуСОМвТаблицуЗначений(сом_ТЗ, ТаблицаРезультатаВрем) | ||
Строка 178: | Строка 188: | ||
КонецПроцедуры</code> | КонецПроцедуры</code> | ||
+ | //только для простых данных!// | ||
+ | ---- | ||
+ | //Непроверено:// ;-) | ||
- | //Варианты передачи таблицы из базы по COM:// | + | * Варианты передачи таблицы из базы по COM: |
В базе-источнике надо преобразовать ТЗ в строку. | В базе-источнике надо преобразовать ТЗ в строку. | ||
Строка 203: | Строка 216: | ||
ТЗРез = ЗначениеИзСтрокиВнутр(ТЗРезультатСтр); // Преобразуем из Строки в ТаблицаЗначений</code> | ТЗРез = ЗначениеИзСтрокиВнутр(ТЗРезультатСтр); // Преобразуем из Строки в ТаблицаЗначений</code> | ||
- | Перенести ссылки из другой базы можно: | + | * Перенести ссылки из другой базы можно: |
<code>ОбъектТекущейБД = ЗначениеИзСтрокиВнутр(COMСоединение.ЗначениеВСтрокуВнутр(COMОбъект))</code> | <code>ОбъектТекущейБД = ЗначениеИзСтрокиВнутр(COMСоединение.ЗначениеВСтрокуВнутр(COMОбъект))</code> | ||
Строка 213: | Строка 226: | ||
<code>ОбъектТекущейБД = Справочники.СтатьиЗатрат.НайтиПоНаименованию(COMОбъект.Наименование)</code> | <code>ОбъектТекущейБД = Справочники.СтатьиЗатрат.НайтиПоНаименованию(COMОбъект.Наименование)</code> | ||
если ни идентификатор вида объекта ни ссылка на объект не совпадают, то остается поиск по коду, наименованию и прочим полям. | если ни идентификатор вида объекта ни ссылка на объект не совпадают, то остается поиск по коду, наименованию и прочим полям. | ||
+ | ---- | ||
+ | |||
Строка 362: | Строка 377: | ||
[[common_all:ole77|Статья Андрея Егорова про работу с 7.7 через OLE соединение]] | [[common_all:ole77|Статья Андрея Егорова про работу с 7.7 через OLE соединение]] | ||
- | ---- | + | ----�� |