powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ERP и учетные системы [игнор отключен] [закрыт для гостей] / SAP - реплика базовых таблиц (oracle)
23 сообщений из 23, страница 1 из 1
SAP - реплика базовых таблиц (oracle)
    #36638484
Фотография PPA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет.

Есть задача получить постоянный доступ к нескольким таблицам SAP(в части НСИ)
из внешних Oracle систем (при этом сам SAP лежит в Oracle)

Вариант предлагаемый консальтантами не очень удобный
* необходимо руками выгружать SAP-таблицы из se16n в текстовые файлы и потом заливать их в базу через sql-loader.

администраторы посмтрели таблички в базе SAP-а
и оказалось, что их структура совпадает с видимыми через se16 и ничего не зашифровано :)

насколько законно (или правильно) сделать мат.вьюшки на внешнем oracle сервере и периодически их рефрешить получая у себя копию SAP-овских таблиц?

делать "репликацию" через SAP PI по-моему не очень эффективно

может есть другие способы?

--
~PPA() {} //
...
Рейтинг: 0 / 0
SAP - реплика базовых таблиц (oracle)
    #36638839
soulsurfer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну раз денег нет делать по-нормальному, то можно и так.
Тоже один раз выкручивались таким же образом, когда нужно было из табличек, относящихся к SAP Portal, данные забирать.

А если по-правильному делать, то либо XI/PI либо через SAP BO Data Services.
...
Рейтинг: 0 / 0
SAP - реплика базовых таблиц (oracle)
    #36638999
СергейТТТ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PPA,

а почему обязательно ручками выгружать ? в фоне что-то выгружать нельзя ?

если нет шины интеграции, то можно данные выгружать через open hub в ту же базу Оракл, а оттуда реплицировать куда-то дальше.
...
Рейтинг: 0 / 0
SAP - реплика базовых таблиц (oracle)
    #36639165
Фотография PPA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
СергейТТТ,

Шина интеграции (SAP PI) у нас есть
но там так неудобно делать интерфейсы :(

В фоне выгружать пока не умеем. можно урлики или ключевые слова?
про open hub - вообще не слышал (может его у нас нет)
а он тоже трафик считает как PI и за него нужно платить?
...
Рейтинг: 0 / 0
SAP - реплика базовых таблиц (oracle)
    #36639239
Фотография PPA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
soulsurfer,

спасибо.
про SAP BO Data Services пока ничего не знаю.
почитаю...

но в матвьюшке ничего незаконного нет? (мне базис сказал, что в SAP базу вообще ходить нельзя - саперы переодически мониторят ее и если узнают - накажут...очень похоже на развод :)
матвьюшка по линку это простой коннект на чтение и никаких блокировок.
...
Рейтинг: 0 / 0
SAP - реплика базовых таблиц (oracle)
    #36639391
СергейТТТ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PPA,

open hub только для BW вроде..
а SAP BO Data Services тоже платно.

Файл в фоновом режиме - в смысле регулярно выгружать его на сервер (abap open dataset ..и проч.) и потом оттуда забирать. Только это чуть более удобно, чем ручками.

Доступ напрямую на уровне базы - тут базис скорее прав;) но если только на чтение и грамотно ограничить права, то вполне реально.

В вашем случае, имхо, через PI надо добивать. Если делать что-то свое, то со временем этими интерфейсами все сложней будет управлять, потребуются новые выгрузки, сложность всего этого будет увеличиваться (доработки, поддержка, ошибки, никто одного человека не знает как работает..).

с PI можно еще получить выгоду в том, что там можно выгружать/вызывать объекты более высокого уровня (bapi). Но разобраться во всем этом, конечно, нужно вначале.
...
Рейтинг: 0 / 0
SAP - реплика базовых таблиц (oracle)
    #36640400
hithere
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно же сделать фоновое задание, которое будет из САПа коннектиться в другую БД и переливать туда данные.
...
Рейтинг: 0 / 0
SAP - реплика базовых таблиц (oracle)
    #36640455
Фотография PPA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hithereМожно же сделать фоновое задание, которое будет из САПа коннектиться в другую БД и переливать туда данные.

у вас есть пример такого решения на абапе?
наши консультатнты утверждают, что во внешний оракл писать нельзя - юзайте выгрузку в эксель или рисуйте интерфейс в SAP PI с кнопочкой - "передать справочник наружу"

еще попутно вопрос - правда, что в сапе нельзя перехватить событие изменения таблицы(нет триггеров) и для обеспечения реплики справочников во внешней системе прийдется переодически переливать все данные?
...
Рейтинг: 0 / 0
SAP - реплика базовых таблиц (oracle)
    #36640498
hithere
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну вот как-то так (пример украл на SDN):

