form widgets

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
10 messages Options
Reply | Threaded
Open this post in threaded view
|

form widgets

snowch
I'm struggling with form-widgets:


<xs:attribute type="xs:string" name="list-name">
    <xs:annotation><xs:documentation>for list type and other multiple data/form types this is the name of the list in the context to iterate over</xs:documentation></xs:annotation>
</xs:attribute>

How does the list get put in the context?  Is it put into the context by <actions> (see below for the example app)?
Is it redundant in ListExamples as it is not being referred to anywhere?

Many thanks,

Chris


    <form name="ListExamples" type="list" list-name="examples" paginate-target="FindExample"
             default-title-style="tableheadtext" default-widget-style="tabletext" default-tooltip-style="tabletext">
        <actions>
            <entity-condition entity-name="Example">
                <order-by field-name="description"/>
            </entity-condition>
        </actions>
       
        <field name="exampleId" title="${uiLabelMap.ExampleExampleId}" widget-style="buttontext">
            <hyperlink also-hidden="false" description="${exampleId}" target="EditExample?exampleId=${exampleId}"/>
        </field>
        <field name="exampleName" title="${uiLabelMap.CommonName}"><display/></field>
        <field name="exampleTypeId" title="${uiLabelMap.CommonType}"><display-entity entity-name="ExampleType"/></field>
        <field name="statusId" title="${uiLabelMap.CommonStatus}"><display-entity entity-name="StatusItem"/></field>
        <field name="description" title="${uiLabelMap.CommonDescription}"><display/></field>
    </form>
Reply | Threaded
Open this post in threaded view
|

Re: form widgets

byersa
Christopher,

In this case the "entity-condition" op gets the list-name from the "form"
element and puts the list if gets there. And since that is the variable that
the form expects to find the list info in, it works out.

-Al

On 2/19/07, Christopher Snow <[hidden email]> wrote:

>
> I'm struggling with form-widgets:
>
>
> <xs:attribute type="xs:string" name="list-name">
>     <xs:annotation><xs:documentation>for list type and other multiple
> data/form types this is the name of the list in the context to iterate
> over</xs:documentation></xs:annotation>
> </xs:attribute>
>
> How does the list get put in the context?  Is it put into the context by
> <actions> (see below for the example app)?
> Is it redundant in ListExamples as it is not being referred to anywhere?
>
> Many thanks,
>
> Chris
>
>
>     <form name="ListExamples" type="list" list-name="examples"
> paginate-target="FindExample"
>              default-title-style="tableheadtext"
> default-widget-style="tabletext" default-tooltip-style="tabletext">
>         <actions>
>             <entity-condition entity-name="Example">
>                 <order-by field-name="description"/>
>             </entity-condition>
>         </actions>
>
>         <field name="exampleId" title="${uiLabelMap.ExampleExampleId}"
> widget-style="buttontext">
>             <hyperlink also-hidden="false" description="${exampleId}"
> target="EditExample?exampleId=${exampleId}"/>
>         </field>
>         <field name="exampleName" title="${uiLabelMap.CommonName
> }"><display/></field>
>         <field name="exampleTypeId" title="${uiLabelMap.CommonType}"><display-entity
> entity-name="ExampleType"/></field>
>         <field name="statusId" title="${uiLabelMap.CommonStatus}"><display-entity
> entity-name="StatusItem"/></field>
>         <field name="description" title="${uiLabelMap.CommonDescription
> }"><display/></field>
>     </form>
>
Reply | Threaded
Open this post in threaded view
|

Re: form widgets

snowch
Al,

I'm confused.  The list-name "examples" isn't referred to anywhere in
the form.  In fact, the form works ok without the list-name attribute in
the form.  

? :(

On Mon, 2007-02-19 at 10:16 -0700, Al Byers wrote:

> Christopher,
>
> In this case the "entity-condition" op gets the list-name from the "form"
> element and puts the list if gets there. And since that is the variable that
> the form expects to find the list info in, it works out.
>
> -Al
>
> On 2/19/07, Christopher Snow <[hidden email]> wrote:
> >
> > I'm struggling with form-widgets:
> >
> >
> > <xs:attribute type="xs:string" name="list-name">
> >     <xs:annotation><xs:documentation>for list type and other multiple
> > data/form types this is the name of the list in the context to iterate
> > over</xs:documentation></xs:annotation>
> > </xs:attribute>
> >
> > How does the list get put in the context?  Is it put into the context by
> > <actions> (see below for the example app)?
> > Is it redundant in ListExamples as it is not being referred to anywhere?
> >
> > Many thanks,
> >
> > Chris
> >
> >
> >     <form name="ListExamples" type="list" list-name="examples"
> > paginate-target="FindExample"
> >              default-title-style="tableheadtext"
> > default-widget-style="tabletext" default-tooltip-style="tabletext">
> >         <actions>
> >             <entity-condition entity-name="Example">
> >                 <order-by field-name="description"/>
> >             </entity-condition>
> >         </actions>
> >
> >         <field name="exampleId" title="${uiLabelMap.ExampleExampleId}"
> > widget-style="buttontext">
> >             <hyperlink also-hidden="false" description="${exampleId}"
> > target="EditExample?exampleId=${exampleId}"/>
> >         </field>
> >         <field name="exampleName" title="${uiLabelMap.CommonName
> > }"><display/></field>
> >         <field name="exampleTypeId" title="${uiLabelMap.CommonType}"><display-entity
> > entity-name="ExampleType"/></field>
> >         <field name="statusId" title="${uiLabelMap.CommonStatus}"><display-entity
> > entity-name="StatusItem"/></field>
> >         <field name="description" title="${uiLabelMap.CommonDescription
> > }"><display/></field>
> >     </form>
> >
>
Reply | Threaded
Open this post in threaded view
|

Re: form widgets

byersa
Christopher,

I am confused. What is this below:

   <form name="ListExamples" type="list" list-name="examples"
paginate-target="FindExample"

Did you not see this or am i missing something?

-Al

On 2/19/07, Christopher Snow <[hidden email]> wrote:

>
> Al,
>
> I'm confused.  The list-name "examples" isn't referred to anywhere in
> the form.  In fact, the form works ok without the list-name attribute in
> the form.
>
> ? :(
>
> On Mon, 2007-02-19 at 10:16 -0700, Al Byers wrote:
> > Christopher,
> >
> > In this case the "entity-condition" op gets the list-name from the
> "form"
> > element and puts the list if gets there. And since that is the variable
> that
> > the form expects to find the list info in, it works out.
> >
> > -Al
> >
> > On 2/19/07, Christopher Snow <[hidden email]> wrote:
> > >
> > > I'm struggling with form-widgets:
> > >
> > >
> > > <xs:attribute type="xs:string" name="list-name">
> > >     <xs:annotation><xs:documentation>for list type and other multiple
> > > data/form types this is the name of the list in the context to iterate
> > > over</xs:documentation></xs:annotation>
> > > </xs:attribute>
> > >
> > > How does the list get put in the context?  Is it put into the context
> by
> > > <actions> (see below for the example app)?
> > > Is it redundant in ListExamples as it is not being referred to
> anywhere?
> > >
> > > Many thanks,
> > >
> > > Chris
> > >
> > >
> > >     <form name="ListExamples" type="list" list-name="examples"
> > > paginate-target="FindExample"
> > >              default-title-style="tableheadtext"
> > > default-widget-style="tabletext" default-tooltip-style="tabletext">
> > >         <actions>
> > >             <entity-condition entity-name="Example">
> > >                 <order-by field-name="description"/>
> > >             </entity-condition>
> > >         </actions>
> > >
> > >         <field name="exampleId" title="${uiLabelMap.ExampleExampleId}"
> > > widget-style="buttontext">
> > >             <hyperlink also-hidden="false" description="${exampleId}"
> > > target="EditExample?exampleId=${exampleId}"/>
> > >         </field>
> > >         <field name="exampleName" title="${uiLabelMap.CommonName
> > > }"><display/></field>
> > >         <field name="exampleTypeId" title="${uiLabelMap.CommonType
> }"><display-entity
> > > entity-name="ExampleType"/></field>
> > >         <field name="statusId" title="${uiLabelMap.CommonStatus
> }"><display-entity
> > > entity-name="StatusItem"/></field>
> > >         <field name="description" title="${
> uiLabelMap.CommonDescription
> > > }"><display/></field>
> > >     </form>
> > >
> >
>
Reply | Threaded
Open this post in threaded view
|

Re: form widgets

Scott Gray
Hi Al, Christopher

Al, I think Christopher is asking why the form still works if he removes
list-name="examples" from the form element.

Christopher, as far as I can see having the list-name attribute isn't
necessary in this case because of the entity-condition action (whose
results are used regardless of what you do).  Even if you passed the
form a list called examples, the entity-condition results would replace it.

Regards
Scott

Al Byers wrote:

> Christopher,
>
> I am confused. What is this below:
>
>   <form name="ListExamples" type="list" list-name="examples"
> paginate-target="FindExample"
>
> Did you not see this or am i missing something?
>
> -Al
>
> On 2/19/07, Christopher Snow <[hidden email]> wrote:
>>
>> Al,
>>
>> I'm confused.  The list-name "examples" isn't referred to anywhere in
>> the form.  In fact, the form works ok without the list-name attribute in
>> the form.
>>
>> ? :(
>>
>> On Mon, 2007-02-19 at 10:16 -0700, Al Byers wrote:
>> > Christopher,
>> >
>> > In this case the "entity-condition" op gets the list-name from the
>> "form"
>> > element and puts the list if gets there. And since that is the
>> variable
>> that
>> > the form expects to find the list info in, it works out.
>> >
>> > -Al
>> >
>> > On 2/19/07, Christopher Snow <[hidden email]> wrote:
>> > >
>> > > I'm struggling with form-widgets:
>> > >
>> > >
>> > > <xs:attribute type="xs:string" name="list-name">
>> > >     <xs:annotation><xs:documentation>for list type and other
>> multiple
>> > > data/form types this is the name of the list in the context to
>> iterate
>> > > over</xs:documentation></xs:annotation>
>> > > </xs:attribute>
>> > >
>> > > How does the list get put in the context?  Is it put into the
>> context
>> by
>> > > <actions> (see below for the example app)?
>> > > Is it redundant in ListExamples as it is not being referred to
>> anywhere?
>> > >
>> > > Many thanks,
>> > >
>> > > Chris
>> > >
>> > >
>> > >     <form name="ListExamples" type="list" list-name="examples"
>> > > paginate-target="FindExample"
>> > >              default-title-style="tableheadtext"
>> > > default-widget-style="tabletext" default-tooltip-style="tabletext">
>> > >         <actions>
>> > >             <entity-condition entity-name="Example">
>> > >                 <order-by field-name="description"/>
>> > >             </entity-condition>
>> > >         </actions>
>> > >
>> > >         <field name="exampleId"
>> title="${uiLabelMap.ExampleExampleId}"
>> > > widget-style="buttontext">
>> > >             <hyperlink also-hidden="false"
>> description="${exampleId}"
>> > > target="EditExample?exampleId=${exampleId}"/>
>> > >         </field>
>> > >         <field name="exampleName" title="${uiLabelMap.CommonName
>> > > }"><display/></field>
>> > >         <field name="exampleTypeId" title="${uiLabelMap.CommonType
>> }"><display-entity
>> > > entity-name="ExampleType"/></field>
>> > >         <field name="statusId" title="${uiLabelMap.CommonStatus
>> }"><display-entity
>> > > entity-name="StatusItem"/></field>
>> > >         <field name="description" title="${
>> uiLabelMap.CommonDescription
>> > > }"><display/></field>
>> > >     </form>
>> > >
>> >
>>
>

