Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Отчетные системы [игнор отключен] [закрыт для гостей] / BI Publisher. Как подставить условие? / 3 сообщений из 3, страница 1 из 1
24.11.2009, 17:35
    #36329124
l_kator
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
BI Publisher. Как подставить условие?
Eсть БИ паблишер и очень жесткое условие в качестве источника использовать Data Template. На основе входных параметров составляется предложение WHERE . как это составленное предложение скормить основному запросу?
Вот темплейт
Код: 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.
27.
28.
29.
30.
31.
32.
<?xml version="1.0" encoding="UTF-8" ?>
<dataTemplate name="ttt">
	<properties>
		<property name="xml_tag_case" value="upper"/>
	</properties>
	<parameters>
		<parameter name="PAR" dataType="character"/>
	</parameters>
	<lexicals>
	</lexicals>
	<dataQuery>	
		<sqlStatement name="param">
		<![CDATA[
		SELECT ' WHERE 1 = '||:PAR W_PARAM
		FROM DUAL
		]]>
		</sqlStatement>
		<sqlStatement name="main_q">
		<![CDATA[
		SELECT 'ok' RAT
		FROM DUAL
		]]>
		</sqlStatement>
	</dataQuery>
	<dataStructure>
		<group name="param" dataType="varchar2" source="param">
			<element name="W_PARAM" dataType="varchar2" value="W_PARAM"/>
		</group>
		<group name="main_q" dataType="varchar2" source="main_q">
			<element name="RAT" dataType="varchar2" value="RAT"/>
		</group>
	</dataStructure>
</dataTemplate>

Как ко второму запросу приписать WHERE, сгенерированное первым?
...
Рейтинг: 0 / 0
26.11.2009, 10:04
    #36332731
l_kator
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
BI Publisher. Как подставить условие?
Отвечу сама себе, вдруг еще кому поможет.
1.в базе данных создала пакет, который объявила в предложении
Код: plaintext
1.
<dataTemplate name="ttt"  defaultPackage = "GLOGOWNER.REP">
2. в пакете объявила перемнные, одноименные с параметрами отчета и одну переменную WHERE_TXT .
3. создала функцию, которая исходя из параметров клеит предложение WHERE и присваивает его переменной WHERE_TXT .
4. в темплейте в первом селекте вызываю эту функцию
5. в темплейте во втором селекте добавляю &WHERE_TXT
Вуаля, все работает :)
...
Рейтинг: 0 / 0
26.11.2009, 10:23
    #36332786
Jack Carver
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
BI Publisher. Как подставить условие?
ИМХО логичнее вызывать пакетную функцию в beforeReport триггере.
...
Рейтинг: 0 / 0
Форумы / Отчетные системы [игнор отключен] [закрыт для гостей] / BI Publisher. Как подставить условие? / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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