![]() |
|
Ошибка при работе с внешними источниками данных | ☑ | ||
---|---|---|---|---|
0
bUbA
21.06.18
✎
10:33
|
1С 8.3.10.2561
Есть скульная база 8ки, клиенты работают на винде, сервер крутится на линуксе (база скуль на Postgre). С помощью внешних источников данных (для того, чтобы они работали, на линуксовом сервере был установлен драйвер MSSQL) в базу 8ки было добавлено несколько таблиц. Таблицы эти созданы из 1С 7.7 (собственно загрузка данных происходит из базы 7ки). База 7ки крутится на ms sql. Сначала, для загрузки данных, подключался к тестовой базе 7ки, в которую недавно были внесены изменения - добавлено несколько справочников (таблиц). При выполнении запросов ко всем необходимым таблицам тестовой базы проблем не было. Затем изменения были перенесены на рабочую базу 7ки. И тут начались проблемы. Есть старые таблицы, которые были созданы в 7ке если не с самого начала, то уже точно давно (справочники контрагенты, сотрудники и еще один по-свежее, но тоже старый). А есть новые таблицы, которые были добавлены как раз после последнего обновления. Так вот, при выполнении запросов через внешние источники данных к старым таблицам проблем нет, а вот при выполнении запросов к новым таблицам получаем ошибку {ВнешняяОбработка.АСТ_ЗагрузкаКурьерскихЗаявок.МодульОбъекта(200)}: Ошибка при вызове метода контекста (ВыполнитьПакет) ПакетЗапроса = Запрос.ВыполнитьПакет(); по причине: Ошибка выполнения запроса по причине: Ошибка внешней базы данных: ошибка при выполнении запроса по причине: Ошибка ODBC. SQLSTATE: 42S02 Номер ошибки: 208 Описание: [Microsoft][ODBC Driver 13 for SQL Server][SQL Server]54>?CAB8<>5 8<O >1J5:B0 "dbo.SC41573". И так со всеми новыми таблицами. Причем это только при обращении с сервера (линуксового). Если обращаться с клиента (через COM-объект), то проблем нет. Так же, как и в конфигураторе при добавлении новых таблиц через ВИД все таблицы доступны. Перезагружали линуксовый сервак, добавляли таблицы заново, чистили пользовательский кэш на винде - не помогло. Права на таблицы везде одинаковые. Подскажите, в чем причина и как ее победить? |
|||
1
МихаилМ
21.06.18
✎
10:52
|
это ошибка - Недопустимое имя объекта
|
|||
2
bUbA
21.06.18
✎
10:57
|
(1) А почему оно недопустимо для только что добавленных таблиц, и только из-под сервера?
|
|||
3
МихаилМ
21.06.18
✎
11:06
|
(1)
не знаю. ищите различия в настройке ВИД, трассируйте запросы. чудес не бывает - где-то есть различия. |
|||
4
bUbA
21.06.18
✎
11:06
|
Единственное различие в строках подключения к базе - это имя драйвера.
Через ВИД: DRIVER={MSSQL};SERVER=Serv;UID=Login;PWD=Pass;DATABASE=DB Через COM: DRIVER={SQL Server};SERVER=Serv;UID=Login;PWD=Pass;DATABASE=DB |
|||
5
Сияющий в темноте
21.06.18
✎
11:28
|
А если удалить и снова добавить внешний источник-возможно-он криво видит новые таблицы,если вообще видит.
|
|||
6
VoditelKobyly
21.06.18
✎
11:54
|
При внесении изменений в семерке в рабочей и тестовой базе имена таблиц справочников и их полей будут разными.
|
|||
7
bUbA
21.06.18
✎
12:01
|
(6) это было учтено, поэтому при переходе с тестовой на рабочую базу семерки в ВИД были изменены имена в источнике данных, где это требовалось (а требовалось это только в новых таблицах). А после появления ошибки, в 8ке были полностью удалены проблемные таблицы из ВИД и добавлены заново - ошибка не изменилась.
|
|||
8
bUbA
21.06.18
✎
12:03
|
(5) Проблема в том, что новые таблицы видны везде (и на клиенте, и в конфигураторе), кроме сервера, при выполнении запроса
|
|||
9
bUbA
21.06.18
✎
12:45
|
Все оказалось элементарно...
После добавления нового ВИД в конфигуратор и его первого запуска в предприятии появляется окно с повторным вводом параметров подключения к базе. В итоге скопировал ВИД, появилось окно в предприятии с вводом параметров подключения, ввел новые параметры и все... |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |