|
Запрос через COM соединение |
☑ |
0
dimqa
16.05.12
✎
09:57
|
base = новый COMОбъект("V82.Application");
Открыта = base.Connect(СтрокаПодключения);
Если не Открыта Тогда
Предупреждение("Не могу открыть соединение!", 20);
Возврат;
КонецЕсли;
Сообщить("Подключение к базе "+" успешно!");
Запрос = base.newObject("Запрос");
Запрос.Текст = "ВЫБРАТЬ
| ПоступлениеТоваровУслуг.Ссылка
|ИЗ
| Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг
|ГДЕ
| ПоступлениеТоваровУслуг.Номер = &Номер
| И ПоступлениеТоваровУслуг.Дата = &Дата";
Запрос.установитьПараметр("Номер",Рез.Ссылка.Номер);
Запрос.установитьПараметр("Дата",Рез.Ссылка.Дата);
НовыйДокумент = Запрос.Выполнить().Выбрать();
Если не НовыйДокумент.Следующий() Тогда
Новый = base.Документы.ПоступлениеТоваровУслуг.СоздатьДокумент();
иначе
Новый = НовыйДокумент.Ссылка.ПолучитьОбъект();
КонецЕсли;
Вроде все правильно, но почему к результате запроса я получаю локальные документы, а не те, которые в другой базе?
|
|
1
salvator
16.05.12
✎
10:02
|
Я бы зарезервированные слова не стал использовать
|
|
2
Goodvaso
16.05.12
✎
10:02
|
А почему ты используешь "Application", а не коннектор. Тебе нужно приложение открывать?
|
|
3
Галахад
гуру
16.05.12
✎
10:06
|
А так?
Запрос = Открыта.newObject("Запрос");
|
|
4
Широкий
16.05.12
✎
10:10
|
"я получаю локальные документы"
проверь , есть ли у тебя реквизит с именем "Запрос"
|
|
5
dimqa
16.05.12
✎
10:11
|
base = новый COMОбъект("V82.COMConnector");
base = base.Connect(СтрокаПодключения);
-------
ЗапросКом = base.newObject("Запрос");
ЗапросКом.Текст = "ВЫБРАТЬ
| ПоступлениеТоваровУслуг.Ссылка
|ИЗ
| Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг
|ГДЕ
| ПоступлениеТоваровУслуг.Номер = &Номер
| И ПоступлениеТоваровУслуг.Дата = &Дата";
ЗапросКом.установитьПараметр("Номер",Рез.Ссылка.Номер);
ЗапросКом.установитьПараметр("Дата",Рез.Ссылка.Дата);
НовыйДокумент = ЗапросКом.Выполнить().Выбрать();
Если не НовыйДокумент.Следующий() Тогда
Нов = base.Документы.ПоступлениеТоваровУслуг.СоздатьДокумент();
иначе
Нов = НовыйДокумент.Ссылка.ПолучитьОбъект();
КонецЕсли;
Все равно, почему то получаются локальные документы... а по поводу реквизита - не понял
|
|
6
dimqa
16.05.12
✎
10:13
|
Блин, извините, Самое очевидное не проверил, стрка подключения была на эту базу)))))
|
|
7
salvator
16.05.12
✎
10:14
|
base = новый COMОбъект("V82.COMConnector");
base = base.Connect(СтрокаПодключения);
Ты уж определись
|
|
8
Reset
16.05.12
✎
10:14
|
(6) Зачет
|
|
9
dimqa
16.05.12
✎
10:36
|
Ну я поменял на COMConnector думал поможет
|
|