Bex query that returns variable number of columns based upon variable value
I have a request to create a query that, at excution time, has a variable for 'nbr of months', and based on the value entered by the user, returns data for only the specified number of months. Value that can be entered can vary from 1 to 12. A simple example is, if the user enters 1, then they would only want to see one column, and if they entered 6, then they'd like to see 6 columns in the workbook. All suggestions on how to implement this dynamic columns on a workbook will be appreciated.
Thanks.
BN
Hi,
Do this->
1) first create a New Structure in Rows-> Place your New Selection and drag your KF.
2) Nw Create a New Formual under this structure. Now Create a Formula variable ( "ZFVXXX")with user-entry and ready for input and dimension as NUmber. and place in formula area. And hide this formula.
3)Now Create a New Customer-Exit variable on 0CALMONTH name as "ZCECMON" with following atrribute->Mandatory, Range(Interval) and remove check for Ready for entry.
4)Drag your 0CALMONTH in Rows above That Structure and restrict it to "ZCECMON".
5) Now go to CMOD and write this code.
INCLUDE ZXRSRU01 *
DATA: L_S_RANGE TYPE RSR_S_RANGESID. 'In global area
DATA: LOC_VAR_RANGE LIKE RRRANGEEXIT. 'In global area
DATA: zmonth like /bi0/0calmonth.
CASE I_VNAM.
WHEN 'ZCECMON'.
IF i_step = 2.
LOOP AT I_T_VAR_RANGE INTO LOC_VAR_RANGE
WHERE VNAM = 'ZFVXXX'.
zyear = sy-datum(4).
zmonth = sy-datum+4(2).
l_s_range-low = zmonth.
zmonth = zmonth + loc_var_range-low.
l_s_range-HIgh = zmonth.
l_s_range-sign = 'I'.
l_s_range-opt = 'BT'.
APPEND l_s_range TO e_t_range.
ENDIF.
ENDCASE.
6) activate the porject and go to rsrt and run there first.
Regards,
San!
Message was edited by: San!
Similar Messages
-
SSIS OLE DB Source in Data Flow Task calling SP that returns variable number of column as output
We have one old Stored Proc that I need to reuse. But that stored proc returns different number of Columns as output depending on input Parameter. Say, if I pass 1 to 9 it will return 'ID', if i pass 10 to 33 it will return 'ID', 'Name', if I pass
34 to 51 it will return 'ID', 'Name', 'DefaultPosition'
In this way.
Now I wanted to use this in OLE DB Source in SSIS DFT.
During that time immediately it is picking all possible columns in Available External Columns. Even if I manually select/delete those, package is failing at Runtime, because in Runtime the parameter this will get, it should always return one & only one
column which is ID. [Because in this package I will only have to pass parameters like, 1 or 2 or 5 or 7 or 9.
Which in every case should return only ID from stored proc.
Any Idea how I can get this please?
Regards, Avik M.Has any one tried something like it? Could you please provide me a sample if you have done it.
I tried these options but always got errors as
[usp_return [64]] Error: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80040E55.An OLE DB record is available. Source:
"Microsoft SQL Server Native Client 10.0" Hresult: 0x80040E55 Description: "Column does not exist.".
[SSIS.Pipeline] Error: SSIS Error Code DTS_E_PRIMEOUTPUTFAILED. The PrimeOutput method on component "usp_return" (64) returned error code 0xC0202009. The component returned a failure code when the pipeline engine called PrimeOutput(). The meaning
of the failure code is defined by the component, but the error is fatal and the pipeline stopped executing. There may be error messages posted before this with more information about the failure.
~ Thank you so much
Regards, Avik M. -
Procedure with variable number of columns
Hi, I have a procedure that looks like this:
PROCEDURE PROC(p_cursor OUT sys_refcursor)
And in the procedure, I build up QUERY dynamically and the number of columns varies at runtime.
At the end I do
OPEN p_cursor for QUERY
Then to call this, I'm doing
call PROC(?)
My question is, how would I go about running the query from this procedure, then adding rows or modifying the existing results, then returning the modified data?
What I want to do is add a new row based on some condition, so I still need to return a variable number of columns, but I need to modify the results before I return them.
Is there any way of doing this? I need to do some calculations on the columns (the variable columns), create a new row, insert into result set, and return this new result set.A sys_refcursor is ideally suited to pass back to a front end gui like .NET or Java which can then use that cursor to retrieve the data.
In PL/SQL there is no point in using a sys_refcursor unless you know, at design/compile time what the returned columns are going to be.
If the resultant columns are dynamic, then you have no choice but to use the DBMS_SQL package, where you can parse and execute any SQL statement you like and then use the DBMS_SQL package to describe what the resultant columns are and how many there are. From that you can reference the columns by position rather than by name.
e.g.
CREATE OR REPLACE PROCEDURE run_query(p_sql IN VARCHAR2) IS
v_v_val VARCHAR2(4000);
v_n_val NUMBER;
v_d_val DATE;
v_ret NUMBER;
c NUMBER;
d NUMBER;
col_cnt INTEGER;
f BOOLEAN;
rec_tab DBMS_SQL.DESC_TAB;
col_num NUMBER;
v_rowcount NUMBER := 0;
BEGIN
-- create a cursor
c := DBMS_SQL.OPEN_CURSOR;
-- parse the SQL statement into the cursor
DBMS_SQL.PARSE(c, p_sql, DBMS_SQL.NATIVE);
-- execute the cursor
d := DBMS_SQL.EXECUTE(c);
-- Describe the columns returned by the SQL statement
DBMS_SQL.DESCRIBE_COLUMNS(c, col_cnt, rec_tab);
-- Bind local return variables to the various columns based on their types
FOR j in 1..col_cnt
LOOP
CASE rec_tab(j).col_type
WHEN 1 THEN DBMS_SQL.DEFINE_COLUMN(c,j,v_v_val,2000); -- Varchar2
WHEN 2 THEN DBMS_SQL.DEFINE_COLUMN(c,j,v_n_val); -- Number
WHEN 12 THEN DBMS_SQL.DEFINE_COLUMN(c,j,v_d_val); -- Date
ELSE
DBMS_SQL.DEFINE_COLUMN(c,j,v_v_val,2000); -- Any other type return as varchar2
END CASE;
END LOOP;
-- Display what columns are being returned...
DBMS_OUTPUT.PUT_LINE('-- Columns --');
FOR j in 1..col_cnt
LOOP
DBMS_OUTPUT.PUT_LINE(rec_tab(j).col_name||' - '||case rec_tab(j).col_type when 1 then 'VARCHAR2'
when 2 then 'NUMBER'
when 12 then 'DATE'
else 'Other' end);
END LOOP;
DBMS_OUTPUT.PUT_LINE('-------------');
-- This part outputs the DATA
LOOP
-- Fetch a row of data through the cursor
v_ret := DBMS_SQL.FETCH_ROWS(c);
-- Exit when no more rows
EXIT WHEN v_ret = 0;
v_rowcount := v_rowcount + 1;
DBMS_OUTPUT.PUT_LINE('Row: '||v_rowcount);
DBMS_OUTPUT.PUT_LINE('--------------');
-- Fetch the value of each column from the row
FOR j in 1..col_cnt
LOOP
-- Fetch each column into the correct data type based on the description of the column
CASE rec_tab(j).col_type
WHEN 1 THEN DBMS_SQL.COLUMN_VALUE(c,j,v_v_val);
DBMS_OUTPUT.PUT_LINE(rec_tab(j).col_name||' : '||v_v_val);
WHEN 2 THEN DBMS_SQL.COLUMN_VALUE(c,j,v_n_val);
DBMS_OUTPUT.PUT_LINE(rec_tab(j).col_name||' : '||v_n_val);
WHEN 12 THEN DBMS_SQL.COLUMN_VALUE(c,j,v_d_val);
DBMS_OUTPUT.PUT_LINE(rec_tab(j).col_name||' : '||to_char(v_d_val,'DD/MM/YYYY HH24:MI:SS'));
ELSE
DBMS_SQL.COLUMN_VALUE(c,j,v_v_val);
DBMS_OUTPUT.PUT_LINE(rec_tab(j).col_name||' : '||v_v_val);
END CASE;
END LOOP;
DBMS_OUTPUT.PUT_LINE('--------------');
END LOOP;
-- Close the cursor now we have finished with it
DBMS_SQL.CLOSE_CURSOR(c);
END;
SQL> exec run_query('select empno, ename, deptno, sal from emp where deptno = 10');
-- Columns --
EMPNO - NUMBER
ENAME - VARCHAR2
DEPTNO - NUMBER
SAL - NUMBER
Row: 1
EMPNO : 7782
ENAME : CLARK
DEPTNO : 10
SAL : 2450
Row: 2
EMPNO : 7839
ENAME : KING
DEPTNO : 10
SAL : 5000
Row: 3
EMPNO : 7934
ENAME : MILLER
DEPTNO : 10
SAL : 1300
PL/SQL procedure successfully completed.
SQL> exec run_query('select * from emp where deptno = 10');
-- Columns --
EMPNO - NUMBER
ENAME - VARCHAR2
JOB - VARCHAR2
MGR - NUMBER
HIREDATE - DATE
SAL - NUMBER
COMM - NUMBER
DEPTNO - NUMBER
Row: 1
EMPNO : 7782
ENAME : CLARK
JOB : MANAGER
MGR : 7839
HIREDATE : 09/06/1981 00:00:00
SAL : 2450
COMM :
DEPTNO : 10
Row: 2
EMPNO : 7839
ENAME : KING
JOB : PRESIDENT
MGR :
HIREDATE : 17/11/1981 00:00:00
SAL : 5000
COMM :
DEPTNO : 10
Row: 3
EMPNO : 7934
ENAME : MILLER
JOB : CLERK
MGR : 7782
HIREDATE : 23/01/1982 00:00:00
SAL : 1300
COMM :
DEPTNO : 10
PL/SQL procedure successfully completed.
SQL> exec run_query('select * from dept where deptno = 10');
-- Columns --
DEPTNO - NUMBER
DNAME - VARCHAR2
LOC - VARCHAR2
Row: 1
DEPTNO : 10
DNAME : ACCOUNTING
LOC : NEW YORK
PL/SQL procedure successfully completed.
SQL>In 11g, you can create a sys_refcursor and then the DBMS_SQL package allows you to convert that refcursor into a DBMS_SQL cursor so that you can get the description of the results and do the same. This isn't available prior to 11g though.
However_ before any of that, you should really ask yourself if there is a real need to dynamically be creating queries. There is rarely any real need to do that and if you're finding it's common in your application then this is often a sign of poor design or poorly defined business requirements (leaving the technical side to try and be "flexible" and hence leading to unmaintainable code etc.). -
Display table with variable number of columns
Hello Forum,
I'm trying to build an export view of User Management Engine data. I would like to output a table with one row for every user with yes / no fields indicating membership in each of the available groups. Because the number of available groups might change in the future, I can't hardcode the column names for the groups.
That is, I call a webservice to compute a table, and I get back a table with a variable number of columns.
When I try to insert the webservice into my VC model, it complains:
"Port 'Response' was omitted because it includes nested tables, which are not presently supported by Visual Composer"
You might be interested to know that the business method of my webservice (for testing purposes) looks as follows:
public String[][] getVariableSizeArray() {
String[][] ret = new String[10][];
for (int i = 1; i <= 10; i++) {
ret<i> = new String[10];
for (int j = 1; j <= 10; j++) {
ret<i>[j] = Integer.toString(i * j);
return ret;
Any help is appreciated, and points will be awarded for helpful answers,
Sincerely,
Florian
Message was edited by:
Florian SomethingHi Florian,
dynamic data structures are not supported. You can do this with a workaround. If you know the maximum count of your columns then you can add them to the table and hide/unhide them dynamicly via a formula in the hidden condition. Of course in your WS you als need a fix structure of your columns.
This is not the best solution, I know so far, but it works. This is just one limit of VC.
Best Regards,
Marcel -
How to generate report with dynamic variable number of columns?
How to generate report with dynamic variable number of columns?
I need to generate a report with varying column names (state names) as follows:
SELECT AK, AL, AR,... FROM States ;
I get these column names from the result of another query.
In order to clarify my question, Please consider following table:
CREATE TABLE TIME_PERIODS (
PERIOD VARCHAR2 (50) PRIMARY KEY
CREATE TABLE STATE_INCOME (
NAME VARCHAR2 (2),
PERIOD VARCHAR2 (50) REFERENCES TIME_PERIODS (PERIOD) ,
INCOME NUMBER (12, 2)
I like to generate a report as follows:
AK CA DE FL ...
PERIOD1 1222.23 2423.20 232.33 345.21
PERIOD2
PERIOD3
Total 433242.23 56744.34 8872.21 2324.23 ...
The TIME_PERIODS.Period and State.Name could change dynamically.
So I can't specify the state name in Select query like
SELECT AK, AL, AR,... FROM
What is the best way to generate this report?SQL> -- test tables and test data:
SQL> CREATE TABLE states
2 (state VARCHAR2 (2))
3 /
Table created.
SQL> INSERT INTO states
2 VALUES ('AK')
3 /
1 row created.
SQL> INSERT INTO states
2 VALUES ('AL')
3 /
1 row created.
SQL> INSERT INTO states
2 VALUES ('AR')
3 /
1 row created.
SQL> INSERT INTO states
2 VALUES ('CA')
3 /
1 row created.
SQL> INSERT INTO states
2 VALUES ('DE')
3 /
1 row created.
SQL> INSERT INTO states
2 VALUES ('FL')
3 /
1 row created.
SQL> CREATE TABLE TIME_PERIODS
2 (PERIOD VARCHAR2 (50) PRIMARY KEY)
3 /
Table created.
SQL> INSERT INTO time_periods
2 VALUES ('PERIOD1')
3 /
1 row created.
SQL> INSERT INTO time_periods
2 VALUES ('PERIOD2')
3 /
1 row created.
SQL> INSERT INTO time_periods
2 VALUES ('PERIOD3')
3 /
1 row created.
SQL> INSERT INTO time_periods
2 VALUES ('PERIOD4')
3 /
1 row created.
SQL> CREATE TABLE STATE_INCOME
2 (NAME VARCHAR2 (2),
3 PERIOD VARCHAR2 (50) REFERENCES TIME_PERIODS (PERIOD),
4 INCOME NUMBER (12, 2))
5 /
Table created.
SQL> INSERT INTO state_income
2 VALUES ('AK', 'PERIOD1', 1222.23)
3 /
1 row created.
SQL> INSERT INTO state_income
2 VALUES ('CA', 'PERIOD1', 2423.20)
3 /
1 row created.
SQL> INSERT INTO state_income
2 VALUES ('DE', 'PERIOD1', 232.33)
3 /
1 row created.
SQL> INSERT INTO state_income
2 VALUES ('FL', 'PERIOD1', 345.21)
3 /
1 row created.
SQL> -- the basic query:
SQL> SELECT SUBSTR (time_periods.period, 1, 10) period,
2 SUM (DECODE (name, 'AK', income)) "AK",
3 SUM (DECODE (name, 'CA', income)) "CA",
4 SUM (DECODE (name, 'DE', income)) "DE",
5 SUM (DECODE (name, 'FL', income)) "FL"
6 FROM state_income, time_periods
7 WHERE time_periods.period = state_income.period (+)
8 AND time_periods.period IN ('PERIOD1','PERIOD2','PERIOD3')
9 GROUP BY ROLLUP (time_periods.period)
10 /
PERIOD AK CA DE FL
PERIOD1 1222.23 2423.2 232.33 345.21
PERIOD2
PERIOD3
1222.23 2423.2 232.33 345.21
SQL> -- package that dynamically executes the query
SQL> -- given variable numbers and values
SQL> -- of states and periods:
SQL> CREATE OR REPLACE PACKAGE package_name
2 AS
3 TYPE cursor_type IS REF CURSOR;
4 PROCEDURE procedure_name
5 (p_periods IN VARCHAR2,
6 p_states IN VARCHAR2,
7 cursor_name IN OUT cursor_type);
8 END package_name;
9 /
Package created.
SQL> CREATE OR REPLACE PACKAGE BODY package_name
2 AS
3 PROCEDURE procedure_name
4 (p_periods IN VARCHAR2,
5 p_states IN VARCHAR2,
6 cursor_name IN OUT cursor_type)
7 IS
8 v_periods VARCHAR2 (1000);
9 v_sql VARCHAR2 (4000);
10 v_states VARCHAR2 (1000) := p_states;
11 BEGIN
12 v_periods := REPLACE (p_periods, ',', ''',''');
13 v_sql := 'SELECT SUBSTR(time_periods.period,1,10) period';
14 WHILE LENGTH (v_states) > 1
15 LOOP
16 v_sql := v_sql
17 || ',SUM(DECODE(name,'''
18 || SUBSTR (v_states,1,2) || ''',income)) "' || SUBSTR (v_states,1,2)
19 || '"';
20 v_states := LTRIM (SUBSTR (v_states, 3), ',');
21 END LOOP;
22 v_sql := v_sql
23 || 'FROM state_income, time_periods
24 WHERE time_periods.period = state_income.period (+)
25 AND time_periods.period IN (''' || v_periods || ''')
26 GROUP BY ROLLUP (time_periods.period)';
27 OPEN cursor_name FOR v_sql;
28 END procedure_name;
29 END package_name;
30 /
Package body created.
SQL> -- sample executions from SQL:
SQL> VARIABLE g_ref REFCURSOR
SQL> EXEC package_name.procedure_name ('PERIOD1,PERIOD2,PERIOD3','AK,CA,DE,FL', :g_ref)
PL/SQL procedure successfully completed.
SQL> PRINT g_ref
PERIOD AK CA DE FL
PERIOD1 1222.23 2423.2 232.33 345.21
PERIOD2
PERIOD3
1222.23 2423.2 232.33 345.21
SQL> EXEC package_name.procedure_name ('PERIOD1,PERIOD2','AK,AL,AR', :g_ref)
PL/SQL procedure successfully completed.
SQL> PRINT g_ref
PERIOD AK AL AR
PERIOD1 1222.23
PERIOD2
1222.23
SQL> -- sample execution from PL/SQL block
SQL> -- using parameters derived from processing
SQL> -- cursors containing results of other queries:
SQL> DECLARE
2 CURSOR c_period
3 IS
4 SELECT period
5 FROM time_periods;
6 v_periods VARCHAR2 (1000);
7 v_delimiter VARCHAR2 (1) := NULL;
8 CURSOR c_states
9 IS
10 SELECT state
11 FROM states;
12 v_states VARCHAR2 (1000);
13 BEGIN
14 FOR r_period IN c_period
15 LOOP
16 v_periods := v_periods || v_delimiter || r_period.period;
17 v_delimiter := ',';
18 END LOOP;
19 v_delimiter := NULL;
20 FOR r_states IN c_states
21 LOOP
22 v_states := v_states || v_delimiter || r_states.state;
23 v_delimiter := ',';
24 END LOOP;
25 package_name.procedure_name (v_periods, v_states, :g_ref);
26 END;
27 /
PL/SQL procedure successfully completed.
SQL> PRINT g_ref
PERIOD AK AL AR CA DE FL
PERIOD1 1222.23 2423.2 232.33 345.21
PERIOD2
PERIOD3
PERIOD4
1222.23 2423.2 232.33 345.21 -
How to access variable number of columns using ref cursor !
Hi,
I am trying to get variable number of columns using ref cursor.
Declare
mySzSql varchar2(2000);
Type dynSqlRC is Ref cursor;
current_cur dynSqlRC;
tbl_rec alt_42_consolidated%Rowtype;
Begin:
/* This works */
mySzSql := 'select *
from
Table1
Where
rowid = ''AAEWNEABXAAAAkxAAA''';
/* i want something like this to work, this is not working, giving missing variable name error */
mySzSql := 'select col1, col2, col3
from
Table1
Where
rowid = ''AAEWNEABXAAAAkxAAA''';
open current_cur for mySzSql;
fetch current_cur into tbl_rec;
close current_cur;
End;
I do have the list of desired columns which I am looking to fetch, so after taking that in the record type, how should i get their values. Is it possible to traverse tbl_rec declared above and if column name matches then I will store the value in the array and finally return this array.
Can somebody please tell me how to do this.
ThanksIt appears that this is a followup to How to loop through columns selected by select clause which is itself a followup to [url="
How to execute dynamic sql"]this earlier thread.
Assuming these are intended to be followup questions, can we please stick to a single thread? That makes it a lot easier to understand the situation and follow the conversation. Starting multiple threads makes it harder to follow the conversation.
Thanks,
Justin
Distributed Database Consulting, Inc.
http://www.ddbcinc.com/askDDBC -
UiXML tables - variable number of columns?
I'm trying to define a <table> in a UIX page which will be generated from a set of parameters. This set of parameters will result in a varying number of columns so I'm looking at providing a DataObjectList which has DataObjects with keys for each of the columns attributes (header text, name of control, value of control etc.). I want to do something similar to <contents data:childData=...> on the <table> contents but this doesn't seem to work. It seems that <table> needs you to know how many columns will be present - is that so or is there some way I can do this?
Cheers
IanIan,
That is correct, the uiMXL <table> element cannot currently support
a variable number of columns (using something akin to the
childData support in other contexts). But there are two approaches
to get what you want.
If you know the range of possible columns, then you can add a <column>
element for each possible column in the <table>'s contents and then
databind the rendered flag of the column element to hide/show the
column as necessary.
However, the real solution to your scenario, where the number of columns
is completely unknown when you're designing the page, is our canonical
example of a time you should write Java code for a portion of your page.
Specifically, you can use the XML <include> element to refer to a
DataProvider that will programatically create a TableBean. This
technique is discussed in the Dynamic Structure for UIX pages
portion of the UIX Developer's Guide. -
Creating a table with a variable number of columns
Hi,
I am working on a form and I want to allow the user to add tables to the form. If I give them a base table (for instance, a table with two rows and columns) is there any way to allow the user to add columns to the table. I can add new instances of rows, but I need the number of columns to be variable as well.
I am working in Livecycle Designer ES2Hi,
check this article.
http://forms.stefcameron.com/2006/10/28/scripting-table-columns/
Hope this helps. -
Updating a table with a query that return multiple values
Hi,
I'm trying to update a table which contain these fields : ItemID, InventoryID, total amounts
with a query that return these values itemId, inventoryid and total amounts for each items
Mind you, not all the rows in the table need to be updated. only a few.
This what i wrote but doesn't work since the query return multiple values so i can't assign it to journalAmounts.
UPDATE [bmssa].[etshortagetemp]
SET JournalAmounts = (SELECT sum(b.BomQty) FROM [bmssa].[Bom] b
JOIN [bmssa].[SalesLine] sl ON sl.ItemBomId = b.BomId
JOIN [bmssa].[SalesTable] st ON st.SalesId = sl.SalesId
WHERE st.SalesType = 0 AND (st.SalesStatus IN (0,1,8,12,13)) AND st.DataAreaId = 'sdi'
GROUP BY b.itemid, b.inventdimid)
Any advise how to do this task?Remember that link to the documentation posted above that explains exactly how to do this. When you read it which part exactly were you having trouble with?
-
I need a query that returns the average amount of characters for a text colum in MS SQL.
I need a query that returns the average amount of characters
for a text colum in MS SQL.
Could someone show me how?Sorted, i need the
DATALENGTH
function -
Problem with a simple function that return a number
Hi,
I'm writing a function that return a number. I receive always an error (invalid number) but I don't understand why.
The function is this:
>
FUNCTION COUNT_OBJECT(workflow_name_p IN NUMBER, object_type_p IN VARCHAR2) RETURN NUMBER
IS
object_inserted NUMBER;
BEGIN
object_inserted := 0;
IF workflow_name_p = 'AIMDailyIngestorWorkflow'
THEN
object_inserted := 1;
else
object_inserted := 100;
END IF;
RETURN object_inserted;
END COUNT_OBJECT;
I have left only an if and an assignment because I do not find the error.
When I execute the function I receive always this error:
ORA-01722: invalid number
01722. 00000 - "invalid number"
*Cause:
*Action:
There are not operation, only assignment I cannot understand.
Could someone help me?
Thanks bye bye.I changed in this way:
FUNCTION COUNT_OBJECT(workflow_name_p IN VARCHAR2, object_type_p IN VARCHAR2) RETURN NUMBER
IS
object_present NUMBER;
object_inserted NUMBER;
table_name_p VARCHAR2(4000);
query_stmt VARCHAR2(4000);
BEGIN
IF workflow_name_p = 'AIMDailyIngestorWorkflow'
THEN
SELECT SUM(B.STOREDOBJS) INTO object_present
FROM DPCTJOBTYPESTATS B
WHERE B.WORKFLOW_NAME = workflow_name_p AND B.OBJTYPE=object_type_p;
SELECT 'AIM.'||B.TABLE_NAME INTO table_name_p
FROM DPCTSWOBJTYPE B
WHERE B.OBJTYPE=object_type_p AND SOFTWARE='AIM';
EXECUTE IMMEDIATE 'SELECT COUNT(*) FROM ' || table_name_p || ';' INTO object_inserted;
object_inserted := object_inserted - object_present;
END IF;
RETURN object_inserted;
END COUNT_OBJECT;and now the error is:
ORA-00911: invalid character
ORA-06512: at "INFRA.WORKFLOW_STATISTICS", line 504
00911. 00000 - "invalid character"
*Cause: identifiers may not start with any ASCII character other than
letters and numbers. $#_ are also allowed after the first
character. Identifiers enclosed by doublequotes may contain
any character other than a doublequote. Alternative quotes
(q'#...#') cannot use spaces, tabs, or carriage returns as
delimiters. For all other contexts, consult the SQL Language
Reference Manual.
but the line 504 is the blank line higlighted with the ***.
Why this error? The code seems correct.
Thanks, bye bye. -
Limit columns based on variable value
Gurus,
My requirement;
User will enter a value "A" in the variable and based on the value i need to limit
the columns in the output. for example in the query designer i have 6 fields in
Rows, in Free Chars i have the field with variable which user will enter. if the value
entered is "A" only 4 fields should appear on the report else if value is "B" only
the other 2 fields should appear.
Is there a way accomplish this...please suggest
Thanks with points in advance...Geni,
Are u using the Excel based Analyzer as your Front End?
If so you can run a small VBA (on event SAPBEXonrefresh) that will hide columns based on the value of the cell that displays the value of the variable that the user is setting.
See code i posted in Re: How do I make cells "0" and not blank for an example.
Is this what you are after?
Hope it helps,
Gili -
Dear Friends,
Greetings to you all!
Below error is not allowing me to view the PLD on all inventory related documents like GRPO/DELIVERY/GOODS RECEIPT/GOODS ISSUE/Inventory transfer and also at invoice level if transaction was posted directly and attached file is for your information.
I couldn't find the (Field: F_060) and Variable '69' even in hidden files.
"Printing Error:Invalid variable number (RPT -6300) (Field: F_060) Variable '69' [Message 200-38]"
Request you to provide me the solution ASAP to clear this issue.
With warm regards
Rajesh Babu K
9959934444Dear Mr.Nagarajan garu,
Thanks for the reply and the problem is not with one specific PLD, even it is not allowing to view SAP given PLD's also.
And it is happening only with the inventory related transactions.
EX- If invoice had any base document then it can be viewable.
If Invoice/GRPO docs were directly posted then printing error is throwing
Thanks & Regards
Rajesh Babu K -
Dispaly or Hide a column based on Prompt Value
Hi All,
How can I Display or Hide a Column based on Prompt Value selected?
On my dashboard I have a Report/Request and a Dashboard Prompt.
Dashboard Prompt has three values, say: *'A', 'B' and 'C'*.
And my report/request has three columns named *'Field1', 'Field2'* and Field3'.
What I am trying to achieve is that whenever user selects prompt values as *'A' or 'B'* all the three fields on my report named *'Field1', 'Field2' and Field3'* should be displayed, however whenever user selects prompt values as *'C'* only fields named *'Field1' and 'Field2'* should be displayed.
Thanks,
DeepakHi Bhavna,
I tried using View Selector, however I am not able to achieve the required functionality with that.
I created a Request with 3 columns in it, then I switched to criteria and added another table to that. The new table automatically got the similar 3 columns used in the first report. Now when I tried to delete one of those columns from the new report, it also got deleted from the first report.
All the views are dependent, changes made to one are reflected in other.
Can't figure it out, where am I going wrong?
Thanks,
Deepak -
Using orcl:query-database to return a number of Columns
I have a BPEL process that is pulling data from some Database tables everything is working fine.
I now need to perform a lookup on the database to pull in some additional information (3 additional attributes) within the stylesheet, where each attribute comes from a separate table.
i.e.
select a.col1, b.col1, c.col1
from tab1 a
,tab2 b
, tab3 c
where a.col2 = b.col2
and .......blah blah blah....
I have used the orcl:database-query successfully to retrieve a single column and a single row and it works great.
However i'd like to run the above query as one statement, rather than 3 separate queries.
I've googled the fucntion for examples where it returns a nodelist or XML snippet, but to no avail.
I've tried it before and couldn't get it to work.
Does anyone have any examples.
Thanks in advance.
StuartI have a BPEL process that is pulling data from some Database tables everything is working fine.
I now need to perform a lookup on the database to pull in some additional information (3 additional attributes) within the stylesheet, where each attribute comes from a separate table.
i.e.
select a.col1, b.col1, c.col1
from tab1 a
,tab2 b
, tab3 c
where a.col2 = b.col2
and .......blah blah blah....
I have used the orcl:database-query successfully to retrieve a single column and a single row and it works great.
However i'd like to run the above query as one statement, rather than 3 separate queries.
I've googled the fucntion for examples where it returns a nodelist or XML snippet, but to no avail.
I've tried it before and couldn't get it to work.
Does anyone have any examples.
Thanks in advance.
Stuart
Maybe you are looking for
-
Need to convert labview files from version 4.0 to 8.6
I have a few labview .iv files that I need to convert to version 8.6. They were created in version 4.0. Can I download an intermediate verison of labview to process the conversion? Or can i order a cd?
-
Org.w3c.dom.Node isleaf?
Hi all is there any way to get if a w3c node isLeaf? I thought that i can see if the first chils ia a text node then i can say that is a leaf but i'm not sure taht is the right way. Thanks!!
-
Satelltie A200 - No power at all
Hi all, after searching for hours, I've finally found a decent site, anyway, to the problem.... I have no power going to my laptop at all. I've bought a new charger and battery but still nothing. I've read that there may be a connection burnt out ins
-
Hello. I have been trying to solve this for quite some time on my own. I've been using iPhoto for years, and get all the upgrades. Working with iPhoto tonight, trying to set up two new Albums, it added my entire iPhoto library into the first new Al
-
Importing into lightroom catalog on a mac
I just moved my lightroom catalog on an external drive to a mac from a pc. I got the entire catalog moved with no issues or problems except for this. When I try to import new photos i get a message saying that the file cannont be read and that the