can see what's going on. I can make it work with a little manipulation
of the inner RO calls by using for loops. And had I thought about it
more, you are right that event.dragSource et al would have all the
information I needed, so that part really should be simple enough to
implement.
But could you explain how I would initialize the repeaterData array if
the number of elements is dynamic, i.e., returned from a query such as
what I am trying to do? That would be this line:
var repeaterData: Array = [ {}, {}, {} ];
to set the Array elements from RO.results without hardcoding the size of
the array.
And actually/ideally, I would want to make this a component at some
point, so how would I make this line of AS:
repeaterData[i].dp = [{Number: n++}, {Number: n++}, {Number: n++}];
populate itself from a second RO query recordset where I wouldn't
necessarily know what the column names are? Something like:
var thisROResultItemsArray:Array = RO2.result._items; //since _items is
already an array
repeaterData[i].dp = [{thisROResultItemsArray}];
Excuse me if I'm being dense or am missing something completely
obvious. I'm betting that F2 is a lot easier with this, but it will
really help to get this into my noggin now.
Thanks again!
Tom
Doug Lowder wrote:
> Hi Tom,
>
> Hopefully the sample code below will be enough to get you started.
> Once the repeated grids have had their dataproviders bound to an
> array, all you need to do is reassign another array to update the grid
> just as the "Update grids" button in the sample does. The sample
> accomplishes this reassignment with the Array.slice() method. You
> could also use the various grid and dataprovider methods (addItem(),
> replaceItem(), editField(), etc) to make changes on a row-by-row
> basis. You should be able to use a remote object result handler in
> place of the button's click handler to update the dataprovider arrays.
>
> I'll leave the drag-and-drop portion to you, but essentially I believe
> everything you require should be in the event parameter: event.target,
> event.dragSource, etc.
>
> <?xml version="1.0"?>
> <mx:Application xmlns:mx="http://www.macromedia.com/2003/mxml"
> width="100%">
>
> <mx:Script>
> <![CDATA[
>
> var repeaterData: Array = [ {}, {}, {} ];
>
> function updateData() : Void {
> var n: Number = 0;
> for (var i = 0; i < repeaterData.length; i++) {
> var dp: Array = repeaterData[i].dp;
> if (dp == undefined) {
> repeaterData[i].dp = [{Number: n++}, {Number: n++},
> {Number: n++}];
> }
> else {
> for (var j = 0; j < dp.length; j++) {
> dp[j].Number++;
> }
> repeaterData[i].dp = dp.slice();
> }
> }
> }
>
> ]]>
> </mx:Script>
>
> <mx:Panel title="Repeated Data Grids" width="80%">
>
> <mx:HBox width="100%">
>
> <mx:Repeater id="rp" dataProvider="{repeaterData}">
> <mx:DataGrid dataProvider="{rp.currentItem.dp}"
> width="100%"/>
> </mx:Repeater>
>
> </mx:HBox>
>
> <mx:ControlBar>
> <mx:Button label="Update grids" click="updateData()"/>
> </mx:ControlBar>
>
> </mx:Panel>
>
> </mx:Application>
>
>
> --- In flexcoders@yahoogroups.com, Tom Sammons <[EMAIL PROTECTED]> wrote:
> >
> > Hi all,
> >
> > Long time viewer, first time caller... [never mind, it's a
> pittsburgh thing]
> >
> > What I'm trying to accomplish is to populate a regular datagrid with
> > records representing unassigned requests, and then use a repeater to
> > display grids of current workload requests for a short list of
> > personnel. An administrator would drag and drop unassigned requests
> > into the workload grids, and be able to drag/drop between workload
> grids
> > as well for the purpose of balancing/spreading personnel work around.
> > (Eventually, I want to be able to use shared objects to automatically
> > update at the client level as well to improve the collaboration, but
> > that's a different effort.)
> >
> > I've been unable to find a suitable example or solution that would
> > demonstrate how one would set the dataProvider for datagrids generated
> > by a Repeater. Obviously, if I bind the provider during Repeater
> > execution it will populate all the grids with the last remote object
> > call. (I'm not at all interested in using XML, although even that would
> > give me a lead.) From a performance aspect, I'm not positive that the
> > repeater may not be the best way to go -- although Tracy posted
> > something that says otherwise in 18378 -- but the workload grids will
> > generally only be between 3 and 6 in count, and the repeater seems to
> > handle that quite well from what I've seen so far, plus takes care of
> > all the nice formatting. Just so you know, F2 isn't an option right now.
> >
> > I'd really appreciate it if someone could provide an example of how I
> > can populate the repeater grids with different remote object calls, and
> > how I would use the event.target.getRepeaterItem during the drag
> > function (since I'm not sure how to use that to refe! rence a specific
> > datagrid id in the repeater array --- did I say that right?). I think
> > once I have the former, I could figure out how to get all the other
> > information I need. I already know how to pass entire datagrid
> > structures to ROs for updates, so I just need a friendly jumpstart to
> > get my head around this Repeater stuff.
> >
> > Any help or pointers would be greatly appreciated, and I'll post the
> > working code for others who might be interested as well.
> >
> > Tom
> >
>
>
>
> --
> Flexcoders Mailing List
> FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
> Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com
>
>
>
> SPONSORED LINKS
> Web site design development
> <http://groups.yahoo.com/gads?t=ms&k=Web+site+design+development&w1=Web+site+design+development&w2=Computer+software+development&w3=Software+design+and+development&w4=Macromedia+flex&w5=Software+development+best+practice&c=5&s=166&.sig=L-4QTvxB_quFDtMyhrQaHQ>
> Computer software development
> <http://groups.yahoo.com/gads?t=ms&k=Computer+software+development&w1=Web+site+design+development&w2=Computer+software+development&w3=Software+design+and+development&w4=Macromedia+flex&w5=Software+development+best+practice&c=5&s=166&.sig=lvQjSRfQDfWudJSe1lLjHw>
> Software design and development
> <http://groups.yahoo.com/gads?t=ms&k=Software+design+and+development&w1=Web+site+design+development&w2=Computer+software+development&w3=Software+design+and+development&w4=Macromedia+flex&w5=Software+development+best+practice&c=5&s=166&.sig=1pMBCdo3DsJbuU9AEmO1oQ>
>
> Macromedia flex
> <http://groups.yahoo.com/gads?t=ms&k=Macromedia+flex&w1=Web+site+design+development&w2=Computer+software+development&w3=Software+design+and+development&w4=Macromedia+flex&w5=Software+development+best+practice&c=5&s=166&.sig=OO6nPIrz7_EpZI36cYzBjw>
> Software development best practice
> <http://groups.yahoo.com/gads?t=ms&k=Software+development+best+practice&w1=Web+site+design+development&w2=Computer+software+development&w3=Software+design+and+development&w4=Macromedia+flex&w5=Software+development+best+practice&c=5&s=166&.sig=f89quyyulIDsnABLD6IXIw>
>
>
>
> ------------------------------------------------------------------------
> YAHOO! GROUPS LINKS
>
> * Visit your group "flexcoders
> <http://groups.yahoo.com/group/flexcoders>" on the web.
>
> * To unsubscribe from this group, send an email to:
> [EMAIL PROTECTED]
> <mailto:[EMAIL PROTECTED]>
>
> * Your use of Yahoo! Groups is subject to the Yahoo! Terms of
> Service <http://docs.yahoo.com/info/terms/>.
>
>
> ------------------------------------------------------------------------
>
--
Flexcoders Mailing List
FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com
YAHOO! GROUPS LINKS
- Visit your group "flexcoders" on the web.
- To unsubscribe from this group, send an email to:
[EMAIL PROTECTED]
- Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.