Reply | Threaded
Open this post in threaded view
|

Re: form widgets

snowch
Scott,

That's exactly what I was asking - Al, sorry for the confusion!

So the list-name attribute is meant to be used when passing a list  
"into" the form?
Are there any basic examples of how a list may be passed into a form?

Many thanks,

Chris



On 20 Feb 2007, at 04:35, Scott Gray wrote:

> Hi Al, Christopher
>
> Al, I think Christopher is asking why the form still works if he  
> removes list-name="examples" from the form element.
>
> Christopher, as far as I can see having the list-name attribute  
> isn't necessary in this case because of the entity-condition action  
> (whose results are used regardless of what you do).  Even if you  
> passed the form a list called examples, the entity-condition  
> results would replace it.
>
> Regards
> Scott
>
> Al Byers wrote:
>> Christopher,
>>
>> I am confused. What is this below:
>>
>>   <form name="ListExamples" type="list" list-name="examples"
>> paginate-target="FindExample"
>>
>> Did you not see this or am i missing something?
>>
>> -Al
>>
>> On 2/19/07, Christopher Snow <[hidden email]> wrote:
>>>
>>> Al,
>>>
>>> I'm confused.  The list-name "examples" isn't referred to  
>>> anywhere in
>>> the form.  In fact, the form works ok without the list-name  
>>> attribute in
>>> the form.
>>>
>>> ? :(
>>>
>>> On Mon, 2007-02-19 at 10:16 -0700, Al Byers wrote:
>>> > Christopher,
>>> >
>>> > In this case the "entity-condition" op gets the list-name from the
>>> "form"
>>> > element and puts the list if gets there. And since that is the  
>>> variable
>>> that
>>> > the form expects to find the list info in, it works out.
>>> >
>>> > -Al
>>> >
>>> > On 2/19/07, Christopher Snow <[hidden email]> wrote:
>>> > >
>>> > > I'm struggling with form-widgets:
>>> > >
>>> > >
>>> > > <xs:attribute type="xs:string" name="list-name">
>>> > >     <xs:annotation><xs:documentation>for list type and other  
>>> multiple
>>> > > data/form types this is the name of the list in the context  
>>> to iterate
>>> > > over</xs:documentation></xs:annotation>
>>> > > </xs:attribute>
>>> > >
>>> > > How does the list get put in the context?  Is it put into the  
>>> context
>>> by
>>> > > <actions> (see below for the example app)?
>>> > > Is it redundant in ListExamples as it is not being referred to
>>> anywhere?
>>> > >
>>> > > Many thanks,
>>> > >
>>> > > Chris
>>> > >
>>> > >
>>> > >     <form name="ListExamples" type="list" list-name="examples"
>>> > > paginate-target="FindExample"
>>> > >              default-title-style="tableheadtext"
>>> > > default-widget-style="tabletext" default-tooltip-
>>> style="tabletext">
>>> > >         <actions>
>>> > >             <entity-condition entity-name="Example">
>>> > >                 <order-by field-name="description"/>
>>> > >             </entity-condition>
>>> > >         </actions>
>>> > >
>>> > >         <field name="exampleId" title="$
>>> {uiLabelMap.ExampleExampleId}"
>>> > > widget-style="buttontext">
>>> > >             <hyperlink also-hidden="false" description="$
>>> {exampleId}"
>>> > > target="EditExample?exampleId=${exampleId}"/>
>>> > >         </field>
>>> > >         <field name="exampleName" title="${uiLabelMap.CommonName
>>> > > }"><display/></field>
>>> > >         <field name="exampleTypeId" title="$
>>> {uiLabelMap.CommonType
>>> }"><display-entity
>>> > > entity-name="ExampleType"/></field>
>>> > >         <field name="statusId" title="${uiLabelMap.CommonStatus
>>> }"><display-entity
>>> > > entity-name="StatusItem"/></field>
>>> > >         <field name="description" title="${
>>> uiLabelMap.CommonDescription
>>> > > }"><display/></field>
>>> > >     </form>
>>> > >
>>> >
>>>
>>
>
>
> --
> This message has been scanned for viruses and
> dangerous content by MailScanner, and is
> believed to be clean.
>


--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.

Reply | Threaded
Open this post in threaded view
|

Re: form widgets

Scott Gray
The most basic example would be to remove the entity-condition in the
form and put it inside the actions on the screen definition, then you
would add a list-name attribute to the entity-condition like:
<entity-condition entity-name="Example" list-name="examples">

That will add an entry to the context map with the key "examples" and
the value being the list of results.

Regards
Scott

Christopher Snow wrote:

> Scott,
>
> That's exactly what I was asking - Al, sorry for the confusion!
>
> So the list-name attribute is meant to be used when passing a list
> "into" the form?
> Are there any basic examples of how a list may be passed into a form?
>
> Many thanks,
>
> Chris
>
>
>
> On 20 Feb 2007, at 04:35, Scott Gray wrote:
>
>> Hi Al, Christopher
>>
>> Al, I think Christopher is asking why the form still works if he
>> removes list-name="examples" from the form element.
>>
>> Christopher, as far as I can see having the list-name attribute isn't
>> necessary in this case because of the entity-condition action (whose
>> results are used regardless of what you do).  Even if you passed the
>> form a list called examples, the entity-condition results would
>> replace it.
>>
>> Regards
>> Scott
>>
>> Al Byers wrote:
>>> Christopher,
>>>
>>> I am confused. What is this below:
>>>
>>>   <form name="ListExamples" type="list" list-name="examples"
>>> paginate-target="FindExample"
>>>
>>> Did you not see this or am i missing something?
>>>
>>> -Al
>>>
>>> On 2/19/07, Christopher Snow <[hidden email]> wrote:
>>>>
>>>> Al,
>>>>
>>>> I'm confused.  The list-name "examples" isn't referred to anywhere in
>>>> the form.  In fact, the form works ok without the list-name
>>>> attribute in
>>>> the form.
>>>>
>>>> ? :(
>>>>
>>>> On Mon, 2007-02-19 at 10:16 -0700, Al Byers wrote:
>>>> > Christopher,
>>>> >
>>>> > In this case the "entity-condition" op gets the list-name from the
>>>> "form"
>>>> > element and puts the list if gets there. And since that is the
>>>> variable
>>>> that
>>>> > the form expects to find the list info in, it works out.
>>>> >
>>>> > -Al
>>>> >
>>>> > On 2/19/07, Christopher Snow <[hidden email]> wrote:
>>>> > >
>>>> > > I'm struggling with form-widgets:
>>>> > >
>>>> > >
>>>> > > <xs:attribute type="xs:string" name="list-name">
>>>> > >     <xs:annotation><xs:documentation>for list type and other
>>>> multiple
>>>> > > data/form types this is the name of the list in the context to
>>>> iterate
>>>> > > over</xs:documentation></xs:annotation>
>>>> > > </xs:attribute>
>>>> > >
>>>> > > How does the list get put in the context?  Is it put into the
>>>> context
>>>> by
>>>> > > <actions> (see below for the example app)?
>>>> > > Is it redundant in ListExamples as it is not being referred to
>>>> anywhere?
>>>> > >
>>>> > > Many thanks,
>>>> > >
>>>> > > Chris
>>>> > >
>>>> > >
>>>> > >     <form name="ListExamples" type="list" list-name="examples"
>>>> > > paginate-target="FindExample"
>>>> > >              default-title-style="tableheadtext"
>>>> > > default-widget-style="tabletext"
>>>> default-tooltip-style="tabletext">
>>>> > >         <actions>
>>>> > >             <entity-condition entity-name="Example">
>>>> > >                 <order-by field-name="description"/>
>>>> > >             </entity-condition>
>>>> > >         </actions>
>>>> > >
>>>> > >         <field name="exampleId"
>>>> title="${uiLabelMap.ExampleExampleId}"
>>>> > > widget-style="buttontext">
>>>> > >             <hyperlink also-hidden="false"
>>>> description="${exampleId}"
>>>> > > target="EditExample?exampleId=${exampleId}"/>
>>>> > >         </field>
>>>> > >         <field name="exampleName" title="${uiLabelMap.CommonName
>>>> > > }"><display/></field>
>>>> > >         <field name="exampleTypeId" title="${uiLabelMap.CommonType
>>>> }"><display-entity
>>>> > > entity-name="ExampleType"/></field>
>>>> > >         <field name="statusId" title="${uiLabelMap.CommonStatus
>>>> }"><display-entity
>>>> > > entity-name="StatusItem"/></field>
>>>> > >         <field name="description" title="${
>>>> uiLabelMap.CommonDescription
>>>> > > }"><display/></field>
>>>> > >     </form>
>>>> > >
>>>> >
>>>>
>>>
>>
>>
>> --This message has been scanned for viruses and
>> dangerous content by MailScanner, and is
>> believed to be clean.
>>
>
>
> --This message has been scanned for viruses and
> dangerous content by MailScanner, and is
> believed to be clean.
>
>

Reply | Threaded
Open this post in threaded view
|

