|
Запись в SQL через форму внешней обработки | ☑ | ||
---|---|---|---|---|
0
Hикита
21.07.14
✎
08:57
|
Подскажите пожалуйста новичку что делаю не так, (Нужно записывать из формы внешн. обработки в SQL ) Может примеры какие-нибуть подскажете ? Как правельно соединится с базой и записать данные в таблицу?
[code] //СПЕРВА ПОДКЛЮЧЕНИЯ К БАЗЕ &НаКлиенте Процедура Записать(Команда) ЗаписатьНаСервере(); КонецПроцедуры &НаСервере Процедура ЗаписатьНаСервере() СтрокаПодключения = "Provider=sqloledb; |User ID=nikita; |Pwd=12345; |Data Source=sql.tk-chel.ru; |Initial Catalog= SVCTEST";//наша database Connection = Новый COMОбъект("ADODB.Connection"); Command = Новый COMОбъект("ADODB.Command"); RecordSet = Новый COMОбъект("ADODB.RecordSet"); Попытка Connection.Open(СокрЛП(СтрокаПодключения)); Command.ActiveConnection = Connection; //Проверка на наличие database Command.CommandText = "select * from dbo_MoveH where name = 'SVCTEST'"; RecordSet = Command.Execute(); Если RecordSet.EOF() И RecordSet.BOF() Тогда //нет записей, нет такой database, нужно создать; Возврат; КонецЕсли; RecordSet.MoveFirst(); Исключение Сообщить(ОписаниеОшибки()); КонецПопытки; // ДАЛЬШЕ ЗАПИСЬ ФайлДБФ = Новый XBase(ВнешниеИсточникиДанных.ТК.Таблицы.dbo_MoveH); ФайлДБФ.Кодировка=КодировкаXBase.OEM; КолЗаписей = ФайлДБФ.КоличествоЗаписей(); ФайлДБФ.Первая(); Для сч = 1 По КолЗаписей Цикл Command.CommandText = "USE SVCTEST |INSERT INTO dbo_MoveH VALUES( |'"+12344+"', |'"+4 +"', |'"+Объект.Контакт+"', |'"+Объект.Телефон+"', |'"+Объект.Компания+"', |'"+Объект.Страна+"', |'"+Объект.Регион+"', |'"+Объект.Город+"', |'"+Объект.Улица+"', |'"+Объект.Дом+"', |'"+Объект.Оффис+"', |'"+Объект.КраткоеОписание+"', |'"+Объект.ТипОплаты+"', |)"; Command.Execute(); ФайлДБФ.Следующая(); КонецЦикла; ФайлДБФ.ЗакрытьФайл(); Command = Неопределено; Connection = Неопределено; RecordSet = Неопределено; //Соединение.Close(); КонецПроцедуры [/code] |
|||
1
Defender aka LINN
21.07.14
✎
09:02
|
Догадаться, что именно не работает надо как обычно, телепатическим образом?
|
|||
2
Hикита
21.07.14
✎
09:28
|
||||
3
Hикита
21.07.14
✎
09:29
|
||||
4
Hикита
21.07.14
✎
09:30
|
||||
5
ДенисЧ
21.07.14
✎
09:31
|
инвалид бжект наме.
Если что, dbo.MoveH |
|||
6
ДенисЧ
21.07.14
✎
09:31
|
И в ообще - откуда взялось имя dbo_MoveH ??
|
|||
7
Defender aka LINN
21.07.14
✎
09:32
|
(4) Может быть проблема в том, к примеру, что длина имени файла больше 8 символов? Я так-то не претендую на истину, но что-то подсказывает...
|
|||
8
Hикита
21.07.14
✎
09:40
|
(6) Это Таблица
|
|||
9
Hикита
21.07.14
✎
09:40
|
(6)Имя взялось из БД
|
|||
10
ДенисЧ
21.07.14
✎
09:43
|
(8) (9) стоп. Ты через ВИД пишешь? Там до сей поры подчёркивания очень не любят.
Так что придётся переименовывать. |
|||
11
Hикита
21.07.14
✎
09:48
|
(10)В БД через точку dbo.MoveH в 1с щяс переписал так же.
Ошибка остается такой же |
|||
12
ДенисЧ
21.07.14
✎
09:58
|
(11) не верю.
Или ВИД дурят, или ты черепашка. |
|||
13
Hикита
21.07.14
✎
10:11
|
(12) Внешние источники подкл все нормально.
Таблици читаются все работает. |
|||
14
Hикита
21.07.14
✎
10:27
|
(13) А ошибки по прежнему присутствуют
|
|||
15
Hикита
21.07.14
✎
11:52
|
ошибка вызова метода execut типы не совпадают
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |