Re: Multi schema join parse qualfier

2012-04-17 Thread LJ LongWing
I'm not sure where it is (because I haven't looked)but I imagine you could 
find it on the support site :)

-Original Message-
From: Action Request System discussion list(ARSList) 
[mailto:arslist@ARSLIST.ORG] On Behalf Of Eric Roys
Sent: Tuesday, April 17, 2012 11:44 AM
To: arslist@ARSLIST.ORG
Subject: Re: Multi schema join parse qualfier

LJ, 

Appreciate your time. I was hoping I had overlooked something but apparently 
not. Seems silly to have not provided an appropriate method as the long hand is 
unruly at best and rolling one's own, while better than long handing it, is 
still not ideal since this is something that seems to be a must if dealing with 
multiForm queries and I'm sure I won't be the last person who needs/wants it. 
Perhaps it made it into version 7.7 (sarcasm). 

Where does one find that enhancement request form, again?

-Eric

-Original Message-
From: Action Request System discussion list(ARSList) 
[mailto:arslist@ARSLIST.ORG] On Behalf Of LJ LongWing
Sent: Tuesday, April 17, 2012 12:31 PM
To: arslist@ARSLIST.ORG
Subject: Re: Multi schema join parse qualfier

Ok….I’m going to try to document this for ‘the world’.

Looking through the 7.6.4 JavaDocs, you can get a QualifierInfo object through 
numerous methods…the one outline in the appendix

QuerySourceForm primaryForm = new QuerySourceForm("Form1"); QuerySourceForm 
secondaryForm = new QuerySourceForm("Form2"); ArithmeticOrRelationalOperand 
field1 = new ArithmeticOrRelationalOperand(123456, primaryForm); 
ArithmeticOrRelationalOperand field2 = new 
ArithmeticOrRelationalOperand(654321, secondaryForm); RelationalOperationInfo 
relOp = new RelationalOperationInfo(RelationalOperationInfo.AR_REL_OP_EQUAL, 
field1, field2);

QualifierInfo joinQual = new QualifierInfo(relOp);

Or, through more ‘normal’ methods which would be something like this

String qual =  "'Field1' = $Field2$"; // 'Product Name' = $Model$

List f1 = arConnection.getListFieldObjects("Form1");
List f2 = arConnection.getListFieldObjects("Form2");

QualifierInfo joinQual = arConnection.parseQualification(qual, f2, f1, 
Constants.AR_QUALCONTEXT_DEFAULT);

The problem is that the first method creates a QualifierInfo object that looks 
something like this

[Operation=4,Operand Left=[Operation=1,Operand Left=[Operand 
Type=[type=1],Operand=[Field ID=123456,Func ID=0,Field Source=[Source 
Identifier=-6be110ff:136c144c57c:-8000,Source Name=Form1]]],Operand 
Right=[Operand Type=[type=1],Operand=[Field ID=654321,Func ID=0,Field 
Source=[Source Identifier=-6be110ff:136c144c57c:-7fff,Source 
Name=Form2,Operand Right=]

Whereas the second presents something like

[Operation=4,Operand Left=[Operation=1,Operand Left=[Operand 
Type=[type=1],Operand=123456],Operand Right=[Operand 
Type=[type=1],Operand=654321]],Operand Right=]

So...Eric,
What I'm reading out of this is that the people over at BMC did not deem it 
necessary to either update the parseQualification method...or provide an 
appropriately overridden version of it to be able to create a QualifierInfo 
object that will work when utilizing the getListEntryObjects method with a 
RegularQuery object as one of the inputs

This is a long, 'around the way' way of saying 'No' to your original 
questionit looks like you must use the 'long hand' method of creating the 
qualifier objects for the momentand in the long run, if you want to be able 
to use the shorthand...you could either write your own method to build it 
properlyor submit an enhancement request to BMC to have them do the leg 
work.


From: LJ LongWing [mailto:lj.longw...@gmail.com]
Sent: Monday, April 16, 2012 8:45 AM
To: 'arslist@ARSLIST.ORG'
Subject: RE: Multi schema join parse qualfier

Eric,
I see no reason why you wouldn’t be able to use that method to create the 
QualifierInfo object….I’m not entirely sure of the code you are using to get 
the cast error.  Please feel free to contact me offlist if you would like, but 
I would love to try to help ☺

From: Action Request System discussion list(ARSList) 
[mailto:arslist@ARSLIST.ORG] On Behalf Of Eric Roys
Sent: Sunday, April 15, 2012 9:02 PM
To: arslist@ARSLIST.ORG
Subject: Multi schema join parse qualfier

**
For you java api folks… 

ARS 7.6.4 sp2
Java api 7.6.4 build 2
Java 7

Is there a parse qual method for translating a query string (i.e. ‘This’ = 
$This$ AND ‘That’ = $That$) for the QualifierInfo required by 
com.bmc.arsys.api.QuerySourceForm.setJoin(IQuerySource arg0, int arg1, 
QualifierInfo arg2) method [or does one have to embrace the long hand version 
and write out as indicated in the appendix of the C API reference doc (excerpt 
below)? I was hoping that the parseQualification(String queryString, 
List fieldList1, List fieldList2, int queryContext, boolean 
exceptionWhenFieldNotFound) method would do the tr

Re: Multi schema join parse qualfier

2012-04-17 Thread Eric Roys
LJ, 

Appreciate your time. I was hoping I had overlooked something but apparently 
not. Seems silly to have not provided an appropriate method as the long hand is 
unruly at best and rolling one's own, while better than long handing it, is 
still not ideal since this is something that seems to be a must if dealing with 
multiForm queries and I'm sure I won't be the last person who needs/wants it. 
Perhaps it made it into version 7.7 (sarcasm). 

Where does one find that enhancement request form, again?

-Eric

-Original Message-
From: Action Request System discussion list(ARSList) 
[mailto:arslist@ARSLIST.ORG] On Behalf Of LJ LongWing
Sent: Tuesday, April 17, 2012 12:31 PM
To: arslist@ARSLIST.ORG
Subject: Re: Multi schema join parse qualfier

Ok….I’m going to try to document this for ‘the world’.

Looking through the 7.6.4 JavaDocs, you can get a QualifierInfo object through 
numerous methods…the one outline in the appendix

QuerySourceForm primaryForm = new QuerySourceForm("Form1"); QuerySourceForm 
secondaryForm = new QuerySourceForm("Form2"); ArithmeticOrRelationalOperand 
field1 = new ArithmeticOrRelationalOperand(123456, primaryForm); 
ArithmeticOrRelationalOperand field2 = new 
ArithmeticOrRelationalOperand(654321, secondaryForm); RelationalOperationInfo 
relOp = new RelationalOperationInfo(RelationalOperationInfo.AR_REL_OP_EQUAL, 
field1, field2);

QualifierInfo joinQual = new QualifierInfo(relOp);

Or, through more ‘normal’ methods which would be something like this

String qual =  "'Field1' = $Field2$"; // 'Product Name' = $Model$

List f1 = arConnection.getListFieldObjects("Form1");
List f2 = arConnection.getListFieldObjects("Form2");

QualifierInfo joinQual = arConnection.parseQualification(qual, f2, f1, 
Constants.AR_QUALCONTEXT_DEFAULT);

The problem is that the first method creates a QualifierInfo object that looks 
something like this

[Operation=4,Operand Left=[Operation=1,Operand Left=[Operand 
Type=[type=1],Operand=[Field ID=123456,Func ID=0,Field Source=[Source 
Identifier=-6be110ff:136c144c57c:-8000,Source Name=Form1]]],Operand 
Right=[Operand Type=[type=1],Operand=[Field ID=654321,Func ID=0,Field 
Source=[Source Identifier=-6be110ff:136c144c57c:-7fff,Source 
Name=Form2,Operand Right=]

Whereas the second presents something like

[Operation=4,Operand Left=[Operation=1,Operand Left=[Operand 
Type=[type=1],Operand=123456],Operand Right=[Operand 
Type=[type=1],Operand=654321]],Operand Right=]

So...Eric,
What I'm reading out of this is that the people over at BMC did not deem it 
necessary to either update the parseQualification method...or provide an 
appropriately overridden version of it to be able to create a QualifierInfo 
object that will work when utilizing the getListEntryObjects method with a 
RegularQuery object as one of the inputs

This is a long, 'around the way' way of saying 'No' to your original 
questionit looks like you must use the 'long hand' method of creating the 
qualifier objects for the momentand in the long run, if you want to be able 
to use the shorthand...you could either write your own method to build it 
properlyor submit an enhancement request to BMC to have them do the leg 
work.


From: LJ LongWing [mailto:lj.longw...@gmail.com]
Sent: Monday, April 16, 2012 8:45 AM
To: 'arslist@ARSLIST.ORG'
Subject: RE: Multi schema join parse qualfier

Eric,
I see no reason why you wouldn’t be able to use that method to create the 
QualifierInfo object….I’m not entirely sure of the code you are using to get 
the cast error.  Please feel free to contact me offlist if you would like, but 
I would love to try to help ☺

From: Action Request System discussion list(ARSList) 
[mailto:arslist@ARSLIST.ORG] On Behalf Of Eric Roys
Sent: Sunday, April 15, 2012 9:02 PM
To: arslist@ARSLIST.ORG
Subject: Multi schema join parse qualfier

**
For you java api folks… 

ARS 7.6.4 sp2
Java api 7.6.4 build 2
Java 7

Is there a parse qual method for translating a query string (i.e. ‘This’ = 
$This$ AND ‘That’ = $That$) for the QualifierInfo required by 
com.bmc.arsys.api.QuerySourceForm.setJoin(IQuerySource arg0, int arg1, 
QualifierInfo arg2) method [or does one have to embrace the long hand version 
and write out as indicated in the appendix of the C API reference doc (excerpt 
below)? I was hoping that the parseQualification(String queryString, 
List fieldList1, List fieldList2, int queryContext, boolean 
exceptionWhenFieldNotFound) method would do the trick but it seems the 
getListEntryObjects fails with a cast exception (java.lang.Integer cannot be 
cast to com.bmc.arsys.api.QueryFormField). 

Excerpt:
   // Create join qualifier, which is used to generate the SQL query’s
   // ON clause.  
   ArithmeticOrRelationalOperand field1 = new 
ArithmeticOrRelationalOperand(240001002, prodCat);
   Arithmet

Re: Multi schema join parse qualfier

2012-04-17 Thread LJ LongWing
Ok….I’m going to try to document this for ‘the world’.

Looking through the 7.6.4 JavaDocs, you can get a QualifierInfo object through 
numerous methods…the one outline in the appendix

QuerySourceForm primaryForm = new QuerySourceForm("Form1");
QuerySourceForm secondaryForm = new QuerySourceForm("Form2");
ArithmeticOrRelationalOperand field1 = new 
ArithmeticOrRelationalOperand(123456, primaryForm);
ArithmeticOrRelationalOperand field2 = new 
ArithmeticOrRelationalOperand(654321, secondaryForm);
RelationalOperationInfo relOp = new 
RelationalOperationInfo(RelationalOperationInfo.AR_REL_OP_EQUAL, field1, 
field2);

QualifierInfo joinQual = new QualifierInfo(relOp);

Or, through more ‘normal’ methods which would be something like this

String qual =  "'Field1' = $Field2$"; // 'Product Name' = $Model$

List f1 = arConnection.getListFieldObjects("Form1");
List f2 = arConnection.getListFieldObjects("Form2");

QualifierInfo joinQual = arConnection.parseQualification(qual, f2, f1, 
Constants.AR_QUALCONTEXT_DEFAULT);

The problem is that the first method creates a QualifierInfo object that looks 
something like this

[Operation=4,Operand Left=[Operation=1,Operand Left=[Operand 
Type=[type=1],Operand=[Field ID=123456,Func ID=0,Field Source=[Source 
Identifier=-6be110ff:136c144c57c:-8000,Source Name=Form1]]],Operand 
Right=[Operand Type=[type=1],Operand=[Field ID=654321,Func ID=0,Field 
Source=[Source Identifier=-6be110ff:136c144c57c:-7fff,Source 
Name=Form2,Operand Right=]

Whereas the second presents something like

[Operation=4,Operand Left=[Operation=1,Operand Left=[Operand 
Type=[type=1],Operand=123456],Operand Right=[Operand 
Type=[type=1],Operand=654321]],Operand Right=]

So...Eric,
What I'm reading out of this is that the people over at BMC did not deem it 
necessary to either update the parseQualification method...or provide an 
appropriately overridden version of it to be able to create a QualifierInfo 
object that will work when utilizing the getListEntryObjects method with a 
RegularQuery object as one of the inputs

This is a long, 'around the way' way of saying 'No' to your original 
questionit looks like you must use the 'long hand' method of creating the 
qualifier objects for the momentand in the long run, if you want to be able 
to use the shorthand...you could either write your own method to build it 
properlyor submit an enhancement request to BMC to have them do the leg 
work.


From: LJ LongWing [mailto:lj.longw...@gmail.com] 
Sent: Monday, April 16, 2012 8:45 AM
To: 'arslist@ARSLIST.ORG'
Subject: RE: Multi schema join parse qualfier

Eric,
I see no reason why you wouldn’t be able to use that method to create the 
QualifierInfo object….I’m not entirely sure of the code you are using to get 
the cast error.  Please feel free to contact me offlist if you would like, but 
I would love to try to help ☺

From: Action Request System discussion list(ARSList) 
[mailto:arslist@ARSLIST.ORG] On Behalf Of Eric Roys
Sent: Sunday, April 15, 2012 9:02 PM
To: arslist@ARSLIST.ORG
Subject: Multi schema join parse qualfier

** 
For you java api folks… 

ARS 7.6.4 sp2
Java api 7.6.4 build 2
Java 7

Is there a parse qual method for translating a query string (i.e. ‘This’ = 
$This$ AND ‘That’ = $That$) for the QualifierInfo required by 
com.bmc.arsys.api.QuerySourceForm.setJoin(IQuerySource arg0, int arg1, 
QualifierInfo arg2) method [or does one have to embrace the long hand version 
and write out as indicated in the appendix of the C API reference doc (excerpt 
below)? I was hoping that the parseQualification(String queryString, 
List fieldList1, List fieldList2, int queryContext, boolean 
exceptionWhenFieldNotFound) method would do the trick but it seems the 
getListEntryObjects fails with a cast exception (java.lang.Integer cannot be 
cast to com.bmc.arsys.api.QueryFormField). 

Excerpt:
   // Create join qualifier, which is used to generate the SQL query’s
   // ON clause.  
   ArithmeticOrRelationalOperand field1 = new 
ArithmeticOrRelationalOperand(240001002, prodCat);
   ArithmeticOrRelationalOperand field2 = new 
ArithmeticOrRelationalOperand(240001002, products);
   RelationalOperationInfo relOp = new 
RelationalOperationInfo(RelationalOperationInfo.AR_REL_OP_EQUAL, field1, 
field2);
   
   QualifierInfo joinQual = new QualifierInfo(relOp);

Thanks, 

Eric

CONFIDENTIALITY NOTICE: This email communication is intended only for the 
personal and confidential use of the recipient(s) designated above and may 
contain information which is subject to Federal and/or State privacy laws. In 
the event that you are not the intended recipient or the agent of the intended 
recipient, you are hereby notified that any review, disclosure, or use of the 
information contained herein is strictly prohibited. Do not copy or use the 
information c

Re: Multi schema join parse qualfier

2012-04-16 Thread LJ LongWing
Eric,

I see no reason why you wouldn’t be able to use that method to create the 
QualifierInfo object….I’m not entirely sure of the code you are using to get 
the cast error.  Please feel free to contact me offlist if you would like, but 
I would love to try to help J

 

From: Action Request System discussion list(ARSList) 
[mailto:arslist@ARSLIST.ORG] On Behalf Of Eric Roys
Sent: Sunday, April 15, 2012 9:02 PM
To: arslist@ARSLIST.ORG
Subject: Multi schema join parse qualfier

 

** 

For you java api folks… 

 

ARS 7.6.4 sp2

Java api 7.6.4 build 2

Java 7

 

Is there a parse qual method for translating a query string (i.e. ‘This’ = 
$This$ AND ‘That’ = $That$) for the QualifierInfo required by 
com.bmc.arsys.api. 

 QuerySourceForm.setJoin( 

 IQuerySource arg0, int arg1,  

 QualifierInfo arg2) method [or does one have to embrace the long hand version 
and write out as indicated in the appendix of the C API reference doc (excerpt 
below)? I was hoping that the parseQualification(String queryString, 
List fieldList1, List fieldList2, int queryContext, boolean 
exceptionWhenFieldNotFound) method would do the trick but it seems the 
getListEntryObjects fails with a cast exception (java.lang.Integer cannot be 
cast to com.bmc.arsys.api.QueryFormField). 

 

Excerpt:

// Create join qualifier, which is used to generate the SQL query’s

// ON clause.  

ArithmeticOrRelationalOperand field1 = new 
ArithmeticOrRelationalOperand(240001002, prodCat);

ArithmeticOrRelationalOperand field2 = new 
ArithmeticOrRelationalOperand(240001002, products);

RelationalOperationInfo relOp = new 
RelationalOperationInfo(RelationalOperationInfo.AR_REL_OP_EQUAL, field1, 
field2);

 

QualifierInfo joinQual = new QualifierInfo(relOp);

 

Thanks, 

 

Eric


CONFIDENTIALITY NOTICE: This email communication is intended only for the 
personal and confidential use of the recipient(s) designated above and may 
contain information which is subject to Federal and/or State privacy laws. In 
the event that you are not the intended recipient or the agent of the intended 
recipient, you are hereby notified that any review, disclosure, or use of the 
information contained herein is strictly prohibited. Do not copy or use the 
information contained within this communication, or allow it to be read, copied 
or utilized in any manner by any other person(s). If you have received this 
communication in error, please notify the sender immediately, either by 
response e-mail or by phone, and permanently delete the original e-mail, any 
attachment(s), and copies. 

_attend WWRUG12 www.wwrug.com ARSlist: "Where the Answers Are"_ 


___
UNSUBSCRIBE or access ARSlist Archives at www.arslist.org
attend wwrug12 www.wwrug12.com ARSList: "Where the Answers Are"


Multi schema join parse qualfier

2012-04-15 Thread Eric Roys
For you java api folks…

ARS 7.6.4 sp2
Java api 7.6.4 build 2
Java 7

Is there a parse qual method for translating a query string (i.e. ‘This’ = 
$This$ AND ‘That’ = $That$) for the QualifierInfo required by 
com.bmc.arsys.api.QuerySourceForm.setJoin(IQuerySource
 arg0, int arg1, 
QualifierInfo
 arg2) method [or does one have to embrace the long hand version and write out 
as indicated in the appendix of the C API reference doc (excerpt below)? I was 
hoping that the parseQualification(String queryString, List fieldList1, 
List fieldList2, int queryContext, boolean exceptionWhenFieldNotFound) 
method would do the trick but it seems the getListEntryObjects fails with a 
cast exception (java.lang.Integer cannot be cast to 
com.bmc.arsys.api.QueryFormField).

Excerpt:
// Create join qualifier, which is used to generate the SQL query’s
// ON clause.
ArithmeticOrRelationalOperand field1 = new 
ArithmeticOrRelationalOperand(240001002, prodCat);
ArithmeticOrRelationalOperand field2 = new 
ArithmeticOrRelationalOperand(240001002, products);
RelationalOperationInfo relOp = new 
RelationalOperationInfo(RelationalOperationInfo.AR_REL_OP_EQUAL, field1, 
field2);

QualifierInfo joinQual = new QualifierInfo(relOp);

Thanks,

Eric

CONFIDENTIALITY NOTICE: This email communication is intended only for the 
personal and confidential use of the recipient(s) designated above and may 
contain information which is subject to Federal and/or State privacy laws. In 
the event that you are not the intended recipient or the agent of the intended 
recipient, you are hereby notified that any review, disclosure, or use of the 
information contained herein is strictly prohibited. Do not copy or use the 
information contained within this communication, or allow it to be read, copied 
or utilized in any manner by any other person(s). If you have received this 
communication in error, please notify the sender immediately, either by 
response e-mail or by phone, and permanently delete the original e-mail, any 
attachment(s), and copies.


___
UNSUBSCRIBE or access ARSlist Archives at www.arslist.org
attend wwrug12 www.wwrug12.com ARSList: "Where the Answers Are"