Re: form widgets

snowch
This is excellent Scott!

Where else can lists be put into the context for the form?

  - screen definitions (as below)
  - the controller ?
  - the services ?
  - the calling form ?
  - any others ??

It seems that there is a lot of undocumented 'magic' with forms and  
minilang.  Is it easier to use forms if you have been using ofbiz  
since the JSP/FTL and Java based services days when things like  
adding lists to the context had to be done explicitly?

Many thanks,

Chris


On 20 Feb 2007, at 06:27, Scott Gray wrote:

> The most basic example would be to remove the entity-condition in  
> the form and put it inside the actions on the screen definition,  
> then you would add a list-name attribute to the entity-condition like:
> <entity-condition entity-name="Example" list-name="examples">
>
> That will add an entry to the context map with the key "examples"  
> and the value being the list of results.
>
> Regards
> Scott
>
> Christopher Snow wrote:
>> Scott,
>>
>> That's exactly what I was asking - Al, sorry for the confusion!
>>
>> So the list-name attribute is meant to be used when passing a list  
>> "into" the form?
>> Are there any basic examples of how a list may be passed into a form?
>>
>> Many thanks,
>>
>> Chris
>>
>>
>>
>> On 20 Feb 2007, at 04:35, Scott Gray wrote:
>>
>>> Hi Al, Christopher
>>>
>>> Al, I think Christopher is asking why the form still works if he  
>>> removes list-name="examples" from the form element.
>>>
>>> Christopher, as far as I can see having the list-name attribute  
>>> isn't necessary in this case because of the entity-condition  
>>> action (whose results are used regardless of what you do).  Even  
>>> if you passed the form a list called examples, the entity-
>>> condition results would replace it.
>>>
>>> Regards
>>> Scott
>>>
>>> Al Byers wrote:
>>>> Christopher,
>>>>
>>>> I am confused. What is this below:
>>>>
>>>>   <form name="ListExamples" type="list" list-name="examples"
>>>> paginate-target="FindExample"
>>>>
>>>> Did you not see this or am i missing something?
>>>>
>>>> -Al
>>>>
>>>> On 2/19/07, Christopher Snow <[hidden email]> wrote:
>>>>>
>>>>> Al,
>>>>>
>>>>> I'm confused.  The list-name "examples" isn't referred to  
>>>>> anywhere in
>>>>> the form.  In fact, the form works ok without the list-name  
>>>>> attribute in
>>>>> the form.
>>>>>
>>>>> ? :(
>>>>>
>>>>> On Mon, 2007-02-19 at 10:16 -0700, Al Byers wrote:
>>>>> > Christopher,
>>>>> >
>>>>> > In this case the "entity-condition" op gets the list-name  
>>>>> from the
>>>>> "form"
>>>>> > element and puts the list if gets there. And since that is  
>>>>> the variable
>>>>> that
>>>>> > the form expects to find the list info in, it works out.
>>>>> >
>>>>> > -Al
>>>>> >
>>>>> > On 2/19/07, Christopher Snow <[hidden email]> wrote:
>>>>> > >
>>>>> > > I'm struggling with form-widgets:
>>>>> > >
>>>>> > >
>>>>> > > <xs:attribute type="xs:string" name="list-name">
>>>>> > >     <xs:annotation><xs:documentation>for list type and  
>>>>> other multiple
>>>>> > > data/form types this is the name of the list in the context  
>>>>> to iterate
>>>>> > > over</xs:documentation></xs:annotation>
>>>>> > > </xs:attribute>
>>>>> > >
>>>>> > > How does the list get put in the context?  Is it put into  
>>>>> the context
>>>>> by
>>>>> > > <actions> (see below for the example app)?
>>>>> > > Is it redundant in ListExamples as it is not being referred to
>>>>> anywhere?
>>>>> > >
>>>>> > > Many thanks,
>>>>> > >
>>>>> > > Chris
>>>>> > >
>>>>> > >
>>>>> > >     <form name="ListExamples" type="list" list-name="examples"
>>>>> > > paginate-target="FindExample"
>>>>> > >              default-title-style="tableheadtext"
>>>>> > > default-widget-style="tabletext" default-tooltip-
>>>>> style="tabletext">
>>>>> > >         <actions>
>>>>> > >             <entity-condition entity-name="Example">
>>>>> > >                 <order-by field-name="description"/>
>>>>> > >             </entity-condition>
>>>>> > >         </actions>
>>>>> > >
>>>>> > >         <field name="exampleId" title="$
>>>>> {uiLabelMap.ExampleExampleId}"
>>>>> > > widget-style="buttontext">
>>>>> > >             <hyperlink also-hidden="false" description="$
>>>>> {exampleId}"
>>>>> > > target="EditExample?exampleId=${exampleId}"/>
>>>>> > >         </field>
>>>>> > >         <field name="exampleName" title="$
>>>>> {uiLabelMap.CommonName
>>>>> > > }"><display/></field>
>>>>> > >         <field name="exampleTypeId" title="$
>>>>> {uiLabelMap.CommonType
>>>>> }"><display-entity
>>>>> > > entity-name="ExampleType"/></field>
>>>>> > >         <field name="statusId" title="$
>>>>> {uiLabelMap.CommonStatus
>>>>> }"><display-entity
>>>>> > > entity-name="StatusItem"/></field>
>>>>> > >         <field name="description" title="${
>>>>> uiLabelMap.CommonDescription
>>>>> > > }"><display/></field>
>>>>> > >     </form>
>>>>> > >
>>>>> >
>>>>>
>>>>
>>>
>>>
>>> --This message has been scanned for viruses and
>>> dangerous content by MailScanner, and is
>>> believed to be clean.
>>>
>>
>>
>> --This message has been scanned for viruses and
>> dangerous content by MailScanner, and is
>> believed to be clean.
>>
>>
>
>
> --
> This message has been scanned for viruses and
> dangerous content by MailScanner, and is
> believed to be clean.
>


--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.

Reply | Threaded
Open this post in threaded view
|

Re: form widgets

Scott Gray
Anyone who knows more can feel free to over-ride me, but generally you
load the display data in the screen def (most common) or in the form
itself.  From the screen def actions you can call services, bsh scripts
or use the entity- and get-related elements.  But basically once you get
to the form anything that is in the context map is fair game for
display, for example you could add a new field to the example form like
this:
        <field name="rootDir"><display/></field>
or
        <field name="userLogin.partyId"><display/></field>

if you want to see what is living in the context you could display the
contents on screen from the screen def <widgets> section:
                                <label>${context}</label>

Regards
Scott

Christopher Snow wrote:

> This is excellent Scott!
>
> Where else can lists be put into the context for the form?
>
>  - screen definitions (as below)
>  - the controller ?
>  - the services ?
>  - the calling form ?
>  - any others ??
>
> It seems that there is a lot of undocumented 'magic' with forms and
> minilang.  Is it easier to use forms if you have been using ofbiz
> since the JSP/FTL and Java based services days when things like adding
> lists to the context had to be done explicitly?
>
> Many thanks,
>
> Chris
>
>
> On 20 Feb 2007, at 06:27, Scott Gray wrote:
>
>> The most basic example would be to remove the entity-condition in the
>> form and put it inside the actions on the screen definition, then you
>> would add a list-name attribute to the entity-condition like:
>> <entity-condition entity-name="Example" list-name="examples">
>>
>> That will add an entry to the context map with the key "examples" and
>> the value being the list of results.
>>
>> Regards
>> Scott
>>
>> Christopher Snow wrote:
>>> Scott,
>>>
>>> That's exactly what I was asking - Al, sorry for the confusion!
>>>
>>> So the list-name attribute is meant to be used when passing a list
>>> "into" the form?
>>> Are there any basic examples of how a list may be passed into a form?
>>>
>>> Many thanks,
>>>
>>> Chris
>>>
>>>
>>>
>>> On 20 Feb 2007, at 04:35, Scott Gray wrote:
>>>
>>>> Hi Al, Christopher
>>>>
>>>> Al, I think Christopher is asking why the form still works if he
>>>> removes list-name="examples" from the form element.
>>>>
>>>> Christopher, as far as I can see having the list-name attribute
>>>> isn't necessary in this case because of the entity-condition action
>>>> (whose results are used regardless of what you do).  Even if you
>>>> passed the form a list called examples, the entity-condition
>>>> results would replace it.
>>>>
>>>> Regards
>>>> Scott
>>>>
>>>> Al Byers wrote:
>>>>> Christopher,
>>>>>
>>>>> I am confused. What is this below:
>>>>>
>>>>>   <form name="ListExamples" type="list" list-name="examples"
>>>>> paginate-target="FindExample"
>>>>>
>>>>> Did you not see this or am i missing something?
>>>>>
>>>>> -Al
>>>>>
>>>>> On 2/19/07, Christopher Snow <[hidden email]> wrote:
>>>>>>
>>>>>> Al,
>>>>>>
>>>>>> I'm confused.  The list-name "examples" isn't referred to
>>>>>> anywhere in
>>>>>> the form.  In fact, the form works ok without the list-name
>>>>>> attribute in
>>>>>> the form.
>>>>>>
>>>>>> ? :(
>>>>>>
>>>>>> On Mon, 2007-02-19 at 10:16 -0700, Al Byers wrote:
>>>>>> > Christopher,
>>>>>> >
>>>>>> > In this case the "entity-condition" op gets the list-name from the
>>>>>> "form"
>>>>>> > element and puts the list if gets there. And since that is the
>>>>>> variable
>>>>>> that
>>>>>> > the form expects to find the list info in, it works out.
>>>>>> >
>>>>>> > -Al
>>>>>> >
>>>>>> > On 2/19/07, Christopher Snow <[hidden email]> wrote:
>>>>>> > >
>>>>>> > > I'm struggling with form-widgets:
>>>>>> > >
>>>>>> > >
>>>>>> > > <xs:attribute type="xs:string" name="list-name">
>>>>>> > >     <xs:annotation><xs:documentation>for list type and other
>>>>>> multiple
>>>>>> > > data/form types this is the name of the list in the context
>>>>>> to iterate
>>>>>> > > over</xs:documentation></xs:annotation>
>>>>>> > > </xs:attribute>
>>>>>> > >
>>>>>> > > How does the list get put in the context?  Is it put into the
>>>>>> context
>>>>>> by
>>>>>> > > <actions> (see below for the example app)?
>>>>>> > > Is it redundant in ListExamples as it is not being referred to
>>>>>> anywhere?
>>>>>> > >
>>>>>> > > Many thanks,
>>>>>> > >
>>>>>> > > Chris
>>>>>> > >
>>>>>> > >
>>>>>> > >     <form name="ListExamples" type="list" list-name="examples"
>>>>>> > > paginate-target="FindExample"
>>>>>> > >              default-title-style="tableheadtext"
>>>>>> > > default-widget-style="tabletext"
>>>>>> default-tooltip-style="tabletext">
>>>>>> > >         <actions>
>>>>>> > >             <entity-condition entity-name="Example">
>>>>>> > >                 <order-by field-name="description"/>
>>>>>> > >             </entity-condition>
>>>>>> > >         </actions>
>>>>>> > >
>>>>>> > >         <field name="exampleId"
>>>>>> title="${uiLabelMap.ExampleExampleId}"
>>>>>> > > widget-style="buttontext">
>>>>>> > >             <hyperlink also-hidden="false"
>>>>>> description="${exampleId}"
>>>>>> > > target="EditExample?exampleId=${exampleId}"/>
>>>>>> > >         </field>
>>>>>> > >         <field name="exampleName" title="${uiLabelMap.CommonName
>>>>>> > > }"><display/></field>
>>>>>> > >         <field name="exampleTypeId"
>>>>>> title="${uiLabelMap.CommonType
>>>>>> }"><display-entity
>>>>>> > > entity-name="ExampleType"/></field>
>>>>>> > >         <field name="statusId" title="${uiLabelMap.CommonStatus
>>>>>> }"><display-entity
>>>>>> > > entity-name="StatusItem"/></field>
>>>>>> > >         <field name="description" title="${
>>>>>> uiLabelMap.CommonDescription
>>>>>> > > }"><display/></field>
>>>>>> > >     </form>
>>>>>> > >
>>>>>> >
>>>>>>
>>>>>
>>>>
>>>>
>>>> --This message has been scanned for viruses and
>>>> dangerous content by MailScanner, and is
>>>> believed to be clean.
>>>>
>>>
>>>
>>> --This message has been scanned for viruses and
>>> dangerous content by MailScanner, and is
>>> believed to be clean.
>>>
>>>
>>
>>
>> --This message has been scanned for viruses and
>> dangerous content by MailScanner, and is
>> believed to be clean.
>>
>
>
> --This message has been scanned for viruses and
> dangerous content by MailScanner, and is
> believed to be clean.
>
>

