[ 
http://issues.apache.org/jira/browse/OFBIZ-364?page=comments#action_12443779 ] 
            
Jacopo Cappellato commented on OFBIZ-364:
-----------------------------------------

David,

I'd like to correct the patch I've committed following your suggestions.
If we add a new attribute called "override-list-size" to the form definition, 
we could have something like this:

<form name="ExampleForm" type="list" list-name="records" 
override-list-size="100">

In this way we will have a constant value set (not very useful, but maybe it 
could under some circumstances).

But if I need to pass a parametrized value, how should I do this? Maybe in this 
way:

<form name="ExampleForm" type="list" list-name="records" 
override-list-size="${manualListSize}">

and then put in the context something like this:

context.put("manualListSize", new Integer(iterator.currentIndex())); 

?

Is this that you mean? If so, I'll try to implement it (I think it is just a 
matter of adding the new attribute to the xsd definition and using a 
flexibleString to store the value).
Just one doubt about this approach: if I'm not wrong the form definition is 
cached into memory the first time the form is loaded from the xml file... could 
this make difficult to make the override-list-size a dinamic value ? (maybe not 
now that I think a bit more about this)
Thanks


> Let form widget treat input list as a subset of a larger list
> -------------------------------------------------------------
>
>                 Key: OFBIZ-364
>                 URL: http://issues.apache.org/jira/browse/OFBIZ-364
>             Project: OFBiz (The Open for Business Project)
>          Issue Type: Improvement
>          Components: framework
>            Reporter: Leon Torres
>         Assigned To: Jacopo Cappellato
>            Priority: Minor
>         Attachments: subset-form-list.patch
>
>
> Allow a programmer to specify a parameter "overrideFormListSize=1000" to make 
> the FormWidget think the list size is 1000.
> Then, when a list of size 20 is passed in, the FormWidget treats it as a 
> subset of the size 1000 list with its position given by viewIndex as usual.
> As an example, suppose a complex product report requires the user to process 
> each product by hand.  There are 1000 products and the viewSize is 20.  The 
> user gets the viewIndex of 10 from the context, so he should be processing 
> the range (200, 219). He builds a new list containing the processed data, 
> which is size 20.  Since this list is only 20 items, the form widget thinks 
> the entire report is 20 lines.  There won't be pagination over the 1000 
> products.  So the user specifies "overrideFormListSize=1000" and now the 
> FormWidget understands that this input list of 20 items are the items (200, 
> 219) of a size 1000 list.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to