|
Запрос с параметром из MS Access с 1с через com соединение | ☑ | ||
---|---|---|---|---|
0
Nina2005
26.12.12
✎
10:58
|
Надо в Access подключиться к 1с и выполнить запрос с параметром, подключение проходит успешно, затык на моменте установки параметра запроса
Set Соединение = CreateObject("V82.COMConnector") ПараметрСоединения = "Srvr=ehsw01:2541;Ref=УПП_Рабочая;Usr=ДляОбмена;Pwd=123;" Set База = Соединение.Connect(ПараметрСоединения) Set Запрос = База.NewObject("Запрос") Запрос.ТекстЗапроса = "ВЫБРАТЬ ВЫБОР КОГДА КонтактнаяИнформация.Объект ССЫЛКА Справочник.КонтактныеЛицаКонтрагентов ТОГДА КонтактнаяИнформация.Объект.Владелец ИНАЧЕ КонтактнаяИнформация.Объект КОНЕЦ КАК Наименование, КонтактнаяИнформация.CRM_НомерТелефона КАК НомерТелефона ИЗ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация ГДЕ КонтактнаяИнформация.Тип = &Телефон" Запрос.УстановитьПараметр("Телефон",База.Перечисления.ТипыКонтактнойИнформации.Телефон) В чём косяк? |
|||
1
Конфигуратор1с
26.12.12
✎
11:03
|
(0)А параметр не передавать, а задать через значение религия не позволяет?
|
|||
2
Конфигуратор1с
26.12.12
✎
11:04
|
Запрос.ТекстЗапроса = "ВЫБРАТЬ ВЫБОР КОГДА КонтактнаяИнформация.Объект ССЫЛКА Справочник.КонтактныеЛицаКонтрагентов ТОГДА КонтактнаяИнформация.Объект.Владелец ИНАЧЕ КонтактнаяИнформация.Объект КОНЕЦ КАК Наименование, КонтактнаяИнформация.CRM_НомерТелефона КАК НомерТелефона ИЗ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация ГДЕ КонтактнаяИнформация.Тип = Значение(Перечисление.ТипыКонтактнойИнформации.Телефон)"
|
|||
3
Конфигуратор1с
26.12.12
✎
11:05
|
(0)ой, простите за (1), не глянул что с Леди общаюсь(((
|
|||
4
Nina2005
26.12.12
✎
11:07
|
(3) через значение, это понятно, что работает. Мне не понятно почему через УстановитьПараметр не работает
|
|||
5
Конфигуратор1с
26.12.12
✎
11:11
|
(4)В чем проявляется "не работает"?
|
|||
6
Nina2005
26.12.12
✎
11:21
|
(5) VBA пишет "Syntax error"
|
|||
7
Nina2005
26.12.12
✎
11:22
|
к сожалению в VBA познаний оч мало(((
|
|||
8
Конфигуратор1с
26.12.12
✎
11:27
|
ОЛЕ = Новый COMОбъект("V82.ComConnector");
Соединение = ОЛЕ.Connect(СтрокаПодключения); Запрос = Соединение.NewObject("Запрос"); Запрос.УстановитьПараметр("ТипНоменклатуры",Соединение.Перечисления.ТипыНоменклатуры.Товар); Запрос.текст = "ВЫБРАТЬ | ВидыНоменклатуры.Код |ИЗ | Справочник.ВидыНоменклатуры КАК ВидыНоменклатуры |ГДЕ | ВидыНоменклатуры.ТипНоменклатуры = &ТипНоменклатуры"; Выборка = Запрос.Выполнить().Выбрать(); Пока Выборка.Следующий() Цикл Сообщить(Выборка.КОд); КонецЦикла; В 1с работает |
|||
9
Конфигуратор1с
26.12.12
✎
11:29
|
(7)я с вба ваще не знаком, но может так надо
Set Параметр = База.Перечисления.ТипыКонтактнойИнформации.Телефон; Запрос.УстановитьПараметр("Телефон",пАРАМЕТР); ? |
|||
10
Nina2005
26.12.12
✎
11:41
|
(7) не работает. ладно, чёрт с ним, сделаю через значение. спс, за участие.
|
|||
11
Конфигуратор1с
26.12.12
✎
11:49
|
(10)Вот нашел ссылку
http://v8.1c.ru/overview/Term_000000633.htm?printversion=1 |
|||
12
Конфигуратор1с
26.12.12
✎
11:50
|
судя по примеру
Sub Excel_to_trade() Dim trade As Object Dim Элемент As Object Set trade = CreateObject("V82.Application") 'Создать Automation сервер trade.Connect("File=""c:\InfoBases\Trade"";Usr=""Director"";") 'Соединиться с информационной базой Set СправочникТоваров = trade.Справочники. Товары Вам таки надо попробовать соединение а не база Set Параметр = Соединение.Перечисления.ТипыКонтактнойИнформации.Телефон; Запрос.УстановитьПараметр("Телефон",пАРАМЕТР); ? |
|||
13
Nina2005
26.12.12
✎
11:56
|
заработало вот так вот
Запрос.УстановитьПараметр "Телефон", База.Перечисления.ТипыКонтактнойИнформации.Телефон |
|||
14
Nina2005
26.12.12
✎
11:56
|
о_О
|
|||
15
Конфигуратор1с
26.12.12
✎
11:58
|
(13)VBA бессмысленное и беспощадное)))
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |