|
|
|
Подключение к 1С.
|
|||
|---|---|---|---|
|
#18+
Есть ситуация: запущена программа 1С 7.7, тоесть зашли под одним из пользователей, пароль и логин єтого пользователя известен. Как подключиться к 1С, чтоби можна било получать с єтой программи данние. если я виполняю єтот код Variant ex; ex=GetActiveObject(ProgIDToClassID("V77.Application"),NULL,&pIUnknown); Variant us=ex.OleFunction("EvalExpr","CreateObject(\"Справочник.Валюти"\")"); тогда в посдней строке викидает сообщение Could not convert variant of type(Integer) into type (Dispatch). Если я запускаю ex=GetActiveOleObject("V77.Application"); тогда видает ошибку недоступная операция. Помогите пожалуйста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.09.2007, 13:24 |
|
||
|
Подключение к 1С.
|
|||
|---|---|---|---|
|
#18+
Судя по всему это Builder. На мой взгляд стоит использовать pIUnknown ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.09.2007, 14:03 |
|
||
|
Подключение к 1С.
|
|||
|---|---|---|---|
|
#18+
Guest:"Судя по всему это Builder. На мой взгляд стоит использовать pIUnknown" Да єто Builder. Где использовать pIUnknown, я уже спользую его? Можно конкретней. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.09.2007, 14:32 |
|
||
|
Подключение к 1С.
|
|||
|---|---|---|---|
|
#18+
Не сомненно, все должно выглядеть несколько иначе, но в принципе должно быть очень похожим: MSDN: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.09.2007, 14:37 |
|
||
|
Подключение к 1С.
|
|||
|---|---|---|---|
|
#18+
Я вот что-то смутно припоминаю, что GetActiveObject прменительно к 1С 7.7 не работает в принципе ... возможно, ошибаюсь Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.09.2007, 14:41 |
|
||
|
Подключение к 1С.
|
|||
|---|---|---|---|
|
#18+
На их сайте говорится об API-функциях, но вот примеров я к сожалению не видел. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.09.2007, 14:46 |
|
||
|
Подключение к 1С.
|
|||
|---|---|---|---|
|
#18+
При виполненний написанного отривка кода в єтой строке hr = pUnk->QueryInterface(IID_IDispatch, (void **)&pDisp); видаеться ошибка ...Access violation at address 00401F76.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.09.2007, 15:03 |
|
||
|
Подключение к 1С.
|
|||
|---|---|---|---|
|
#18+
Сам мучился, но вродя работает. Variant Ole1C, rmTrade; HResult s1cResult; LPUNKNOWN pIUnknown = NULL; char *IntializationLine = "/NСергей /P1"; s1cResult = GetActiveObject(ProgIDToClassID("V77.Application"), NULL, &pIUnknown); if ( s1cResult == MK_E_UNAVAILABLE ) Ole1C = CreateOleObject("V77.Application"); else Ole1C = GetActiveOleObject("V77.Application"); rmTrade = Ole1C.OlePropertyGet("RMTrade"); Ole1C.OleProcedure("Initialize", rmTrade, IntializationLine,""); IntializationLine = "CreateObject(\"Справочник.Контрагенты\")"; OleVariant Buh1 = Ole1C.OleFunction("EvalExpr", IntializationLine); Buh1.Exec(Function("ВыбратьЭлементы")<<1); int kolvo=0; while (Buh1.Exec(Function("ПолучитьЭлемент"))>0) { Variant Tip= Buh1.OlePropertyGet("Наименование"); Variant Tip2= Buh1.OlePropertyGet("ЕДРПОУ"); AnsiString Str=Tip; AnsiString Str2=Tip2 ; Memo1->Lines->Add(Str+' '+Str2); kolvo++ ; } Label2->Caption=StrToInt(kolvo); Это для примера! А вот мой вопрос - кто поможет в банком? Мне нужно поле перечисления с банка...то куда поступают выписки с банка(мож бухгалтера есть). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2007, 12:01 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=34774734&tid=2028244]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
180ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
31ms |
get tp. blocked users: |
1ms |
| others: | 239ms |
| total: | 488ms |

| 0 / 0 |
