Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / OLAP и DWH Новый топик    Ответить
 Oracle bi 12 write back  [new]
terna
Member

Откуда:
Сообщений: 76
Помогите, пожалуйста с writeback в obi12
Делаю самый элементарный writeback.
При построении отчета возможностей для записи не появляется (нет кнопок и тп)
Ощущение, что забыла какой-то шаг, но по всем гугло-ссылкам вроде как все шаги сделаны.

Вот что сделала:

1. Импортировала на физ. уровень таблицу. Убрала с нее кэширование
2. Специальный коннекшн пул не делала, у меня уже был отдельный, который использовался для сессионных переменных. Как я понимаю, для райтбэка он подходит. Никаких спец настроек же коннекшн пула не нужно. Исправьте, если не так.
3. Соединила такбличку с физ. таблицой "select 1 from dual" (чтобы на лог. уровне не болталась одиноко)
4. На лог. уровне сделала отдельную бизнес-модель с 2 табличками: 1) для записи, 2)dual. Соединила их.
5. Для обоих столбцов логической таблицы поставила галочки writable
6.Перетащила все на презентационный уровень. Для столбцов в permitions для административной роли поставила read/write, аналогично на презентационную таблицу в permitions для административной роли поставила read/write
7. В manage - identity тоже для административной роли поставила apply для прямого запроса к соответствующей базе.
8. В instanceconfig.xml в конец файла добавила <LightWriteback>true</LightWriteback> . Теперь конец файла выглядит так
<LightWriteback>true</LightWriteback>

</ServerInstance>

</WebConfig>

9.Создала темплейт и положила его сюда: \Oracle_Home\user_projects\domains\bi4\bidata\service_instances\ssi\metadata\content\msgdb\customMessages
вот темплейт
<?xml version="1.0" encoding="UTF-8"?>

-<WebMessageTables xmlns:sawm="com.siebel.analytics.web/message/v1">


-<WebMessageTable lang="en-us" table="Messages" system="WriteBack">


-<WebMessage name="Setcomment">


-<XML>


-<writeBack connectionPool="Canonical_Time#1">

<insert>INSERT INTO TESTWRITEBACK VALUES(@1,'@2')</insert>

<update>UPDATE TESTWRITEBACK SET comments='@2' WHERE ID_COMMENT=@1</update>

</writeBack>

</XML>

</WebMessage>

</WebMessageTable>

</WebMessageTables>

10.Перегрузила BI
11. В настройках привилегий в web writeback разрешен административной роли
12. Создала анализ из этих столбцов, поставила в свойствах столбца "разрешить обратную запись"
13. В результатах анализа все как будто это самый обычный анализ без записи в базу.
14. В свойствах таблицы прописала имя темплэйта (пробовала и webmessage name из темплейта - но до этого еще далеко(, даже если здесь ошибка) - это ничего не изменило.

Подскажите,пожалуйста, что забыла? Ощущение, что он вообще пока не включил/не разрешил обратную запись.
11 янв 17, 18:36    [20095183]     Ответить | Цитировать Сообщить модератору
 Re: Oracle bi 12 write back  [new]
terna
Member

Откуда:
Сообщений: 76
Оказалось, какой-то баг в 12, из-за которого в редакторе (режим правка) кнопки редактирования для райтбека не показываются), показываются только, если анализ запустить (в режиме Открыть).

В пункте 14 действительно нужно прописывать message name из темплейта, в самом темплейте заменила @1 и @2 на @{с928349...} из xml анализа, также поставила скрипт для апдейта и в секцию инсерта вместо скрипта insert.

Теперь ошибка "Ошибка при записи на сервер. Проверьте правильность ввода значений. В случае сохранения неполадки обратитесь к системному администратору"

Пока разобралась, что он точно находит темплейт и мои столбцы @{с928349...}
Подскажите, пожалуйста, что это еще может быть?
16 янв 17, 09:39    [20109077]     Ответить | Цитировать Сообщить модератору
 Re: Oracle bi 12 write back  [new]
terna
Member

Откуда:
Сообщений: 76
Нашла в логе следующую ошибку, но не понимаю, что это значит

[ERROR:1] [] [] [ecid: ] [sik: ssi] [tid: 2d10] [nQSError: 27024] The EXECUTE PHYSICAL statement must specify a physical SQL statement to execute. [[
file: server\Metadata\NQSParser\Src\NQSPParser.cpp; line: 6344

********** Task: 1. Running for (mls): **********
Description: Prepare Logical Query
Repository Name: ssi
Catalog: ИмяКаталога
Tenant:
Tenant ID: ssi
Service Name:
User: weblogic
Session ID: 0x53b20000
Request ID: 0x53b20004
Logical SQL Hash:0xe117670d
Logical SQL:EXECUTE PHYSICAL CONNECTION POOL Canonical_Time#1 UPDATE TESTWRITEBACK SET comments='bjjk' WHERE ID_COMMENT=1


Попробовала запустить UPDATE TESTWRITEBACK SET comments='bjjk' WHERE ID_COMMENT=1 через прямой запрос к базе (в интерфейсе BI) - все получилось - пишет.
Подскажите, пожалуйста, в чем может быть проблема?
16 янв 17, 11:34    [20109630]     Ответить | Цитировать Сообщить модератору
 Re: Oracle bi 12 write back  [new]
Jack Carver
Member

Откуда: obi2ru.blogspot.com
Сообщений: 1688
Попробуйте заменить коннекшн пул. Используйте название без спец символов.
16 янв 17, 11:55    [20109767]     Ответить | Цитировать Сообщить модератору
 Re: Oracle bi 12 write back  [new]
terna
Member

Откуда:
Сообщений: 76
Сергей, спасибо огромное! Все заработало!
16 янв 17, 13:12    [20110105]     Ответить | Цитировать Сообщить модератору
Все форумы / OLAP и DWH Ответить