Reply | Threaded
Open this post in threaded view
|

Re: form widgets

snowch
Many thanks Scott,  that's enough to keep me going for a while!


On 20 Feb 2007, at 09:58, Scott Gray wrote:

> Anyone who knows more can feel free to over-ride me, but generally  
> you load the display data in the screen def (most common) or in the  
> form itself.  From the screen def actions you can call services,  
> bsh scripts or use the entity- and get-related elements.  But  
> basically once you get to the form anything that is in the context  
> map is fair game for display, for example you could add a new field  
> to the example form like this:
>        <field name="rootDir"><display/></field>
> or
>        <field name="userLogin.partyId"><display/></field>
>
> if you want to see what is living in the context you could display  
> the contents on screen from the screen def <widgets> section:
>                                <label>${context}</label>
>
> Regards
> Scott
>
> Christopher Snow wrote:
>> This is excellent Scott!
>>
>> Where else can lists be put into the context for the form?
>>
>>  - screen definitions (as below)
>>  - the controller ?
>>  - the services ?
>>  - the calling form ?
>>  - any others ??
>>
>> It seems that there is a lot of undocumented 'magic' with forms  
>> and minilang.  Is it easier to use forms if you have been using  
>> ofbiz since the JSP/FTL and Java based services days when things  
>> like adding lists to the context had to be done explicitly?
>>
>> Many thanks,
>>
>> Chris
>>
>>
>> On 20 Feb 2007, at 06:27, Scott Gray wrote:
>>
>>> The most basic example would be to remove the entity-condition in  
>>> the form and put it inside the actions on the screen definition,  
>>> then you would add a list-name attribute to the entity-condition  
>>> like:
>>> <entity-condition entity-name="Example" list-name="examples">
>>>
>>> That will add an entry to the context map with the key "examples"  
>>> and the value being the list of results.
>>>
>>> Regards
>>> Scott
>>>
>>> Christopher Snow wrote:
>>>> Scott,
>>>>
>>>> That's exactly what I was asking - Al, sorry for the confusion!
>>>>
>>>> So the list-name attribute is meant to be used when passing a  
>>>> list "into" the form?
>>>> Are there any basic examples of how a list may be passed into a  
>>>> form?
>>>>
>>>> Many thanks,
>>>>
>>>> Chris
>>>>
>>>>
>>>>
>>>> On 20 Feb 2007, at 04:35, Scott Gray wrote:
>>>>
>>>>> Hi Al, Christopher
>>>>>
>>>>> Al, I think Christopher is asking why the form still works if  
>>>>> he removes list-name="examples" from the form element.
>>>>>
>>>>> Christopher, as far as I can see having the list-name attribute  
>>>>> isn't necessary in this case because of the entity-condition  
>>>>> action (whose results are used regardless of what you do).  
>>>>> Even if you passed the form a list called examples, the entity-
>>>>> condition results would replace it.
>>>>>
>>>>> Regards
>>>>> Scott
>>>>>
>>>>> Al Byers wrote:
>>>>>> Christopher,
>>>>>>
>>>>>> I am confused. What is this below:
>>>>>>
>>>>>>   <form name="ListExamples" type="list" list-name="examples"
>>>>>> paginate-target="FindExample"
>>>>>>
>>>>>> Did you not see this or am i missing something?
>>>>>>
>>>>>> -Al
>>>>>>
>>>>>> On 2/19/07, Christopher Snow <[hidden email]> wrote:
>>>>>>>
>>>>>>> Al,
>>>>>>>
>>>>>>> I'm confused.  The list-name "examples" isn't referred to  
>>>>>>> anywhere in
>>>>>>> the form.  In fact, the form works ok without the list-name  
>>>>>>> attribute in
>>>>>>> the form.
>>>>>>>
>>>>>>> ? :(
>>>>>>>
>>>>>>> On Mon, 2007-02-19 at 10:16 -0700, Al Byers wrote:
>>>>>>> > Christopher,
>>>>>>> >
>>>>>>> > In this case the "entity-condition" op gets the list-name  
>>>>>>> from the
>>>>>>> "form"
>>>>>>> > element and puts the list if gets there. And since that is  
>>>>>>> the variable
>>>>>>> that
>>>>>>> > the form expects to find the list info in, it works out.
>>>>>>> >
>>>>>>> > -Al
>>>>>>> >
>>>>>>> > On 2/19/07, Christopher Snow <[hidden email]> wrote:
>>>>>>> > >
>>>>>>> > > I'm struggling with form-widgets:
>>>>>>> > >
>>>>>>> > >
>>>>>>> > > <xs:attribute type="xs:string" name="list-name">
>>>>>>> > >     <xs:annotation><xs:documentation>for list type and  
>>>>>>> other multiple
>>>>>>> > > data/form types this is the name of the list in the  
>>>>>>> context to iterate
>>>>>>> > > over</xs:documentation></xs:annotation>
>>>>>>> > > </xs:attribute>
>>>>>>> > >
>>>>>>> > > How does the list get put in the context?  Is it put into  
>>>>>>> the context
>>>>>>> by
>>>>>>> > > <actions> (see below for the example app)?
>>>>>>> > > Is it redundant in ListExamples as it is not being  
>>>>>>> referred to
>>>>>>> anywhere?
>>>>>>> > >
>>>>>>> > > Many thanks,
>>>>>>> > >
>>>>>>> > > Chris
>>>>>>> > >
>>>>>>> > >
>>>>>>> > >     <form name="ListExamples" type="list" list-
>>>>>>> name="examples"
>>>>>>> > > paginate-target="FindExample"
>>>>>>> > >              default-title-style="tableheadtext"
>>>>>>> > > default-widget-style="tabletext" default-tooltip-
>>>>>>> style="tabletext">
>>>>>>> > >         <actions>
>>>>>>> > >             <entity-condition entity-name="Example">
>>>>>>> > >                 <order-by field-name="description"/>
>>>>>>> > >             </entity-condition>
>>>>>>> > >         </actions>
>>>>>>> > >
>>>>>>> > >         <field name="exampleId" title="$
>>>>>>> {uiLabelMap.ExampleExampleId}"
>>>>>>> > > widget-style="buttontext">
>>>>>>> > >             <hyperlink also-hidden="false" description="$
>>>>>>> {exampleId}"
>>>>>>> > > target="EditExample?exampleId=${exampleId}"/>
>>>>>>> > >         </field>
>>>>>>> > >         <field name="exampleName" title="$
>>>>>>> {uiLabelMap.CommonName
>>>>>>> > > }"><display/></field>
>>>>>>> > >         <field name="exampleTypeId" title="$
>>>>>>> {uiLabelMap.CommonType
>>>>>>> }"><display-entity
>>>>>>> > > entity-name="ExampleType"/></field>
>>>>>>> > >         <field name="statusId" title="$
>>>>>>> {uiLabelMap.CommonStatus
>>>>>>> }"><display-entity
>>>>>>> > > entity-name="StatusItem"/></field>
>>>>>>> > >         <field name="description" title="${
>>>>>>> uiLabelMap.CommonDescription
>>>>>>> > > }"><display/></field>
>>>>>>> > >     </form>
>>>>>>> > >
>>>>>>> >
>>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --This message has been scanned for viruses and
>>>>> dangerous content by MailScanner, and is
>>>>> believed to be clean.
>>>>>
>>>>
>>>>
>>>> --This message has been scanned for viruses and
>>>> dangerous content by MailScanner, and is
>>>> believed to be clean.
>>>>
>>>>
>>>
>>>
>>> --This message has been scanned for viruses and
>>> dangerous content by MailScanner, and is
>>> believed to be clean.
>>>
>>
>>
>> --This message has been scanned for viruses and
>> dangerous content by MailScanner, and is
>> believed to be clean.
>>
>>
>
>
> --
> This message has been scanned for viruses and
> dangerous content by MailScanner, and is
> believed to be clean.
>


--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.