Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » BIRT » Data reduction(I am trying to figure out how to limit the data I put in my final report)
Data reduction [message #686247] Tue, 21 June 2011 22:11 Go to next message
Bob  is currently offline Bob
Messages: 7
Registered: June 2011
Junior Member
Hello,
I am new to BIRT and I am trying to find a way to read only part of an item in a data set. My source is a TLE datasource and I am trying to create a report out of a JDBC dataset where one of the items is in XML code. I only want a small section of the XML code, specifically the title that the code refers to. How do I extract it from this big chunk of text for my table in my report?

example:<xml><metadata><general><title>Surveying - Pacing Video</title><description>This is a short video to demonstrate how to appropriately do pacing in a surveying setting.</description></general><wizard><media.type>File</media.type></wizard><classification><division>Physical and Biological Sciences</division><department>Physics</department></classification></metadata><item key="0" id="9df6c611-7e9a-940c-ad6a-2d3dd5b533ed" version="1" itemdefid="be0273d4-ed41-31c2-dc50-4a13a17d5ac3" itemstatus="draft"><staging/><name>Surveying - Pacing Video</name><description>This is a short video to demonstrate how to appropriately do pacing in a surveying setting.</description><newitem>true</newitem><owner>ddcd8f4b-42af-4fbd-49c2-f520e0ca3927</owner><rating average="-1.0"/><attachments><attachment type="local"><conversion>false</conversion><size>16892681</size><uuid>22621947-e19e-4476-ad4f-b004759482f9</uuid><file>pacingfinal.wmv</file><description>pacingfinal.wmv</description></attachment></attachments><badurls/><history/><moderation/><navigationNodes/></item></xml>

I need to get out "Surveying - Pacing Video" from the first line.

Do I do this via parameters, filters, or something else?
I am pretty lost so a decent explanation of what needs to be done would be appreciated.

Thank you,

[Updated on: Tue, 21 June 2011 22:13]

Report message to a moderator

Re: Data reduction [message #686648 is a reply to message #686247] Wed, 22 June 2011 16:40 Go to previous messageGo to next message
Jason Weathersby is currently offline Jason Weathersby
Messages: 9167
Registered: July 2009
Senior Member

I assume that if you create a dataset off the table one of the columns has the complete xml as a string? If so try creating a computed column on the dataset with this expression:

importPackage( Packages.javax.xml.parsers);
importPackage( Packages.org.xml.sax);
importPackage( Packages.org.w3c.dom);
importPackage(Packages.java.io);

function getTagValue(mystr, tagName) {

factory = DocumentBuilderFactory.newInstance();
builder = factory.newDocumentBuilder();
JavaStr = new java.lang.String( mystr );
bais = new ByteArrayInputStream( JavaStr.getBytes());
document = builder.parse(bais);
nlist = document.getElementsByTagName(tagName);
return nlist.item(0).getFirstChild().getNodeValue();
}

getTagValue(row["xmlcol"], "title");

Attached is an example that does this on a table because I had to use a scripted data source to reproduce your scenario. But the same concept should work for a computed column.

Jason
Re: Data reduction [message #688059 is a reply to message #686648] Thu, 23 June 2011 19:41 Go to previous messageGo to next message
Bob  is currently offline Bob
Messages: 7
Registered: June 2011
Junior Member
Thanks Jason,
Your assumption is indeed correct. This works great as Dynamic data in my table, I had problems working it into a computed column, but the dynamic text is all i really need. I went through my data again and found that some of the item's names in the XML are denoted with <name>STUFF</name>. Obviously the code you gave me accounts for title designations, but not names. Is there a way to include both into the above code, so that it can display both of these in the same column, or will I be forced to have a column for each scenario?

ex. <xml> <item global="true" myitem="true"> <name>Parallel</name> <description>Parallel symbol.</description> and some more stuff that I cannot post because the forum regards it as an error

Thanks again for the assistance
Re: Data reduction [message #688344 is a reply to message #688059] Fri, 24 June 2011 13:30 Go to previous messageGo to next message
Jason Weathersby is currently offline Jason Weathersby
Messages: 9167
Registered: July 2009
Senior Member

Bob,

In the expression you could have put

getTagValue(row["xmlcol"], "title") + "--" +getTagValue(row["name"], "title");
or something like that. You could also modify the getTagValue to take more than one tag
and return a formatted string.

Jason
Re: Data reduction [message #690079 is a reply to message #688344] Tue, 28 June 2011 23:26 Go to previous messageGo to next message
Bob  is currently offline Bob
Messages: 7
Registered: June 2011
Junior Member
Hello Jason,
Today I was trying to use the code you gave me as a dynamic text in a new report. This time the report came up with the dynamic text column blank. Besides the information I included here I attached my report design that has everything below.

My JDBC query statement is:

select item.id, item.date_for_index, item.owner, item_xml.xml, item_xml.id, tleuser.uuid, tleuser.first_name, tleuser.last_name
from item
join item_xml on item_xml.id = item.id
left join tleuser on item.owner = tleuser.uuid

and the code I am using in the dynamic text column is:

importPackage( Packages.javax.xml.parsers);
importPackage( Packages.org.xml.sax);
importPackage( Packages.org.w3c.dom);
importPackage(Packages.java.io);

function getTagValue(mystr, tagName) {

factory = DocumentBuilderFactory.newInstance();
builder = factory.newDocumentBuilder();
JavaStr = new java.lang.String( mystr );
bais = new ByteArrayInputStream( JavaStr.getBytes());
document = builder.parse(bais);
nlist = document.getElementsByTagName(tagName);
return nlist.item(0).getFirstChild().getNodeValue();
}

getTagValue(row["xml"], "title")


Also, whenever I use this code (on every report I have made) I consistently get error messages saying that:

There are errors evaluating script "importPackage( Packages.javax.xml.parsers);

The choice of Java method java.lang.String.java.lang.String matching JavaScript argument types (null) is ambiguous; candidate methods are:
String(java.lang.String)
String(char[])
String(java.lang.StringBuilder)
String(byte[])
String(java.lang.StringBuffer) (<inline>#10)

Cannot call method "getFirstChild" of null (<inline>#14).



(no subject) [message #690081 is a reply to message #688344] Tue, 28 June 2011 23:26 Go to previous messageGo to next message
Bob is currently offline Bob
Messages: 44
Registered: July 2009
Member
Hello Jason,
Today I was trying to use the code you gave me as a dynamic text in a new report. This time the report came up with the dynamic text column blank. Besides the information I included here I attached my report design that has everything below.

My JDBC query statement is:

select item.id, item.date_for_index, item.owner, item_xml.xml, item_xml.id, tleuser.uuid, tleuser.first_name, tleuser.last_name
from item
join item_xml on item_xml.id = item.id
left join tleuser on item.owner = tleuser.uuid

and the code I am using in the dynamic text column is:

importPackage( Packages.javax.xml.parsers);
importPackage( Packages.org.xml.sax);
importPackage( Packages.org.w3c.dom);
importPackage(Packages.java.io);

function getTagValue(mystr, tagName) {

factory = DocumentBuilderFactory.newInstance();
builder = factory.newDocumentBuilder();
JavaStr = new java.lang.String( mystr );
bais = new ByteArrayInputStream( JavaStr.getBytes());
document = builder.parse(bais);
nlist = document.getElementsByTagName(tagName);
return nlist.item(0).getFirstChild().getNodeValue();
}

getTagValue(row["xml"], "title")


Also, whenever I use this code (on every report I have made) I consistently get error messages saying that:

There are errors evaluating script "importPackage( Packages.javax.xml.parsers);

The choice of Java method java.lang.String.java.lang.String matching JavaScript argument types (null) is ambiguous; candidate methods are:
String(java.lang.String)
String(char[])
String(java.lang.StringBuilder)
String(byte[])
String(java.lang.StringBuffer) (<inline>#10)

Cannot call method "getFirstChild" of null (<inline>#14).




begin 644 Linking Reports.rptdesign
M/#]X;6P@=F5R<VEO;CTB,2XP(B!E;F-O9&EN9STB551&+3@B/SX*/')E<&]R
M="!X;6QN<STB:'1T<#HO+W=W=RYE8VQI<'-E+F]R9R]B:7)T+S(P,#4O9&5S
M:6=N(B!V97)S:6]N/2(S+C(N,3<B(&ED/2(Q(CX*("`@(#QP<F]P97)T>2!N
M86UE/2)C<F5A=&5D0GDB/D5C;&EP<V4@0DE25"!$97-I9VYE<B!697)S:6]N
M(#(N,RXQ+G8R,#`X,#DQ,2!"=6EL9"`F;'0[,BXS+C$N=C(P,#@P.3(R+3$Q
M-3$^/"]P<F]P97)T>3X*("`@(#QP<F]P97)T>2!N86UE/2)U;FET<R(^:6X\
M+W!R;W!E<G1Y/@H@("`@/'!R;W!E<G1Y(&YA;64](FEC;VY&:6QE(CXO=&5M
M<&QA=&5S+W-I;7!L95]L:7-T:6YG+F=I9CPO<')O<&5R='D^"B`@("`\<')O
M<&5R='D@;F%M93TB8VAE8713:&5E="(^;W)G+F5C;&EP<V4N8FER="YR97!O
M<G0N9&5S:6=N97(N=6DN8VAE871S:&5E="YS:6UP;&5L:7-T:6YG/"]P<F]P
M97)T>3X*("`@(#QP<F]P97)T>2!N86UE/2)B:61I3&%Y;W5T3W)I96YT871I
M;VXB/FQT<CPO<')O<&5R='D^"B`@("`\9&%T82US;W5R8V5S/@H@("`@("`@
M(#QO9&$M9&%T82US;W5R8V4@97AT96YS:6]N240](F-O;2YT;&4N<F5P;W)T
M:6YG+F]D82YD871A<V]U<F-E(B!N86UE/2)%<75E;&QA($1A=&%B87-E(B!I
M9#TB,C8B/@H@("`@("`@("`@("`\<')O<&5R='D@;F%M93TB=V5B<V5R=FEC
M955R;"(^:'1T<#HO+V]E<BYC86YY;VYS+F5D=2]C86YY;VYS/"]P<F]P97)T
M>3X*("`@("`@("`@("`@/'!R;W!E<G1Y(&YA;64](G=E8G-E<G9I8V55<V5R
M(CYM:6QL97)?;3PO<')O<&5R='D^"B`@("`@("`@("`@(#QE;F-R>7!T960M
M<')O<&5R='D@;F%M93TB=V5B<V5R=FEC95!A<W-W;W)D(B!E;F-R>7!T:6]N
M240](F)A<V4V-"(^4DAG>DUZ43!.5%4]/"]E;F-R>7!T960M<')O<&5R='D^
M"B`@("`@("`@/"]O9&$M9&%T82US;W5R8V4^"B`@("`\+V1A=&$M<V]U<F-E
M<SX*("`@(#QD871A+7-E=',^"B`@("`@("`@/&]D82UD871A+7-E="!E>'1E
M;G-I;VY)1#TB8V]M+G1L92YR97!O<G1I;F<N;V1A+F1A=&%S970N:F1B8R(@
M;F%M93TB1&%T82!3970B(&ED/2(R-R(^"B`@("`@("`@("`@(#QL:7-T+7!R
M;W!E<G1Y(&YA;64](F-O;7!U=&5D0V]L=6UN<R(^"B`@("`@("`@("`@("`@
M("`\<W1R=6-T=7)E/@H@("`@("`@("`@("`@("`@("`@(#QP<F]P97)T>2!N
M86UE/2)N86UE(CY4;W1A;"!)=&5M($-O=6YT/"]P<F]P97)T>3X*("`@("`@
M("`@("`@("`@("`@("`\<')O<&5R='D@;F%M93TB9&%T851Y<&4B/FEN=&5G
M97(\+W!R;W!E<G1Y/@H@("`@("`@("`@("`@("`@("`@(#QP<F]P97)T>2!N
M86UE/2)A9V=R96=A=&5&=6YC=&EO;B(^0T]53E1$25-424Y#5#PO<')O<&5R
M='D^"B`@("`@("`@("`@("`@("`@("`@/&QI<W0M<')O<&5R='D@;F%M93TB
M87)G=6UE;G1S(CX*("`@("`@("`@("`@("`@("`@("`@("`@/'-T<G5C='5R
M93X*("`@("`@("`@("`@("`@("`@("`@("`@("`@(#QP<F]P97)T>2!N86UE
M/2)N86UE(CY%>'!R97-S:6]N/"]P<F]P97)T>3X*("`@("`@("`@("`@("`@
M("`@("`@("`@("`@(#QE>'!R97-S:6]N(&YA;64](G9A;'5E(CYR;W=;(FED
M(ET\+V5X<')E<W-I;VX^"B`@("`@("`@("`@("`@("`@("`@("`@(#PO<W1R
M=6-T=7)E/@H@("`@("`@("`@("`@("`@("`@(#PO;&ES="UP<F]P97)T>3X*
M("`@("`@("`@("`@("`@(#PO<W1R=6-T=7)E/@H@("`@("`@("`@("`\+VQI
M<W0M<')O<&5R='D^"B`@("`@("`@("`@(#QS=')U8W1U<F4@;F%M93TB8V%C
M:&5D365T841A=&$B/@H@("`@("`@("`@("`@("`@/&QI<W0M<')O<&5R='D@
M;F%M93TB<F5S=6QT4V5T(CX*("`@("`@("`@("`@("`@("`@("`\<W1R=6-T
M=7)E/@H@("`@("`@("`@("`@("`@("`@("`@("`\<')O<&5R='D@;F%M93TB
M<&]S:71I;VXB/C$\+W!R;W!E<G1Y/@H@("`@("`@("`@("`@("`@("`@("`@
M("`\<')O<&5R='D@;F%M93TB;F%M92(^:60\+W!R;W!E<G1Y/@H@("`@("`@
M("`@("`@("`@("`@("`@("`\<')O<&5R='D@;F%M93TB9&%T851Y<&4B/F1E
M8VEM86P\+W!R;W!E<G1Y/@H@("`@("`@("`@("`@("`@("`@(#PO<W1R=6-T
M=7)E/@H@("`@("`@("`@("`@("`@("`@(#QS=')U8W1U<F4^"B`@("`@("`@
M("`@("`@("`@("`@("`@(#QP<F]P97)T>2!N86UE/2)P;W-I=&EO;B(^,CPO
M<')O<&5R='D^"B`@("`@("`@("`@("`@("`@("`@("`@(#QP<F]P97)T>2!N
M86UE/2)N86UE(CYD871E7V9O<E]I;F1E>#PO<')O<&5R='D^"B`@("`@("`@
M("`@("`@("`@("`@("`@(#QP<F]P97)T>2!N86UE/2)D871A5'EP92(^9&%T
M92UT:6UE/"]P<F]P97)T>3X*("`@("`@("`@("`@("`@("`@("`\+W-T<G5C
M='5R93X*("`@("`@("`@("`@("`@("`@("`\<W1R=6-T=7)E/@H@("`@("`@
M("`@("`@("`@("`@("`@("`\<')O<&5R='D@;F%M93TB<&]S:71I;VXB/C,\
M+W!R;W!E<G1Y/@H@("`@("`@("`@("`@("`@("`@("`@("`\<')O<&5R='D@
M;F%M93TB;F%M92(^;W=N97(\+W!R;W!E<G1Y/@H@("`@("`@("`@("`@("`@
M("`@("`@("`\<')O<&5R='D@;F%M93TB9&%T851Y<&4B/G-T<FEN9SPO<')O
M<&5R='D^"B`@("`@("`@("`@("`@("`@("`@/"]S=')U8W1U<F4^"B`@("`@
M("`@("`@("`@("`@("`@/'-T<G5C='5R93X*("`@("`@("`@("`@("`@("`@
M("`@("`@/'!R;W!E<G1Y(&YA;64](G!O<VET:6]N(CXT/"]P<F]P97)T>3X*
M("`@("`@("`@("`@("`@("`@("`@("`@/'!R;W!E<G1Y(&YA;64](FYA;64B
M/GAM;#PO<')O<&5R='D^"B`@("`@("`@("`@("`@("`@("`@("`@(#QP<F]P
M97)T>2!N86UE/2)D871A5'EP92(^<W1R:6YG/"]P<F]P97)T>3X*("`@("`@
M("`@("`@("`@("`@("`\+W-T<G5C='5R93X*("`@("`@("`@("`@("`@("`@
M("`\<W1R=6-T=7)E/@H@("`@("`@("`@("`@("`@("`@("`@("`\<')O<&5R
M='D@;F%M93TB<&]S:71I;VXB/C4\+W!R;W!E<G1Y/@H@("`@("`@("`@("`@
M("`@("`@("`@("`\<')O<&5R='D@;F%M93TB;F%M92(^:61?-3PO<')O<&5R
M='D^"B`@("`@("`@("`@("`@("`@("`@("`@(#QP<F]P97)T>2!N86UE/2)D
M871A5'EP92(^9&5C:6UA;#PO<')O<&5R='D^"B`@("`@("`@("`@("`@("`@
M("`@/"]S=')U8W1U<F4^"B`@("`@("`@("`@("`@("`@("`@/'-T<G5C='5R
M93X*("`@("`@("`@("`@("`@("`@("`@("`@/'!R;W!E<G1Y(&YA;64](G!O
M<VET:6]N(CXV/"]P<F]P97)T>3X*("`@("`@("`@("`@("`@("`@("`@("`@
M/'!R;W!E<G1Y(&YA;64](FYA;64B/G5U:60\+W!R;W!E<G1Y/@H@("`@("`@
M("`@("`@("`@("`@("`@("`\<')O<&5R='D@;F%M93TB9&%T851Y<&4B/G-T
M<FEN9SPO<')O<&5R='D^"B`@("`@("`@("`@("`@("`@("`@/"]S=')U8W1U
M<F4^"B`@("`@("`@("`@("`@("`@("`@/'-T<G5C='5R93X*("`@("`@("`@
M("`@("`@("`@("`@("`@/'!R;W!E<G1Y(&YA;64](G!O<VET:6]N(CXW/"]P
M<F]P97)T>3X*("`@("`@("`@("`@("`@("`@("`@("`@/'!R;W!E<G1Y(&YA
M;64](FYA;64B/F9I<G-T7VYA;64\+W!R;W!E<G1Y/@H@("`@("`@("`@("`@
M("`@("`@("`@("`\<')O<&5R='D@;F%M93TB9&%T851Y<&4B/G-T<FEN9SPO
M<')O<&5R='D^"B`@("`@("`@("`@("`@("`@("`@/"]S=')U8W1U<F4^"B`@
M("`@("`@("`@("`@("`@("`@/'-T<G5C='5R93X*("`@("`@("`@("`@("`@
M("`@("`@("`@/'!R;W!E<G1Y(&YA;64](G!O<VET:6]N(CXX/"]P<F]P97)T
M>3X*("`@("`@("`@("`@("`@("`@("`@("`@/'!R;W!E<G1Y(&YA;64](FYA
M;64B/FQA<W1?;F%M93PO<')O<&5R='D^"B`@("`@("`@("`@("`@("`@("`@
M("`@(#QP<F]P97)T>2!N86UE/2)D871A5'EP92(^<W1R:6YG/"]P<F]P97)T
M>3X*("`@("`@("`@("`@("`@("`@("`\+W-T<G5C='5R93X*("`@("`@("`@
M("`@("`@("`@("`\<W1R=6-T=7)E/@H@("`@("`@("`@("`@("`@("`@("`@
M("`\<')O<&5R='D@;F%M93TB<&]S:71I;VXB/CD\+W!R;W!E<G1Y/@H@("`@
M("`@("`@("`@("`@("`@("`@("`\<')O<&5R='D@;F%M93TB;F%M92(^5&]T
M86P@271E;2!#;W5N=#PO<')O<&5R='D^"B`@("`@("`@("`@("`@("`@("`@
M("`@(#QP<F]P97)T>2!N86UE/2)D871A5'EP92(^:6YT96=E<CPO<')O<&5R
M='D^"B`@("`@("`@("`@("`@("`@("`@/"]S=')U8W1U<F4^"B`@("`@("`@
M("`@("`@("`\+VQI<W0M<')O<&5R='D^"B`@("`@("`@("`@(#PO<W1R=6-T
M=7)E/@H@("`@("`@("`@("`\<')O<&5R='D@;F%M93TB9&%T85-O=7)C92(^
M17%U96QL82!$871A8F%S93PO<')O<&5R='D^"B`@("`@("`@("`@(#QL:7-T
M+7!R;W!E<G1Y(&YA;64](G)E<W5L=%-E="(^"B`@("`@("`@("`@("`@("`\
M<W1R=6-T=7)E/@H@("`@("`@("`@("`@("`@("`@(#QP<F]P97)T>2!N86UE
M/2)P;W-I=&EO;B(^,3PO<')O<&5R='D^"B`@("`@("`@("`@("`@("`@("`@
M/'!R;W!E<G1Y(&YA;64](FYA;64B/FED/"]P<F]P97)T>3X*("`@("`@("`@
M("`@("`@("`@("`\<')O<&5R='D@;F%M93TB;F%T:79E3F%M92(^:60\+W!R
M;W!E<G1Y/@H@("`@("`@("`@("`@("`@("`@(#QP<F]P97)T>2!N86UE/2)D
M871A5'EP92(^9&5C:6UA;#PO<')O<&5R='D^"B`@("`@("`@("`@("`@("`\
M+W-T<G5C='5R93X*("`@("`@("`@("`@("`@(#QS=')U8W1U<F4^"B`@("`@
M("`@("`@("`@("`@("`@/'!R;W!E<G1Y(&YA;64](G!O<VET:6]N(CXR/"]P
M<F]P97)T>3X*("`@("`@("`@("`@("`@("`@("`\<')O<&5R='D@;F%M93TB
M;F%M92(^9&%T95]F;W)?:6YD97@\+W!R;W!E<G1Y/@H@("`@("`@("`@("`@
M("`@("`@(#QP<F]P97)T>2!N86UE/2)N871I=F5.86UE(CYD871E7V9O<E]I
M;F1E>#PO<')O<&5R='D^"B`@("`@("`@("`@("`@("`@("`@/'!R;W!E<G1Y
M(&YA;64](F1A=&%4>7!E(CYD871E+71I;64\+W!R;W!E<G1Y/@H@("`@("`@
M("`@("`@("`@/"]S=')U8W1U<F4^"B`@("`@("`@("`@("`@("`\<W1R=6-T
M=7)E/@H@("`@("`@("`@("`@("`@("`@(#QP<F]P97)T>2!N86UE/2)P;W-I
M=&EO;B(^,SPO<')O<&5R='D^"B`@("`@("`@("`@("`@("`@("`@/'!R;W!E
M<G1Y(&YA;64](FYA;64B/F]W;F5R/"]P<F]P97)T>3X*("`@("`@("`@("`@
M("`@("`@("`\<')O<&5R='D@;F%M93TB;F%T:79E3F%M92(^;W=N97(\+W!R
M;W!E<G1Y/@H@("`@("`@("`@("`@("`@("`@(#QP<F]P97)T>2!N86UE/2)D
M871A5'EP92(^<W1R:6YG/"]P<F]P97)T>3X*("`@("`@("`@("`@("`@(#PO
M<W1R=6-T=7)E/@H@("`@("`@("`@("`@("`@/'-T<G5C='5R93X*("`@("`@
M("`@("`@("`@("`@("`\<')O<&5R='D@;F%M93TB<&]S:71I;VXB/C0\+W!R
M;W!E<G1Y/@H@("`@("`@("`@("`@("`@("`@(#QP<F]P97)T>2!N86UE/2)N
M86UE(CYX;6P\+W!R;W!E<G1Y/@H@("`@("`@("`@("`@("`@("`@(#QP<F]P
M97)T>2!N86UE/2)N871I=F5.86UE(CYX;6P\+W!R;W!E<G1Y/@H@("`@("`@
M("`@("`@("`@("`@(#QP<F]P97)T>2!N86UE/2)D871A5'EP92(^<W1R:6YG
M/"]P<F]P97)T>3X*("`@("`@("`@("`@("`@(#PO<W1R=6-T=7)E/@H@("`@
M("`@("`@("`@("`@/'-T<G5C='5R93X*("`@("`@("`@("`@("`@("`@("`\
M<')O<&5R='D@;F%M93TB<&]S:71I;VXB/C4\+W!R;W!E<G1Y/@H@("`@("`@
M("`@("`@("`@("`@(#QP<F]P97)T>2!N86UE/2)N86UE(CYI9%\U/"]P<F]P
M97)T>3X*("`@("`@("`@("`@("`@("`@("`\<')O<&5R='D@;F%M93TB;F%T
M:79E3F%M92(^:60\+W!R;W!E<G1Y/@H@("`@("`@("`@("`@("`@("`@(#QP
M<F]P97)T>2!N86UE/2)D871A5'EP92(^9&5C:6UA;#PO<')O<&5R='D^"B`@
M("`@("`@("`@("`@("`\+W-T<G5C='5R93X*("`@("`@("`@("`@("`@(#QS
M=')U8W1U<F4^"B`@("`@("`@("`@("`@("`@("`@/'!R;W!E<G1Y(&YA;64]
M(G!O<VET:6]N(CXV/"]P<F]P97)T>3X*("`@("`@("`@("`@("`@("`@("`\
M<')O<&5R='D@;F%M93TB;F%M92(^=75I9#PO<')O<&5R='D^"B`@("`@("`@
M("`@("`@("`@("`@/'!R;W!E<G1Y(&YA;64](FYA=&EV94YA;64B/G5U:60\
M+W!R;W!E<G1Y/@H@("`@("`@("`@("`@("`@("`@(#QP<F]P97)T>2!N86UE
M/2)D871A5'EP92(^<W1R:6YG/"]P<F]P97)T>3X*("`@("`@("`@("`@("`@
M(#PO<W1R=6-T=7)E/@H@("`@("`@("`@("`@("`@/'-T<G5C='5R93X*("`@
M("`@("`@("`@("`@("`@("`\<')O<&5R='D@;F%M93TB<&]S:71I;VXB/C<\
M+W!R;W!E<G1Y/@H@("`@("`@("`@("`@("`@("`@(#QP<F]P97)T>2!N86UE
M/2)N86UE(CYF:7)S=%]N86UE/"]P<F]P97)T>3X*("`@("`@("`@("`@("`@
M("`@("`\<')O<&5R='D@;F%M93TB;F%T:79E3F%M92(^9FER<W1?;F%M93PO
M<')O<&5R='D^"B`@("`@("`@("`@("`@("`@("`@/'!R;W!E<G1Y(&YA;64]
M(F1A=&%4>7!E(CYS=')I;F<\+W!R;W!E<G1Y/@H@("`@("`@("`@("`@("`@
M/"]S=')U8W1U<F4^"B`@("`@("`@("`@("`@("`\<W1R=6-T=7)E/@H@("`@
M("`@("`@("`@("`@("`@(#QP<F]P97)T>2!N86UE/2)P;W-I=&EO;B(^.#PO
M<')O<&5R='D^"B`@("`@("`@("`@("`@("`@("`@/'!R;W!E<G1Y(&YA;64]
M(FYA;64B/FQA<W1?;F%M93PO<')O<&5R='D^"B`@("`@("`@("`@("`@("`@
M("`@/'!R;W!E<G1Y(&YA;64](FYA=&EV94YA;64B/FQA<W1?;F%M93PO<')O
M<&5R='D^"B`@("`@("`@("`@("`@("`@("`@/'!R;W!E<G1Y(&YA;64](F1A
M=&%4>7!E(CYS=')I;F<\+W!R;W!E<G1Y/@H@("`@("`@("`@("`@("`@/"]S
M=')U8W1U<F4^"B`@("`@("`@("`@(#PO;&ES="UP<F]P97)T>3X*("`@("`@
M("`@("`@/'!R;W!E<G1Y(&YA;64](G%U97)Y5&5X="(^<V5L96-T(&ET96TN
M:60L(&ET96TN9&%T95]F;W)?:6YD97@L(&ET96TN;W=N97(L(&ET96U?>&UL
M+GAM;"P@:71E;5]X;6PN:60L('1L975S97(N=75I9"P@=&QE=7-E<BYF:7)S
M=%]N86UE+"!T;&5U<V5R+FQA<W1?;F%M90IF<F]M(&ET96T*"6IO:6X@:71E
M;5]X;6P@;VX@:71E;5]X;6PN:60@/2!I=&5M+FED"@EL969T(&IO:6X@=&QE
M=7-E<B!O;B!I=&5M+F]W;F5R(#T@=&QE=7-E<BYU=6ED/"]P<F]P97)T>3X*
M("`@("`@("`\+V]D82UD871A+7-E=#X*("`@(#PO9&%T82US971S/@H@("`@
M/'-T>6QE<SX*("`@("`@("`\<W1Y;&4@;F%M93TB8W)O<W-T86(M8V5L;"(@
M:60](C(T(CX*("`@("`@("`@("`@/'!R;W!E<G1Y(&YA;64](F)O<F1E<D)O
M='1O;4-O;&]R(CXC0T-#0T-#/"]P<F]P97)T>3X*("`@("`@("`@("`@/'!R
M;W!E<G1Y(&YA;64](F)O<F1E<D)O='1O;5-T>6QE(CYS;VQI9#PO<')O<&5R
M='D^"B`@("`@("`@("`@(#QP<F]P97)T>2!N86UE/2)B;W)D97)";W1T;VU7
M:61T:"(^,7!T/"]P<F]P97)T>3X*("`@("`@("`@("`@/'!R;W!E<G1Y(&YA
M;64](F)O<F1E<DQE9G1#;VQO<B(^(T-#0T-#0SPO<')O<&5R='D^"B`@("`@
M("`@("`@(#QP<F]P97)T>2!N86UE/2)B;W)D97),969T4W1Y;&4B/G-O;&ED
M/"]P<F]P97)T>3X*("`@("`@("`@("`@/'!R;W!E<G1Y(&YA;64](F)O<F1E
M<DQE9G17:61T:"(^,7!T/"]P<F]P97)T>3X*("`@("`@("`@("`@/'!R;W!E
M<G1Y(&YA;64](F)O<F1E<E)I9VAT0V]L;W(B/B-#0T-#0T,\+W!R;W!E<G1Y
M/@H@("`@("`@("`@("`\<')O<&5R='D@;F%M93TB8F]R9&5R4FEG:'13='EL
M92(^<V]L:60\+W!R;W!E<G1Y/@H@("`@("`@("`@("`\<')O<&5R='D@;F%M
M93TB8F]R9&5R4FEG:'17:61T:"(^,7!T/"]P<F]P97)T>3X*("`@("`@("`@
M("`@/'!R;W!E<G1Y(&YA;64](F)O<F1E<E1O<$-O;&]R(CXC0T-#0T-#/"]P
M<F]P97)T>3X*("`@("`@("`@("`@/'!R;W!E<G1Y(&YA;64](F)O<F1E<E1O
M<%-T>6QE(CYS;VQI9#PO<')O<&5R='D^"B`@("`@("`@("`@(#QP<F]P97)T
M>2!N86UE/2)B;W)D97)4;W!7:61T:"(^,7!T/"]P<F]P97)T>3X*("`@("`@
M("`\+W-T>6QE/@H@("`@("`@(#QS='EL92!N86UE/2)C<F]S<W1A8B(@:60]
M(C(U(CX*("`@("`@("`@("`@/'!R;W!E<G1Y(&YA;64](F)O<F1E<D)O='1O
M;4-O;&]R(CXC0T-#0T-#/"]P<F]P97)T>3X*("`@("`@("`@("`@/'!R;W!E
M<G1Y(&YA;64](F)O<F1E<D)O='1O;5-T>6QE(CYS;VQI9#PO<')O<&5R='D^
M"B`@("`@("`@("`@(#QP<F]P97)T>2!N86UE/2)B;W)D97)";W1T;VU7:61T
M:"(^,7!T/"]P<F]P97)T>3X*("`@("`@("`@("`@/'!R;W!E<G1Y(&YA;64]
M(F)O<F1E<DQE9G1#;VQO<B(^(T-#0T-#0SPO<')O<&5R='D^"B`@("`@("`@
M("`@(#QP<F]P97)T>2!N86UE/2)B;W)D97),969T4W1Y;&4B/G-O;&ED/"]P
M<F]P97)T>3X*("`@("`@("`@("`@/'!R;W!E<G1Y(&YA;64](F)O<F1E<DQE
M9G17:61T:"(^,7!T/"]P<F]P97)T>3X*("`@("`@("`@("`@/'!R;W!E<G1Y
M(&YA;64](F)O<F1E<E)I9VAT0V]L;W(B/B-#0T-#0T,\+W!R;W!E<G1Y/@H@
M("`@("`@("`@("`\<')O<&5R='D@;F%M93TB8F]R9&5R4FEG:'13='EL92(^
M<V]L:60\+W!R;W!E<G1Y/@H@("`@("`@("`@("`\<')O<&5R='D@;F%M93TB
M8F]R9&5R4FEG:'17:61T:"(^,7!T/"]P<F]P97)T>3X*("`@("`@("`@("`@
M/'!R;W!E<G1Y(&YA;64](F)O<F1E<E1O<$-O;&]R(CXC0T-#0T-#/"]P<F]P
M97)T>3X*("`@("`@("`@("`@/'!R;W!E<G1Y(&YA;64](F)O<F1E<E1O<%-T
M>6QE(CYS;VQI9#PO<')O<&5R='D^"B`@("`@("`@("`@(#QP<F]P97)T>2!N
M86UE/2)B;W)D97)4;W!7:61T:"(^,7!T/"]P<F]P97)T>3X*("`@("`@("`\
M+W-T>6QE/@H@("`@/"]S='EL97,^"B`@("`\<&%G92US971U<#X*("`@("`@
M("`\<VEM<&QE+6UA<W1E<BUP86=E(&YA;64](E-I;7!L92!-87-T97)086=E
M(B!I9#TB,B(^"B`@("`@("`@("`@(#QP86=E+69O;W1E<CX*("`@("`@("`@
M("`@("`@(#QT97AT(&ED/2(S(CX*("`@("`@("`@("`@("`@("`@("`\<')O
M<&5R='D@;F%M93TB8V]N=&5N=%1Y<&4B/FAT;6P\+W!R;W!E<G1Y/@H@("`@
M("`@("`@("`@("`@("`@(#QT97AT+7!R;W!E<G1Y(&YA;64](F-O;G1E;G0B
M/CPA6T-$051!6SQV86QU92UO9CYN97<@1&%T92@I/"]V86QU92UO9CY=73X\
M+W1E>'0M<')O<&5R='D^"B`@("`@("`@("`@("`@("`\+W1E>'0^"B`@("`@
M("`@("`@(#PO<&%G92UF;V]T97(^"B`@("`@("`@/"]S:6UP;&4M;6%S=&5R
M+7!A9V4^"B`@("`\+W!A9V4M<V5T=7`^"B`@("`\8F]D>3X*("`@("`@("`\
M=&%B;&4@:60](C0B/@H@("`@("`@("`@("`\<')O<&5R='D@;F%M93TB=VED
M=&@B/C$P,"4\+W!R;W!E<G1Y/@H@("`@("`@("`@("`\<')O<&5R='D@;F%M
M93TB9&%T85-E="(^1&%T82!3970\+W!R;W!E<G1Y/@H@("`@("`@("`@("`\
M;&ES="UP<F]P97)T>2!N86UE/2)B;W5N9$1A=&%#;VQU;6YS(CX*("`@("`@
M("`@("`@("`@(#QS=')U8W1U<F4^"B`@("`@("`@("`@("`@("`@("`@/'!R
M;W!E<G1Y(&YA;64](FYA;64B/FED/"]P<F]P97)T>3X*("`@("`@("`@("`@
M("`@("`@("`\<')O<&5R='D@;F%M93TB9&ES<&QA>4YA;64B/FED/"]P<F]P
M97)T>3X*("`@("`@("`@("`@("`@("`@("`\97AP<F5S<VEO;B!N86UE/2)E
M>'!R97-S:6]N(CYD871A4V5T4F]W6R)I9")=/"]E>'!R97-S:6]N/@H@("`@
M("`@("`@("`@("`@("`@(#QP<F]P97)T>2!N86UE/2)D871A5'EP92(^9&5C
M:6UA;#PO<')O<&5R='D^"B`@("`@("`@("`@("`@("`\+W-T<G5C='5R93X*
M("`@("`@("`@("`@("`@(#QS=')U8W1U<F4^"B`@("`@("`@("`@("`@("`@
M("`@/'!R;W!E<G1Y(&YA;64](FYA;64B/F]W;F5R/"]P<F]P97)T>3X*("`@
M("`@("`@("`@("`@("`@("`\<')O<&5R='D@;F%M93TB9&ES<&QA>4YA;64B
M/F]W;F5R/"]P<F]P97)T>3X*("`@("`@("`@("`@("`@("`@("`\97AP<F5S
M<VEO;B!N86UE/2)E>'!R97-S:6]N(CYD871A4V5T4F]W6R)O=VYE<B)=/"]E
M>'!R97-S:6]N/@H@("`@("`@("`@("`@("`@("`@(#QP<F]P97)T>2!N86UE
M/2)D871A5'EP92(^<W1R:6YG/"]P<F]P97)T>3X*("`@("`@("`@("`@("`@
M(#PO<W1R=6-T=7)E/@H@("`@("`@("`@("`@("`@/'-T<G5C='5R93X*("`@
M("`@("`@("`@("`@("`@("`\<')O<&5R='D@;F%M93TB;F%M92(^9FER<W1?
M;F%M93PO<')O<&5R='D^"B`@("`@("`@("`@("`@("`@("`@/'!R;W!E<G1Y
M(&YA;64](F1I<W!L87E.86UE(CYF:7)S=%]N86UE/"]P<F]P97)T>3X*("`@
M("`@("`@("`@("`@("`@("`\97AP<F5S<VEO;B!N86UE/2)E>'!R97-S:6]N
M(CYD871A4V5T4F]W6R)F:7)S=%]N86UE(ET\+V5X<')E<W-I;VX^"B`@("`@
M("`@("`@("`@("`@("`@/'!R;W!E<G1Y(&YA;64](F1A=&%4>7!E(CYS=')I
M;F<\+W!R;W!E<G1Y/@H@("`@("`@("`@("`@("`@/"]S=')U8W1U<F4^"B`@
M("`@("`@("`@("`@("`\<W1R=6-T=7)E/@H@("`@("`@("`@("`@("`@("`@
M(#QP<F]P97)T>2!N86UE/2)N86UE(CYL87-T7VYA;64\+W!R;W!E<G1Y/@H@
M("`@("`@("`@("`@("`@("`@(#QP<F]P97)T>2!N86UE/2)D:7-P;&%Y3F%M
M92(^;&%S=%]N86UE/"]P<F]P97)T>3X*("`@("`@("`@("`@("`@("`@("`\
M97AP<F5S<VEO;B!N86UE/2)E>'!R97-S:6]N(CYD871A4V5T4F]W6R)L87-T
M7VYA;64B73PO97AP<F5S<VEO;CX*("`@("`@("`@("`@("`@("`@("`\<')O
M<&5R='D@;F%M93TB9&%T851Y<&4B/G-T<FEN9SPO<')O<&5R='D^"B`@("`@
M("`@("`@("`@("`\+W-T<G5C='5R93X*("`@("`@("`@("`@("`@(#QS=')U
M8W1U<F4^"B`@("`@("`@("`@("`@("`@("`@/'!R;W!E<G1Y(&YA;64](FYA
M;64B/E1O=&%L($ET96T@0V]U;G0\+W!R;W!E<G1Y/@H@("`@("`@("`@("`@
M("`@("`@(#QP<F]P97)T>2!N86UE/2)D:7-P;&%Y3F%M92(^5&]T86P@271E
M;2!#;W5N=#PO<')O<&5R='D^"B`@("`@("`@("`@("`@("`@("`@/&5X<')E
M<W-I;VX@;F%M93TB97AP<F5S<VEO;B(^9&%T85-E=%)O=ULB5&]T86P@271E
M;2!#;W5N=")=/"]E>'!R97-S:6]N/@H@("`@("`@("`@("`@("`@("`@(#QP
M<F]P97)T>2!N86UE/2)D871A5'EP92(^:6YT96=E<CPO<')O<&5R='D^"B`@
M("`@("`@("`@("`@("`\+W-T<G5C='5R93X*("`@("`@("`@("`@/"]L:7-T
M+7!R;W!E<G1Y/@H@("`@("`@("`@("`\<')O<&5R='D@;F%M93TB<&%G94)R
M96%K26YT97)V86PB/C4P/"]P<F]P97)T>3X*("`@("`@("`@("`@/&-O;'5M
M;B!I9#TB,C`B/@H@("`@("`@("`@("`@("`@/'!R;W!E<G1Y(&YA;64](G=I
M9'1H(CXP+C0V.#<U:6X\+W!R;W!E<G1Y/@H@("`@("`@("`@("`\+V-O;'5M
M;CX*("`@("`@("`@("`@/&-O;'5M;B!I9#TB-#(B+SX*("`@("`@("`@("`@
M/&-O;'5M;B!I9#TB-#8B+SX*("`@("`@("`@("`@/&-O;'5M;B!I9#TB,C$B
M+SX*("`@("`@("`@("`@/&-O;'5M;B!I9#TB,C(B+SX*("`@("`@("`@("`@
M/&-O;'5M;B!I9#TB,C,B+SX*("`@("`@("`@("`@/&AE861E<CX*("`@("`@
M("`@("`@("`@(#QR;W<@:60](C4B/@H@("`@("`@("`@("`@("`@("`@(#QC
M96QL(&ED/2(V(CX*("`@("`@("`@("`@("`@("`@("`@("`@/&QA8F5L(&ED
M/2(R."(^"B`@("`@("`@("`@("`@("`@("`@("`@("`@("`\=&5X="UP<F]P
M97)T>2!N86UE/2)T97AT(CY)=&5M($E$/"]T97AT+7!R;W!E<G1Y/@H@("`@
M("`@("`@("`@("`@("`@("`@("`\+VQA8F5L/@H@("`@("`@("`@("`@("`@
M("`@(#PO8V5L;#X*("`@("`@("`@("`@("`@("`@("`\8V5L;"!I9#TB,SDB
M/@H@("`@("`@("`@("`@("`@("`@("`@("`\=&5X="!I9#TB-#<B/@H@("`@
M("`@("`@("`@("`@("`@("`@("`@("`@/'!R;W!E<G1Y(&YA;64](F-O;G1E
M;G14>7!E(CYA=71O/"]P<F]P97)T>3X*("`@("`@("`@("`@("`@("`@("`@
M("`@("`@(#QT97AT+7!R;W!E<G1Y(&YA;64](F-O;G1E;G0B/CPA6T-$051!
M6TET96T@3F%M95U=/CPO=&5X="UP<F]P97)T>3X*("`@("`@("`@("`@("`@
M("`@("`@("`@/"]T97AT/@H@("`@("`@("`@("`@("`@("`@(#PO8V5L;#X*
M("`@("`@("`@("`@("`@("`@("`\8V5L;"!I9#TB-#,B/@H@("`@("`@("`@
M("`@("`@("`@("`@("`\=&5X="!I9#TB-#@B/@H@("`@("`@("`@("`@("`@
M("`@("`@("`@("`@/'!R;W!E<G1Y(&YA;64](F-O;G1E;G14>7!E(CYA=71O
M/"]P<F]P97)T>3X*("`@("`@("`@("`@("`@("`@("`@("`@("`@(#QT97AT
M+7!R;W!E<G1Y(&YA;64](F-O;G1E;G0B/CPA6T-$051!6T%L=&5R;F%T92!)
M=&5M#0I.86UE75T^/"]T97AT+7!R;W!E<G1Y/@H@("`@("`@("`@("`@("`@
M("`@("`@("`\+W1E>'0^"B`@("`@("`@("`@("`@("`@("`@/"]C96QL/@H@
M("`@("`@("`@("`@("`@("`@(#QC96QL(&ED/2(W(CX*("`@("`@("`@("`@
M("`@("`@("`@("`@/&QA8F5L(&ED/2(S,"(^"B`@("`@("`@("`@("`@("`@
M("`@("`@("`@("`\=&5X="UP<F]P97)T>2!N86UE/2)T97AT(CY/=VYE<B!3
M>7-T96T@240\+W1E>'0M<')O<&5R='D^"B`@("`@("`@("`@("`@("`@("`@
M("`@(#PO;&%B96P^"B`@("`@("`@("`@("`@("`@("`@/"]C96QL/@H@("`@
M("`@("`@("`@("`@("`@(#QC96QL(&ED/2(X(CX*("`@("`@("`@("`@("`@
M("`@("`@("`@/&QA8F5L(&ED/2(S,B(^"B`@("`@("`@("`@("`@("`@("`@
M("`@("`@("`\=&5X="UP<F]P97)T>2!N86UE/2)T97AT(CY/=VYE<B=S($9I
M<G-T($YA;64\+W1E>'0M<')O<&5R='D^"B`@("`@("`@("`@("`@("`@("`@
M("`@(#PO;&%B96P^"B`@("`@("`@("`@("`@("`@("`@/"]C96QL/@H@("`@
M("`@("`@("`@("`@("`@(#QC96QL(&ED/2(Y(CX*("`@("`@("`@("`@("`@
M("`@("`@("`@/&QA8F5L(&ED/2(S-"(^"B`@("`@("`@("`@("`@("`@("`@
M("`@("`@("`\=&5X="UP<F]P97)T>2!N86UE/2)T97AT(CY/=VYE<B=S($QA
M<W0@3F%M93PO=&5X="UP<F]P97)T>3X*("`@("`@("`@("`@("`@("`@("`@
M("`@/"]L86)E;#X*("`@("`@("`@("`@("`@("`@("`\+V-E;&P^"B`@("`@
M("`@("`@("`@("`\+W)O=SX*("`@("`@("`@("`@/"]H96%D97(^"B`@("`@
M("`@("`@(#QD971A:6P^"B`@("`@("`@("`@("`@("`\<F]W(&ED/2(Q,"(^
M"B`@("`@("`@("`@("`@("`@("`@/&-E;&P@:60](C$Q(CX*("`@("`@("`@
M("`@("`@("`@("`@("`@/&1A=&$@:60](C(Y(CX*("`@("`@("`@("`@("`@
M("`@("`@("`@("`@(#QP<F]P97)T>2!N86UE/2)T97AT06QI9VXB/F-E;G1E
M<CPO<')O<&5R='D^"B`@("`@("`@("`@("`@("`@("`@("`@("`@("`\<')O
M<&5R='D@;F%M93TB<F5S=6QT4V5T0V]L=6UN(CYI9#PO<')O<&5R='D^"B`@
M("`@("`@("`@("`@("`@("`@("`@(#PO9&%T83X*("`@("`@("`@("`@("`@
M("`@("`\+V-E;&P^"B`@("`@("`@("`@("`@("`@("`@/&-E;&P@:60](C0P
M(CX*("`@("`@("`@("`@("`@("`@("`@("`@/'1E>'0M9&%T82!I9#TB-C4B
M/@H@("`@("`@("`@("`@("`@("`@("`@("`@("`@/&5X<')E<W-I;VX@;F%M
M93TB=F%L=65%>'!R(CYI;7!O<G1086-K86=E*"!086-K86=E<RYJ879A>"YX
M;6PN<&%R<V5R<RD[(`T*:6UP;W)T4&%C:V%G92@@4&%C:V%G97,N;W)G+GAM
M;"YS87@I.R`-"FEM<&]R=%!A8VMA9V4H(%!A8VMA9V5S+F]R9RYW,V,N9&]M
M*3L@#0II;7!O<G1086-K86=E*%!A8VMA9V5S+FIA=F$N:6\I.PT*#0IF=6YC
M=&EO;B!G971486=686QU92AM>7-T<BP@=&%G3F%M92D@>PT*("`-"@EF86-T
M;W)Y(#T@1&]C=6UE;G1"=6EL9&5R1F%C=&]R>2YN97=);G-T86YC92@I.R`@
M("`-"@EB=6EL9&5R(#T@9F%C=&]R>2YN97=$;V-U;65N=$)U:6QD97(H*3L-
M"@E*879A4W1R(#T@;F5W(&IA=F$N;&%N9RY3=')I;F<H(&UY<W1R("D[#0H)
M8F%I<R`](&YE=R!">71E07)R87E);G!U=%-T<F5A;2@@2F%V85-T<BYG971"
M>71E<R@I*3L-"@ED;V-U;65N="`](&)U:6QD97(N<&%R<V4H8F%I<RD[("`-
M"B`@;FQI<W0@/2!D;V-U;65N="YG971%;&5M96YT<T)Y5&%G3F%M92AT86=.
M86UE*3L-"B`@<F5T=7)N(&YL:7-T+FET96TH,"DN9V5T1FER<W1#:&EL9"@I
M+F=E=$YO9&5686QU92@I.PT*?0T*#0IG971486=686QU92AR;W=;(GAM;")=
M+"`B=&ET;&4B*3PO97AP<F5S<VEO;CX*("`@("`@("`@("`@("`@("`@("`@
M("`@("`@(#QP<F]P97)T>2!N86UE/2)C;VYT96YT5'EP92(^:'1M;#PO<')O
M<&5R='D^"B`@("`@("`@("`@("`@("`@("`@("`@(#PO=&5X="UD871A/@H@
M("`@("`@("`@("`@("`@("`@(#PO8V5L;#X*("`@("`@("`@("`@("`@("`@
M("`\8V5L;"!I9#TB-#0B/@H@("`@("`@("`@("`@("`@("`@("`@("`\=&5X
M="UD871A(&ED/2(V-B(^"B`@("`@("`@("`@("`@("`@("`@("`@("`@("`\
M97AP<F5S<VEO;B!N86UE/2)V86QU945X<'(B/FEM<&]R=%!A8VMA9V4H(%!A
M8VMA9V5S+FIA=F%X+GAM;"YP87)S97)S*3L@#0II;7!O<G1086-K86=E*"!0
M86-K86=E<RYO<F<N>&UL+G-A>"D[(`T*:6UP;W)T4&%C:V%G92@@4&%C:V%G
M97,N;W)G+G<S8RYD;VTI.R`-"FEM<&]R=%!A8VMA9V4H4&%C:V%G97,N:F%V
M82YI;RD[#0H-"F9U;F-T:6]N(&=E=%1A9U9A;'5E*&UY<W1R+"!T86=.86UE
M*2![#0H@(`T*"69A8W1O<GD@/2!$;V-U;65N=$)U:6QD97)&86-T;W)Y+FYE
M=TEN<W1A;F-E*"D[("`@(`T*"6)U:6QD97(@/2!F86-T;W)Y+FYE=T1O8W5M
M96YT0G5I;&1E<B@I.PT*"4IA=F%3='(@/2!N97<@:F%V82YL86YG+E-T<FEN
M9R@@;7ES='(@*3L-"@EB86ES(#T@;F5W($)Y=&5!<G)A>4EN<'5T4W1R96%M
M*"!*879A4W1R+F=E=$)Y=&5S*"DI.PT*"61O8W5M96YT(#T@8G5I;&1E<BYP
M87)S92AB86ES*3L@(`T*("!N;&ES="`](&1O8W5M96YT+F=E=$5L96UE;G1S
M0GE486=.86UE*'1A9TYA;64I.PT*("!R971U<FX@;FQI<W0N:71E;2@P*2YG
M971&:7)S=$-H:6QD*"DN9V5T3F]D959A;'5E*"D[#0I]#0H-"F=E=%1A9U9A
M;'5E*')O=ULB>&UL(ETL(")N86UE(BD\+V5X<')E<W-I;VX^"B`@("`@("`@
M("`@("`@("`@("`@("`@("`@("`\<')O<&5R='D@;F%M93TB8V]N=&5N=%1Y
M<&4B/FAT;6P\+W!R;W!E<G1Y/@H@("`@("`@("`@("`@("`@("`@("`@("`\
M+W1E>'0M9&%T83X*("`@("`@("`@("`@("`@("`@("`\+V-E;&P^"B`@("`@
M("`@("`@("`@("`@("`@/&-E;&P@:60](C$R(CX*("`@("`@("`@("`@("`@
M("`@("`@("`@/&1A=&$@:60](C,Q(CX*("`@("`@("`@("`@("`@("`@("`@
M("`@("`@(#QP<F]P97)T>2!N86UE/2)R97-U;'13971#;VQU;6XB/F]W;F5R
M/"]P<F]P97)T>3X*("`@("`@("`@("`@("`@("`@("`@("`@/"]D871A/@H@
M("`@("`@("`@("`@("`@("`@(#PO8V5L;#X*("`@("`@("`@("`@("`@("`@
M("`\8V5L;"!I9#TB,3,B/@H@("`@("`@("`@("`@("`@("`@("`@("`\9&%T
M82!I9#TB,S,B/@H@("`@("`@("`@("`@("`@("`@("`@("`@("`@/'!R;W!E
M<G1Y(&YA;64](G)E<W5L=%-E=$-O;'5M;B(^9FER<W1?;F%M93PO<')O<&5R
M='D^"B`@("`@("`@("`@("`@("`@("`@("`@(#PO9&%T83X*("`@("`@("`@
M("`@("`@("`@("`\+V-E;&P^"B`@("`@("`@("`@("`@("`@("`@/&-E;&P@
M:60](C$T(CX*("`@("`@("`@("`@("`@("`@("`@("`@/&1A=&$@:60](C,U
M(CX*("`@("`@("`@("`@("`@("`@("`@("`@("`@(#QP<F]P97)T>2!N86UE
M/2)R97-U;'13971#;VQU;6XB/FQA<W1?;F%M93PO<')O<&5R='D^"B`@("`@
M("`@("`@("`@("`@("`@("`@(#PO9&%T83X*("`@("`@("`@("`@("`@("`@
M("`\+V-E;&P^"B`@("`@("`@("`@("`@("`\+W)O=SX*("`@("`@("`@("`@
M/"]D971A:6P^"B`@("`@("`@("`@(#QF;V]T97(^"B`@("`@("`@("`@("`@
M("`\<F]W(&ED/2(Q-2(^"B`@("`@("`@("`@("`@("`@("`@/&-E;&P@:60]
M(C$V(CX*("`@("`@("`@("`@("`@("`@("`@("`@/'1E>'0@:60](C,W(CX*
M("`@("`@("`@("`@("`@("`@("`@("`@("`@(#QP<F]P97)T>2!N86UE/2)C
M;VYT96YT5'EP92(^875T;SPO<')O<&5R='D^"B`@("`@("`@("`@("`@("`@
M("`@("`@("`@("`\=&5X="UP<F]P97)T>2!N86UE/2)C;VYT96YT(CX\(5M#
M1$%405L-"E1O=&%L($ET96T@0V]U;G0Z75T^/"]T97AT+7!R;W!E<G1Y/@H@
M("`@("`@("`@("`@("`@("`@("`@("`\+W1E>'0^"B`@("`@("`@("`@("`@
M("`@("`@("`@(#QD871A(&ED/2(S-B(^"B`@("`@("`@("`@("`@("`@("`@
M("`@("`@("`\<')O<&5R='D@;F%M93TB<F5S=6QT4V5T0V]L=6UN(CY4;W1A
M;"!)=&5M($-O=6YT/"]P<F]P97)T>3X*("`@("`@("`@("`@("`@("`@("`@
M("`@/"]D871A/@H@("`@("`@("`@("`@("`@("`@("`@("`\=&5X="!I9#TB
M,S@B/@H@("`@("`@("`@("`@("`@("`@("`@("`@("`@/'!R;W!E<G1Y(&YA
M;64](F-O;G1E;G14>7!E(CYA=71O/"]P<F]P97)T>3X*("`@("`@("`@("`@
M("`@("`@("`@("`@/"]T97AT/@H@("`@("`@("`@("`@("`@("`@(#PO8V5L
M;#X*("`@("`@("`@("`@("`@("`@("`\8V5L;"!I9#TB-#$B+SX*("`@("`@
M("`@("`@("`@("`@("`\8V5L;"!I9#TB-#4B+SX*("`@("`@("`@("`@("`@
M("`@("`\8V5L;"!I9#TB,3<B+SX*("`@("`@("`@("`@("`@("`@("`\8V5L
M;"!I9#TB,3@B+SX*("`@("`@("`@("`@("`@("`@("`\8V5L;"!I9#TB,3DB
M+SX*("`@("`@("`@("`@("`@(#PO<F]W/@H@("`@("`@("`@("`\+V9O;W1E
J<CX*("`@("`@("`\+W1A8FQE/@H@("`@/"]B;V1Y/@H\+W)E<&]R=#X*
`
end
Re: Data reduction [message #690145 is a reply to message #690081] Wed, 29 June 2011 03:27 Go to previous messageGo to next message
Jason Weathersby is currently offline Jason Weathersby
Messages: 9167
Registered: July 2009
Senior Member

Bob,

My guess is row["xml"] is null for a particular row.

Jason

On 6/28/2011 7:26 PM, Bob wrote:
> Hello Jason,
> Today I was trying to use the code you gave me as a dynamic text in a new report. This time the report came up with the dynamic text column blank. Besides the information I included here I attached my report design that has everything below.
>
> My JDBC query statement is:
>
> select item.id, item.date_for_index, item.owner, item_xml.xml, item_xml.id, tleuser.uuid, tleuser.first_name, tleuser.last_name
> from item
> join item_xml on item_xml.id = item.id
> left join tleuser on item.owner = tleuser.uuid
>
> and the code I am using in the dynamic text column is:
>
> importPackage( Packages.javax.xml.parsers);
> importPackage( Packages.org.xml.sax);
> importPackage( Packages.org.w3c.dom);
> importPackage(Packages.java.io);
>
> function getTagValue(mystr, tagName) {
>
> factory = DocumentBuilderFactory.newInstance();
> builder = factory.newDocumentBuilder();
> JavaStr = new java.lang.String( mystr );
> bais = new ByteArrayInputStream( JavaStr.getBytes());
> document = builder.parse(bais);
> nlist = document.getElementsByTagName(tagName);
> return nlist.item(0).getFirstChild().getNodeValue();
> }
>
> getTagValue(row["xml"], "title")
>
>
> Also, whenever I use this code (on every report I have made) I consistently get error messages saying that:
>
> There are errors evaluating script "importPackage( Packages.javax.xml.parsers);
>
> The choice of Java method java.lang.String.java.lang.String matching JavaScript argument types (null) is ambiguous; candidate methods are:
> String(java.lang.String)
> String(char[])
> String(java.lang.StringBuilder)
> String(byte[])
> String(java.lang.StringBuffer) (<inline>#10)
>
> Cannot call method "getFirstChild" of null (<inline>#14).
>
>
>
>
Re: Data reduction [message #691138 is a reply to message #690145] Thu, 30 June 2011 19:44 Go to previous messageGo to next message
Bob  is currently offline Bob
Messages: 7
Registered: June 2011
Junior Member
I have not found any row that is null for xml, and how would one null row get me a completely empty column?
Re: Data reduction [message #691513 is a reply to message #691138] Fri, 01 July 2011 16:05 Go to previous messageGo to next message
Jason Weathersby is currently offline Jason Weathersby
Messages: 9167
Registered: July 2009
Senior Member

Bob,

Can you change this method:
function getTagValue(mystr, tagName) {

factory = DocumentBuilderFactory.newInstance();
builder = factory.newDocumentBuilder();
JavaStr = new java.lang.String( mystr );
bais = new ByteArrayInputStream( JavaStr.getBytes());
document = builder.parse(bais);
nlist = document.getElementsByTagName(tagName);
return nlist.item(0).getFirstChild().getNodeValue();
}


to

function getTagValue(mystr, tagName) {

if( mystr == null ){
return "blank";
}
factory = DocumentBuilderFactory.newInstance();
builder = factory.newDocumentBuilder();
JavaStr = new java.lang.String( mystr );
bais = new ByteArrayInputStream( JavaStr.getBytes());
document = builder.parse(bais);
nlist = document.getElementsByTagName(tagName);
return nlist.item(0).getFirstChild().getNodeValue();
}

Just to check?

Jason

On 6/30/2011 3:44 PM, Bob wrote:
> I have not found any row that is null for xml, and how would one null
> row get me a completely empty column?
Re: Data reduction [message #693168 is a reply to message #691513] Tue, 05 July 2011 23:51 Go to previous messageGo to next message
Bob  is currently offline Bob
Messages: 7
Registered: June 2011
Junior Member
I tried the code that you gave me, but it did not change anything. It was curious though, I got the system to work by first introducing the xml column on the table with the code as dynamic text in the next column. The code worked with the xml column there, and then when I removed the xml column it still worked. No other changes other than that. Curious...

Thanks for all the assistance Jason,

Bob
Re: Data reduction [message #693681 is a reply to message #693168] Thu, 07 July 2011 01:43 Go to previous messageGo to next message
Jason Weathersby is currently offline Jason Weathersby
Messages: 9167
Registered: July 2009
Senior Member

Bob,

Did it add any table bindings?

Jason

On 7/5/2011 7:51 PM, Bob wrote:
> I tried the code that you gave me, but it did not change anything. It
> was curious though, I got the system to work by first introducing the
> xml column on the table with the code as dynamic text in the next
> column. The code worked with the xml column there, and then when I
> removed the xml column it still worked. No other changes other than
> that. Curious...
>
> Thanks for all the assistance Jason,
>
> Bob
Re: Data reduction [message #694074 is a reply to message #693681] Thu, 07 July 2011 18:40 Go to previous messageGo to next message
Bob  is currently offline Bob
Messages: 7
Registered: June 2011
Junior Member
Jason

I have attached an image of the requested information

Bob

index.php/fa/3279/0/
Re: Data reduction [message #694420 is a reply to message #694074] Fri, 08 July 2011 14:23 Go to previous message
Jason Weathersby is currently offline Jason Weathersby
Messages: 9167
Registered: July 2009
Senior Member

Thanks Bob. I am not certain what happened. With the error you were
getting I assumed is was something with the source data.

Jason

On 7/7/2011 2:40 PM, Bob wrote:
> Jason
>
> I have attached an image of the requested information
>
> Bob
>
>
Previous Topic:Hiding the XML
Next Topic:Dynamic Sorting on Derived Columns of Crosstabs
Goto Forum:
  


Current Time: Thu Oct 02 16:35:52 GMT 2014

Powered by FUDForum. Page generated in 0.02161 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software