01.03.2004, 12:07 | #1 |
Участник
|
Online-взаимодействие Axapta 3.0 и 1С
Здравствуйте, господа!
Требуется организовать online-обмен данными между Axapta 3.0 (SQl Server) и 1С v 7.7. Несколько связанных справочников. Не подскажите - как это сделать? Через BizTalk Server ? Через COM? Спасибо. |
|
01.03.2004, 12:30 | #2 |
Юзовские
|
Цитата:
Через BizTalk Server ? Через COM?
Какой выбрать в вашем конкретном случае зависит от многих факторов. Лично я делал это через COM. Все отлично работало. |
|
01.03.2004, 12:46 | #3 |
Участник
|
А какой самый оптимальный способ?
|
|
01.03.2004, 13:20 | #4 |
Участник
|
через COM возникают проблемы с методом Новый.
кроме того, через COM непонятно как передавать перечисления. А в остально очень даже ничего. Я предпочитаю работать с текстовыми файлами. |
|
01.03.2004, 13:37 | #5 |
Участник
|
А какой самый оптимальный способ?
|
|
01.03.2004, 13:45 | #6 |
Участник
|
а хрен его знает. кто как привык, тот так и работает.
или скажите ваши критерии оптимальности |
|
01.03.2004, 14:00 | #7 |
Участник
|
Странно - второй такой же вопрос я не задавал .
А какова технология обмена через текстовые файлы? А как же режим online (ведь по сути создается некоторый промежуточный файл), а как передача последних изменений? |
|
01.03.2004, 14:16 | #8 |
Участник
|
для начала - определите ведущую базу: Аксапта или 1С.
Это несколько упростит вам задачу. Если ведущая база 1С - то проблем с 1С, описанных mazzy, у вас не будет. Для того, чтобы узнать новые элементы - можете добавить в 1С новые реквизиты - "ДатаВвода", "ДатаРедактирования" Можно в Axapta какой нибудь batch сделать - который периодически проверяет указанный вами файл на наличие txt файла. Обработайте его - и удалите\переместите - вот вам и онлайн при использовании промежуточного файла. |
|
01.03.2004, 14:42 | #9 |
Участник
|
Цитата:
Изначально опубликовано france
Если ведущая база 1С - то проблем с 1С, описанных mazzy, у вас не будет. http://www.axforum.info/forums/showt...&threadid=4637 |
|
01.03.2004, 15:32 | #10 |
Участник
|
Господа!
А кого есть пример кода, как достучаться из 1С в Axapta? Попробовал по руководству разработчика, применительно к 1С, не получается. Axapta Business Connector запущен. Ругается, что нет такого метода Axapta.Logon. В чем м.б. проблема? Процедура ПриЗаписи() Axapta = CreateObject("AxaptaCOMConnector.Axapta"); Axapta.Logon "Admin","","",""; AxaptaQuery = Axapta.CreateObject("Query"); CustTable = 77; CustTable_Name = 2; AxaptaDataSource = AxaptaQuery.Call("AddDataSource", CustTable); AxaptaRange = AxaptaDataSource.Call("AddRange", CustTable_Name); Сообщить("Тест пройден"); КонецПроцедуры |
|
01.03.2004, 15:41 | #11 |
Юзовские
|
Com connector не установлен\не запущен. Последняя вкладка конфиг утилиты.
|
|
01.03.2004, 15:43 | #12 |
Участник
|
Всем спасибо.
Ошибка найдена. |
|
03.12.2004, 09:34 | #13 |
Участник
|
Цитата:
Изначально опубликовано isbist
Процедура ПриЗаписи() Axapta = CreateObject("AxaptaCOMConnector.Axapta"); Axapta.Logon("Admin","","",""); AxaptaQuery = Axapta.CreateObject("Query"); CustTable = 77; CustTable_Name = 2; AxaptaDataSource = AxaptaQuery.Call("AddDataSource", CustTable); AxaptaRange = AxaptaDataSource.Call("AddRange", CustTable_Name); Сообщить("Тест пройден"); КонецПроцедуры Почему не работает??
__________________
Смотрим в книгу - видим фигу. |
|
03.12.2004, 11:31 | #14 |
NavAx
|
У меня работает так:
1. В 1С в глобальном модуле написано несколько функций, котрые принимают данные и создают документы в 1С. 2. В Axapta сделано несколько функций для передачи документов в 1С и через COM идет вызов функций из глобального модуля. Конкретный пример (не причесаный, прямо из рабочего приложения): В 1С добавляем функцию: PHP код:
PHP код:
|
|
03.12.2004, 12:48 | #15 |
Участник
|
прогнад дебаггером 1C, оказалось, что сообщение об ошибке на этом шаге:
PHP код:
__________________
Смотрим в книгу - видим фигу. |
|
03.12.2004, 13:29 | #16 |
Участник
|
Всем спасибо ! заработало !!! были проблемы просто с некоторыми настройками Аксапты
__________________
Смотрим в книгу - видим фигу. |
|