"First define connection to your Oracle database using transaction DBCO the you can use in your ABAP program something like this:

DATA: CONNECTION LIKE DBCON-CON_NAME VALUE 'TEST_DW'.

EXEC SQL.
CONNECT TO :CONNECTION
ENDEXEC.

IF SY-SUBRC = 0.
EXEC SQL.
SET CONNECTION :CONNECTION
ENDEXEC.

EXEC SQL.
INSERT INTO ORA_TAB(FIELD1, FIELD2)
VALUES (:VALUE1, :VALUE2)
ENDEXEC.

EXEC SQL.
SET CONNECTION DEFAULT
ENDEXEC.

EXEC SQL.
DISCONNECT :CONNECTION
ENDEXE
ENDIF.

where ORA_TAB s Oracle table name, FIELD1, FIELD2 are table fields, VALUE1, VALUE2 are ABAP variables..."

Сам когда-то тянул данные из MS SQL через Native SQL, ни с какими особыми проблемами не столкнулся.
...
Рейтинг: 0 / 0
SAP - реплика базовых таблиц (oracle)
    #36643857
ImpCons
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PPAhithereМожно же сделать фоновое задание, которое будет из САПа коннектиться в другую БД и переливать туда данные.

у вас есть пример такого решения на абапе?
наши консультатнты утверждают, что во внешний оракл писать нельзя - юзайте выгрузку в эксель или рисуйте интерфейс в SAP PI с кнопочкой - "передать справочник наружу"

еще попутно вопрос - правда, что в сапе нельзя перехватить событие изменения таблицы(нет триггеров) и для обеспечения реплики справочников во внешней системе прийдется переодически переливать все данные?
Насчет первого: Зачем обязательно на ABAP-е, таблицы SAP в Oracle (схема SAPSR3) созданы как обычные таблицы - можете обычным PL SQL- ем читать и писать в другую базу без проблем. Создайте хранимки, поставьте их на расписание в Oracle и все. По полномочиям все правильно нужно делать все Oracl-вым пользователем имеющим только права на чтение.
Если полноценную репликацию (с отслеживание изменений, а не полным сравнением и заливкой разницы) хотите организовывать, то тогда нужно конечно искать за что зацепиться - у меня идей на этот счет нет.

Насчет второго: Вся логика по изменению таблиц в SAP-е реализована на сервере приложения, СУБД используется только для хранения данных, так что на тригеррах БД ничего не отписано. В других многоплатформенных ERP видимо тот же подход, по крайней мере в Oracle JD Edwards EO это тоже так.
Вот в Oracle E-Business Suite много из логики на БД Oracle реализовано, но она и одноплатформенная (только на СУБД Oracle можно ставить)

Насчет идеи с материализованной вьюхой не понял - создать с с SAP-овских таблиц репликационные материализованные вьюхи хотите или просто формировать их PL SQL кодом? Пересоздать SAP-ские таблицы для организации стандартной Oracle репликации на основе материализованных вьюх IMHO не получится, потому как таблицы создаются при инсталяции и если создавать новую таблицу в SAP-е, то ее нужно из SAP-а создавать а SAP уже создаст в СУБД таблицу. Тем более на SAP-вские таблицы в метаданных на сервере приложения уже много что подвешано - проверки, умолчания и т.п.
...
Рейтинг: 0 / 0
SAP - реплика базовых таблиц (oracle)
    #36644216
Proforg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PPAу вас есть пример такого решения на абапе?
наши консультатнты утверждают, что во внешний оракл писать нельзя
Держите.
Но лично мне эта штука не понравилась именно своей низкоуровневостью.

авторрисуйте интерфейс в SAP PI с кнопочкой - "передать справочник наружу"
Сугубо имхо - я бы при наличии PI всё на вебсервисах делал.

автореще попутно вопрос - правда, что в сапе нельзя перехватить событие изменения таблицы(нет триггеров) и для обеспечения реплики справочников во внешней системе придется периодически переливать все данные?

Бред полный. Правда слегка поабапить придется. Представил себе сапу, которая каждый раз переливает мульен кредиторов. Ужосс.
...
Рейтинг: 0 / 0
SAP - реплика базовых таблиц (oracle)
    #36650035
Фотография PPA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ImpConsНасчет идеи с материализованной вьюхой не понял - создать с с SAP-овских таблиц репликационные материализованные вьюхи хотите или просто формировать их PL SQL кодом? Пересоздать SAP-ские таблицы для организации стандартной Oracle репликации на основе материализованных вьюх IMHO не получится, потому как таблицы создаются при инсталяции и если создавать новую таблицу в SAP-е, то ее нужно из SAP-а создавать а SAP уже создаст в СУБД таблицу. Тем более на SAP-вские таблицы в метаданных на сервере приложения уже много что подвешано - проверки, умолчания и т.п.

