|
|
|
1C и Interbase 6.5? Помогите | ☑ | ||
|---|---|---|---|---|
|
0
AlexAAA
17.08.04
✎
12:21
|
Как связаться с IB 6.5 и сделать запрос?
|
|||
|
1
Волшебник
17.08.04
✎
12:22
|
Через ODBC.
|
|||
|
2
AlexAAA
17.08.04
✎
12:24
|
Нужно через OLE
|
|||
|
3
MMF
17.08.04
✎
12:25
|
Самое лучшее - с помощью IBX или FIBpluse во внешней компоненте
|
|||
|
4
Волшебник
17.08.04
✎
12:29
|
(2) Делай через OLE.
http://mista.ru/articles1c/ole.htm |
|||
|
5
AlexAAA
17.08.04
✎
12:30
|
Как соединиться? мне нужен код или ссылка на где можно посмотреть как соединяться с IB через тот же IBX
|
|||
|
6
MMF
17.08.04
✎
12:37
|
||||
|
7
AlexAAA
17.08.04
✎
12:56
|
Да нет же из 1С соединяться с IB а не наоборот
|
|||
|
8
MMF
17.08.04
✎
13:01
|
(7) я тебе именно это и положил. Из 1С - с IB, (вообще-то с Fb, но это без разницы).
|
|||
|
9
AlexAAA
17.08.04
✎
13:19
|
Запустить 1С, связаться с IB, забрать данные запросом из IB.
есть что то типа как с Ораклом? OraSession = СоздатьОбъект("OracleInProcServer.XOraSession"); OraDatabase = OraSession.DbOpenDatabase("magicash", "magicash5/nctmagicash5",0); osRecordSet = OraDatabase.DbCreateDynaset("select * from ecfil002", 0); |
|||
|
10
SFG
17.08.04
✎
14:32
|
//*********************************
Соединение=СоздатьОбъект("ADODB.Connection"); СтрокаКоннекта="driver=INTERSOLV InterBase ODBC Driver (*.gdb);server=127.0.0.1;uid=SYSDBA;pwd=masterkey;Database=127.0.0.1:D:\Work\Rod\Roger\Roger\Car-care Center 4\DataBase\AUTODLR.GDB"; Соединение.ConnectionTimeOut=20; Соединение.CursorLocation=3; Попытка Соединение.Open(СтрокаКоннекта); Исключение Предупреждение("Невозможно установить соединение с базой данных!"); Возврат; КонецПопытки; ЗапросАДО=СоздатьОбъект("ADODB.Command"); ЗапросАДО.ActiveConnection=Соединение; //********************************* Процедура ЗаполнитьИзЗаказНарядов() Если ЗаказНаряды.С1 = "-" Тогда МойКонтрагент = СоздатьОбъект("Справочник.Контрагенты"); МойАвтомобиль = СоздатьОбъект("Справочник.Автомобили"); ТекстЗапроса="SELECT ID,DATE1,DATE2,DATE3,CLIENTID,CLIENTLINKMODELID |FROM DOCNARADHEAD |WHERE (ID = " + СокрЛП(Строка(ЗаказНаряды.Ном)) + ");"; // ЗапросАДО.CommandText=ТекстЗапроса; Выборка=ЗапросАДО.Execute(); Если Выборка.EOF()=-1 Тогда Иначе Выборка.MoveFirst(); НомерДок = Выборка.Fields("ID").Value; ДатаНачалаРабот = Выборка.Fields("DATE2").Value; ДатаКонцаРабот = Выборка.Fields("DATE3").Value; МойКонтрагент.НайтиПоРеквизиту("ID",Выборка.Fields("CLIENTID").Value,1); Контрагент = МойКонтрагент.ТекущийЭлемент(); МойАвтомобиль.НайтиПоРеквизиту("ID",Выборка.Fields("CLIENTLINKMODELID").Value,1); Автомобиль = МойАвтомобиль.ТекущийЭлемент(); КонецЕсли; Выборка.Close(); УдалитьСтроки(); //TIME , ТекстЗапроса="SELECT IDDOCNARADHEAD,WORKID,AMOUNT,FACTOR,PRICENORMID,FINALPRICE,TIMEVALUE |FROM NARADWORKS |WHERE (IDDOCNARADHEAD = " + СокрЛП(Строка(НомерДок)) + ");"; // ЗапросАДО.CommandText=ТекстЗапроса; Выборка=ЗапросАДО.Execute(); Если Выборка.EOF()=-1 Тогда Иначе МоиРаботы = СоздатьОбъект("Справочник.ТМЦ"); Выборка.MoveFirst(); Пока Выборка.EOF()=0 Цикл НоваяСтрока(); МоиРаботы.НайтиПоРеквизиту("ID",Выборка.Fields("WORKID").Value,1); ТМЦ = МоиРаботы.ТекущийЭлемент(); Коэфициент = Выборка.Fields("FACTOR").Value; Кратность = Выборка.Fields("AMOUNT").Value; Цена = Выборка.Fields("PRICENORMID").Value; Время = Выборка.Fields("TIMEVALUE").Value; Стоимость = Выборка.Fields("FINALPRICE").Value; Выборка.MoveNext(); КонецЦикла; КонецЕсли; Иначе Предупреждение("По этой записи уже сформирован документ в 1С!"); КонецЕсли; КонецПроцедуры |
|||
|
11
SFG
17.08.04
✎
14:42
|
+10. Пардон, тока заметил, что тебе через Олю надо, а у меня в примере через АДО.
|
|||
|
12
AlexAAA
17.08.04
✎
15:02
|
Бальшой сенкс!!!
|
|||
|
13
AlexAAA
17.08.04
✎
15:04
|
Про Олю я уже нашел, ток нужно установить OLE-DB Provider
Dim con1 As ADODB.Connection Dim cmd1 As ADODB.Command con1.Provider = "LCPI.IBProvider" con1.Open datasource=localhost:c:\Projects\FB\db_test.gdb;ctype=win1251", "SYSDBA", "masterkey" con1.Properties("Session AutoCommit") = True con1.Properties("Autocommit Isolation Levels") = 4096 Set cmd1 = New ADODB.Command cmd1.ActiveConnection = con1 |
|||
|
14
AlexAAA
17.08.04
✎
15:08
|
Все зашибись тока запросы не выполняет, выдает:
"Автоматический старт транзакций запрещен!" |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |