Getting the value of a Local Variable.
How do I make a local variable available
to a method in the same class so that
this local variable can be available
to any class?
public class CheckDetailRowsIterate extends TagSupport
public int doStartTag() throws JspException
Row currentRow = null;
RowsetIterateTag detailIterator = (RowsetIterateTag)TagSupport.findAncestorWithClass(this, RowsetIterateTag.class);
currentRow = detailIterator.getRow();
// How do I return back the currentRow?
public Row getCR(){
]
You don't need a member variable, you can use a parameter to pass a variable.
However in your case, you can just put the code for getting a currentRow into the getCR() method
e.g.
public class CheckDetailRowsIterate extends TagSupport {
public int doStartTag() throws JspException {
Row currentRow = getCR();
// How do I return back the currentRow?
public Row getCR(){
RowsetIterateTag detailIterator = (RowsetIterateTag)TagSupport.findAncestorWithClass(this, RowsetIterateTag.class);
return detailIterator.getRow();
}
Similar Messages
-
Variable type Hierarchy, how to get the value from another similar variable
Hi.
We have created a variable, type hierarchy (using ORGEH hierarchy in HR based on 0ORGUNIT). Let's call this VAR1. We want to fill this with an User Exit, beacuse we want VAR1 to have the value from another variable, VAR2, which is also type hierarchy (and based on the same characteristic).
However, when we program this user exit and use the VAR1 afterwards, it just behaves as if we have a single characteristic value and not a node value. As a result, we just get posts which do have the 'parent itself' as characteristic value, and none of the subnodes... Any hints as to what we can do in our User exit to get the value passed over from VAR2 to VAR1 as a node value? Is there any spesific syntax to be used here that we are missing? ( The VAR1 and VAR2 are both defined as hierarchy variables, we have double checked...).Hi,
are you on BI7.0? There you can create variables type replacement path and get the value out from a different variable without any coding.
regards
Cornelia -
Is there an way to get the value of a local string variable from core dump?
Hi All,
Please help me on this, How to extract the string variable content from the core file.
During core file analysis using dbx, it puts value as CLASS against string local variables.
But I need to know the exact value during the core dump.
I'm able to print other than string variables.
Is this possbile using dbx or is there any other tool can help me on this.
Thanks in advance, please find the code details below:
here is my core details:
(dbx) where -h
current thread: t@74
[1] __lwp_kill(0x0, 0x6, 0x217b8, 0x7f950b94, 0x2, 0x7f0fb944), at 0x7f99fb84
[2] raise(0x6, 0x0, 0x7f0fb958, 0x7f6a5434, 0x1, 0x7f0fb9a4), at 0x7f950b9c
[3] abort(0x7f6bf0f8, 0x4, 0x7f6bf0b8, 0x15360, 0x1, 0x7f6bf0f8), at 0x7f936d10
[4] exregister(0x7f6bf0fc, 0x4, 0x7f6bf0b8, 0x15360, 0x1, 0x7f6a5048), at 0x7f6a504c
[5] exregister(0x7f6bf0f8, 0x7f6a505c, 0x7f6bf0f8, 0x7f6bb080, 0x0, 0x1), at 0x7f6a5060
[6] exregister(0x7f0fbb28, 0x66bd8, 0xe4fd0, 0x7f6bb080, 0x7f6ba780, 0x1), at 0x7f6a4fd8
[7] 0x7f6a5edc(0x7f6bae64, 0x0, 0x66bd8, 0x14cb8, 0x14928, 0x0), at 0x7f6a5edc
=>[8] AreaManager::commitCombine(this = 0xe5234, parsedSetName = CLASS), line 369 in "AreaManager.cc"
[9] TaskDispatcher::combineParsedSet(parsedSetName = CLASS), line 113 in "TaskDispatcher.cc"
[10] CombineExecutor::run(this = 0x1312d8), line 159 in "CombineExecutor.cc"
[11] thread_body(threadObj = 0x1312d8), line 35 in "ThreadUtils.cc"
(dbx)
(dbx) dump
parsedSetName = CLASS
parsedSetCombinedName = CLASS
parserSetBuiltName = CLASS
this = 0xe5234
(dbx)
(dbx) print parsedSetName
dbx: cannot access address 0x7f6690f4
(dbx)
BR//SahooWhen I was running in a higher version, it gives follwing error:
A loadobject was found with an unexpected checksum value.
When using the same core dump binary, the result are different than the locally build binary
This is the error it pointing now:
if ((ptr = (CHAR *) malloc((unsigned int) size)) == NULL)
(dbx) proc -map
Loadobject mappings for current core file:
0x00010000 /usr/omc/1.8.0.0.56/bin/PmLoader
0x7fb80000 /usr/lib/libaio.so.1
0x7fb30000 /usr/lib/libm.so.1
0x7fbfa000 /usr/lib/libdl.so.1
is being filtered by: /usr/lib/ld.so.1
Warning: checksum in file(a5bd) doesn't match image(a5bf)
0x7faf0000 /usr/lib/libelf.so.1
Warning: checksum in file(38a7) doesn't match image(38a9)
0x7fad0000 /usr/lib/libsocket.so.1
0x7fa00000 /usr/lib/libnsl.so.1
0x7f900000 /usr/lib/libc.so.1
is being filtered by: /usr/platform/SUNW,Ultra-80/lib/libc_psr.so.1
Warning: checksum in file(3b8c) doesn't match image(3ec6)
0x7f890000 /usr/informix/lib/esql/libthsql.so
0x7f830000 /usr/informix/lib/libthasf.so
0x7f7b0000 /usr/informix/lib/esql/libthgen.so
0x7f770000 /usr/informix/lib/esql/libthos.so
0x7f700000 /usr/informix/lib/esql/libifgls.so
0x7f9e0000 /usr/informix/lib/esql/libifglx.so
0x7f6d0000 /usr/lib/libthread.so.1
0x7f500000 /usr/lib/libCstd.so.1
Warning: checksum in file(1fc4) doesn't match image(3f67)
0x7f6a0000 /usr/lib/libCrun.so.1
Warning: checksum in file(1a8d) doesn't match image(b1ea)
0x7fba0000 /usr/lib/libw.so.1
is being filtered by: libc.so.1
0x7f4e0000 /usr/lib/libmp.so.2
0x7f4a0000 /usr/lib/cpu/sparcv8plus/libCstd_isa.so.1
Warning: checksum in file(0fc3) doesn't match image(27d6)
0x7f9d0000 /usr/platform/sun4u-us3/lib/libc_psr.so.1
0x7f410000 /usr/lib/nss_files.so.1
0x7fbb0000 /usr/lib/ld.so.1 [LM_ID_LDSO]
Warning: checksum in file(f2f2) doesn't match image(2a40)
dbx ./PmLoader ./core
For information about new features see `help changes'
To remove this message, put `dbxenv suppress_startup_message 7.5' in your .dbxrc
Reading PmLoader
core file header read successfully
Reading ld.so.1
Reading libaio.so.1
Reading libm.so.1
Reading libdl.so.1
Reading libelf.so.1
Reading libsocket.so.1
Reading libnsl.so.1
Reading libc.so.1
Reading libthsql.so
Reading libthasf.so
Reading libthgen.so
Reading libthos.so
Reading libifgls.so
Reading libifglx.so
Reading libthread.so.1
Reading libCstd.so.1
Reading libCrun.so.1
Reading libw.so.1
Reading libmp.so.2
Reading libCstd_isa.so.1
Reading libc_psr.so.1
Reading nss_files.so.1
WARNING!!
A loadobject was found with an unexpected checksum value.
See `help core mismatch' for details, and run `proc -map'
to see what checksum values were expected and found.
dbx: warning: Some symbolic information might be incorrect.
t@1 (l@1) terminated by signal BUS (invalid address alignment)
0x7f947974: t_delete+0x0068: clr [%o1 + 8]
Current function is Malloc
40 if ((ptr = (CHAR *) malloc((unsigned int) size)) == NULL)
(dbx)
(dbx) where -h
current thread: t@1
[1] t_delete(0x17c980, 0x470, 0x1ef778, 0x7f9bc000, 0x0, 0x0), at 0x7f947974
[2] mallocunlocked(0x414, 0x0, 0x0, 0x7f9bc000, 0x0, 0x0), at 0x7f947004
[3] malloc(0x414, 0xebae0, 0x8, 0xffbfc9a8, 0xffbfc9a0, 0x1a3791), at 0x7f946e38
=>[4] Malloc(size = 1044U), line 40 in "Malloc.c"
[5] Drain_Socket(sc = 0x1ab100, fd = 10, block = 0xffbfce44), line 1648 in "ipc_sockio.c"
[6] Sockio_Refresh(instance = 0x1ab100, fd = 10U, readable = 1, writeable = 0, block = 0xffbfce44), line 3465 in "ipc_sockio.c"
[7] do_Refresh(cid = 10U, readable = 1, writeable = 0, block = 0xffbfce44), line 1238 in "ipc_IO.c"
[8] IO_Refresh(block = 0, file_descriptor = -1), line 685 in "ipc_IO.c"
[9] ipc_receive_message(gid = 0xffbfcf88, reply = 0xffbfd080, buffer = 0x11ae08 "", len = 0xffbfcf34, block = 0), line 313 in "ipc_services.c"
[10] IPCProcessor::receiveMessage(this = 0x1172d0, channelID = 2U, pReplyChannelID = 0xffbfd080), line 312 in "IPCProcessor.cc"
[11] IPCProcessor::mainLoop(this = 0x1172d0, pHandler = 0xf9c28), line 203 in "IPCProcessor.cc"
[12] IPCService::mainLoop(pMediator = 0x1172d0, pHandler = 0xf9c28), line 51 in "IPCService.cc"
[13] main(argc = 3, argv = 0xffbfe1f4), line 91 in "PmLoader.cc"
I got another instance of core dump in same m/c
Edited by: chittusun on Nov 5, 2008 5:19 AM -
Can't get the value of publicdelegatesbl in a variable
Hello,
When a mailbox is disabled if the user was as a delegate in another mailbox and that the user didn't remove him from his delegate, he'll see a unknown SID in his delegate. In order to prevent this I would like to run a script that will remove delegatebl
of that the user who would be disabled.
Servers are on Exchange 2007 SP3 RU6. No powershell V2 is installed... only V1. That's my main problem. I have the Quest cmdlet installed. I can only used them.
I wrote a script but my problem right now is only to get the value publicdelegatebl in a variable... I have a blank return...
$QADUser = (Get-QADUser "$User" -IncludedProperties publicdelegates,publicdelegatesbl).publicDelegatesbl
Write-Host $QADUser
Any help please?Thanks it worked... but now when I am trying to remove the publicdelegatesbl I have a constraint violation error. I understand what you've told me about the fact we cannot clean up the message without using outlook. But is there any other solution except
Outlook? I meant even with the EWS it's not possible?
Currently I have to be able to remove the delegate added by outlook and by scritpt...
$resFile="C:\Scripts\leavers.txt"
$allLeavers = Get-Content $resFile
ForEach($leaver in $allLeavers) {
$valeurs = $leaver.split(";")
$aliasTH = $valeurs[0]
$smtpTH = $valeurs[1]
$User = Get-Mailbox | Where-Object { $_.Alias -match $aliasTH -and $_.EmailAddresses.ToStringArray() -match $smtpTH }
$userCN = $User.DistinguishedName
$Error.Clear()
$userPath = "LDAP://$userCN"
$user=[adsi]$userPath
$publicDelegates = $user.properties.publicDelegates
$publicDelegatesbl = $user.properties.publicDelegatesbl
Write-Host "$publicDelegates,$publicDelegatesbl"
$publicDelegatesbl.Remove("$userCN")
$user.CommitChanges() -
Best way to get the values of local variables
What is currently the best way to get the values of local variables. I know it is not currently possible to set watchpoints on local variables, but what are the best workarounds?
You have to use StackFrame methods, eg, visibleVariables and getValues. To get a StackFrame for a thread, that thread has to be suspended, eg, by a BreakpointEvent.
-
Bind Variable in SELECT statement and get the value in PL/SQL block
Hi All,
I would like pass bind variable in SELECT statement and get the value of the column in Dynamic SQL
Please seee below
I want to get the below value
Expected result:
select distinct empno ,pr.dept from emp pr, dept ps where ps.dept like '%IT' and pr.empno =100
100, HR
select distinct ename ,pr.dept from emp pr, dept ps where ps.dept like '%IT' and pr.empno =100
TEST, HR
select distinct loc ,pr.dept from emp pr, dept ps where ps.dept like '%IT' and pr.empno =100
NYC, HR
Using the below block I am getting column names only not the value of the column. I need to pass that value(TEST,NYC..) into l_col_val variable
Please suggest
----- TABLE LIST
CREATE TABLE EMP(
EMPNO NUMBER,
ENAME VARCHAR2(255),
DEPT VARCHAR2(255),
LOC VARCHAR2(255)
INSERT INTO EMP (EMPNO,ENAME,DEPT,LOC) VALUES (100,'TEST','HR','NYC');
INSERT INTO EMP (EMPNO,ENAME,DEPT,LOC) VALUES (200,'TEST1','IT','NYC');
INSERT INTO EMP (EMPNO,ENAME,DEPT,LOC) VALUES (300,'TEST2','MR','NYC');
INSERT INTO EMP (EMPNO,ENAME,DEPT,LOC) VALUES (400,'TEST3','HR','DTR');
INSERT INTO EMP (EMPNO,ENAME,DEPT,LOC) VALUES (500,'TEST4','HR','DAL');
INSERT INTO EMP (EMPNO,ENAME,DEPT,LOC) VALUES (600,'TEST5','IT','ATL');
INSERT INTO EMP (EMPNO,ENAME,DEPT,LOC) VALUES (700,'TEST6','IT','BOS');
INSERT INTO EMP (EMPNO,ENAME,DEPT,LOC) VALUES (800,'TEST7','HR','NYC');
COMMIT;
CREATE TABLE COLUMNAMES(
COLUMNAME VARCHAR2(255)
INSERT INTO COLUMNAMES(COLUMNAME) VALUES ('EMPNO');
INSERT INTO COLUMNAMES(COLUMNAME) VALUES ('ENAME');
INSERT INTO COLUMNAMES(COLUMNAME) VALUES ('DEPT');
INSERT INTO COLUMNAMES(COLUMNAME) VALUES ('LOC');
COMMIT;
CREATE TABLE DEPT(
DEPT VARCHAR2(255),
DNAME VARCHAR2(255)
INSERT INTO DEPT(DEPT,DNAME) VALUES ('IT','INFORMATION TECH');
INSERT INTO DEPT(DEPT,DNAME) VALUES ('HR','HUMAN RESOURCE');
INSERT INTO DEPT(DEPT,DNAME) VALUES ('MR','MARKETING');
INSERT INTO DEPT(DEPT,DNAME) VALUES ('IT','INFORMATION TECH');
COMMIT;
PL/SQL BLOCK
DECLARE
TYPE EMPCurTyp IS REF CURSOR;
v_EMP_cursor EMPCurTyp;
l_col_val EMP.ENAME%type;
l_ENAME_val EMP.ENAME%type;
l_col_ddl varchar2(4000);
l_col_name varchar2(60);
l_tab_name varchar2(60);
l_empno number ;
b_l_col_name VARCHAR2(255);
b_l_empno NUMBER;
begin
for rec00 in (
select EMPNO aa from EMP
loop
l_empno := rec00.aa;
for rec in (select COLUMNAME as column_name from columnames
loop
l_col_name := rec.column_name;
begin
l_col_val :=null;
l_col_ddl := 'select distinct :b_l_col_name ,pr.dept ' ||' from emp pr, dept ps where ps.dept like ''%IT'' '||' and pr.empno =:b_l_empno';
dbms_output.put_line('DDL ...'||l_col_ddl);
OPEN v_EMP_cursor FOR l_col_ddl USING l_col_name, l_empno;
LOOP
l_col_val :=null;
FETCH v_EMP_cursor INTO l_col_val,l_ename_val;
EXIT WHEN v_EMP_cursor%NOTFOUND;
dbms_output.put_line('l_col_name='||l_col_name ||' empno ='||l_empno);
END LOOP;
CLOSE v_EMP_cursor;
END;
END LOOP;
END LOOP;
END;user1758353 wrote:
Thanks Billy, Would you be able to suggest any other faster method to load the data into table. Thanks,
As Mark responded - it all depends on the actual data to load, structure and source/origin. On my busiest database, I am loading on average 30,000 rows every second from data in external files.
However, the data structures are just that - structured. Logical.
Having a data structure with 100's of fields (columns in a SQL table), raise all kinds of questions about how sane that structure is, and what impact it will have on a physical data model implementation.
There is a gross misunderstanding by many when it comes to performance and scalability. The prime factor that determines performance is not how well you code, what tools/language you use, the h/w your c ode runs on, or anything like that. The prime factor that determines perform is the design of the data model - as it determines the complexity/ease to use the data model, and the amount of I/O (the slowest of all db operations) needed to effectively use the data model. -
How to get the value of a variable defined in javascript in JSP
how to get the value of a variable defined in javascript in/through JSP????
In Javascript you can use the DOM to access the input element and set it's value before submitting the form. Then it's value will just be passed.
-
How to get the value of a variable in group footer in the report footer also
I have a placed a formula as below at the group footer and the report footer. The data is grouped on the basis of duedays which is again formula and the value in that is appearing correctly.
Whilereadingrecords;
Global Numbervar CNTONE;
Numbervar P := P+1;
IF P = 1 AND {@DUEDAYS} = 0
THEN CNTONE := {spSUPPLIERSOA;1.INVOICEBAL}
ELSE IF P>1 AND {@DUEDAYS} = 0
THEN CNTONE := CNTONE + {spSUPPLIERSOA;1.INVOICEBAL}
At the group footer I get the value correctly for CNTONE but when I place the formula in Report footer I get the value for CNTONE as 0.
Please do let me know how I could get the same value in the report footer also.
Regards
Sreejith JHi Abhilash;
When I give the statement whileprintingrecords then my above formula sums up only the first record and the last record of the group and when I give whilereadingrecords it adds up all the data in the group correctly.
The formula that you mentioned for the report footer had worked out and it is showing my result correctly.
I did not put up the reset formula on the group footer because as the group changes I had used another variable in another formula for example for the second group I used
Whilereadingrecords;
Global Numbervar CNTTWO;
Numbervar Q := Q+1;
IF Q = 1 AND {@DUEDAYS} = 30
THEN CNTTWO := {spSUPPLIERSOA;1.INVOICEBAL}
ELSE IF Q>1 AND {@DUEDAYS} = 30
THEN CNTTWO := CNTTWO + {spSUPPLIERSOA;1.INVOICEBAL}
I have set up total 5 such formulas as the number of groups that will be formed is 5. I have put up these formulas on the group footer and suppressed it as I dont want to get it displayed.
The as you suggested the solution for Report Footer I did that and getting the result correctly.
I dont know I may be following a longer procedure
Take Care
Sreejith J -
How to get the value of a variable in FOX?
Hi,
In the FOX program how to get the value of a variable defined in planning area?
can anyone give me some sample code?
thanksAdding to the last reply,
you can use VARI(variable) to get the count of the values.
In the latest version of BPS, you may also use the following new foreach construct:
FOREACH var IN VARIABLE variable_id.
Regards - Ravi -
How Can I get the value of a variable name stored in another variable?
I have a scenario wherein i get a record as %rowtype as input parameter into my function and i generate a dynamic sql to check the validity of a particular value in one of the columns of the input parameter record.
I have a variable that stores the column name of input parameter record whose value is to be validated.
The dynamic SQL looks like this:
'Select empno from emp where empname = input_rec.'||v_colname
While using Execute Immediate I get the error - Invalid Identifiier -'input_rec'.'ename'
On Googling I found that the input parameter is out of the scope of the SQL that's being executed in the Execute Immediate.
Is there any way I can get the value of ('input_rec.'||v_colname) so that I can pass it into the Execute Immediate with 'Using' clause?karthyk wrote:
I have a scenario wherein i get a record as %rowtype as input parameter into my function and i generate a dynamic sql to check the validity of a particular value in one of the columns of the input parameter record.
I have a variable that stores the column name of input parameter record whose value is to be validated.
The dynamic SQL looks like this:
'Select empno from emp where empname = input_rec.'||v_colname
While using Execute Immediate I get the error - Invalid Identifiier -'input_rec'.'ename'
On Googling I found that the input parameter is out of the scope of the SQL that's being executed in the Execute Immediate.
Is there any way I can get the value of ('input_rec.'||v_colname) so that I can pass it into the Execute Immediate with 'Using' clause?compose the SELECT in a single VARCHAR2 variable before passing variable to EXECUTE IMMEDIATE -
Getting the value of variable in a bean
hi
I have method in my class and I'm passing some values in it.
example:
public static boolean authenticate( String name, String passwd)
//declare my variable
boolean authorized = false;
//do processing and set my variable
if(name.equals("") || passwd.equals(""))
return false;
// if name and passwd exists set authorized to true
authorized = true;
return authorized;
Question:
How can I get the value of authorized in my webpage using jsp?
or
How can I get the value of authenticate in mywebpage using jsp?
please help !!!!
thanks in advance.Here's how I did it:
This snippet is from my StringTable Bean
public static final String SERVER_ERROR = "Server has returned an error.";
public static final String DATA_ERROR = "Data could not be retrieved.";This is how I access it in a JSP
<jsp:useBean id="Strings" scope="session" class="com.cognitronics.utilities.StringTable" />
<% if ( strResult.equals(Strings.SERVER_ERROR) ) { blah blah blah... }Hope that helps a little. -
Is it possible to get the value of variable through answers page ?
Hi all,
I had Dynamic variable ETLRundate . I want use this variable in Answers page to see the out put ?
Is it possible to get the value of variable through answers page ?if so how I can use ?Hi
Use the link below and download the documentation
http://www.oracle.com/technology/documentation/bi_ee.html
I think you will find what you are looking for in the Answers, Delivers, and Interactive Dashboards User Guide, but in short the syntax to display a variable value is as follows:
As shown above the syntax for using a presentation variable is:
@{variablename}{defaultvalue}
For Session variables use:
@{biServer.variables['NQ_SESSION.variablename']}
For repository variables use:
@{biServer.variables['variablename']}
Rgds
Ed -
Getting the value of variable dynamically
Hi Gurus,
How can i get a value of a variable dynamically through user input?Is it possible to get it interacively?
my reqiurement is to control my loop according to the user supplied value for the flag variable.
if the user gives the flag as 'Y' loop should continue.else loop should terminate in a PL/SQL block
here is a piece of code
CREATE OR REPLACE procedure c is
flag1 varchar2(10):='Y';
begin
while flag1 <> 'N' loop
dbms_output.put_line('Enter the value.....' );
+*<< Here I have to get the value of flag1 from user .How to get the user value>>*+
end loop;
end;
Please advice
Edited by: user5203944 on Nov 18, 2008 3:01 AMTo add my 2 cents worth you can not get where you want with sqlplus calling PL/SQL
You have 2 problems
SQLPLUS has no loop construct and not much in the way of conditional capabilities.
PL/SQL can not talk to a terminal.
If you use an &variable in an anonymous block, it is evaluated by sqlplus before the parse of the block takes place.
Nothing you do in the block can change its value.
dbms_output.put_line buffers everything output to it and then sqlplus outputs it all after the block completes.
You can accept variables in sqlplus and pass them into an anonymous block for use, but you would have to exit the block if you wanted to ask something based on a condition determined in the block. You would then have no way to re-enter that block within the sqlplus session.
Host language programs do not have this problem. You can use ProC ProCOBOL, OCI, Visual Basic, and web interfaces.
Unless you are on windows you can use a shell script (Unix, Linux or VMS) to do what you want.
You can accept the variable in the script within a loop. You can call sqlplus silently passing the variable on the command line. You can use the variable command to define variables that will be set in pl/sql blocks use selects of these :variables to set defined sqlplus &variables. You can spool files that will then be processed by the shell language. All this can be done in that shell loop.
In other words you can do anything you need. You do need to understand your tools and their limitations. You can not use sqlplus commands in pl/sql for example.
Edited by: Old DBA on Nov 18, 2008 7:31 PM -
can't get the value from two variables when execute MDX : Anyone who can help ?
================================
with member [Measures].[APGC Replied Volume] as
([Measures].[Question],[Dim Replied By].[Replied By].&[APGC])
member [Measures].[APGC Moderated Volume] as
([Measures].[DashBoard Thread Number],[Dim Moderated By].[Moderated By].&[APGC])
member [Measures].[APGC Answered Volume] as
([Measures].[Question],[Dim Answered By].[Answered By].&[APGC])
SELECT
NON EMPTY
[Measures].[Forum Thread Number],
[Measures].[Reply In24 Hour],
[Measures].[Question],
[Measures].[Deliverale Minute],
[Measures].[Working minutes],
[Measures].[Answered],
[Measures].[1D Answer],
[Measures].[2D Answer],
[Measures].[7D Answer],
[Measures].[APGC Replied Volume],
[Measures].[APGC Moderated Volume],
[Measures].[APGC Answered Volume],
[Measures].[Avg HTR],
[Measures].[Avg HTA],
[Measures].[Total Labor]
} ON COLUMNS,
NON EMPTY { ([Dim Engineer].[SubGroup-Alias].[Alias].ALLMEMBERS ) } DIMENSION PROPERTIES MEMBER_CAPTION, MEMBER_UNIQUE_NAME ON ROWS
FROM (
SELECT ( STRTOMEMBER(@FromDimTimeFiscalYearMonthWeekLastDateDay, CONSTRAINED) : STRTOMEMBER(@ToDimTimeFiscalYearMonthWeekLastDateDay,
CONSTRAINED) ) ON COLUMNS
FROM [O365]) CELL PROPERTIES VALUE, BACK_COLOR, FORE_COLOR, FORMATTED_VALUE, FORMAT_STRING, FONT_NAME, FONT_SIZE, FONT_FLAGSHi Ada,
According to your description, you can't get the member when using the strtomember() function in your MDX. Right?
In Analysis Services, while the member name string provided contains a valid MDX member expression that resolves to a qualified member name, the CONSTRAINED flag requires qualified or unqualified member names in the member name string. Please check if the
variable is a Multidimensional Expressions (MDX)–formatted string.
Reference:
StrToMember (MDX)
If you have any question, please feel free to ask.
Simon Hou
TechNet Community Support -
NullPointerException - Cannot get the value from variable f_cashGiven
In SubCheckout.java (a POS), what I want is when Payment button (f_cashPayment) is pressed, the action "Cash" is performed, get the value from Cash Given (f_cashGiven), do the subtraction and post the value as Cash Return (f_cashReturn). The code is filled in actionPerformed. But I cannot get the value by using f_cashGiven.getValue() from VNumber class. It returns NULL. This should be quite straight forward, but I do not know what is wrong. Please help!
Enclosed please find the source code of SubCheckout.java and VNumber.java
This is the code of SubCheckout.java :
* The contents of this file are subject to the Compiere License Version 1.1
* ("License"); You may not use this file except in compliance with the License
* You may obtain a copy of the License at http://www.compiere.org/license.html
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is Compiere ERP & CRM Smart Business Solution. The Initial
* Developer of the Original Code is Jorg Janke. Portions created by Jorg Janke
* are Copyright (C) 1999-2005 Jorg Janke.
* All parts are Copyright (C) 1999-2005 ComPiere, Inc. All Rights Reserved.
* Contributor(s): ______________________________________.
package org.compiere.pos;
import java.awt.*;
import java.awt.event.*;
import java.math.BigDecimal;
import javax.swing.border.*;
import org.compiere.grid.ed.*;
import org.compiere.swing.*;
import org.compiere.util.*;
* POS Checkout Sub Panel
* @author Jorg Janke
* @version $Id: SubCheckout.java,v 1.3 2005/03/11 20:28:22 jjanke Exp $
public class SubCheckout extends PosSubPanel implements ActionListener
* Constructor
* @param posPanel POS Panel
public SubCheckout (PosPanel posPanel)
super (posPanel);
} // PosSubCheckout
private CButton f_register = null;
private CButton f_summary = null;
private CButton f_process = null;
private CButton f_print = null;
private CLabel f_lcreditCardNumber = null;
private CTextField f_creditCardNumber = null;
private CLabel f_lcreditCardExp = null;
private CTextField f_creditCardExp = null;
private CLabel f_lcreditCardVV = null;
private CTextField f_creditCardVV = null;
private CButton f_cashPayment = null;
private CLabel f_lcashGiven = null;
private VNumber f_cashGiven = null;
private CLabel f_lcashReturn = null;
private VNumber f_cashReturn = null;
private CButton f_creditPayment = null;
/** Logger */
private static CLogger log = CLogger.getCLogger(SubCheckout.class);
* Initialize
public void init()
// Title
TitledBorder border = new TitledBorder(Msg.getMsg(Env.getCtx(), "Checkout"));
setBorder(border);
// Content
setLayout(new GridBagLayout());
GridBagConstraints gbc = new GridBagConstraints();
gbc.insets = INSETS2;
// -- 0
gbc.gridx = 0;
f_register = createButtonAction("Register", null);
gbc.gridy = 0;
add (f_register, gbc);
f_summary = createButtonAction("Summary", null);
gbc.gridy = 1;
add (f_summary, gbc);
f_process = createButtonAction("Process", null);
gbc.gridy = 2;
add (f_process, gbc);
f_print = createButtonAction("Print", null);
gbc.gridy = 3;
add (f_print, gbc);
// -- 1 -- Cash
gbc.gridx = 1;
gbc.gridheight = 2;
gbc.fill = GridBagConstraints.BOTH;
gbc.weightx = .1;
CPanel cash = new CPanel(new GridBagLayout());
cash.setBorder(new TitledBorder(Msg.getMsg(Env.getCtx(), "Cash")));
gbc.gridy = 0;
add (cash, gbc);
GridBagConstraints gbc0 = new GridBagConstraints();
gbc0.insets = INSETS2;
gbc0.anchor = GridBagConstraints.WEST;
f_lcashGiven = new CLabel(Msg.getMsg(Env.getCtx(),"CashGiven"));
cash.add (f_lcashGiven, gbc0);
f_cashGiven = new VNumber("CashGiven", false, false, true, DisplayType.Amount,
Msg.translate(Env.getCtx(), "CashGiven"));
f_cashGiven.addActionListener(this);
f_cashGiven.setColumns(10, 25);
cash.add (f_cashGiven, gbc0);
f_cashGiven.setValue(Env.ZERO);
f_lcashReturn = new CLabel(Msg.getMsg(Env.getCtx(),"CashReturn"));
cash.add (f_lcashReturn, gbc0);
f_cashReturn = new VNumber("CashReturn", false, true, false, DisplayType.Amount,
"CashReturn");
f_cashReturn.setColumns(10, 25);
cash.add (f_cashReturn, gbc0);
f_cashReturn.setValue(Env.ZERO);
f_cashPayment = createButtonAction("Payment", null);
f_cashPayment.setActionCommand("Cash");
gbc0.anchor = GridBagConstraints.EAST;
gbc0.weightx = 0.1;
cash.add (f_cashPayment, gbc0);
// -- 1 -- Creditcard
CPanel creditcard = new CPanel(new GridBagLayout());
creditcard.setBorder(new TitledBorder(Msg.translate(Env.getCtx(), "CreditCardType")));
gbc.gridy = 2;
add (creditcard, gbc);
GridBagConstraints gbc1 = new GridBagConstraints();
gbc1.insets = INSETS2;
gbc1.anchor = GridBagConstraints.WEST;
gbc1.gridx = 0;
gbc1.gridy = 0;
f_lcreditCardNumber = new CLabel(Msg.translate(Env.getCtx(), "CreditCardNumber"));
creditcard.add (f_lcreditCardNumber, gbc1);
gbc1.gridy = 1;
f_creditCardNumber = new CTextField(18);
creditcard.add (f_creditCardNumber, gbc1);
gbc1.gridx = 1;
gbc1.gridy = 0;
f_lcreditCardExp = new CLabel(Msg.translate(Env.getCtx(),"CreditCardExp"));
creditcard.add (f_lcreditCardExp, gbc1);
gbc1.gridy = 1;
f_creditCardExp = new CTextField(5);
creditcard.add (f_creditCardExp, gbc1);
gbc1.gridx = 2;
gbc1.gridy = 0;
f_lcreditCardVV = new CLabel(Msg.translate(Env.getCtx(), "CreditCardVV"));
creditcard.add (f_lcreditCardVV, gbc1);
gbc1.gridy = 1;
f_creditCardVV = new CTextField(5);
creditcard.add (f_creditCardVV, gbc1);
gbc1.gridx = 3;
gbc1.gridy = 0;
gbc1.gridheight = 2;
f_creditPayment = createButtonAction("Payment", null);
f_creditPayment.setActionCommand("CreditCard");
gbc1.anchor = GridBagConstraints.EAST;
gbc1.weightx = 0.1;
creditcard.add (f_creditPayment, gbc1);
} // init
* Get Panel Position
public GridBagConstraints getGridBagConstraints()
GridBagConstraints gbc = super.getGridBagConstraints();
gbc.gridx = 0;
gbc.gridy = 3;
return gbc;
} // getGridBagConstraints
* Dispose - Free Resources
public void dispose()
super.dispose();
} // dispose
* Action Listener
* @param e event
public void actionPerformed (ActionEvent e)
String action = e.getActionCommand();
if (action == null || action.length() == 0)
return;
log.info( "PosSubCheckout - actionPerformed: " + action);
if (e.getSource() == f_cashGiven) {
f_cashGiven.setValue(f_cashGiven.getValue());
System.out.println("f_cashGiven"+f_cashGiven.getDisplay());
// Register
// Summary
// Print
if (action.equals("Cash")) {
BigDecimal CashGiven, GrandTotal, CashReturn;
System.out.println("Cash given is "+f_cashGiven.getDisplay());
CashGiven = (BigDecimal)f_cashGiven.getValue();
GrandTotal = (BigDecimal)p_posPanel.f_curLine.getOrder().getGrandTotal();
CashReturn = CashGiven.subtract(GrandTotal);
f_cashReturn.setValue(CashReturn);
// Cash (Payment)
// CreditCard (Payment)
} // actionPerformed
} // PosSubCheckoutThis is the code of VNumber.java :
* The contents of this file are subject to the Compiere License Version 1.1
* ("License"); You may not use this file except in compliance with the License
* You may obtain a copy of the License at http://www.compiere.org/license.html
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is Compiere ERP & CRM Smart Business Solution. The Initial
* Developer of the Original Code is Jorg Janke. Portions created by Jorg Janke
* are Copyright (C) 1999-2005 Jorg Janke.
* All parts are Copyright (C) 1999-2005 ComPiere, Inc. All Rights Reserved.
* Contributor(s): ______________________________________.
package org.compiere.grid.ed;
import java.awt.*;
import java.awt.event.*;
import java.beans.*;
import java.math.*;
import java.text.*;
import java.util.logging.*;
import javax.swing.*;
import javax.swing.text.*;
import org.compiere.apps.*;
import org.compiere.model.*;
import org.compiere.swing.*;
import org.compiere.util.*;
* Number Control
* @author Jorg Janke
* @version $Id: VNumber.java,v 1.41 2005/09/03 01:57:16 jjanke Exp $
public final class VNumber extends JComponent
implements VEditor, ActionListener, KeyListener, FocusListener
/** Number of Columns (12) */
public final static int SIZE = 12;
* IDE Bean Constructor
public VNumber()
this("Number", false, false, true, DisplayType.Number, "Number");
} // VNumber
* Create right aligned Number field.
* no popup, if WindowNo == 0 (for IDs)
* @param columnName column name
* @param mandatory mandatory
* @param isReadOnly read only
* @param isUpdateable updateable
* @param displayType display type
* @param title title
public VNumber(String columnName, boolean mandatory, boolean isReadOnly, boolean isUpdateable,
int displayType, String title)
super();
super.setName(columnName);
m_columnName = columnName;
m_title = title;
setDisplayType(displayType);
LookAndFeel.installBorder(this, "TextField.border");
this.setLayout(new BorderLayout());
// this.setPreferredSize(m_text.getPreferredSize()); // causes r/o to be the same length
// int height = m_text.getPreferredSize().height;
// setMinimumSize(new Dimension (30,height));
// *** Text ***
m_text.setBorder(null);
m_text.setHorizontalAlignment(JTextField.TRAILING);
m_text.addKeyListener(this);
m_text.addFocusListener(this);
// Background
setMandatory(mandatory);
this.add(m_text, BorderLayout.CENTER);
// *** Button ***
m_button.setIcon(Env.getImageIcon("Calculator10.gif"));
m_button.setMargin(new Insets(0, 0, 0, 0));
m_button.setFocusable(false);
m_button.addActionListener(this);
this.add (m_button, BorderLayout.EAST);
// Prefereed Size
this.setPreferredSize(this.getPreferredSize()); // causes r/o to be the same length
// Size
setColumns(SIZE, CComboBox.FIELD_HIGHT-4);
// ReadWrite
if (isReadOnly || !isUpdateable)
setReadWrite(false);
else
setReadWrite(true);
} // VNumber
* Dispose
public void dispose()
m_text = null;
m_button = null;
m_mField = null;
} // dispose
* Set Document
* @param doc document
protected void setDocument(Document doc)
m_text.setDocument(doc);
} // getDocument
private String m_columnName;
protected int m_displayType; // Currency / UoM via Context
private DecimalFormat m_format;
private String m_title;
private boolean m_setting;
private String m_oldText;
private String m_initialText;
private boolean m_rangeSet = false;
private Double m_minValue;
private Double m_maxValue;
private boolean m_modified = false;
/** The Field */
private CTextField m_text = new CTextField(SIZE); // Standard
/** The Button */
private CButton m_button = new CButton();
private MField m_mField = null;
/** Logger */
private static CLogger log = CLogger.getCLogger(VNumber.class);
* Set no of Columns
* @param columns columns
public void setColumns (int columns, int height)
m_text.setPreferredSize(null);
m_text.setColumns(columns);
Dimension size = m_text.getPreferredSize();
if (height > size.height) // default 16
size.height = height;
if (CComboBox.FIELD_HIGHT-4 > size.height)
size.height = VLookup.FIELD_HIGHT-4;
this.setPreferredSize(size); // causes r/o to be the same length
this.setMinimumSize(new Dimension (columns*10, size.height));
m_button.setPreferredSize(new Dimension(size.height, size.height));
} // setColumns
* Set Range with min & max
* @param minValue min value
* @param maxValue max value
* @return true, if accepted
public boolean setRange(Double minValue, Double maxValue)
m_rangeSet = true;
m_minValue = minValue;
m_maxValue = maxValue;
return m_rangeSet;
} // setRange
* Set Range with min & max = parse US style number w/o Gouping
* @param minValue min value
* @param maxValue max value
* @return true if accepted
public boolean setRange(String minValue, String maxValue)
if (minValue == null || maxValue == null)
return false;
try
m_minValue = Double.valueOf(minValue);
m_maxValue = Double.valueOf(maxValue);
catch (NumberFormatException nfe)
return false;
m_rangeSet = true;
return m_rangeSet;
} // setRange
* Set and check DisplayType
* @param displayType display type
public void setDisplayType (int displayType)
m_displayType = displayType;
if (!DisplayType.isNumeric(displayType))
m_displayType = DisplayType.Number;
m_format = DisplayType.getNumberFormat(displayType);
m_text.setDocument (new MDocNumber(displayType, m_format, m_text, m_title));
} // setDisplayType
* Set ReadWrite
* @param value value
public void setReadWrite (boolean value)
if (m_text.isReadWrite() != value)
m_text.setReadWrite(value);
if (m_button.isReadWrite() != value)
m_button.setReadWrite(value);
// Don't show button if not ReadWrite
if (m_button.isVisible() != value)
m_button.setVisible(value);
} // setReadWrite
* IsReadWrite
* @return true if rw
public boolean isReadWrite()
return m_text.isReadWrite();
} // isReadWrite
* Set Mandatory (and back bolor)
* @param mandatory mandatory
public void setMandatory (boolean mandatory)
m_text.setMandatory(mandatory);
} // setMandatory
* Is it mandatory
* @return true if mandatory
public boolean isMandatory()
return m_text.isMandatory();
} // isMandatory
* Set Background
* @param color color
public void setBackground(Color color)
m_text.setBackground(color);
} // setBackground
* Set Background
* @param error error
public void setBackground (boolean error)
m_text.setBackground(error);
} // setBackground
* Set Foreground
* @param fg foreground
public void setForeground(Color fg)
m_text.setForeground(fg);
} // setForeground
* Set Editor to value
* @param value value
public void setValue(Object value)
log.finest("Value=" + value);
if (value == null)
m_oldText = "";
else
m_oldText = m_format.format(value);
// only set when not updated here
if (m_setting)
return;
m_text.setText (m_oldText);
m_initialText = m_oldText;
m_modified = false;
} // setValue
* Property Change Listener
* @param evt event
public void propertyChange (PropertyChangeEvent evt)
if (evt.getPropertyName().equals(org.compiere.model.MField.PROPERTY))
setValue(evt.getNewValue());
} // propertyChange
* Return Editor value
* @return value value (big decimal or integer)
public Object getValue()
if (m_text == null || m_text.getText() == null || m_text.getText().length() == 0)
return null;
String value = m_text.getText();
// return 0 if text deleted
if (value == null || value.length() == 0)
if (!m_modified)
return null;
if (m_displayType == DisplayType.Integer)
return new Integer(0);
return Env.ZERO;
if (value.equals(".") || value.equals(",") || value.equals("-"))
value = "0";
try
Number number = m_format.parse(value);
value = number.toString(); // converts it to US w/o thousands
BigDecimal bd = new BigDecimal(value);
if (m_displayType == DisplayType.Integer)
return new Integer(bd.intValue());
if (bd.signum() == 0)
return bd;
return bd.setScale(m_format.getMaximumFractionDigits(), BigDecimal.ROUND_HALF_UP);
catch (Exception e)
log.log(Level.SEVERE, "Value=" + value, e);
if (m_displayType == DisplayType.Integer)
return new Integer(0);
return Env.ZERO;
} // getValue
* Return Display Value
* @return value
public String getDisplay()
return m_text.getText();
} // getDisplay
* Get Title
* @return title
public String getTitle()
return m_title;
} // getTitle
* Plus - add one.
* Also sets Value
* @return new value
public Object plus()
Object value = getValue();
if (value == null)
if (m_displayType == DisplayType.Integer)
value = new Integer(0);
else
value = Env.ZERO;
// Add
if (value instanceof BigDecimal)
value = ((BigDecimal)value).add(Env.ONE);
else
value = new Integer(((Integer)value).intValue() + 1);
setValue(value);
return value;
} // plus
* Minus - subtract one, but not below minimum.
* Also sets Value
* @param minimum minimum
* @return new value
public Object minus (int minimum)
Object value = getValue();
if (value == null)
if (m_displayType == DisplayType.Integer)
value = new Integer(minimum);
else
value = new BigDecimal(minimum);
setValue(value);
return value;
// Subtract
if (value instanceof BigDecimal)
BigDecimal bd = ((BigDecimal)value).subtract(Env.ONE);
BigDecimal min = new BigDecimal(minimum);
if (bd.compareTo(min) < 0)
value = min;
else
value = bd;
else
int i = ((Integer)value).intValue();
i--;
if (i < minimum)
i = minimum;
value = new Integer(i);
setValue(value);
return value;
} // minus
* Action Listener
* @param e event
public void actionPerformed (ActionEvent e)
log.config(e.getActionCommand());
if (ValuePreference.NAME.equals(e.getActionCommand()))
if (MRole.getDefault().isShowPreference())
ValuePreference.start (m_mField, getValue());
return;
if (e.getSource() == m_button)
m_button.setEnabled(false);
String str = startCalculator(this, m_text.getText(), m_format, m_displayType, m_title);
m_text.setText(str);
m_button.setEnabled(true);
try
fireVetoableChange (m_columnName, m_oldText, getValue());
catch (PropertyVetoException pve) {}
m_text.requestFocus();
} // actionPerformed
* Key Listener Interface
* @param e event
public void keyTyped(KeyEvent e) {}
public void keyPressed(KeyEvent e) {}
* Key Listener.
* - Escape - Restore old Text
* - firstChange - signal change
* @param e event
public void keyReleased(KeyEvent e)
log.finest("Key=" + e.getKeyCode() + " - " + e.getKeyChar()
+ " -> " + m_text.getText());
// ESC
if (e.getKeyCode() == KeyEvent.VK_ESCAPE)
m_text.setText(m_initialText);
m_modified = true;
m_setting = true;
try
if (e.getKeyCode() == KeyEvent.VK_ENTER) // 10
fireVetoableChange (m_columnName, m_oldText, getValue());
fireActionPerformed();
else // indicate change
fireVetoableChange (m_columnName, m_oldText, null);
catch (PropertyVetoException pve) {}
m_setting = false;
} // keyReleased
* Focus Gained
* @param e event
public void focusGained (FocusEvent e)
if (m_text != null)
m_text.selectAll();
} // focusGained
* Data Binding to MTable (via GridController.vetoableChange).
* @param e event
public void focusLost (FocusEvent e)
// log.finest(e.toString());
// APanel - Escape
if (e.getOppositeComponent() instanceof AGlassPane)
m_text.setText(m_initialText);
return;
try
fireVetoableChange (m_columnName, m_initialText, getValue());
fireActionPerformed();
catch (PropertyVetoException pve) {}
} // focusLost
* Invalid Entry - Start Calculator
* @param jc parent
* @param value value
* @param format format
* @param displayType display type
* @param title title
* @return value
public static String startCalculator(Container jc, String value,
DecimalFormat format, int displayType, String title)
log.config("Value=" + value);
BigDecimal startValue = new BigDecimal(0.0);
try
if (value != null && value.length() > 0)
Number number = format.parse(value);
startValue = new BigDecimal (number.toString());
catch (ParseException pe)
log.info("InvalidEntry - " + pe.getMessage());
// Find frame
Frame frame = Env.getFrame(jc);
// Actual Call
Calculator calc = new Calculator(frame, title,
displayType, format, startValue);
AEnv.showCenterWindow(frame, calc);
BigDecimal result = calc.getNumber();
log.config( "Result=" + result);
calc = null;
if (result != null)
return format.format(result);
else
return value; // original value
} // startCalculator
* Set Field/WindowNo for ValuePreference
* @param mField field
public void setField (MField mField)
m_mField = mField;
if (m_mField != null
&& MRole.getDefault().isShowPreference())
ValuePreference.addMenu (this, popupMenu);
} // setField
* Remove Action Listner
* @param l Action Listener
public void removeActionListener(ActionListener l)
listenerList.remove(ActionListener.class, l);
} // removeActionListener
* Add Action Listner
* @param l Action Listener
public void addActionListener(ActionListener l)
listenerList.add(ActionListener.class, l);
} // addActionListener
* Fire Action Event to listeners
protected void fireActionPerformed()
int modifiers = 0;
AWTEvent currentEvent = EventQueue.getCurrentEvent();
if (currentEvent instanceof InputEvent)
modifiers = ((InputEvent)currentEvent).getModifiers();
else if (currentEvent instanceof ActionEvent)
modifiers = ((ActionEvent)currentEvent).getModifiers();
ActionEvent ae = new ActionEvent (this, ActionEvent.ACTION_PERFORMED,
"VNumber", EventQueue.getMostRecentEventTime(), modifiers);
// Guaranteed to return a non-null array
Object[] listeners = listenerList.getListenerList();
// Process the listeners last to first, notifying those that are interested in this event
for (int i = listeners.length-2; i>=0; i-=2)
if (listeners==ActionListener.class)
((ActionListener)listeners[i+1]).actionPerformed(ae);
} // fireActionPerformed
} // VNumberIf getValue() returns null, you need to trace the execution of the code and figure out which sequence of code is leading to the return of null. This method looks complex - a lot of if statements. If you do not have a debugger, put System.out.println statements inside the method to figure out what's going on.
Maybe you are looking for
-
Apex Modal Page (Skillbuilders) error
hello, I have an issue. I have a page (IR) and when click link it open a modal (skill builder) page. when I try to submit the page then i get this error. An unexpected internal application error has occurred. Please get in contact the Support and pro
-
ID CS6 Opens in a reduced size window- Not Maximized
I maximize and then close, but when I reopen it is in a reduced window. Any suggestions? thanks jon
-
Scrolling thumbnails.....slow, jerky and pixelate
So I updated to 1.5.......I like many of the new features, but I can't figure out where all this new speed is supposed to be in the program?? I have my Aperture Library on an internal 300GB SATA Maxtor 7200 RPM with 16MB Cache. My library is roughly
-
Viewing images using Bridge.
I am unable to view images directly from CF card using Bridge. The camera files simply show as graphic icons. I have not had this problem before. Is there a setting I need to adjust ?
-
Elements 11 crashes every time i use sketch filters
I am on a new macbook pro using elements 11 and every time i use the sketch filters the program crashes. How do i get this fixed?