Hi Did you check out FlexPrintJob and PrintDataGrid?
http://livedocs.adobe.com/flex/3/langref/mx/printing/FlexPrintJob.html Those can handle things you are asking for. -abdul On Feb 15, 11:28 pm, "[email protected]" <[email protected]> wrote: > Anybody have an idea on this.. > > thanks > Sandeep > > On Feb 14, 1:59 pm, Sandeep P P <[email protected]> wrote: > > > Hi, I have requirement like a Grid with some 10 grid row.. and each row > > is having around 50 elements.. > > some thing like > > firstname secondname thirdname ......... around 50 items > > firstname1 > > .............. > > ............. > > around 10 items. > > > My screen will be showing 6 columns and the complete (10) row.. > > When i click print... the first 6 columns will come and below this > > next 6 columns i.e 7-12 column index will come like wise the complete > > 50 rows.. > > > I have done a POC for this, I am able to print, but everything is coming > > in a > > single page with scroll bar in the page.. i want multiple pages if a > > single page > > is having more than 24 columns (6columns x 4sets) > > > As the multiple pages requirement is critical can somebody help me out, > > to fix this issue > > > for some reason i cannot use PrintDataGrid in my Print format..otherwise > > i could use attribute validNextPage and method nextPage() to achieve this. > > > I am sharing the entire POC code.. > > > Thanks in advance > > > components . GridPrintViewMx.mxml > > > <?xml version="1.0" encoding="utf-8"?> > > <mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml" width="100%" > > height="100%" horizontalAlign="center"> > > <mx:Repeater id="boxRp"> > > <mx:HBox width="550" height="200" borderColor="#000000" borderThickness="2" > > borderStyle="solid" horizontalAlign="left" verticalAlign="middle" > > paddingLeft="10" paddingRight="10" horizontalScrollPolicy="off" > > verticalScrollPolicy="off"> > > > <mx:Repeater id="rptr" dataProvider="{boxRp.currentItem}"> > > <mx:Grid borderColor="#FFFFFF" borderStyle="solid" borderThickness="2"> > > <mx:GridRow> > > <mx:GridItem> > > <mx:HBox> > > <mx:Label id="text1" text="{rptr.currentItem.firstName}"/> > > </mx:HBox> > > </mx:GridItem> > > </mx:GridRow> > > <mx:GridRow> > > <mx:GridItem> > > <mx:HBox> > > <mx:Label id="text2" text="{rptr.currentItem.secondName}"/> > > </mx:HBox> > > </mx:GridItem> > > </mx:GridRow> > > <mx:GridRow> > > <mx:GridItem> > > <mx:HBox> > > <mx:Label id="text3" text="{rptr.currentItem.middleName}"/> > > </mx:HBox> > > </mx:GridItem> > > </mx:GridRow> > > </mx:Grid> > > > <mx:Spacer width="10"/> > > </mx:Repeater> > > </mx:HBox> > > > </mx:Repeater> > > </mx:VBox> > > > PrintTest.mxml > > > <?xml version="1.0" encoding="utf-8"?> > > <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" > > layout="horizontal" creationComplete="init()"> > > <mx:Script> > > <![CDATA[ > > import mx.printing.FlexPrintJobScaleType; > > import mx.printing.FlexPrintJob; > > import components.GridPrintViewMx; > > import mx.collections.ArrayCollection; > > [Bindable] > > var dp:ArrayCollection = new ArrayCollection(); > > [Bindable] > > var tempArray:ArrayCollection = new ArrayCollection(); > > public function init():void > > {} > > > public function createData(items:int):void > > { > > var tempArray:ArrayCollection = new ArrayCollection(); > > if(dp.length > 0) > > dp.removeAll(); > > for(var i:int = 0; i<items; i++) > > { > > var obj:Object = new Object(); > > obj.firstName = "first"+i; > > obj.secondName = "second"+i; > > obj.middleName = "middle"+i; > > tempArray.addItem(obj);} > > > dp = tempArray; > > box.invalidateDisplayList();} > > > public function doPrint():void { > > // Create a FlexPrintJob instance. > > var printJob:FlexPrintJob = new FlexPrintJob(); > > var oneRow:ArrayCollection = new ArrayCollection(); > > // Start the print job. > > if (printJob.start()) { > > > var thePrintView:GridPrintViewMx = new GridPrintViewMx(); > > addChild(thePrintView); > > > // Set the print view properties. > > thePrintView.width=printJob.pageWidth; > > thePrintView.height=printJob.pageHeight; > > > thePrintView.boxRp.dataProvider = createPrintGridData(dp as > > ArrayCollection); > > > printJob.addObject(thePrintView,FlexPrintJobScaleType.SHOW_ALL); > > > removeChild(thePrintView); > > } > > // Send the job to the printer. > > printJob.send(); > > } > > > public function > > createPrintGridData(gridData:ArrayCollection):ArrayCollection > > { > > var lastpoint:int = 0; > > if(gridData.length>0) > > { > > > for(var i:int=1; i<=gridData.length ; i++) > > { > > if(i%6 == 0) > > { > > tempArray.addItem(gridData.toArray().slice(lastpoint,i)); > > lastpoint = i; > > } > > } > > > if(gridData.length%6 != 0) > > > tempArray.addItem(gridData.toArray().slice(lastpoint,gridData.length)); > > > } > > > return tempArray; > > } > > ]]> > > </mx:Script> > > <mx:HBox id="box" width="500" height="200" borderColor="#000000" > > borderThickness="2" borderStyle="solid" verticalAlign="middle" > > paddingLeft="10" paddingRight="10"> > > <mx:Repeater id="rptr" dataProvider="{dp}"> > > > <mx:Grid borderColor="#FFFFFF" borderStyle="solid" borderThickness="2"> > > <mx:GridRow> > > <mx:GridItem> > > <mx:HBox> > > <mx:Label id="text1" text="{rptr.currentItem.firstName}"/> > > </mx:HBox> > > </mx:GridItem> > > </mx:GridRow> > > <mx:GridRow> > > <mx:GridItem> > > <mx:HBox> > > <mx:Label id="text2" text="{rptr.currentItem.secondName}"/> > > </mx:HBox> > > </mx:GridItem> > > </mx:GridRow> > > <mx:GridRow> > > <mx:GridItem> > > <mx:HBox> > > <mx:Label id="text3" text="{rptr.currentItem.middleName}"/> > > </mx:HBox> > > </mx:GridItem> > > </mx:GridRow> > > > </mx:Grid> > > > <mx:Spacer width="10"/> > > </mx:Repeater> > > </mx:HBox> > > <mx:VBox> > > <mx:Button id="printDG" > > label="Print" > > click="doPrint();"/> > > <mx:HBox> > > <mx:TextInput id="items" width="50"/> > > <mx:Button id="itemsButton" label="Fill It" > > click="createData(int(items.text))"/> > > </mx:HBox> > > </mx:VBox> > > </mx:Application> --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Flex India Community" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/flex_india?hl=en -~----------~----~----~----~------~----~------~--~---

