|
1С:Предприятие
:: 1С:Предприятие 8 общая
|
|
| ||
trooba 11.12.20 - 15:39 | Создан внешний источник данных в клиент-серверной базе 1с 8.2.19.130. Производится попытка выполнить код:
Если ВнешниеИсточникиДанных.СПР.ПолучитьСостояние()=СостояниеВнешнегоИсточникаДанных.Отключен Тогда ПараметрыПодключения=ВнешниеИсточникиДанных.СПР.ПолучитьОбщиеПараметрыСоединения(); ПараметрыПодключения.СтрокаСоединения="DRIVER={Microsoft ODBC for Oracle}; UID=Пользователь; PWD=Пароль; SERVER=Сервер;"; ПараметрыПодключения.СУБД="Oracle"; ВнешниеИсточникиДанных.СПР.УстановитьОбщиеПараметрыСоединения(ПараметрыПодключения); КонецЕсли; ВнешниеИсточникиДанных.СПР.УстановитьСоединение(); Query = Новый Запрос; Query.Текст = "ВЫБРАТЬ | FIDCMN.DOC_NUMBER, | FIDCMN.DOC_DATE, | FIBDOC.IS_UNLOAD |ИЗ | ВнешнийИсточникДанных.СПР.Таблица.APR_FIDCMN КАК FIDCMN | ЛЕВОЕ СОЕДИНЕНИЕ ВнешнийИсточникДанных.СПР.Таблица.APR_FIBDOC КАК FIBDOC | ПО FIBDOC.DOC_CODE = FIDCMN.DOC_CODE |ГДЕ | FIDCMN.RECORDID_DCTP = 722 | И НЕ FIDCMN.DOC_NUMBER ЕСТЬ NULL | И FIDCMN.DOC_DATE МЕЖДУ &Нач И &Кон"; Query.УстановитьПараметр("Нач",НачалоПериода.Дата); Query.УстановитьПараметр("Кон",КонецДня(КонецПериода.Дата)); Выборка=Query.Выполнить().Выбрать(); Выдается ошибка, что это может быть и как лечить? Сразу оговорюсь, что можно через ADO, но хотелось через ВИД. по причине: Ошибка выполнения запроса по причине: Ошибка внешней базы данных: ошибка при выполнении запроса по причине: Ошибка ODBC. SQLSTATE: 42000 Номер ошибки: 907 Описание: [Microsoft][ODBC driver for Oracle][Oracle]ORA-00907: missing right parenthesis | ||
ДНН 1 - 11.12.20 - 15:45 | (0) Возьми все условия в скобки | ||
acht 2 - 11.12.20 - 15:48 | |||
trooba 3 - 11.12.20 - 15:49 | (1) Делал, не помогает | ||
ДНН 4 - 11.12.20 - 15:52 | (3) ПО FIBDOC.DOC_CODE = FIDCMN.DOC_CODE
это тоже?
Попробуй оставить одну таблицу и без условий, проверь. Если ошибки не будет то добавь соединение, снова проверь. Потом условия и т.д. | ||
trooba 5 - 11.12.20 - 15:53 | (4) С одной работает, проблема в соединении, как я понял | ||
trooba 6 - 11.12.20 - 15:54 | (4) Все в скобках, это тоже, ошибка такая же, тип соединения меняешь, код ошибки становится 0 | ||
trooba 7 - 11.12.20 - 16:16 | Через ADO запрос работает успешно, текст
Query = "Select fidcmn.doc_number,
| fidcmn.doc_date,
| fibdoc.doc_number,
| fibdoc.is_unload
| from apr.fidcmn
| left outer join apr.fibdoc
| on fibdoc.doc_code = fidcmn.doc_code
| where fidcmn.recordid_dctp = 722 and fidcmn.doc_number is not null
| and fidcmn.doc_date >= to_date('@@@@','DD-MM-YYYY')
| and fidcmn.doc_date <= to_date('####','DD-MM-YYYY')"; | ||
trooba 8 - 14.12.20 - 09:08 | Подниму, может у кого еще мысли появятся... | ||
mikecool 9 - 14.12.20 - 09:31 | (8) не смущает, что запросы разные? попробуй свои параметры к ту_дейт привести | ||
trooba 10 - 14.12.20 - 09:36 | (9) Они были 1 в 1, толку не было, что смущает? Что тут отличается? То, что период по другому или, что номер убран, который не нужен? Проблема возникает именно в соединении, как ждая из таблиц по отдельности данные выводит | ||
trooba 11 - 14.12.20 - 09:37 | (9) К ту дейт? Как? В таком же формате в текст запроса? Нет- ошибка, запросы 1с не позволяют этого делать | ||
Конструктор1С 12 - 14.12.20 - 16:24 | Твой запрос можно переписать на внутреннее соединение | ||
Конструктор1С 13 - 14.12.20 - 16:25 | А не, вру, фильтруется только по правой таблице | ||
trooba 14 - 14.12.20 - 16:25 | (12) изменял вид соединения- дает ошибку с кодом 0 | ||
Конструктор1С 15 - 14.12.20 - 16:31 | Попробуй через другой драйвер коннектиться | ||
trooba 16 - 14.12.20 - 16:49 | (15) Через этот драйвер, через ado все работает. | ||
Конструктор1С 17 - 15.12.20 - 03:45 | (16) ВИД сам по себе драйвера не поставляет, а коннектится через имеющиеся. У нас ВИД к Oracle через OraOLEDB.Oracle.1 коннектится | ||
sdf 18 - 15.12.20 - 08:18 | (0) мало исходных данных:
-другие запросы работают? -в пользовательском режиме 1с видит эти таблицы? -если условие убрать - запрос выполнится? -даты в оракле в каком формате? поддерживаю идею насчет драйвера - лучше использовать нативный оракловый | ||
trooba 19 - 16.12.20 - 09:57 | (18) Все да. "поддерживаю идею насчет драйвера - лучше использовать нативный оракловый" Который именно? | ||
trooba 20 - 16.12.20 - 09:59 | (18) через адодб все круто, все работает. Заморочился и решил переписать на ВИД. Не выходит каменный цветок. | ||
trooba 21 - 16.12.20 - 10:00 | (18) В запросе же видно, что подменяю текст с датой.... на "ДД-ММ-ГГГГ" | ||
Конструктор1С 22 - 16.12.20 - 13:29 | (19) поэкспериментируй, попробуй несколько различных. Сейчас у тебя мелкософтовский, воткни оракловский |
|
Список тем форума |