не совсем понял почему не получится...
Вариант с полным рефрешем MV вообще не требует создание объектов на SAP-базе (достаточно грант на селект DBlink пользователю)
идея - на внешнем оракл-сервере создается MV которая по дб-линку смотрит на таблицу SAP в его оracle-базе и периодически обновляется через
dbms_mview.refresh(list => 'xxxx', method => 'C');

Можно сделать и FAST REFRESH (с перекачкой только измененных данных)
но в этом случае на стороне SAP-Oracle придется создавать materialized view log
а это уже объект базы данных который, вероятно, нельзя создавать на продуктиве по лицензионным причинам
...
Рейтинг: 0 / 0
SAP - реплика базовых таблиц (oracle)
    #36656737
ImpCons
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PPAImpConsНасчет идеи с материализованной вьюхой не понял - создать с с SAP-овских таблиц репликационные материализованные вьюхи хотите или просто формировать их PL SQL кодом? Пересоздать SAP-ские таблицы для организации стандартной Oracle репликации на основе материализованных вьюх IMHO не получится, потому как таблицы создаются при инсталяции и если создавать новую таблицу в SAP-е, то ее нужно из SAP-а создавать а SAP уже создаст в СУБД таблицу. Тем более на SAP-вские таблицы в метаданных на сервере приложения уже много что подвешано - проверки, умолчания и т.п.

не совсем понял почему не получится...

...

Можно сделать и FAST REFRESH (с перекачкой только измененных данных)
но в этом случае на стороне SAP-Oracle придется создавать materialized view log
а это уже объект базы данных который, вероятно, нельзя создавать на продуктиве по лицензионным причинам

Я вам и писал про перекачку только изменений. Но я знал только про вариант с созданием стандартной Oracle репликации основанной на материализованных вьюхах (снапшот репликации, если в названии что то не путаю).
Насчет FAST REFRESH с зайдествоанием materialized view log, не знаю технологии, насчет лицензии наверно да, т.к. лицензии на СУБД под SAP насколько слышал распространяются только на цели SAP, если используете функции не касающиеся SAP-а, то можете уже за рамки лицензионого соглашения выйти.
...
Рейтинг: 0 / 0
SAP - реплика базовых таблиц (oracle)
    #36656742
ImpCons
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хотя счас повспоминал про оракловую репликацию (на той версии которой я еще работал - 8i) на снапшотовской репликации (с помощью материализованных вьюх), можно было только каждый раз полностью все перезакачивать, а перекачивать только изменения можно было только advanced репликацией (сохранение всех транзакций на источнике и накат на приемнике).
Вот и подумал что использование функции подобно упомянутой Вами (FAST REFRESH для материализованных вьюх) используется в снапшот репликации новых версий и Вы имеете в виду уже ее.

Насчет перекачки всех данных каждый раз, Вам уже написал Proforg, - при больших объемах данных это явно не самый оптимальный способ. Если данных ожидается много, то можно или даже нужно подумать о более продуманом варианте XI/PI или о IDOC и т.п.
...
Рейтинг: 0 / 0
SAP - реплика базовых таблиц (oracle)
    #36758100
asdfghjkl;
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ImpConsНасчет перекачки всех данных каждый раз, Вам уже написал Proforg, - при больших объемах данных это явно не самый оптимальный способ. Если данных ожидается много, то можно или даже нужно подумать о более продуманом варианте XI/PI или о IDOC и т.п.
+1, всё постоянно гонять - накладно. Хотя конечно, организовать поток изменений - потребует немного усилий и посложнее в логике. Решили задачу-то?
...
Рейтинг: 0 / 0
SAP - реплика базовых таблиц (oracle)
    #36758277
tadmin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PPAмне базис сказал, что в SAP базу вообще ходить нельзя - саперы переодически мониторят ее и если узнают - накажут...очень похоже на развод :)
Неужели это правда?
Про мониторинг я не верю, смешно. Скорее всего писать напрямую запрещается.
А что в лицензионном соглашении написано?
...
Рейтинг: 0 / 0
SAP - реплика базовых таблиц (oracle)
    #36758299
Реалист
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tadminPPAмне базис сказал, что в SAP базу вообще ходить нельзя - саперы переодически мониторят ее и если узнают - накажут...очень похоже на развод :)
Неужели это правда?
Про мониторинг я не верю, смешно. Скорее всего писать напрямую запрещается.
А что в лицензионном соглашении написано?
А причем тут лицензионное соглашение? Разве Вам мало здравого смысла?
Тем более, что SAP реализует транзакции средствами APP сервера, а не с помощью БД.
...
Рейтинг: 0 / 0
SAP - реплика базовых таблиц (oracle)
    #36758353
