AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Функционал
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 15.11.2005, 13:28   #1  
Nickolay is offline
Nickolay
Участник
 
5 / 10 (1) +
Регистрация: 21.09.2005
Добрый день,
Посоветуйте как реализовать обмен данными между базой AXAPTA и базой Oracle.
Подробнее:
- есть удалённая база Oracle
- есть AXAPTA
- исходные данные хранятся в базе Oracle(одна таблица). Данные изменяются строго INSERT.
- хочется чтобы при ставке записи в удалённой базе - появлялась запись в cоответствующей таблице AXAPTA.

Посоветуйте, как правильно это реализовать?
Способ через COM-connector опробован, в тестовом режиме работает.
Может есть ещё варианты?
Старый 16.11.2005, 01:13   #2  
Vadik is offline
Vadik
Модератор
Аватар для Vadik
Лучший по профессии 2017
Лучший по профессии 2015
 
3,631 / 1849 (69) ++++++++
Регистрация: 18.11.2002
Адрес: гражданин Москвы
а на какой СУБД живет аксапта?
__________________
-ТСЯ или -ТЬСЯ ?
Старый 16.11.2005, 09:44   #3  
Dolter_imported is offline
Dolter_imported
Участник
 
47 / 10 (1) +
Регистрация: 23.09.2004
Цитата:
Сообщение от Nickolay
Может есть ещё варианты?
ADO, DTS, XML, etc...
__________________
YEP! тел. (905) 561-94-00
Старый 16.11.2005, 22:03   #4  
glibs_imported is offline
glibs_imported
Участник
 
202 / 10 (1) +
Регистрация: 04.11.2003
Цитата:
Сообщение от Dolter
...
ADO, DTS, XML, etc...
...
Не все так просто. В Аксапте есть "проблема" с RecId (искуственный идентификатор записи, присутствующий в каждой таблице; номер уникален для компании — наиболее крупной логической единицы в системе, выделяется на прикладном уровне).

Есть еще offline вариант. Выгружать в текстовый файл или промежуточную БД, периодически в пакетном режиме оттудова забирать.
Старый 16.11.2005, 22:15   #5  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от glibs
В Аксапте есть "проблема" с RecId...
См. http://erpkb.com/Axapta/RecId
__________________
полезное на axForum, github, vk, coub.
Старый 17.11.2005, 10:58   #6  
Dolter_imported is offline
Dolter_imported
Участник
 
47 / 10 (1) +
Регистрация: 23.09.2004
Цитата:
Сообщение от glibs
Не все так просто. В Аксапте есть "проблема" с RecId (искуственный идентификатор записи, присутствующий в каждой таблице; номер уникален для компании — наиболее крупной логической единицы в системе, выделяется на прикладном уровне).
Ни в коем случае не используйте RecID для идентификации записи (ключа)!
Причина всего одна и указана в ссылке, которую дал Mazzy: "Его значение может измениться результате импорта/экспорта." Хотя "радует" и следующее предложение: "Однако бывают в этом алгоритме глюки, если у тебя два поля с RECID и/или ты включаешь/исключаешь твою таблицу в коллекцию."
Для идентификации записей (коллекций) в Аксапте лучше всего использовать составные ключи. Причем приходится чисто опытным путем подбирать наборы полей для построения составного ключа. Но что поделать? :-)

Цитата:
Сообщение от glibs
Есть еще offline вариант. Выгружать в текстовый файл или промежуточную БД, периодически в пакетном режиме оттудова забирать.
XML также есть "промежуточная БД" :-)
От текста тоже не стоит отказываться. По крайней мере в своих инструментах мы часто используем такие (XML, CSV) возможности. Их очень удобно использовать при обмене через ftp или e-mail между ну очень удаленными точками, где невозможно поднять качественные каналы связи.
__________________
YEP! тел. (905) 561-94-00
Старый 17.11.2005, 15:47   #7  
Nickolay is offline
Nickolay
Участник
 
5 / 10 (1) +
Регистрация: 21.09.2005
Спасибо всем за ответы.
почерпнул много полезной информации по конкретному вопросу и не только.
Самый соблазнительный своей простотой вариант предложен на "буржуйском" сайте:
- заблокировать таблицу
- увеличить NextVal - и взять его для RecId в нужной таблице
Но такое "хакерство" над ключевой таблицей системы меня пока страшит...
Ещё раз всем спасибо.
Буду думу думать...

Во второй раз получаю реальную помощь на вашем форуме.
Старый 17.11.2005, 16:59   #8  
Delfins_imported is offline
Delfins_imported
Участник
 
147 / 10 (1) +
Регистрация: 24.03.2004
esli est' finansi i AxaptaCient/Server imejut dostup k Oracle BD, to mozhna ustroit' BatchServer, kotorij budet konnektitsja kazduju minutu iz zabirat' dannie.

Isolzovat' mozna Connection/Statement klasi dlja podkljuchenija k BD.. (online rezhim)

ili parsit' XML fail, kotorij budet vidavat' Oracle cherez Web (u nego est' vnutrennij HTTP-Server[apache]), - dumaju eto toze mozno realizovat'
Старый 16.12.2005, 19:32   #9  
jikez is offline
jikez
Участник
 
4 / 10 (1) +
Регистрация: 16.12.2005
а что мешает склалывать данные во временную таблицу, а аксапте при проверке этой таблицы автоматом распихивать куда надо?
 


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 19:43.