|
Подключение к базе Декларант-Алко | ☑ | ||
---|---|---|---|---|
0
Amfiaray
05.12.13
✎
09:05
|
Добрый день.
Подскажите как подключиться к базе Декларант-Алко, я пробую вот так но ничего не получается: ОлеДБ = Новый COMОбъект("ADODB.Connection"); Соединение = "Provider=Microsoft.SQLSERVER.CE.OLEDB.3.5; Data Source="+СокрЛП(ПутьКБазе)); Попытка ОлеДБ.Open(Соединение); Исключение Сообщить(ОписаниеОшибки()); КонецПопытки; запрос="select * from wrk_Contragents"; cmd = Новый COMОбъект("ADODB.Command"); cmd.ActiveConnection = ОлеДБ; cmd.CommandText=запрос; RecordSet = Новый COMОбъект("ADODB.RecordSet"); RecordSet.ActiveConnection = ОлеДБ; RecordSet.CursorLocation = 3; RecordSet.CursorType = 2; RecordSet.Open(cmd); Выдает ошибку: RecordSet.Open(cmd); по причине: Произошла исключительная ситуация (Microsoft Cursor Engine): Произошли ошибки во время выполнения многошаговой операции. Проверьте значения всех состояний. Если не ставить RecordSet.CursorLocation = 3; RecordSet.CursorType = 2; то нормально открывает, но добавлять ничего не дает |
|||
1
Amfiaray
05.12.13
✎
09:51
|
Неужели никто не встречался с таким?
|
|||
2
Ёпрст
05.12.13
✎
10:04
|
она с паролем
|
|||
3
Ёпрст
05.12.13
✎
10:07
|
на вот..
ОлеДБ = Новый COMОбъект("ADODB.Connection"); Соединение = "Provider=Microsoft.SQLSERVER.CE.OLEDB.3.5;Data Source="+СокрЛП(КаталогИБ)+";SSCE:Database Password=7338a7e6-fd3b-49d1-8d90-ddbbc1b39fa1"; ОлеДБ.Open(Соединение); Command = Новый COMОбъект("ADODB.Command"); Command.ActiveConnection = ОлеДБ; ТекстЗапроса = " |INSERT INTO DecF11 ...."; Command.CommandText = ТекстЗапроса; RecordSet = Новый COMОбъект("ADODB.RecordSet"); RecordSet = Command.Execute(); |
|||
4
Amfiaray
05.12.13
✎
12:39
|
INN = 1234567891;
Command = Новый COMОбъект("ADODB.Command"); Command.ActiveConnection = ОлеДБ; ТекстЗапроса = "INSERT INTO wrk_Contragents(INN)VALUES("+INN+")"; Command.CommandText = ТекстЗапроса; RecordSet = Новый COMОбъект("ADODB.RecordSet"); RecordSet = Command.Execute(); Выдает ошибку RecordSet.Open(cmd); по причине: Произошла исключительная ситуация (Microsoft SQL Server Compact OLE DB Provider): The command contained one or more errors. [,,,,,] Не могу догнать как надо делать :( |
|||
5
Ёпрст
05.12.13
✎
12:51
|
(4) а те че сделать то надо ?
|
|||
6
Aleksey
05.12.13
✎
12:55
|
а там апострофы разве не нужны?
VALUES('"+INN+"')"; |
|||
7
Aleksey
05.12.13
✎
12:56
|
да и обычно еще и Where пишут, а то он во все строки таблицы зафигачит
|
|||
8
Ёпрст
05.12.13
✎
12:57
|
(7) у него вообще то инсерт
:) |
|||
9
zak555
05.12.13
✎
12:57
|
зачем её использовать *?
|
|||
10
zak555
05.12.13
✎
12:58
|
сейчас 1с-ка сама умеет всё подписывать и шифровать
|
|||
11
Aleksey
05.12.13
✎
12:59
|
||||
12
zak555
05.12.13
✎
12:59
|
поделки от рар лучше в руки не брать -- помню, что они даже не запускались под обычным пользователем
нужны были одминские права |
|||
13
Ёпрст
05.12.13
✎
13:03
|
(4)
вот так сработает insert into wrk_Contragents ([inn],[orgtype]) values ('123123123',1) ибо orgtype не может содержать null полей. Хотя, по-уму, нужно все значимые поля втыкать.. |
|||
14
Ёпрст
05.12.13
✎
13:06
|
(11)
2. зачетная поделка.. тоже ей пользовался как-то. Хотя, проще самому написать прямо в qa, что надо. |
|||
15
Amfiaray
05.12.13
✎
13:08
|
Всем спасибо, разобрался и всё работает. По поводу того что 1С сама всё умеет я не спорю, но глав бух сказала что "НАДО В ДЕКЛАРАНТ", вот и пляшу тут.
|
|||
16
zak555
05.12.13
✎
13:09
|
(15) кому надо ?
|
|||
17
Amfiaray
05.12.13
✎
13:13
|
(16) Им надо, они так привыкли.
|
|||
18
Amfiaray
06.12.13
✎
07:34
|
Возник ещё вопрос, записывать всё хорошо записывает, а как узвнать id записанной строки?
Записываю вот так: ТекстЗапроса="INSERT INTO wrk_org ([INN],[KPP],[OrgName],[Phone],[Email],[CCode],[Index],[RCode],[Area],[City],[Place],[Street],[Building],[Korp],[Flat],[Head_id],[OrgType],[DirID],[BuhID],[Liter])VALUES |('"+INN+"','"+KPP+"','"+OrgName+"','"+Phone+"','','643','"+Индекс+"','22','','"+Город+"','','"+Улица+"','"+Дом+"','','','1','','','','')"; cmd = Новый COMОбъект("ADODB.Command"); cmd.ActiveConnection = ОлеДБ; cmd.CommandText=ТекстЗапроса; RecordSet = Новый COMОбъект("ADODB.RecordSet"); RecordSet.ActiveConnection = ОлеДБ; RecordSet.Open(cmd); |
|||
19
Ёпрст
06.12.13
✎
08:15
|
select max(id) from wrk_org
например.. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |