[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

RE: [xsl] Need Help with XSL loop break logic


Subject: RE: [xsl] Need Help with XSL loop break logic
From: "Richard Lander" <rlander@xxxxxxxxxxxxx>
Date: Thu, 7 Aug 2003 07:51:48 -0700

Is the issue that you are using a foreach and want to break out of the foreach?

If so, you have two options (that immediately come to mind) available to you:

- Don't use a for-each, but use a recursive named template, which you can easily break out of
- Have logic in your foreach to emit something when certain conditions are met and not when they are not met

I cannot say that I completely understand your problem or problem space, so this may not help, but it seems like it might.

Thanks,

Rich

-----Original Message-----
From: owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx [mailto:owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx] On Behalf Of Sonu
Sent: Wednesday, August 06, 2003 4:09 PM
To: XSL-List@xxxxxxxxxxxxxxxxxxxxxx
Subject: [xsl] Need Help with XSL loop break logic

Hello XSL gurus,

I am in the process of generating a complex PDF report using XSLFO and seem to be stuck between a rock and hard place - my brain is totally fried after 3 days of trying now.

Consider the case of an invoice with 2 types of products (say product1 and product2). If the merchant deals in only one type (either product1 or product2 only), I have to display only one summary page with his product header + contents and the detail page with the same product header and all the line items. 

The condition is that if the dealer deals in both the products and has ordered both the products, I have to show him 2 summary pages (one for each product with appropriate product headers) and then the all the line items for that invoice. The line item page might be more than 10 pages long and will overflow.

Report Type 1 :
Dealer dealing in 2 products and having an invoice with both products (meaning he has ordered some amounts of both products):
	Produt1Header + Product1Summary
	Product2Header + Product2Summary
	Product1Andproduct2Header + Detail line items (can span multiple pages)

Report Type 2 :
Dealer dealing in 2 products and having an invoice with either one of 2 products :
	Produt1Header OR Product2Header + Product1Summary OR Product2Summary
	Product1Header OR Product2Header + Detail line items of Product1 or Product2(can span multiple pages)
	
Report Type 3 :	
Dealer dealing in 1 product only and having an invoice with 1 product :
	Produt1Header + Product1Summary
	Product1Header + Detail line items (can span multiple
pages)

Since my report depends on the data that I receive from the XML, I need a condition in my XSL to break the loop after printing the first two summary pages (if there are any) and keep printing the detail line item pages repeatedly. I have tried everything in XSL but am not able to set any condition where I can print certain pages only once and print multiple for all other pages...

Can anyone please suggest a way out of this problem ??
Please email me if I am not clear in explaining the problem..

Thanks a lot,
Sonu

__________________________________
Do you Yahoo!?
Yahoo! SiteBuilder - Free, easy-to-use web site design software http://sitebuilder.yahoo.com

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list




 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



Current Thread
Keywords