Имя: Пароль:
1C
 
Ошибка внешней базы данных
, ,
0 Mary01
 
30.05.17
13:51
Здравствуйте!

Как исправить ошибку?
Есть внешний источник данных, в нем таблица dbo_ML. Пытаюсь сделать запись.
Стр = ВнешниеИсточникиДанных.BDSQL.Таблицы.dbo_ML.СоздатьМенеджерЗаписи();
Стр.lineID = 1;
Стр.uid = Новый УникальныйИдентификатор();
Попытка
    Стр.Записать();
Исключение
    Сообщить(ОписаниеОшибки());
    Возврат;
КонецПопытки;

Выдает ошибку.
Ошибка при вызове метода контекста (Записать):
Ошибка внешней базы данных:
ошибка при выполнении запроса: Ошибка ODBC. SQLSTATE: 42000
Номер ошибки: 102
Описание: [Microsoft][ODBC SQL Server Driver][SQL Server]Неправильный синтаксис около конструкции "<".
1 Волшебник
 
модератор
30.05.17
13:52
Нужно исправить синтаксис около конструкции "<".
2 Mary01
 
30.05.17
13:53
(1) но у меня тут нет никакого "<"
3 Волшебник
 
модератор
30.05.17
13:55
посмотри ПараметрыСоединенияВнешнегоИсточникаДанных
СУБД (DBMS) - вот это надо указывать явно
4 Волшебник
 
модератор
30.05.17
13:57
Соед = Новый ПараметрыСоединенияВнешнегоИсточникаДанных;
Соед.СтрокаСоединения = "Тут строку соединения";
Соед.СУБД = "MSSQLServer"; //Явно указываем, потому что тот тип, что указали в строке соединения, игнорируется;

Источник = ВнешниеИсточникиДанных[НазваниеИсточника];
Источник.УстановитьПараметрыСоединенияСеанса(Соед);
5 Mary01
 
30.05.17
14:41
(4) это все есть.
6 mexanik_96
 
30.05.17
14:43
(0) таблица в рид онли стоит?
7 Mary01
 
30.05.17
14:54
(6) где это смотреть?
8 Mary01
 
30.05.17
14:55
(6) посмотрела, в свойствах таблицы в конфигураторе - нет, галочка Только чтение снята.
9 Черный маклер
 
30.05.17
15:02
(0) бывают древние версии БД или ODBC - в таких ситуациях проще в БД добавить хранимую процедуру и вызывать ее через ВИД
10 Mary01
 
30.05.17
15:03
(9) что за процедура и что такое ВИД?
11 Черный маклер
 
30.05.17
15:04
(10) ВИД - внешний источник данных, кроме таблиц БД есть функции
12 Mary01
 
30.05.17
15:19
(1)  как можно посмотреть где появляется конструкция "<"?
13 mehfk
 
30.05.17
15:20
(12) В профайлере.
14 Mary01
 
30.05.17
16:15
(13) проблема решена! профайлер показывал
INSERT INTO...
(Kontr,lineID,uid)
VALUES(<Bad type>,1,N'848e1289-33e7-49d5-999b-ac0e2be57e0d')
То есть необходимо было добавить Стр.Kontr = ...