- Android SDK 4.1 (API Level 21) or above
- Liferay DXP 7.1 SP2+
- Liferay Hypermedia REST APIs. These APIs are installed but disabled by default. To enable them, follow the instructions in the tutorial Enabling Hypermedia REST APIs.
- Android SDK 4.1 (API Level 21) or above
- Visual Studio 7.2
- Mono .NET framework 188.8.131.52
DDM Form Screenlet shows a set of fields that can be filled in by the user. The fields can contain initial or existing values. The following fields are supported:
Paragraph: Add a title and/or text in your form.
Text Field: A single or multiline text area.
Single Selection: Select one item with a radio button.
Select From List: Choose one or more items in a list.
Multiple Selection: Select multiple items via a checkbox.
Date: Select a date from a date picker.
Grid: Select items in a matrix.
Numeric: Enter an integer or decimal number.
Upload: Upload files via Documents and Media.
DDM Form Screenlet also supports the following features:
Element Sets: Reuse pre-existing element sets in your form.
Multiple Pages: Use multi-page forms.
Success Page: Show friendly feedback at the end of your form. Autosave: Automatically save any change in form values to a draft.
Restore Previous Draft: Automatically restore the last draft when opening the form, independent of platform.
Rules: Create complex rules in your form. For example, you can show or hide fields depending on the input of other fields.
Workflow: Form submission can trigger a specific workflow.
Required Values: Require specific values and/or validate form fields.
Internationalization: Support i18n in record values and labels.
To create custom layouts for a field, create the new layout following the naming
<field_editor_id>_<view_name>. The Screenlet automatically loads such
For example, this table lists the filename you should use when creating custom layouts for each field type, for the Lexicon View. Note that because some DDM fields inherit from DDL, they are referenced as DDL.
|Field Editor ID
|Example Using Lexicon View
DDM Form Screenlet needs the following user permissions:
The Documents and Media fields use both to take a picture/video and store it locally before uploading it to the portal.
Before using DDM Form Screenlet, ensure that the following exist in the portal:
A form for the Screenlet to display. For instructions on this, see the article Creating and Managing Forms.
If your form uses it, workflow must be configured. See the Workflow section of the user guide for instructions on configuring and using workflow.
|The ID of the form to display in the Screenlet. To find the IDs for your data definitions in the portal, select the site to work in and click Content → Forms. The table that lists the site's forms also lists each form's ID.
|The layout to use to show the View.
|Sets whether the form loads the last draft for the current user when the Screenlet is shown. The default value is `true`.
|Sets whether the form should autosave a draft for the current user. The default value is `true`.
|Time in milliseconds to start synchronize the form (save and evaluate form rules). The default value is 500.
If your form includes at least one Documents and Media field, you must grant permissions in the target repository and folder. For more information, see Granting File Permissions and Roles, and Setting Folder Permissions. To set permissions for Documents and Media’s Home folder, navigate to Documents and Media and select Options () → Home Folder Permissions.
|Starts the request to load the form. The form fields are shown when the response is received.
|Sets the listener for this form.
DDM Form Screenlet delegates some events to an object that implements to the
DDMFormListener interface. This interface lets you implement the following
onFormLoaded(FormInstance formInstance): Called when the form instance
onError(Exception e): Called when an error occurs in the process. For
example, this method is called when an error occurs while loading a form
onDraftLoaded(FormInstanceRecord formInstanceRecord): Called when a draft is retored.
onDraftSaved(FormInstanceRecord formInstanceRecord): Called when a draft is saved.
onFormSubmitted(FormInstanceRecord formInstanceRecord): Called when a form is successfully submitted.