|
Получить остатки по счету запросом из СОМОбъекта | ☑ | ||
---|---|---|---|---|
0
america2013
27.11.13
✎
15:27
|
Здравствуйте, почтенные форумчане!!!
Прошу помочь Вас, разъяснить мне такой момент: каким образом из подключенного СОМОбъекта получить остатки по счету? Сначала был такой код: V8 = Новый COMОбъект("V82.ComConnector"); //... ПараметрДляЗапроса = "Справочник.Организации"; Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | Спр.Код, | Спр.Наименование |ИЗ | "+ПараметрДляЗапроса+" КАК Спр"; Результат = Запрос.Выполнить(); ВыборкаДетальныеЗаписи = Результат.Выбрать(); Пока ВыборкаДетальныеЗаписи.Следующий() Цикл Сообщить(ВыборкаДетальныеЗаписи.Наименование); КонецЦикла; V8 = ""; В результате прекрасно получаю список организаций из базы. Но требуется так же получить остатки по счету. В консоли имею запрос: ВЫБРАТЬ ТиповойОстаткиИОбороты.Субконто1, ТиповойОстаткиИОбороты.СуммаНачальныйОстаток, ТиповойОстаткиИОбороты.СуммаКонечныйОстаток ИЗ РегистрБухгалтерии.Типовой.ОстаткиИОбороты(&d1, &d2, , , Счет.Код = &Schet, , ) КАК ТиповойОстаткиИОбороты Как такой запрос поместить в первый код? С нетерпением ожидаю ответа. Заранее благодарен! |
|||
1
butterbean
27.11.13
✎
15:29
|
Ctrl+C Ctrl+V
|
|||
2
hhhh
27.11.13
✎
15:32
|
ну если только
ВЫБРАТЬ ТиповойОстаткиИОбороты.Субконто1.Наименование, |
|||
3
Wobland
27.11.13
✎
15:33
|
(1) не всё так просто, автор заготовил нам какой-то подвох
|
|||
4
america2013
27.11.13
✎
15:41
|
Вот что у меня получается (извините, если бред полный написал):
V8 = Новый COMОбъект("V82.ComConnector"); //... ПараметрДляЗапроса = "V8"; Запрос = Новый Запрос; Запрос.Текст = " ВЫБРАТЬ | ТиповойОстаткиИОбороты.Субконто1, | ТиповойОстаткиИОбороты.КоличествоНачальныйОстаток, | ТиповойОстаткиИОбороты.КоличествоКонечныйОстаток |ИЗ | " + ПараметрДляЗапроса + ".РегистрБухгалтерии.Типовой.ОстаткиИОбороты(&d1, &d2, , , Счет.Код = &Schet, , ) КАК ТиповойОстаткиИОбороты "; Результат = Запрос.Выполнить(); ВыборкаДетальныеЗаписи = Результат.Выбрать(); Пока ВыборкаДетальныеЗаписи.Следующий() Цикл Сообщить(ВыборкаДетальныеЗаписи.Наименование); КонецЦикла; V8 = ""; В результате выполнения пишет: {Форма.Форма.Форма(196)}: Ошибка при вызове метода контекста (Выполнить) Результат = Запрос.Выполнить(); по причине: {(10, 2)}: Таблица не найдена "V8.РегистрБухгалтерии.Типовой.ОстаткиИОбороты" <<?>>V8.РегистрБухгалтерии.Типовой.ОстаткиИОбороты(&d1, &d2, , , Счет.Код = &Schet, , ) КАК ТиповойОстаткиИОбороты |
|||
5
america2013
27.11.13
✎
15:49
|
Очень интересный мне вариант здесь, практически то, что нужно:
http://alsproject.ru/publ/obshhie/podkljuchenie_1s_7_7_k_1s_8_2_cherez_ole/2-1-0-31 Но не работает: Запрос = v8.NewObject("Запрос"); |
|||
6
america2013
27.11.13
✎
15:50
|
...и подключение у меня (8.2 -> 8.2)
|
|||
7
america2013
27.11.13
✎
15:52
|
...пробовал менять на:
Запрос = v8.CreateObject("Запрос"); пишет: {Форма.Форма.Форма(153)}: Метод объекта не обнаружен (CreateObject) Запрос = v8.CreateObject("Запрос"); |
|||
8
catena
27.11.13
✎
15:57
|
У вас и первый запрос не в чужой базе выполняется, а в своей
|
|||
9
catena
27.11.13
✎
15:58
|
(7)
V8 = Новый COMОбъект("V82.ComConnector"); connect = connector.Connect(СтрПодключения) Запрос=connect.NewObject("Запрос"); |
|||
10
Wobland
27.11.13
✎
15:58
|
текст запроса - это просто строка. кторая в свою очередь может быть скормлена тамошнему запросу, который предварительно был создан как NewObject
|
|||
11
america2013
27.11.13
✎
16:04
|
Опачки. Выяснилось, что платформы сервер-клиент разные(((
Иду исправлять... |
|||
12
america2013
27.11.13
✎
16:19
|
С помощью самокопания и интернета, и несомненно вашей телепатической поддержки : ) требуемое подключение и вывод из базы успешно завершен!!! Безмерно благодарен вам, товарищи!!!
Привожу конечный код: V8 = Новый COMОбъект("V82.ComConnector"); //... Открытие = V8.Connect(СтрокаСоединения); Запрос = Открытие.NewObject("Запрос"); Запрос.Текст = " ВЫБРАТЬ | ТиповойОстаткиИОбороты.Субконто1, | ТиповойОстаткиИОбороты.КоличествоНачальныйОстаток, | ТиповойОстаткиИОбороты.КоличествоКонечныйОстаток |ИЗ | " + ПараметрДляЗапроса + ".РегистрБухгалтерии.Типовой.ОстаткиИОбороты(&d1, &d2, , , Счет.Код = &Schet, , ) КАК ТиповойОстаткиИОбороты "; Запрос.УстановитьПараметр("d1", НачПериода); Запрос.УстановитьПараметр("d2", КонПериода); Запрос.УстановитьПараметр("Schet", "1320"); Результат = Запрос.Выполнить(); ВыборкаДетальныеЗаписи = Результат.Выбрать(); Пока ВыборкаДетальныеЗаписи.Следующий() Цикл //... КонецЦикла; V8 = ""; |
|||
13
Wobland
27.11.13
✎
16:25
|
забавно коннектор назвал. а ПараметрДляЗапроса тебе зачем?
|
|||
14
america2013
28.11.13
✎
09:27
|
(13) Прошу прощения, опубликовал не тот код, благодарю, что поправили. Вот правильный:
V8 = Новый COMОбъект("V82.ComConnector"); //... Открытие = V8.Connect(СтрокаСоединения); Запрос = Открытие.NewObject("Запрос"); Запрос.Текст = " ВЫБРАТЬ | ТиповойОстаткиИОбороты.Субконто1, | ТиповойОстаткиИОбороты.КоличествоНачальныйОстаток, | ТиповойОстаткиИОбороты.КоличествоКонечныйОстаток |ИЗ | РегистрБухгалтерии.Типовой.ОстаткиИОбороты(&d1, &d2, , , Счет.Код = &Schet, , ) КАК ТиповойОстаткиИОбороты |"; Запрос.УстановитьПараметр("d1", НачПериода); Запрос.УстановитьПараметр("d2", КонПериода); Запрос.УстановитьПараметр("Schet", "1320"); Результат = Запрос.Выполнить(); ВыборкаДетальныеЗаписи = Результат.Выбрать(); V8 = ""; |
|||
15
zakidonoff
28.11.13
✎
09:31
|
Вежливость - наше всё...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |