Created
November 5, 2013 00:06
-
-
Save fulv/7311639 to your computer and use it in GitHub Desktop.
This works similarly to https://gist.github.com/fulv/7260167. The only difference is that form1 and form2 have a flditems field, which is a datagrid, and uses formdatagrid as its associated form. Formdatagrid has two fields, a text fldname, and a number fldquantity. After creating a document with form1, containing a few datagrid rows, open form2.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<plominodatabase id="testdb2"> | |
<design> | |
<dbsettings version="1.18"> | |
<AboutDescription type="Products.Archetypes.Field.TextField"><![CDATA[]]></AboutDescription> | |
<UsingDescription type="Products.Archetypes.Field.TextField"><![CDATA[]]></UsingDescription> | |
<IndexAttachments type="Products.Archetypes.Field.BooleanField">False</IndexAttachments> | |
<FulltextIndex type="Products.Archetypes.Field.BooleanField">True</FulltextIndex> | |
<IndexInPortal type="Products.Archetypes.Field.BooleanField">False</IndexInPortal> | |
<debugMode type="Products.Archetypes.Field.BooleanField">False</debugMode> | |
<CountDocuments type="Products.Archetypes.Field.BooleanField">False</CountDocuments> | |
<DateTimeFormat type="Products.Archetypes.Field.StringField">%Y-%m-%d</DateTimeFormat> | |
<StartPage type="Products.Archetypes.Field.StringField"/> | |
<i18n type="Products.Archetypes.Field.StringField"/> | |
<DoNotListUsers type="Products.Archetypes.Field.BooleanField">False</DoNotListUsers> | |
<DoNotReindex type="Products.Archetypes.Field.BooleanField">False</DoNotReindex> | |
<IsDatabaseTemplate type="Products.Archetypes.Field.BooleanField">False</IsDatabaseTemplate> | |
<excludeFromNav type="Products.Archetypes.Field.BooleanField">False</excludeFromNav> | |
<acl AnomynousAccessRight="NoAccess" AuthenticatedAccessRight="NoAccess"> | |
<params id="UserRoles"> | |
<param> | |
<value><struct> | |
</struct></value> | |
</param> | |
</params> | |
<params id="SpecificRights"> | |
<param> | |
<value><struct> | |
<member> | |
<name>specific_deletedocument</name> | |
<value><string>PlominoAuthor</string></value> | |
</member> | |
</struct></value> | |
</param> | |
</params> | |
</acl> | |
</dbsettings> | |
<element id="form1" title="form1" type="PlominoForm"> | |
<id type="Products.Archetypes.Field.StringField">form1</id> | |
<onCreateDocument type="Products.Archetypes.Field.TextField"><![CDATA[]]></onCreateDocument> | |
<onOpenDocument type="Products.Archetypes.Field.TextField"><![CDATA[]]></onOpenDocument> | |
<beforeSaveDocument type="Products.Archetypes.Field.TextField"><![CDATA[]]></beforeSaveDocument> | |
<onSaveDocument type="Products.Archetypes.Field.TextField"><![CDATA[]]></onSaveDocument> | |
<onDeleteDocument type="Products.Archetypes.Field.TextField"><![CDATA[]]></onDeleteDocument> | |
<onSearch type="Products.Archetypes.Field.TextField"><![CDATA[]]></onSearch> | |
<beforeCreateDocument type="Products.Archetypes.Field.TextField"><![CDATA[]]></beforeCreateDocument> | |
<FormLayout type="Products.Archetypes.Field.TextField"><![CDATA[ | |
<p><span class="plominoFieldClass">flditems</span></p> | |
<p><span class="plominoFieldClass">fldtext</span></p> | |
]]></FormLayout> | |
<FormMethod type="Products.Archetypes.Field.TextField"><![CDATA[Auto]]></FormMethod> | |
<DocumentTitle type="Products.Archetypes.Field.TextField"><![CDATA[]]></DocumentTitle> | |
<DynamicDocumentTitle type="Products.Archetypes.Field.BooleanField">False</DynamicDocumentTitle> | |
<StoreDynamicDocumentTitle type="Products.Archetypes.Field.BooleanField">False</StoreDynamicDocumentTitle> | |
<DocumentId type="Products.Archetypes.Field.TextField"><![CDATA[]]></DocumentId> | |
<ActionBarPosition type="Products.Archetypes.Field.StringField">TOP</ActionBarPosition> | |
<HideDefaultActions type="Products.Archetypes.Field.BooleanField">False</HideDefaultActions> | |
<HideInMenu type="Products.Archetypes.Field.BooleanField">False</HideInMenu> | |
<isSearchForm type="Products.Archetypes.Field.BooleanField">False</isSearchForm> | |
<isPage type="Products.Archetypes.Field.BooleanField">False</isPage> | |
<SearchView type="Products.Archetypes.Field.StringField"/> | |
<SearchFormula type="Products.Archetypes.Field.TextField"><![CDATA[]]></SearchFormula> | |
<Position type="Products.Archetypes.Field.IntegerField"/> | |
<ResourcesJS type="Products.Archetypes.Field.TextField"><![CDATA[]]></ResourcesJS> | |
<ResourcesCSS type="Products.Archetypes.Field.TextField"><![CDATA[]]></ResourcesCSS> | |
<excludeFromNav type="Products.Archetypes.Field.BooleanField">False</excludeFromNav> | |
<elements> | |
<element id="flditems" title="flditems" type="PlominoField"> | |
<id type="Products.Archetypes.Field.StringField">flditems</id> | |
<FieldType type="Products.Archetypes.Field.StringField">DATAGRID</FieldType> | |
<FieldMode type="Products.Archetypes.Field.StringField">EDITABLE</FieldMode> | |
<Formula type="Products.Archetypes.Field.TextField"><![CDATA[]]></Formula> | |
<FieldReadTemplate type="Products.Archetypes.Field.StringField"/> | |
<FieldEditTemplate type="Products.Archetypes.Field.StringField"/> | |
<Mandatory type="Products.Archetypes.Field.BooleanField">False</Mandatory> | |
<ValidationFormula type="Products.Archetypes.Field.TextField"><![CDATA[]]></ValidationFormula> | |
<ToBeIndexed type="Products.Archetypes.Field.BooleanField">False</ToBeIndexed> | |
<IndexType type="Products.Archetypes.Field.StringField">DEFAULT</IndexType> | |
<HTMLAttributesFormula type="Products.Archetypes.Field.TextField"><![CDATA[]]></HTMLAttributesFormula> | |
<params> | |
<param> | |
<value><struct> | |
<member> | |
<name>associated_form</name> | |
<value><string>formdatagrid</string></value> | |
</member> | |
<member> | |
<name>jssettings</name> | |
<value><string>"aoColumns": [ | |
{ "sTitle": "Name" }, | |
{ "sTitle": "Quantity", "sClass": "center" } | |
], | |
"bPaginate": false, | |
"bLengthChange": false, | |
"bFilter": false, | |
"bSort": false, | |
"bInfo": false, | |
"bAutoWidth": false, | |
"plominoDialogOptions": { | |
"width": 400, | |
"height": 300 | |
} | |
</string></value> | |
</member> | |
<member> | |
<name>field_mapping</name> | |
<value><string>fldname,fldquantity</string></value> | |
</member> | |
</struct></value> | |
</param> | |
</params> | |
</element> | |
<element id="fldtext" title="fldtext" type="PlominoField"> | |
<id type="Products.Archetypes.Field.StringField">fldtext</id> | |
<FieldType type="Products.Archetypes.Field.StringField">TEXT</FieldType> | |
<FieldMode type="Products.Archetypes.Field.StringField">EDITABLE</FieldMode> | |
<Formula type="Products.Archetypes.Field.TextField"><![CDATA[]]></Formula> | |
<FieldReadTemplate type="Products.Archetypes.Field.StringField"/> | |
<FieldEditTemplate type="Products.Archetypes.Field.StringField"/> | |
<Mandatory type="Products.Archetypes.Field.BooleanField">False</Mandatory> | |
<ValidationFormula type="Products.Archetypes.Field.TextField"><![CDATA[]]></ValidationFormula> | |
<ToBeIndexed type="Products.Archetypes.Field.BooleanField">False</ToBeIndexed> | |
<IndexType type="Products.Archetypes.Field.StringField">DEFAULT</IndexType> | |
<HTMLAttributesFormula type="Products.Archetypes.Field.TextField"><![CDATA[]]></HTMLAttributesFormula> | |
</element> | |
</elements> | |
</element> | |
<element id="form2" title="form2" type="PlominoForm"> | |
<id type="Products.Archetypes.Field.StringField">form2</id> | |
<onCreateDocument type="Products.Archetypes.Field.TextField"><![CDATA[]]></onCreateDocument> | |
<onOpenDocument type="Products.Archetypes.Field.TextField"><![CDATA[]]></onOpenDocument> | |
<beforeSaveDocument type="Products.Archetypes.Field.TextField"><![CDATA[]]></beforeSaveDocument> | |
<onSaveDocument type="Products.Archetypes.Field.TextField"><![CDATA[]]></onSaveDocument> | |
<onDeleteDocument type="Products.Archetypes.Field.TextField"><![CDATA[]]></onDeleteDocument> | |
<onSearch type="Products.Archetypes.Field.TextField"><![CDATA[]]></onSearch> | |
<beforeCreateDocument type="Products.Archetypes.Field.TextField"><![CDATA[db = context.getParentDatabase() | |
search = db.getIndex().dbsearch({}) | |
olddoc = search[0].getObject() | |
fields = context.getFormFields() | |
fieldsdict = {f.id:f for f in fields} | |
for id in fieldsdict: | |
value = olddoc.getItem(id) | |
Log("id: %s, value: %s" % (id, value)) | |
context.REQUEST.set(id, value) | |
return None]]></beforeCreateDocument> | |
<FormLayout type="Products.Archetypes.Field.TextField"><![CDATA[ | |
<p><span class="plominoFieldClass">flditems</span></p> | |
<p><span class="plominoFieldClass">fldtext</span></p> | |
]]></FormLayout> | |
<FormMethod type="Products.Archetypes.Field.TextField"><![CDATA[Auto]]></FormMethod> | |
<DocumentTitle type="Products.Archetypes.Field.TextField"><![CDATA[]]></DocumentTitle> | |
<DynamicDocumentTitle type="Products.Archetypes.Field.BooleanField">False</DynamicDocumentTitle> | |
<StoreDynamicDocumentTitle type="Products.Archetypes.Field.BooleanField">False</StoreDynamicDocumentTitle> | |
<DocumentId type="Products.Archetypes.Field.TextField"><![CDATA[]]></DocumentId> | |
<ActionBarPosition type="Products.Archetypes.Field.StringField">TOP</ActionBarPosition> | |
<HideDefaultActions type="Products.Archetypes.Field.BooleanField">False</HideDefaultActions> | |
<HideInMenu type="Products.Archetypes.Field.BooleanField">False</HideInMenu> | |
<isSearchForm type="Products.Archetypes.Field.BooleanField">False</isSearchForm> | |
<isPage type="Products.Archetypes.Field.BooleanField">False</isPage> | |
<SearchView type="Products.Archetypes.Field.StringField"/> | |
<SearchFormula type="Products.Archetypes.Field.TextField"><![CDATA[]]></SearchFormula> | |
<Position type="Products.Archetypes.Field.IntegerField"/> | |
<ResourcesJS type="Products.Archetypes.Field.TextField"><![CDATA[]]></ResourcesJS> | |
<ResourcesCSS type="Products.Archetypes.Field.TextField"><![CDATA[]]></ResourcesCSS> | |
<excludeFromNav type="Products.Archetypes.Field.BooleanField">False</excludeFromNav> | |
<elements> | |
<element id="flditems" title="flditems" type="PlominoField"> | |
<id type="Products.Archetypes.Field.StringField">flditems</id> | |
<FieldType type="Products.Archetypes.Field.StringField">DATAGRID</FieldType> | |
<FieldMode type="Products.Archetypes.Field.StringField">EDITABLE</FieldMode> | |
<Formula type="Products.Archetypes.Field.TextField"><![CDATA[]]></Formula> | |
<FieldReadTemplate type="Products.Archetypes.Field.StringField"/> | |
<FieldEditTemplate type="Products.Archetypes.Field.StringField"/> | |
<Mandatory type="Products.Archetypes.Field.BooleanField">False</Mandatory> | |
<ValidationFormula type="Products.Archetypes.Field.TextField"><![CDATA[]]></ValidationFormula> | |
<ToBeIndexed type="Products.Archetypes.Field.BooleanField">False</ToBeIndexed> | |
<IndexType type="Products.Archetypes.Field.StringField">DEFAULT</IndexType> | |
<HTMLAttributesFormula type="Products.Archetypes.Field.TextField"><![CDATA[]]></HTMLAttributesFormula> | |
<params> | |
<param> | |
<value><struct> | |
<member> | |
<name>associated_form</name> | |
<value><string>formdatagrid</string></value> | |
</member> | |
<member> | |
<name>jssettings</name> | |
<value><string>"aoColumns": [ | |
{ "sTitle": "Name" }, | |
{ "sTitle": "Quantity", "sClass": "center" } | |
], | |
"bPaginate": false, | |
"bLengthChange": false, | |
"bFilter": false, | |
"bSort": false, | |
"bInfo": false, | |
"bAutoWidth": false, | |
"plominoDialogOptions": { | |
"width": 400, | |
"height": 300 | |
} | |
</string></value> | |
</member> | |
<member> | |
<name>field_mapping</name> | |
<value><string>fldname,fldquantity</string></value> | |
</member> | |
</struct></value> | |
</param> | |
</params> | |
</element> | |
<element id="fldtext" title="fldtext" type="PlominoField"> | |
<id type="Products.Archetypes.Field.StringField">fldtext</id> | |
<FieldType type="Products.Archetypes.Field.StringField">TEXT</FieldType> | |
<FieldMode type="Products.Archetypes.Field.StringField">EDITABLE</FieldMode> | |
<Formula type="Products.Archetypes.Field.TextField"><![CDATA[]]></Formula> | |
<FieldReadTemplate type="Products.Archetypes.Field.StringField"/> | |
<FieldEditTemplate type="Products.Archetypes.Field.StringField"/> | |
<Mandatory type="Products.Archetypes.Field.BooleanField">False</Mandatory> | |
<ValidationFormula type="Products.Archetypes.Field.TextField"><![CDATA[]]></ValidationFormula> | |
<ToBeIndexed type="Products.Archetypes.Field.BooleanField">False</ToBeIndexed> | |
<IndexType type="Products.Archetypes.Field.StringField">DEFAULT</IndexType> | |
<HTMLAttributesFormula type="Products.Archetypes.Field.TextField"><![CDATA[]]></HTMLAttributesFormula> | |
</element> | |
</elements> | |
</element> | |
<element id="formdatagrid" title="formdatagrid" type="PlominoForm"> | |
<id type="Products.Archetypes.Field.StringField">formdatagrid</id> | |
<onCreateDocument type="Products.Archetypes.Field.TextField"><![CDATA[]]></onCreateDocument> | |
<onOpenDocument type="Products.Archetypes.Field.TextField"><![CDATA[]]></onOpenDocument> | |
<beforeSaveDocument type="Products.Archetypes.Field.TextField"><![CDATA[]]></beforeSaveDocument> | |
<onSaveDocument type="Products.Archetypes.Field.TextField"><![CDATA[]]></onSaveDocument> | |
<onDeleteDocument type="Products.Archetypes.Field.TextField"><![CDATA[]]></onDeleteDocument> | |
<onSearch type="Products.Archetypes.Field.TextField"><![CDATA[]]></onSearch> | |
<beforeCreateDocument type="Products.Archetypes.Field.TextField"><![CDATA[]]></beforeCreateDocument> | |
<FormLayout type="Products.Archetypes.Field.TextField"><![CDATA[ | |
<p><span class="plominoFieldClass">fldname</span></p> | |
<p><span class="plominoFieldClass">fldquantity</span></p> | |
]]></FormLayout> | |
<FormMethod type="Products.Archetypes.Field.TextField"><![CDATA[Auto]]></FormMethod> | |
<DocumentTitle type="Products.Archetypes.Field.TextField"><![CDATA[]]></DocumentTitle> | |
<DynamicDocumentTitle type="Products.Archetypes.Field.BooleanField">False</DynamicDocumentTitle> | |
<StoreDynamicDocumentTitle type="Products.Archetypes.Field.BooleanField">False</StoreDynamicDocumentTitle> | |
<DocumentId type="Products.Archetypes.Field.TextField"><![CDATA[]]></DocumentId> | |
<ActionBarPosition type="Products.Archetypes.Field.StringField">TOP</ActionBarPosition> | |
<HideDefaultActions type="Products.Archetypes.Field.BooleanField">False</HideDefaultActions> | |
<HideInMenu type="Products.Archetypes.Field.BooleanField">False</HideInMenu> | |
<isSearchForm type="Products.Archetypes.Field.BooleanField">False</isSearchForm> | |
<isPage type="Products.Archetypes.Field.BooleanField">False</isPage> | |
<SearchView type="Products.Archetypes.Field.StringField"/> | |
<SearchFormula type="Products.Archetypes.Field.TextField"><![CDATA[]]></SearchFormula> | |
<Position type="Products.Archetypes.Field.IntegerField"/> | |
<ResourcesJS type="Products.Archetypes.Field.TextField"><![CDATA[]]></ResourcesJS> | |
<ResourcesCSS type="Products.Archetypes.Field.TextField"><![CDATA[]]></ResourcesCSS> | |
<excludeFromNav type="Products.Archetypes.Field.BooleanField">False</excludeFromNav> | |
<elements> | |
<element id="fldname" title="fldname" type="PlominoField"> | |
<id type="Products.Archetypes.Field.StringField">fldname</id> | |
<FieldType type="Products.Archetypes.Field.StringField">TEXT</FieldType> | |
<FieldMode type="Products.Archetypes.Field.StringField">EDITABLE</FieldMode> | |
<Formula type="Products.Archetypes.Field.TextField"><![CDATA[]]></Formula> | |
<FieldReadTemplate type="Products.Archetypes.Field.StringField"/> | |
<FieldEditTemplate type="Products.Archetypes.Field.StringField"/> | |
<Mandatory type="Products.Archetypes.Field.BooleanField">False</Mandatory> | |
<ValidationFormula type="Products.Archetypes.Field.TextField"><![CDATA[]]></ValidationFormula> | |
<ToBeIndexed type="Products.Archetypes.Field.BooleanField">False</ToBeIndexed> | |
<IndexType type="Products.Archetypes.Field.StringField">DEFAULT</IndexType> | |
<HTMLAttributesFormula type="Products.Archetypes.Field.TextField"><![CDATA[]]></HTMLAttributesFormula> | |
</element> | |
<element id="fldquantity" title="fldquantity" type="PlominoField"> | |
<id type="Products.Archetypes.Field.StringField">fldquantity</id> | |
<FieldType type="Products.Archetypes.Field.StringField">NUMBER</FieldType> | |
<FieldMode type="Products.Archetypes.Field.StringField">EDITABLE</FieldMode> | |
<Formula type="Products.Archetypes.Field.TextField"><![CDATA[]]></Formula> | |
<FieldReadTemplate type="Products.Archetypes.Field.StringField"/> | |
<FieldEditTemplate type="Products.Archetypes.Field.StringField"/> | |
<Mandatory type="Products.Archetypes.Field.BooleanField">False</Mandatory> | |
<ValidationFormula type="Products.Archetypes.Field.TextField"><![CDATA[]]></ValidationFormula> | |
<ToBeIndexed type="Products.Archetypes.Field.BooleanField">False</ToBeIndexed> | |
<IndexType type="Products.Archetypes.Field.StringField">DEFAULT</IndexType> | |
<HTMLAttributesFormula type="Products.Archetypes.Field.TextField"><![CDATA[]]></HTMLAttributesFormula> | |
</element> | |
</elements> | |
</element> | |
</design> | |
</plominodatabase> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment