У кого-нибудь получилось записать во внешние источники когда они необъектные данные? 8.3.5.1119

1. TimofeySin 164 05.09.14 14:41 Сейчас в теме
Всю голову сломал. Пишу в sql через внешние источники (8.3.5.1119)
Объектные даннные все ОК.
	НоваяЗапись = ВнешниеИсточникиДанных.Holding_Exchange.Таблицы.dbo_Brand.СоздатьОбъект();
        НоваяЗапись.Description = НаборЗап.Менеджер.Подразделение.Марка.Наименование;
	НоваяЗапись._IDRef = НаборЗап.Менеджер.Подразделение.Марка.УникальныйИдентификатор();
	НоваяЗапись.Записать();

Не объектные данные:
НоваяЗап = ВнешниеИсточникиДанных.Holding_Exchange.Таблицы.dbo_CurrentStatus.СоздатьМенеджерЗаписи();
        НоваяЗап._Person     = Строка(НаборЗап.Менеджер.УникальныйИдентификатор());
	НоваяЗап._DateEvent  = НаборЗап.ДатаСостояния;
	НоваяЗап.Записать();	

Выдает ошибку:
Ошибка внешней базы данных:
ошибка при выполнении запроса
по причине:
Ошибка ODBC. SQLSTATE: 42000
Номер ошибки: 102
Описание: [Microsoft][ODBC SQL Server Driver][SQL Server]Неправильный синтаксис около конструкции "T1".
PS пробовал и с "_" и без. всё одно. Может чего не так делаю.
Пробовал через СоздатьНаборЗаписи() Всё тож самое.
kaaasteeen; Blagin; +2 Ответить
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. Zixxx 05.09.14 15:06 Сейчас в теме
А "НоваяЗап._Person" там тип string в таблице?
3. TimofeySin 164 05.09.14 15:18 Сейчас в теме
(2) Zixxx, Вот таблица:
USE [Holding_Exchange]
GO

/****** Object:  Table [dbo].[CurrentStatus]    Script Date: 09/05/2014 13:07:40 ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

SET ANSI_PADDING ON
GO

CRE ATE   TABLE [dbo].[CurrentStatus](
	[_Person] [nvarchar](50) NOT NULL,
	[_DateEvent] [datetime] NOT NULL,
 CONSTRAINT [PK_CurrentStatus] PRIMARY KEY CLUSTERED 
(
	[_Person] ASC,
	[_DateEvent] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]

GO

SET ANSI_PADDING OFF
GO


Показать
4. caponid 05.09.14 15:44 Сейчас в теме
каким образом инициализировал соединение? плз весь код.
если явно не укажешь тип сервера, то будут проблемы.
5. TimofeySin 164 05.09.14 16:13 Сейчас в теме
Вот строка подключения. (Так ведь объектные данные пишутся норм и все норм читается)
	Соединение = Новый ПараметрыСоединенияВнешнегоИсточникаДанных;
	Соединение.СтрокаСоединения = "Driver={SQL Server};DSN=bd-srv.srv.local;Server=bd-srv.srv.local;Database=Holding_Exchange";
ВнешниеИсточникиДанных.Holding_Exchange.УстановитьПараметрыСоединенияСеанса(Соединение);
		ВнешниеИсточникиДанных.Holding_Exchange.УстановитьСоединение();
6. caponid 05.09.14 16:26 Сейчас в теме
ПараметрыСоединенияВнешнегоИсточникаДанных (ExternalDataSourceConnectionParameters)
Свойства:

АутентификацияОС (OSAuthentication)
АутентификацияСтандартная (StandardAuthentication)
ИмяПользователя (UserName)
Пароль (Password)
ПарольУстановлен (PasswordIsSet)
СтрокаСоединения (ConnectionString)


СУБД (DBMS) - вот это надо указывать явно - парсили на уровне сиквела - без указания запросы почему то в формате мускула от 1с приходили

хотя в строке соединения было указано MSSQL

и если есть в таблице ключевое поле с автоинкрементом - то его из объявления таблицы надо исключить
kaaasteeen; Blagin; fieryfist; msergeev79; kazak; vova814; Synoecium; afanasko; +8 Ответить
7. TimofeySin 164 05.09.14 16:30 Сейчас в теме
Получилось!!! СПасибо спасибо спасибо!!!
kaaasteeen; +1 Ответить
8. demon_infernal 40 20.06.16 19:42 Сейчас в теме
Такая же проблема, приведите плиз рабочую строку соединения
9. makfromkz 35 21.06.16 08:23 Сейчас в теме
СУБД (DBMS) - вот это надо указывать явно

Плииз, покажите пример явного объявления
10. caponid 21.06.16 10:14 Сейчас в теме
Соед = Новый ПараметрыСоединенияВнешнегоИсточникаДанных;
Соед.СтрокаСоединения = "Тут строку соединения";
Соед.СУБД = "MSSQLServer"; //Явно указываем, потому что тот тип, что указали в строке соединения, игнорируется;

Источник = ВнешниеИсточникиДанных[НазваниеИсточника];
Источник.УстановитьПараметрыСоединенияСеанса(Соед);
Источник.УстановитьСоединение();
kaaasteeen; Blagin; user728106; msergeev79; +4 Ответить
16. Kvitka_ru 07.06.18 15:23 Сейчас в теме
Спасибо, очень помогли!!!
11. demon_infernal 40 21.06.16 21:54 Сейчас в теме
12. Synoecium 778 01.03.17 07:45 Сейчас в теме
Тип СУБД можно задать интерактивно в форме настройки общих параметров источников данных. После задания типа СУБД стало нормально записываться, платформа 8.3.7.2027
Прикрепленные файлы:
kaaasteeen; +1 Ответить
13. TheU 11.12.17 07:58 Сейчас в теме
Доброго времени суток.
Тип СУБД указываю, но при записи в таблицу с "необъектными" данными все равно ошибка:

[Microsoft][ODBC SQL Server Driver][SQL Server]Incorrect syntax near '<'.

Подскажите, что еще м.б. не так
14. TimofeySin 164 11.12.17 11:12 Сейчас в теме
(13)
syntax
Какое-то поле не заполнил с ссылочным типом, оно не понимает пустую ссылку, надо туда NULL передавать.
kaaasteeen; simgo83; user728106; +3 Ответить
15. TheU 11.12.17 15:10 Сейчас в теме
Ага, разобрался с помощью Profiler'а: дело, действительно, просто в незаполненном поле: я думал, что если у поля есть признак РазрешитьNull, то оно автоматически Null и заполнится, а 1С отправила запрос на вставку, где вместо значения поля стояло <bad type>. Она так реагирует, причем, на незаполненные поля не только со ссылочным типом (т.е., не только на пустые ссылки на др. таблицы, а на любые неуказанные значения).
DeniroDen; kaaasteeen; kawaietz; +3 Ответить
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)