Автор | Сообщение |
|
| |
Пост N: 33
Зарегистрирован: 08.02.11
|
|
Отправлено: 23.03.12 10:46. Заголовок: Доступ к 1С
Есть у кого-нибудь опыт подключения к 1С по OLE? Пробую подключиться так //создать объект для ссылки на 1C ob1C:= TOleAuto():New( "V81.Application" ) if Ole2TxtError() != 'S_OK' ;MsgExclamation('V81.Application не запускается !!!'+CRLF+'Дальнейшая работа невозможна','Excuse me') AddMsg("V81.Application не запускается !!!") Return endif AddMsg("ссылка ob1C:=V81.Application создана !!!") AddMsg("попытка открыть базу ") msgbox("See") до этой строки все работает. А вот дальше попытки использовать инфу из разных источников выдает MemberNotFound //result:=ob1C:Initialize(ob1C:RMTrade,'/d G:\1C_IT /n "Садонин В.А." /p 111' , "NO_SPLASH_SHOW") //result:=ob1C:Connect('File="G:\1C_IT"; Usr="Садонин В.А."; Pwd="111"') //result:=ob1C:OleProcedure("Connect",'File="G:\1C_IT"; Usr="Садонин В.А."; Pwd="111"') Посоветуйте что-нибудь полезное
|
|
|
Ответов - 8
[только новые]
|
|
|
| Администратор
|
Пост N: 2320
Зарегистрирован: 23.05.05
|
|
Отправлено: 23.03.12 10:56. Заголовок: SADSTAR4 пишет: //r..
SADSTAR4 пишет: цитата: | //result:=ob1C:Initialize(ob1C:RMTrade,'/d G:\1C_IT /n "Садонин В.А." /p 111' , "NO_SPLASH_SHOW") |
| А что такое ob1C:RMTrade ? Может быть, этот член не найден ?
|
|
|
|
| |
Пост N: 117
Зарегистрирован: 17.06.10
|
|
Отправлено: 23.03.12 11:13. Заголовок: Это подключение для ..
Это подключение для семерки. Для 8-х не работает
|
|
|
|
| |
Пост N: 480
Зарегистрирован: 11.06.10
|
|
Отправлено: 23.03.12 15:43. Заголовок: Вот код на harbour, ..
Вот код на harbour, вытягиваю данные из справочника тмц, только подключался к 1c77. FUNC main() LOCAL oV7 REQUEST HB_LANG_UAWIN HB_LANGSELECT( "UAWIN" ) REQUEST HB_CODEPAGE_UA1251 HB_CDPSELECT( "UA1251" ) dbCreate( "tmc", { { "ctmc","C",100,0 }, { "ctype","C",10,0 } } ) USE tmc NEW oV7 := win_oleCreateObject( "V77.Application" ) IF oV7:Initialize( oV7:RmTrade, "/D" + "E:\1C\B1" + " /N" + "login" + " /M", "NO_SPLASH_SHOW" ) doc := oV7:CREATEOBJECT( "Справочник.ТМЦ" ) doc:selectitems() WHILE doc:getitem() > 0 tmc -> ( dbAppend() ) tmc -> CTMC := doc:getAttrib( "ПолнНаименование" ) tmc -> CTYPE := ValType( doc:getAttrib( "ВидТМЦ" ) ) ENDDO ENDIF oV7 := NIL RETURN nil
|
|
|
|
| |
Пост N: 481
Зарегистрирован: 11.06.10
|
|
Отправлено: 23.03.12 16:13. Заголовок: SADSTAR4 пишет: А в..
SADSTAR4 пишет: цитата: | А вот дальше попытки использовать инфу из разных источников выдает MemberNotFound //result:=ob1C:Initialize(ob1C:RMTrade,'/d G:\1C_IT /n "Садонин В.А." /p 111' , "NO_SPLASH_SHOW") //result:=ob1C:Connect('File="G:\1C_IT"; Usr="Садонин В.А."; Pwd="111"') //result:=ob1C:OleProcedure("Connect",'File="G:\1C_IT"; Usr="Садонин В.А."; Pwd="111"') |
| вот еще при быстром просмотре гугла Открытие = V8.Connect("File=""F:\Базы\1_1_6_1""; Usr=""ADMIN"";") может чем поможет.
|
|
|
|
| |
Пост N: 34
Зарегистрирован: 08.02.11
|
|
Отправлено: 26.03.12 09:16. Заголовок: заработала строка r..
заработала строка result:=ob1C:Connect('File="G:\1C_IT"; Usr="Садонин В.А. "; Pwd=111') т.е. имя пользователя было несуществующим а ошибку выдавал как DISP_E_MEMBERNOTFOUND:CONNECT что я понимал как нет метода Connect. работает следующий экспериментальный код doc:= ob1C:NewOBJECT("ТекстовыйДокумент") //!!! doc:InsertLine(1, "Новая строка") msgbox(str(doc:LineCount())) doc:=NIL doc:= ob1C:NewOBJECT("СправочникОбъект.Номенклатура") AddMsg(doc:code) AddMsg(doc:Description) а вот дальнейший код падает с тем же MemberNotFound:select на что непонятно как реагировать в свете ранее сказанного sel:= doc:select() WHILE sel:next() > 0 //tmc -> ( dbAppend() ) //tmc -> CTMC := doc:getAttrib( "ПолнНаименование" ) //tmc -> CTYPE := ValType( doc:getAttrib( "ВидТМЦ" ) ) sel:GetObject() AddMsg(sel:Description) ENDDO
|
|
|
|
| |
Пост N: 6
Зарегистрирован: 24.09.13
|
|
Отправлено: 13.01.14 10:06. Заголовок: Тема по доступу к 1С..
Тема по доступу к 1С еще актуальна? Вот выжимка из работающего кода, на примере демобазы типовой "1С-Бухгалтерии", ред2,0: REQUEST HB_CODEPAGE_RU1251 REQUEST HB_LANG_RUWIN Function Main() Local Appl1C, Conn1C, Path1C, User1C, Passw1C, ConnectString Local Query1C, QResult1C, Selection1C Local CustCode,CustName,CustINN HB_LANGSELECT("RUWIN") hb_cdpSelect( "RU1251" ) SetMode( 25, 80 ) CLS Appl1C := win_oleCreateObject( "V82.COMConnector" ) Path1C := "D:\BUH1C" user1C := '"Любимов (администратор)"' Passw1C := "" ConnectString := "File="+Path1C+";Usr="+User1C+";Pwd="+Passw1C+";" conn1C := Appl1C:Connect(ConnectString) Query1C := Conn1C:NewObject("Запрос") Query1C:Text := "SELECT Контрагенты.Код AS CustCode, Контрагенты.Наименование AS CustDescr, Контрагенты.ИНН AS INN, "+; " Контрагенты.КПП AS KPP, Контрагенты.НаименованиеПолное AS FullDescr, PRESENTATION(Контрагенты.ЮрФизЛицо) AS CustType "+; " FROM Справочник.Контрагенты AS Контрагенты" Qresult1C := Query1C:Execute() Selection1C:= Qresult1C:Choose() while Selection1C:next() = .t. CustCode := Selection1C:CustCode CustName := Selection1C:CustDescr CustINN := Selection1C:INN CustKPP := Selection1C:KPP CustFullDescr := Selection1C:FullDescr CustType := Selection1C:CustType ? CustCode, " ", CustName," ",CustINN ? CustKPP, " ", CustFullDescr," ",CustType enddo Inkey(0) Conn1c := NIL Appl1C := NIL Return Для чтения данных лучше использовать 1С-вские запросы и в них переопределять имена полей латинскими идентификаторами, потому что к русским именам, понятное дело, из Харбора обратиться не получится.
|
|
|
|
| |
Пост N: 317
Зарегистрирован: 03.12.08
|
|
Отправлено: 31.07.16 12:10. Заголовок: Может уважаемые Гуру..
Может уважаемые Гуру имеют готовый текст запроса к 1С (7.7) на Harbour для получения "Итогов Инвентаризации" - то есть список остатков на определенную дату или текущие остатки чтоб иметь на выходе Артикул , количество , и т д ?
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 02.08.16
|
|
Отправлено: 02.08.16 16:22. Заголовок: Конфига какая? "..
Конфига какая? "Торговля и Склад"? Ну, готового нету, но можно попробовать покурить пример отсюда: https://helpf.pro/faq/view/1537.html , переложить на Харбор (только, естественно, подставив английские синонимы 1С-вских названий методов.
|
|
|
|