tadmin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Реалист
А причем тут лицензионное соглашение? Разве Вам мало здравого смысла?
Тем более, что SAP реализует транзакции средствами APP сервера, а не с помощью БД.

Моему здравому смыслу не противоречит
Код: plaintext
select * from table
И причем тут транзакции?
Кто бы не открыл транзакцию, Oracle не мешает другим приложениям. Читающая транзакция никого не лочит.
...
Рейтинг: 0 / 0
SAP - реплика базовых таблиц (oracle)
    #36769371
ImpCons
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
РеалистtadminPPAмне базис сказал, что в SAP базу вообще ходить нельзя - саперы переодически мониторят ее и если узнают - накажут...очень похоже на развод :)
Неужели это правда?
Про мониторинг я не верю, смешно. Скорее всего писать напрямую запрещается.
А что в лицензионном соглашении написано?
А причем тут лицензионное соглашение? Разве Вам мало здравого смысла?
Тем более, что SAP реализует транзакции средствами APP сервера, а не с помощью БД.
Читать из СУБД на которой базируется SAP разрешено по любому - базис во всех ERP системах будет противится созданию пользователей работающих напрямую с БД, но на создание пользователя(лей) СУБД только читающих стандартные таблицы базис почти всегда можно убедить, если это в самом деле необходимо в связи с каким то интеграционными или аналитическими аспектами.
Насчет записи в таблицы СУБД на которых базированы стандартные таблицы SAP, вот тут я бы опасался не из-за каких то нарушений лицензионых соглашений, а из-за возможности нарушить ссылочную целостность данных (integrity).
В SAP-е есть довольно удобный инструмент загруки пакетных данных LSMW - вы можете записать последовательность проводимых действий при записи одного элемента при работе в интерактивном режиме (в программе SAP-а - транзакции), затем подготовить, например в Excel, кучу записей и с помощью записанного LSMW загрузить подготовелнные данные не боясь нарушения ссылочной целостности, т.к. SAP будет загружать эти данные как если бы Вы забивали их в интерактивном режиме вручную - т.е. со всей бизнес логикой заложенной для загружаемых данных в системе. Я бы лучше использовал его чем пытался грузить данные напрямую.
Писать напрямую не запрещается, SAP контролирует только изменение объектов (таблиц, программ и т.п.) когда пытаешься менять стандартный объект ситстема просит ключ на изменение объекта, который ты можешь получить сгенерив его на SAP сайте поддержки. Понятное дело что SAP будет знать что данный стандартный объект Вы может изменили и при вопросах связанных с проведением поддержки будет это учитывать. Насчет накажут - не понятно как, а раз не понятно, то и не понятен сам вопрос :).
...
Рейтинг: 0 / 0
SAP - реплика базовых таблиц (oracle)
    #36915662
Pi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Читать напрямую из таблиц Oracle - можно, если СУБД куплена у Oracle. Если лицензия Oracle куплена у САПа - запросите САП.
...
Рейтинг: 0 / 0
SAP - реплика базовых таблиц (oracle)
    #36915664
Pi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И еще небольшой совет - вопросы про Oracle, Oracle таблицы (а уж тем более про репликации) задавайте техническим консультантам САП.
...
Рейтинг: 0 / 0
SAP - реплика базовых таблиц (oracle)
    #36915670
Pi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Исправляюсь. Ситуация более сложная. Цитирую из SDN:

What scenarios need to be licensed via the Open Hub license?

Simply speaking, the Open Hub license is an alternative to the user-specific license. If you extract data from your SAP NetWeaver BI to a non-SAP system, you have to license this scenario - no matter which tool use for the extraction, e.g. Open Hub Destination, listcube, any BI API, Analysis Process Designer or Excel download. Note that a licensed BI user may download to Excel for her/his own analysis purposes without any further license costs. Distributing Excel workbooks to non-SAP BI users for personal reporting purposes requires Information Broadcasting license, not Open Hub license.


(Open Hub - это фирменный инструмент для извлечения данных из SAP BW "наружу")

Получается, что за использование данных SAP нужна та или иная лицензия SAP:
или user-specific license,
или Open Hub license,
или Information Broadcasting license (когда сформированые BW отчеты рассылаются не лицензированными в системе юзерам.
...
Рейтинг: 0 / 0
SAP - реплика базовых таблиц (oracle)
    #36923822
SergINI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А Oracle Gateways не подойдёт?
...
Рейтинг: 0 / 0
23 сообщений из 23, страница 1 из 1
Форумы / ERP и учетные системы [игнор отключен] [закрыт для гостей] / SAP - реплика базовых таблиц (oracle)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]