SlideShare ist ein Scribd-Unternehmen logo
1 von 30
Alfresco Forms Part 1: Forms in Share 1 Gavin Cornwell Services Team Lead, Alfresco twitter: @gcornwell
Agenda 2 ,[object Object]
Configuration
DemoMetadata Advanced Search Workflow Datalists ,[object Object],[object Object]
Where Forms Are Used 4 Advanced Search
Where Forms Are Used 5 Workflow
Where Forms Are Used 6 Datalists
Configuration 7 <config>   <forms>     <default-controls>       ...     </default-controls>     <constraint-handlers>       ...     </constraint-handlers>     <dependencies>       ...     </dependencies>   </forms> </config> Global Defaults – form-config.xml
Configuration 8 <default-controls>   <type name="text"          template="/org.../textfield.ftl" />   <type name=”datetime"          template="/org.../date.ftl”> <control-param name="showTime">    true  </control-param> </type>   ... </default-controls> Default Controls
Configuration 9 <constraint-handlers>   <constraint type="MANDATORY"      validation-handler="...mandatory"   event="keyup" />   <constraint type="NUMBER"    validation-handler=”...number"    event="keyup" />   ... </constraint-handlers> Default Constraint Handlers
Configuration 10 <dependencies>   <csssrc=” /accordion/accordion.css" />   <jssrc=“/accordion/accordion-min.js" />   ... </dependencies> Dependencies
Configuration 11 <config evaluator=“” condition=“”>   <forms>     <form [id=“”]>       <field-visibility>         ...       </field-visibility>       <edit|create|view-form template=“” />       <appearance>         ...       </appearance>     </form>   </forms> </config> Form – share-form-config.xml
Configuration 12 Creating nodes    <config evaluator="model-type"           condition="cm:content"> Editing nodes    <config evaluator="node-type"           condition="cm:content"> Starting workflow    <config evaluator="string-compare"           condition="jbpm$wf:adhoc"> Editing tasks    <config evaluator="task-type"           condition="wf:adhocTask"> Evaluators
Configuration 13 <show id="cm:name" /> <hide id=“cm:author” /> <show id="cm:created" for-mode="view" /> Visibility
Configuration 14 <field id="cm:title” label=“” label-id=“”      description=“” description-id=“”      help=“” help-id=“” set=“”      read-only=“” mandatory=“”>   <control template="/.../textfield.ftl”>     <control-param ... />   </control>   <constraint-handlers>     <constraint ... />   </constraint-handlers> </field> Field Appearance
Configuration 15 <set id=“info”    label=“”     label-id=“”     template=“”    parent=“”     appearance=“|fieldset|panel|bordered-panel|title|whitespace” /> Set Appearance
Demos 16 Metadata Advanced Search Workflow Datalists
Q & A 17
Learn More 18 Alfresco Forms Part 2: Deep Dive (tomorrow) wiki.alfresco.com/wiki/Forms blogs.alfresco.com/wp/gavinc/
Appendix – Demo Config -  cm:content 19 <config evaluator="node-type" condition="cm:content"> <forms> <form> <field-visibility> <hide id="cm:author" /> </field-visibility> <edit-form template="/devcon/2-column-edit-form.ftl" /> <appearance> <set id="dublin-core" label-id="set.label.dublincore”               appearance="panel" /> <field id="cm:publisher" set="dublin-core" /> <field id="cm:contributor" set="dublin-core" /> <field id="cm:type" set="dublin-core" /> <field id="cm:identifier" set="dublin-core" /> <field id="cm:dcsource" set="dublin-core" /> <field id="cm:coverage" set="dublin-core" /> <field id="cm:rights" set="dublin-core" /> <field id="cm:subject" set="dublin-core" /> </appearance> </form>  </forms> </config>
Appendix – Demo Config -  Model 20 <type name="devcon:session">    <title>Devcon Session</title>    <parent>cm:content</parent>    <properties>       <property name="devcon:code">          <title>Code</title>          <description>Unique code for the session</description>          <type>d:text</type>          <mandatory>true</mandatory>       </property>       <property name="devcon:duration">          <title>Duration</title>          <description>Session duration in minutes</description>          <type>d:int</type>          <mandatory>true</mandatory>       </property>       <property name="devcon:when">          <title>When</title>          <description>The date and time of the session</description>          <type>d:datetime</type>       </property>       <property name="devcon:rating">          <title>Rating</title>          <description>The feedback rating of the session</description>          <type>d:int</type>       </property>       <property name="devcon:level">          <title>Level</title>          <description>Difficulty level of the session</description>          <type>d:text</type>          <mandatory>true</mandatory>          <constraints>             <constraint ref="devcon:level" />          </constraints>       </property>       <property name="devcon:abstract">          <title>Abstract</title>          <description>Short abstract describing the session</description>          <type>d:text</type>       </property>    </properties> <associations>       <association name="devcon:presenter">          <title>Presenter</title>          <source>             <mandatory>false</mandatory>             <many>true</many>          </source>          <target>             <class>cm:person</class>             <mandatory>true</mandatory>             <many>false</many>          </target>       </association>       <association name="devcon:prerequisites">          <title>Prerequisites</title>          <source>             <mandatory>false</mandatory>             <many>true</many>          </source>          <target>             <class>devcon:session</class>             <mandatory>false</mandatory>             <many>true</many>          </target>       </association>    </associations>    <mandatory-aspects>       <aspect>devcon:approvable</aspect>    </mandatory-aspects> </type>
Appendix – Demo Config – Custom Type 21 <config evaluator="node-type" condition="devcon:session">    <forms>       <form>          <field-visibility>             <show id="devcon:code" />             <show id="cm:name" />             <show id="devcon:abstract" />             <show id="devcon:presenter" />             <show id="devcon:when" />             <show id="devcon:duration" />             <show id="devcon:level" />             <show id="devcon:prerequisites" />             <show id="devcon:approved" />             <show id="devcon:rating" />          </field-visibility>          <appearance>             <field id="devcon:abstract">                <control template="/org/alfresco/components/form/controls/richtext.ftl" />             </field>             <field id="devcon:prerequisites">                <control>                   <control-param name="startLocation">{doclib}</control-param>                </control>             </field>          </appearance>       </form>       <form id="doclib-simple-metadata">          <field-visibility>             <show id="devcon:code" />             <show id="cm:name" />             <show id="devcon:abstract" />             <show id="devcon:when" />          </field-visibility>          <edit-form template="../documentlibrary/forms/doclib-simple-metadata.ftl" />       </form>    </forms> </config>
Appendix – Demo Config - Search 22 <config evaluator="model-type" condition="cm:content"> <forms> <form id="search"> <field-visibility>             <hide id=“mimetype” /> <show id="cm:creator" /> </field-visibility>  <appearance>      <field id="cm:creator"> <control>  <control-param name="forceEditable">true</control-param>  </control>  </field>  </appearance>  </form>  </forms> </config>
Appendix – Demo Config – Search cont… 23 <config evaluator="string-compare" condition="AdvancedSearch">    <advanced-search>       <forms>          <form labelId="search.form.label.devcon" descriptionId="search.form.desc.devcon">devcon:session</form>       </forms>    </advanced-search> </config> <config evaluator="model-type" condition="devcon:session">    <forms>       <form id="search">          <field-visibility>             <show id="cm:name" />             <show id="devcon:code" />             <show id="devcon:when" />             <show id="devcon:duration" />             <show id="devcon:level" />          </field-visibility>          <appearance>             <field id="devcon:when">                <control template="/org/alfresco/components/form/controls/daterange.ftl" />             </field>             <field id="devcon:duration">                <control template="/org/alfresco/components/form/controls/numberrange.ftl" />             </field>             <field id="devcon:level">                <control template="/org/alfresco/components/form/controls/selectmany.ftl" />             </field>          </appearance>       </form>    </forms> </config>
Appendix – Demo Config – Model 24 <types>   <type name="dw:submitDevconReviewTask">       <parent>wf:submitReviewTask</parent>       <properties>          <property name="dw:venue">              <type>d:text</type>              <default>Both</default>              <constraints>                  <constraint type="LIST">                      <parameter name="allowedValues">                          <list>                              <value>Both</value>                              <value>Paris</value>                              <value>New York</value>                          </list>                      </parameter>                  </constraint>              </constraints>          </property>       </properties>   </type> </types>
Appendix – Demo Config – Start Workflow 25 <config evaluator="string-compare" condition="jbpm$dw:devconapproval">    <forms>       <form>          <field-visibility>             <show id="bpm:workflowDescription" />             <show id="bpm:workflowDueDate" />             <show id="bpm:workflowPriority" />             <show id="dw:venue" />             <show id="bpm:assignee" />             <show id="packageItems" />          </field-visibility>          <appearance>             <set id="" appearance="title" label-id="workflow.set.general" />             <set id="info" appearance="" template="/org/alfresco/components/form/2-column-set.ftl" />             <set id="assignee" appearance="title" label-id="workflow.set.assignee" />             <set id="items" appearance="title" label-id="workflow.set.items" />             <field id="bpm:workflowDescription" label-id="workflow.field.message">                <control template="/org/alfresco/components/form/controls/textarea.ftl">                   <control-param name="style">width: 95%</control-param>                </control>             </field>             <field id="dw:venue" set="info" />             <field id="bpm:workflowDueDate" label-id="workflow.field.due" set="info" />             <field id="bpm:workflowPriority" label-id="workflow.field.priority" set="info">                <control template="/org/alfresco/components/form/controls/workflow/priority.ftl" />             </field>             <field id="bpm:assignee" label-id="workflow.field.reviewer" set="assignee" />             <field id="packageItems" set="items" />          </appearance>       </form>    </forms> </config>
Appendix – Demo Config – Workflow 26 <config evaluator="task-type" condition="dw:submitDevconReviewTask">    <forms>       <form id="workflow-details">          <field-visibility>             <show id="dw:venue" />             <show id="packageItems" />          </field-visibility>          <appearance>             <set id="" appearance="title" label-id="workflow.set.workflow.more_info" />             <set id="items" appearance="title" label-id="workflow.set.items" />             <field id="packageItems" set="items" />          </appearance>       </form>       <form>          <field-visibility>             <show id="message" />             <show id="taskOwner" />             <show id="bpm:workflowPriority" />             <show id="bpm:workflowDueDate" />             <show id="bpm:taskId" />             <show id="dw:venue" />             <show id="bpm:status" />             <show id="packageItems" />          </field-visibility>          <appearance>             <set id="" appearance="title" label-id="workflow.set.task.info" />             <set id="info" appearance="" template="/org/alfresco/components/form/3-column-set.ftl" />             <set id="progress" appearance="title" label-id="workflow.set.task.progress" />             <set id="items" appearance="title" label-id="workflow.set.items" />             <field id="message">                <control template="/org/alfresco/components/form/controls/info.ftl" />             </field>             <field id="taskOwner" set="info" />             <field id="dw:venue" set="info" />             <field id="bpm:taskId" set="info">                <control template="/org/alfresco/components/form/controls/info.ftl" />             </field>             <field id="bpm:workflowPriority" label-id="workflow.field.priority" set="info" read-only="true">                <control template="/org/alfresco/components/form/controls/workflow/priority.ftl" />             </field>             <field id="bpm:workflowDueDate" set="info" label-id="workflow.field.due">                <control template="/org/alfresco/components/form/controls/info.ftl" />             </field>             <field id="bpm:status" set="progress" />             <field id="packageItems" set="items" />          </appearance>       </form>    </forms> </config>
Appendix – Demo Config – Datalist - Model 27 <type name="devcon:sessionFeedbackList">    <title>Devcon Session Feedback</title>    <description>A list of feedback from attendees on the quality of the sessions.</description>    <parent>dl:dataListItem</parent>    <properties>       <property name="devcon:attendeeFirstName">          <title>Attendee First Name</title>          <type>d:text</type>          <mandatory>true</mandatory>       </property>       <property name="devcon:attendeeLastName">          <title>Attendee Last Name</title>          <type>d:text</type>          <mandatory>false</mandatory>       </property>       <property name="devcon:feedback">          <title>Feedback</title>          <type>d:text</type>          <mandatory>true</mandatory>       </property>       <property name="devcon:score">          <title>Score</title>          <type>d:int</type>          <constraints>             <constraint ref="devcon:score" />          </constraints>       </property>    </properties> </type>
Appendix – Demo Config – Datalist - Create 28 <config evaluator="model-type" condition="devcon:sessionFeedbackList">    <forms>       <form>          <field-visibility>             <show id="devcon:attendeeFirstName" />             <show id="devcon:attendeeLastName" />             <show id="devcon:feedback" />             <show id="devcon:score" />  </field-visibility>          <create-form template="../data-lists/forms/dataitem.ftl" />          <appearance>             <field id="devcon:feedback">                <control template="/org/alfresco/components/form/controls/textarea.ftl">                   <control-param name="rows">6</control-param>                </control>             </field>          </appearance>       </form>    </forms> </config>
Appendix – Demo Config – Datalist - Edit 29 <config evaluator="node-type" condition="devcon:sessionFeedbackList">    <forms>       <form>          <field-visibility>             <show id="devcon:attendeeFirstName" />             <show id="devcon:attendeeLastName" />             <show id="devcon:feedback" />             <show id="devcon:score" />          </field-visibility>          <edit-form template="../data-lists/forms/dataitem.ftl" />          <appearance>             <field id="devcon:feedback">                <control template="/org/alfresco/components/form/controls/textarea.ftl">                   <control-param name="rows">6</control-param>                </control>             </field>          </appearance>       </form>    </forms> </config>

Weitere ähnliche Inhalte

Was ist angesagt?

Best practices and lessons learnt from Running Apache NiFi at Renault
Best practices and lessons learnt from Running Apache NiFi at RenaultBest practices and lessons learnt from Running Apache NiFi at Renault
Best practices and lessons learnt from Running Apache NiFi at RenaultDataWorks Summit
 
Alfresco Workshop: Introduction to Records Management Using Alfresco Governan...
Alfresco Workshop: Introduction to Records Management Using Alfresco Governan...Alfresco Workshop: Introduction to Records Management Using Alfresco Governan...
Alfresco Workshop: Introduction to Records Management Using Alfresco Governan...Lighton Phiri
 
High Availability Content Caching with NGINX
High Availability Content Caching with NGINXHigh Availability Content Caching with NGINX
High Availability Content Caching with NGINXNGINX, Inc.
 
Linux Networking Explained
Linux Networking ExplainedLinux Networking Explained
Linux Networking ExplainedThomas Graf
 
BPF / XDP 8월 세미나 KossLab
BPF / XDP 8월 세미나 KossLabBPF / XDP 8월 세미나 KossLab
BPF / XDP 8월 세미나 KossLabTaeung Song
 
TRex Realistic Traffic Generator - Stateless support
TRex  Realistic Traffic Generator  - Stateless support TRex  Realistic Traffic Generator  - Stateless support
TRex Realistic Traffic Generator - Stateless support Hanoch Haim
 
BPF - in-kernel virtual machine
BPF - in-kernel virtual machineBPF - in-kernel virtual machine
BPF - in-kernel virtual machineAlexei Starovoitov
 
Replacing iptables with eBPF in Kubernetes with Cilium
Replacing iptables with eBPF in Kubernetes with CiliumReplacing iptables with eBPF in Kubernetes with Cilium
Replacing iptables with eBPF in Kubernetes with CiliumMichal Rostecki
 
HBase and HDFS: Understanding FileSystem Usage in HBase
HBase and HDFS: Understanding FileSystem Usage in HBaseHBase and HDFS: Understanding FileSystem Usage in HBase
HBase and HDFS: Understanding FileSystem Usage in HBaseenissoz
 
High-Performance Networking Using eBPF, XDP, and io_uring
High-Performance Networking Using eBPF, XDP, and io_uringHigh-Performance Networking Using eBPF, XDP, and io_uring
High-Performance Networking Using eBPF, XDP, and io_uringScyllaDB
 
Kernel Recipes 2017 - EBPF and XDP - Eric Leblond
Kernel Recipes 2017 - EBPF and XDP - Eric LeblondKernel Recipes 2017 - EBPF and XDP - Eric Leblond
Kernel Recipes 2017 - EBPF and XDP - Eric LeblondAnne Nicolas
 
How to Ingest 16 Billion Records Per Day into your Hadoop Environment
How to Ingest 16 Billion Records Per Day into your Hadoop EnvironmentHow to Ingest 16 Billion Records Per Day into your Hadoop Environment
How to Ingest 16 Billion Records Per Day into your Hadoop EnvironmentDataWorks Summit
 
DoS and DDoS mitigations with eBPF, XDP and DPDK
DoS and DDoS mitigations with eBPF, XDP and DPDKDoS and DDoS mitigations with eBPF, XDP and DPDK
DoS and DDoS mitigations with eBPF, XDP and DPDKMarian Marinov
 
Managing HotSpot Clients With FreeRadius
Managing HotSpot Clients With FreeRadiusManaging HotSpot Clients With FreeRadius
Managing HotSpot Clients With FreeRadiusDashamir Hoxha
 
Linux Linux Traffic Control
Linux Linux Traffic ControlLinux Linux Traffic Control
Linux Linux Traffic ControlSUSE Labs Taipei
 
Linux Profiling at Netflix
Linux Profiling at NetflixLinux Profiling at Netflix
Linux Profiling at NetflixBrendan Gregg
 
StackOverflow Architectural Overview
StackOverflow Architectural OverviewStackOverflow Architectural Overview
StackOverflow Architectural OverviewFolio3 Software
 

Was ist angesagt? (20)

Best practices and lessons learnt from Running Apache NiFi at Renault
Best practices and lessons learnt from Running Apache NiFi at RenaultBest practices and lessons learnt from Running Apache NiFi at Renault
Best practices and lessons learnt from Running Apache NiFi at Renault
 
Alfresco Workshop: Introduction to Records Management Using Alfresco Governan...
Alfresco Workshop: Introduction to Records Management Using Alfresco Governan...Alfresco Workshop: Introduction to Records Management Using Alfresco Governan...
Alfresco Workshop: Introduction to Records Management Using Alfresco Governan...
 
eBPF maps 101
eBPF maps 101eBPF maps 101
eBPF maps 101
 
Netcat - A Swiss Army Tool
Netcat - A Swiss Army ToolNetcat - A Swiss Army Tool
Netcat - A Swiss Army Tool
 
High Availability Content Caching with NGINX
High Availability Content Caching with NGINXHigh Availability Content Caching with NGINX
High Availability Content Caching with NGINX
 
Linux Networking Explained
Linux Networking ExplainedLinux Networking Explained
Linux Networking Explained
 
BPF / XDP 8월 세미나 KossLab
BPF / XDP 8월 세미나 KossLabBPF / XDP 8월 세미나 KossLab
BPF / XDP 8월 세미나 KossLab
 
TRex Realistic Traffic Generator - Stateless support
TRex  Realistic Traffic Generator  - Stateless support TRex  Realistic Traffic Generator  - Stateless support
TRex Realistic Traffic Generator - Stateless support
 
BPF - in-kernel virtual machine
BPF - in-kernel virtual machineBPF - in-kernel virtual machine
BPF - in-kernel virtual machine
 
Replacing iptables with eBPF in Kubernetes with Cilium
Replacing iptables with eBPF in Kubernetes with CiliumReplacing iptables with eBPF in Kubernetes with Cilium
Replacing iptables with eBPF in Kubernetes with Cilium
 
HBase and HDFS: Understanding FileSystem Usage in HBase
HBase and HDFS: Understanding FileSystem Usage in HBaseHBase and HDFS: Understanding FileSystem Usage in HBase
HBase and HDFS: Understanding FileSystem Usage in HBase
 
High-Performance Networking Using eBPF, XDP, and io_uring
High-Performance Networking Using eBPF, XDP, and io_uringHigh-Performance Networking Using eBPF, XDP, and io_uring
High-Performance Networking Using eBPF, XDP, and io_uring
 
Kernel Recipes 2017 - EBPF and XDP - Eric Leblond
Kernel Recipes 2017 - EBPF and XDP - Eric LeblondKernel Recipes 2017 - EBPF and XDP - Eric Leblond
Kernel Recipes 2017 - EBPF and XDP - Eric Leblond
 
How to Ingest 16 Billion Records Per Day into your Hadoop Environment
How to Ingest 16 Billion Records Per Day into your Hadoop EnvironmentHow to Ingest 16 Billion Records Per Day into your Hadoop Environment
How to Ingest 16 Billion Records Per Day into your Hadoop Environment
 
DoS and DDoS mitigations with eBPF, XDP and DPDK
DoS and DDoS mitigations with eBPF, XDP and DPDKDoS and DDoS mitigations with eBPF, XDP and DPDK
DoS and DDoS mitigations with eBPF, XDP and DPDK
 
Managing HotSpot Clients With FreeRadius
Managing HotSpot Clients With FreeRadiusManaging HotSpot Clients With FreeRadius
Managing HotSpot Clients With FreeRadius
 
Tuned
TunedTuned
Tuned
 
Linux Linux Traffic Control
Linux Linux Traffic ControlLinux Linux Traffic Control
Linux Linux Traffic Control
 
Linux Profiling at Netflix
Linux Profiling at NetflixLinux Profiling at Netflix
Linux Profiling at Netflix
 
StackOverflow Architectural Overview
StackOverflow Architectural OverviewStackOverflow Architectural Overview
StackOverflow Architectural Overview
 

Ähnlich wie Using Forms in Share

We9 Struts 2.0
We9 Struts 2.0We9 Struts 2.0
We9 Struts 2.0wangjiaz
 
KMUTNB - Internet Programming 3/7
KMUTNB - Internet Programming 3/7KMUTNB - Internet Programming 3/7
KMUTNB - Internet Programming 3/7phuphax
 
Alfresco Forms Service Deep Dive
Alfresco Forms Service Deep DiveAlfresco Forms Service Deep Dive
Alfresco Forms Service Deep DiveAlfresco Software
 
Phing - A PHP Build Tool (An Introduction)
Phing - A PHP Build Tool (An Introduction)Phing - A PHP Build Tool (An Introduction)
Phing - A PHP Build Tool (An Introduction)Michiel Rook
 
Grddl In A Nutshell V1
Grddl In A Nutshell V1Grddl In A Nutshell V1
Grddl In A Nutshell V1Fabien Gandon
 
User Experience is dead. Long live the user experience!
User Experience is dead. Long live the user experience!User Experience is dead. Long live the user experience!
User Experience is dead. Long live the user experience!Greg Bell
 
Web APIs & Google APIs
Web APIs & Google APIsWeb APIs & Google APIs
Web APIs & Google APIsPamela Fox
 
Migration testing framework
Migration testing frameworkMigration testing framework
Migration testing frameworkIndicThreads
 
GTAC: AtomPub, testing your server implementation
GTAC: AtomPub, testing your server implementationGTAC: AtomPub, testing your server implementation
GTAC: AtomPub, testing your server implementationDavid Calavera
 
HTML5 Overview
HTML5 OverviewHTML5 Overview
HTML5 Overviewreybango
 
ImplementingChangeTrackingAndFlagging
ImplementingChangeTrackingAndFlaggingImplementingChangeTrackingAndFlagging
ImplementingChangeTrackingAndFlaggingSuite Solutions
 
ColdFusion Builder Extensions
ColdFusion Builder ExtensionsColdFusion Builder Extensions
ColdFusion Builder ExtensionsTerry Ryan
 
Struts2
Struts2Struts2
Struts2yuvalb
 

Ähnlich wie Using Forms in Share (20)

Alfresco Search Internals
Alfresco Search InternalsAlfresco Search Internals
Alfresco Search Internals
 
ColdFusion ORM
ColdFusion ORMColdFusion ORM
ColdFusion ORM
 
We9 Struts 2.0
We9 Struts 2.0We9 Struts 2.0
We9 Struts 2.0
 
Ajax ons2
Ajax ons2Ajax ons2
Ajax ons2
 
KMUTNB - Internet Programming 3/7
KMUTNB - Internet Programming 3/7KMUTNB - Internet Programming 3/7
KMUTNB - Internet Programming 3/7
 
JQuery 101
JQuery 101JQuery 101
JQuery 101
 
Alfresco Forms Service Deep Dive
Alfresco Forms Service Deep DiveAlfresco Forms Service Deep Dive
Alfresco Forms Service Deep Dive
 
Zend Form Tutorial
Zend Form TutorialZend Form Tutorial
Zend Form Tutorial
 
Phing - A PHP Build Tool (An Introduction)
Phing - A PHP Build Tool (An Introduction)Phing - A PHP Build Tool (An Introduction)
Phing - A PHP Build Tool (An Introduction)
 
Grddl In A Nutshell V1
Grddl In A Nutshell V1Grddl In A Nutshell V1
Grddl In A Nutshell V1
 
User Experience is dead. Long live the user experience!
User Experience is dead. Long live the user experience!User Experience is dead. Long live the user experience!
User Experience is dead. Long live the user experience!
 
Web APIs & Google APIs
Web APIs & Google APIsWeb APIs & Google APIs
Web APIs & Google APIs
 
Migration testing framework
Migration testing frameworkMigration testing framework
Migration testing framework
 
Spring 2.0
Spring 2.0Spring 2.0
Spring 2.0
 
GTAC: AtomPub, testing your server implementation
GTAC: AtomPub, testing your server implementationGTAC: AtomPub, testing your server implementation
GTAC: AtomPub, testing your server implementation
 
HTML5 Overview
HTML5 OverviewHTML5 Overview
HTML5 Overview
 
ImplementingChangeTrackingAndFlagging
ImplementingChangeTrackingAndFlaggingImplementingChangeTrackingAndFlagging
ImplementingChangeTrackingAndFlagging
 
XML and DTD
XML and DTDXML and DTD
XML and DTD
 
ColdFusion Builder Extensions
ColdFusion Builder ExtensionsColdFusion Builder Extensions
ColdFusion Builder Extensions
 
Struts2
Struts2Struts2
Struts2
 

Mehr von Alfresco Software

Alfresco Day Benelux Inholland studentendossier
Alfresco Day Benelux Inholland studentendossierAlfresco Day Benelux Inholland studentendossier
Alfresco Day Benelux Inholland studentendossierAlfresco Software
 
Alfresco Day Benelux Hogeschool Inholland Records Management application
Alfresco Day Benelux Hogeschool Inholland Records Management applicationAlfresco Day Benelux Hogeschool Inholland Records Management application
Alfresco Day Benelux Hogeschool Inholland Records Management applicationAlfresco Software
 
Alfresco Day BeNelux: Customer Success Showcase - Saxion Hogescholen
Alfresco Day BeNelux: Customer Success Showcase - Saxion HogescholenAlfresco Day BeNelux: Customer Success Showcase - Saxion Hogescholen
Alfresco Day BeNelux: Customer Success Showcase - Saxion HogescholenAlfresco Software
 
Alfresco Day BeNelux: Customer Success Showcase - Gemeente Amsterdam
Alfresco Day BeNelux: Customer Success Showcase - Gemeente AmsterdamAlfresco Day BeNelux: Customer Success Showcase - Gemeente Amsterdam
Alfresco Day BeNelux: Customer Success Showcase - Gemeente AmsterdamAlfresco Software
 
Alfresco Day BeNelux: The success of Alfresco
Alfresco Day BeNelux: The success of AlfrescoAlfresco Day BeNelux: The success of Alfresco
Alfresco Day BeNelux: The success of AlfrescoAlfresco Software
 
Alfresco Day BeNelux: Customer Success Showcase - Credendo Group
Alfresco Day BeNelux: Customer Success Showcase - Credendo GroupAlfresco Day BeNelux: Customer Success Showcase - Credendo Group
Alfresco Day BeNelux: Customer Success Showcase - Credendo GroupAlfresco Software
 
Alfresco Day BeNelux: Digital Transformation - It's All About Flow
Alfresco Day BeNelux: Digital Transformation - It's All About FlowAlfresco Day BeNelux: Digital Transformation - It's All About Flow
Alfresco Day BeNelux: Digital Transformation - It's All About FlowAlfresco Software
 
Alfresco Day Vienna 2016: Activiti – ein Katalysator für die DMS-Strategie be...
Alfresco Day Vienna 2016: Activiti – ein Katalysator für die DMS-Strategie be...Alfresco Day Vienna 2016: Activiti – ein Katalysator für die DMS-Strategie be...
Alfresco Day Vienna 2016: Activiti – ein Katalysator für die DMS-Strategie be...Alfresco Software
 
Alfresco Day Vienna 2016: Elektronische Geschäftsprozesse auf Basis von Alfre...
Alfresco Day Vienna 2016: Elektronische Geschäftsprozesse auf Basis von Alfre...Alfresco Day Vienna 2016: Elektronische Geschäftsprozesse auf Basis von Alfre...
Alfresco Day Vienna 2016: Elektronische Geschäftsprozesse auf Basis von Alfre...Alfresco Software
 
Alfresco Day Vienna 2016: Alfrescos neue Rest API
Alfresco Day Vienna 2016: Alfrescos neue Rest APIAlfresco Day Vienna 2016: Alfrescos neue Rest API
Alfresco Day Vienna 2016: Alfrescos neue Rest APIAlfresco Software
 
Alfresco Day Vienna 2016: Support Tools für die Admin-Konsole
Alfresco Day Vienna 2016: Support Tools für die Admin-KonsoleAlfresco Day Vienna 2016: Support Tools für die Admin-Konsole
Alfresco Day Vienna 2016: Support Tools für die Admin-KonsoleAlfresco Software
 
Alfresco Day Vienna 2016: Entwickeln mit Alfresco
Alfresco Day Vienna 2016: Entwickeln mit AlfrescoAlfresco Day Vienna 2016: Entwickeln mit Alfresco
Alfresco Day Vienna 2016: Entwickeln mit AlfrescoAlfresco Software
 
Alfresco Day Vienna 2016: Activiti goes enterprise: Die Evolution der BPM Sui...
Alfresco Day Vienna 2016: Activiti goes enterprise: Die Evolution der BPM Sui...Alfresco Day Vienna 2016: Activiti goes enterprise: Die Evolution der BPM Sui...
Alfresco Day Vienna 2016: Activiti goes enterprise: Die Evolution der BPM Sui...Alfresco Software
 
Alfresco Day Vienna 2016: Partner Lightning Talk: Westernacher
Alfresco Day Vienna 2016: Partner Lightning Talk: WesternacherAlfresco Day Vienna 2016: Partner Lightning Talk: Westernacher
Alfresco Day Vienna 2016: Partner Lightning Talk: WesternacherAlfresco Software
 
Alfresco Day Vienna 2016: Bringing Content & Process together with the App De...
Alfresco Day Vienna 2016: Bringing Content & Process together with the App De...Alfresco Day Vienna 2016: Bringing Content & Process together with the App De...
Alfresco Day Vienna 2016: Bringing Content & Process together with the App De...Alfresco Software
 
Alfresco Day Vienna 2016: Partner Lightning Talk - it-novum
Alfresco Day Vienna 2016: Partner Lightning Talk - it-novumAlfresco Day Vienna 2016: Partner Lightning Talk - it-novum
Alfresco Day Vienna 2016: Partner Lightning Talk - it-novumAlfresco Software
 
Alfresco Day Vienna 2016: How to Achieve Digital Flow in the Enterprise - Joh...
Alfresco Day Vienna 2016: How to Achieve Digital Flow in the Enterprise - Joh...Alfresco Day Vienna 2016: How to Achieve Digital Flow in the Enterprise - Joh...
Alfresco Day Vienna 2016: How to Achieve Digital Flow in the Enterprise - Joh...Alfresco Software
 
Alfresco Day Warsaw 2016 - Czy możliwe jest spełnienie wszystkich regulacji p...
Alfresco Day Warsaw 2016 - Czy możliwe jest spełnienie wszystkich regulacji p...Alfresco Day Warsaw 2016 - Czy możliwe jest spełnienie wszystkich regulacji p...
Alfresco Day Warsaw 2016 - Czy możliwe jest spełnienie wszystkich regulacji p...Alfresco Software
 
Alfresco Day Warsaw 2016: Identyfikacja i podpiselektroniczny - Safran
Alfresco Day Warsaw 2016: Identyfikacja i podpiselektroniczny - SafranAlfresco Day Warsaw 2016: Identyfikacja i podpiselektroniczny - Safran
Alfresco Day Warsaw 2016: Identyfikacja i podpiselektroniczny - SafranAlfresco Software
 
Alfresco Day Warsaw 2016: Advancing the Flow of Digital Business
Alfresco Day Warsaw 2016: Advancing the Flow of Digital BusinessAlfresco Day Warsaw 2016: Advancing the Flow of Digital Business
Alfresco Day Warsaw 2016: Advancing the Flow of Digital BusinessAlfresco Software
 

Mehr von Alfresco Software (20)

Alfresco Day Benelux Inholland studentendossier
Alfresco Day Benelux Inholland studentendossierAlfresco Day Benelux Inholland studentendossier
Alfresco Day Benelux Inholland studentendossier
 
Alfresco Day Benelux Hogeschool Inholland Records Management application
Alfresco Day Benelux Hogeschool Inholland Records Management applicationAlfresco Day Benelux Hogeschool Inholland Records Management application
Alfresco Day Benelux Hogeschool Inholland Records Management application
 
Alfresco Day BeNelux: Customer Success Showcase - Saxion Hogescholen
Alfresco Day BeNelux: Customer Success Showcase - Saxion HogescholenAlfresco Day BeNelux: Customer Success Showcase - Saxion Hogescholen
Alfresco Day BeNelux: Customer Success Showcase - Saxion Hogescholen
 
Alfresco Day BeNelux: Customer Success Showcase - Gemeente Amsterdam
Alfresco Day BeNelux: Customer Success Showcase - Gemeente AmsterdamAlfresco Day BeNelux: Customer Success Showcase - Gemeente Amsterdam
Alfresco Day BeNelux: Customer Success Showcase - Gemeente Amsterdam
 
Alfresco Day BeNelux: The success of Alfresco
Alfresco Day BeNelux: The success of AlfrescoAlfresco Day BeNelux: The success of Alfresco
Alfresco Day BeNelux: The success of Alfresco
 
Alfresco Day BeNelux: Customer Success Showcase - Credendo Group
Alfresco Day BeNelux: Customer Success Showcase - Credendo GroupAlfresco Day BeNelux: Customer Success Showcase - Credendo Group
Alfresco Day BeNelux: Customer Success Showcase - Credendo Group
 
Alfresco Day BeNelux: Digital Transformation - It's All About Flow
Alfresco Day BeNelux: Digital Transformation - It's All About FlowAlfresco Day BeNelux: Digital Transformation - It's All About Flow
Alfresco Day BeNelux: Digital Transformation - It's All About Flow
 
Alfresco Day Vienna 2016: Activiti – ein Katalysator für die DMS-Strategie be...
Alfresco Day Vienna 2016: Activiti – ein Katalysator für die DMS-Strategie be...Alfresco Day Vienna 2016: Activiti – ein Katalysator für die DMS-Strategie be...
Alfresco Day Vienna 2016: Activiti – ein Katalysator für die DMS-Strategie be...
 
Alfresco Day Vienna 2016: Elektronische Geschäftsprozesse auf Basis von Alfre...
Alfresco Day Vienna 2016: Elektronische Geschäftsprozesse auf Basis von Alfre...Alfresco Day Vienna 2016: Elektronische Geschäftsprozesse auf Basis von Alfre...
Alfresco Day Vienna 2016: Elektronische Geschäftsprozesse auf Basis von Alfre...
 
Alfresco Day Vienna 2016: Alfrescos neue Rest API
Alfresco Day Vienna 2016: Alfrescos neue Rest APIAlfresco Day Vienna 2016: Alfrescos neue Rest API
Alfresco Day Vienna 2016: Alfrescos neue Rest API
 
Alfresco Day Vienna 2016: Support Tools für die Admin-Konsole
Alfresco Day Vienna 2016: Support Tools für die Admin-KonsoleAlfresco Day Vienna 2016: Support Tools für die Admin-Konsole
Alfresco Day Vienna 2016: Support Tools für die Admin-Konsole
 
Alfresco Day Vienna 2016: Entwickeln mit Alfresco
Alfresco Day Vienna 2016: Entwickeln mit AlfrescoAlfresco Day Vienna 2016: Entwickeln mit Alfresco
Alfresco Day Vienna 2016: Entwickeln mit Alfresco
 
Alfresco Day Vienna 2016: Activiti goes enterprise: Die Evolution der BPM Sui...
Alfresco Day Vienna 2016: Activiti goes enterprise: Die Evolution der BPM Sui...Alfresco Day Vienna 2016: Activiti goes enterprise: Die Evolution der BPM Sui...
Alfresco Day Vienna 2016: Activiti goes enterprise: Die Evolution der BPM Sui...
 
Alfresco Day Vienna 2016: Partner Lightning Talk: Westernacher
Alfresco Day Vienna 2016: Partner Lightning Talk: WesternacherAlfresco Day Vienna 2016: Partner Lightning Talk: Westernacher
Alfresco Day Vienna 2016: Partner Lightning Talk: Westernacher
 
Alfresco Day Vienna 2016: Bringing Content & Process together with the App De...
Alfresco Day Vienna 2016: Bringing Content & Process together with the App De...Alfresco Day Vienna 2016: Bringing Content & Process together with the App De...
Alfresco Day Vienna 2016: Bringing Content & Process together with the App De...
 
Alfresco Day Vienna 2016: Partner Lightning Talk - it-novum
Alfresco Day Vienna 2016: Partner Lightning Talk - it-novumAlfresco Day Vienna 2016: Partner Lightning Talk - it-novum
Alfresco Day Vienna 2016: Partner Lightning Talk - it-novum
 
Alfresco Day Vienna 2016: How to Achieve Digital Flow in the Enterprise - Joh...
Alfresco Day Vienna 2016: How to Achieve Digital Flow in the Enterprise - Joh...Alfresco Day Vienna 2016: How to Achieve Digital Flow in the Enterprise - Joh...
Alfresco Day Vienna 2016: How to Achieve Digital Flow in the Enterprise - Joh...
 
Alfresco Day Warsaw 2016 - Czy możliwe jest spełnienie wszystkich regulacji p...
Alfresco Day Warsaw 2016 - Czy możliwe jest spełnienie wszystkich regulacji p...Alfresco Day Warsaw 2016 - Czy możliwe jest spełnienie wszystkich regulacji p...
Alfresco Day Warsaw 2016 - Czy możliwe jest spełnienie wszystkich regulacji p...
 
Alfresco Day Warsaw 2016: Identyfikacja i podpiselektroniczny - Safran
Alfresco Day Warsaw 2016: Identyfikacja i podpiselektroniczny - SafranAlfresco Day Warsaw 2016: Identyfikacja i podpiselektroniczny - Safran
Alfresco Day Warsaw 2016: Identyfikacja i podpiselektroniczny - Safran
 
Alfresco Day Warsaw 2016: Advancing the Flow of Digital Business
Alfresco Day Warsaw 2016: Advancing the Flow of Digital BusinessAlfresco Day Warsaw 2016: Advancing the Flow of Digital Business
Alfresco Day Warsaw 2016: Advancing the Flow of Digital Business
 

Kürzlich hochgeladen

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 

Kürzlich hochgeladen (20)

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 

Using Forms in Share

  • 1. Alfresco Forms Part 1: Forms in Share 1 Gavin Cornwell Services Team Lead, Alfresco twitter: @gcornwell
  • 2.
  • 4.
  • 5. Where Forms Are Used 4 Advanced Search
  • 6. Where Forms Are Used 5 Workflow
  • 7. Where Forms Are Used 6 Datalists
  • 8. Configuration 7 <config> <forms> <default-controls> ... </default-controls> <constraint-handlers> ... </constraint-handlers> <dependencies> ... </dependencies> </forms> </config> Global Defaults – form-config.xml
  • 9. Configuration 8 <default-controls> <type name="text" template="/org.../textfield.ftl" /> <type name=”datetime" template="/org.../date.ftl”> <control-param name="showTime"> true </control-param> </type> ... </default-controls> Default Controls
  • 10. Configuration 9 <constraint-handlers> <constraint type="MANDATORY" validation-handler="...mandatory" event="keyup" /> <constraint type="NUMBER" validation-handler=”...number" event="keyup" /> ... </constraint-handlers> Default Constraint Handlers
  • 11. Configuration 10 <dependencies> <csssrc=” /accordion/accordion.css" /> <jssrc=“/accordion/accordion-min.js" /> ... </dependencies> Dependencies
  • 12. Configuration 11 <config evaluator=“” condition=“”> <forms> <form [id=“”]> <field-visibility> ... </field-visibility> <edit|create|view-form template=“” /> <appearance> ... </appearance> </form> </forms> </config> Form – share-form-config.xml
  • 13. Configuration 12 Creating nodes <config evaluator="model-type" condition="cm:content"> Editing nodes <config evaluator="node-type" condition="cm:content"> Starting workflow <config evaluator="string-compare" condition="jbpm$wf:adhoc"> Editing tasks <config evaluator="task-type" condition="wf:adhocTask"> Evaluators
  • 14. Configuration 13 <show id="cm:name" /> <hide id=“cm:author” /> <show id="cm:created" for-mode="view" /> Visibility
  • 15. Configuration 14 <field id="cm:title” label=“” label-id=“” description=“” description-id=“” help=“” help-id=“” set=“” read-only=“” mandatory=“”> <control template="/.../textfield.ftl”> <control-param ... /> </control> <constraint-handlers> <constraint ... /> </constraint-handlers> </field> Field Appearance
  • 16. Configuration 15 <set id=“info” label=“” label-id=“” template=“” parent=“” appearance=“|fieldset|panel|bordered-panel|title|whitespace” /> Set Appearance
  • 17. Demos 16 Metadata Advanced Search Workflow Datalists
  • 18. Q & A 17
  • 19. Learn More 18 Alfresco Forms Part 2: Deep Dive (tomorrow) wiki.alfresco.com/wiki/Forms blogs.alfresco.com/wp/gavinc/
  • 20. Appendix – Demo Config - cm:content 19 <config evaluator="node-type" condition="cm:content"> <forms> <form> <field-visibility> <hide id="cm:author" /> </field-visibility> <edit-form template="/devcon/2-column-edit-form.ftl" /> <appearance> <set id="dublin-core" label-id="set.label.dublincore” appearance="panel" /> <field id="cm:publisher" set="dublin-core" /> <field id="cm:contributor" set="dublin-core" /> <field id="cm:type" set="dublin-core" /> <field id="cm:identifier" set="dublin-core" /> <field id="cm:dcsource" set="dublin-core" /> <field id="cm:coverage" set="dublin-core" /> <field id="cm:rights" set="dublin-core" /> <field id="cm:subject" set="dublin-core" /> </appearance> </form> </forms> </config>
  • 21. Appendix – Demo Config - Model 20 <type name="devcon:session"> <title>Devcon Session</title> <parent>cm:content</parent> <properties> <property name="devcon:code"> <title>Code</title> <description>Unique code for the session</description> <type>d:text</type> <mandatory>true</mandatory> </property> <property name="devcon:duration"> <title>Duration</title> <description>Session duration in minutes</description> <type>d:int</type> <mandatory>true</mandatory> </property> <property name="devcon:when"> <title>When</title> <description>The date and time of the session</description> <type>d:datetime</type> </property> <property name="devcon:rating"> <title>Rating</title> <description>The feedback rating of the session</description> <type>d:int</type> </property> <property name="devcon:level"> <title>Level</title> <description>Difficulty level of the session</description> <type>d:text</type> <mandatory>true</mandatory> <constraints> <constraint ref="devcon:level" /> </constraints> </property> <property name="devcon:abstract"> <title>Abstract</title> <description>Short abstract describing the session</description> <type>d:text</type> </property> </properties> <associations> <association name="devcon:presenter"> <title>Presenter</title> <source> <mandatory>false</mandatory> <many>true</many> </source> <target> <class>cm:person</class> <mandatory>true</mandatory> <many>false</many> </target> </association> <association name="devcon:prerequisites"> <title>Prerequisites</title> <source> <mandatory>false</mandatory> <many>true</many> </source> <target> <class>devcon:session</class> <mandatory>false</mandatory> <many>true</many> </target> </association> </associations> <mandatory-aspects> <aspect>devcon:approvable</aspect> </mandatory-aspects> </type>
  • 22. Appendix – Demo Config – Custom Type 21 <config evaluator="node-type" condition="devcon:session"> <forms> <form> <field-visibility> <show id="devcon:code" /> <show id="cm:name" /> <show id="devcon:abstract" /> <show id="devcon:presenter" /> <show id="devcon:when" /> <show id="devcon:duration" /> <show id="devcon:level" /> <show id="devcon:prerequisites" /> <show id="devcon:approved" /> <show id="devcon:rating" /> </field-visibility> <appearance> <field id="devcon:abstract"> <control template="/org/alfresco/components/form/controls/richtext.ftl" /> </field> <field id="devcon:prerequisites"> <control> <control-param name="startLocation">{doclib}</control-param> </control> </field> </appearance> </form> <form id="doclib-simple-metadata"> <field-visibility> <show id="devcon:code" /> <show id="cm:name" /> <show id="devcon:abstract" /> <show id="devcon:when" /> </field-visibility> <edit-form template="../documentlibrary/forms/doclib-simple-metadata.ftl" /> </form> </forms> </config>
  • 23. Appendix – Demo Config - Search 22 <config evaluator="model-type" condition="cm:content"> <forms> <form id="search"> <field-visibility> <hide id=“mimetype” /> <show id="cm:creator" /> </field-visibility> <appearance> <field id="cm:creator"> <control> <control-param name="forceEditable">true</control-param> </control> </field> </appearance> </form> </forms> </config>
  • 24. Appendix – Demo Config – Search cont… 23 <config evaluator="string-compare" condition="AdvancedSearch"> <advanced-search> <forms> <form labelId="search.form.label.devcon" descriptionId="search.form.desc.devcon">devcon:session</form> </forms> </advanced-search> </config> <config evaluator="model-type" condition="devcon:session"> <forms> <form id="search"> <field-visibility> <show id="cm:name" /> <show id="devcon:code" /> <show id="devcon:when" /> <show id="devcon:duration" /> <show id="devcon:level" /> </field-visibility> <appearance> <field id="devcon:when"> <control template="/org/alfresco/components/form/controls/daterange.ftl" /> </field> <field id="devcon:duration"> <control template="/org/alfresco/components/form/controls/numberrange.ftl" /> </field> <field id="devcon:level"> <control template="/org/alfresco/components/form/controls/selectmany.ftl" /> </field> </appearance> </form> </forms> </config>
  • 25. Appendix – Demo Config – Model 24 <types> <type name="dw:submitDevconReviewTask"> <parent>wf:submitReviewTask</parent> <properties> <property name="dw:venue"> <type>d:text</type> <default>Both</default> <constraints> <constraint type="LIST"> <parameter name="allowedValues"> <list> <value>Both</value> <value>Paris</value> <value>New York</value> </list> </parameter> </constraint> </constraints> </property> </properties> </type> </types>
  • 26. Appendix – Demo Config – Start Workflow 25 <config evaluator="string-compare" condition="jbpm$dw:devconapproval"> <forms> <form> <field-visibility> <show id="bpm:workflowDescription" /> <show id="bpm:workflowDueDate" /> <show id="bpm:workflowPriority" /> <show id="dw:venue" /> <show id="bpm:assignee" /> <show id="packageItems" /> </field-visibility> <appearance> <set id="" appearance="title" label-id="workflow.set.general" /> <set id="info" appearance="" template="/org/alfresco/components/form/2-column-set.ftl" /> <set id="assignee" appearance="title" label-id="workflow.set.assignee" /> <set id="items" appearance="title" label-id="workflow.set.items" /> <field id="bpm:workflowDescription" label-id="workflow.field.message"> <control template="/org/alfresco/components/form/controls/textarea.ftl"> <control-param name="style">width: 95%</control-param> </control> </field> <field id="dw:venue" set="info" /> <field id="bpm:workflowDueDate" label-id="workflow.field.due" set="info" /> <field id="bpm:workflowPriority" label-id="workflow.field.priority" set="info"> <control template="/org/alfresco/components/form/controls/workflow/priority.ftl" /> </field> <field id="bpm:assignee" label-id="workflow.field.reviewer" set="assignee" /> <field id="packageItems" set="items" /> </appearance> </form> </forms> </config>
  • 27. Appendix – Demo Config – Workflow 26 <config evaluator="task-type" condition="dw:submitDevconReviewTask"> <forms> <form id="workflow-details"> <field-visibility> <show id="dw:venue" /> <show id="packageItems" /> </field-visibility> <appearance> <set id="" appearance="title" label-id="workflow.set.workflow.more_info" /> <set id="items" appearance="title" label-id="workflow.set.items" /> <field id="packageItems" set="items" /> </appearance> </form> <form> <field-visibility> <show id="message" /> <show id="taskOwner" /> <show id="bpm:workflowPriority" /> <show id="bpm:workflowDueDate" /> <show id="bpm:taskId" /> <show id="dw:venue" /> <show id="bpm:status" /> <show id="packageItems" /> </field-visibility> <appearance> <set id="" appearance="title" label-id="workflow.set.task.info" /> <set id="info" appearance="" template="/org/alfresco/components/form/3-column-set.ftl" /> <set id="progress" appearance="title" label-id="workflow.set.task.progress" /> <set id="items" appearance="title" label-id="workflow.set.items" /> <field id="message"> <control template="/org/alfresco/components/form/controls/info.ftl" /> </field> <field id="taskOwner" set="info" /> <field id="dw:venue" set="info" /> <field id="bpm:taskId" set="info"> <control template="/org/alfresco/components/form/controls/info.ftl" /> </field> <field id="bpm:workflowPriority" label-id="workflow.field.priority" set="info" read-only="true"> <control template="/org/alfresco/components/form/controls/workflow/priority.ftl" /> </field> <field id="bpm:workflowDueDate" set="info" label-id="workflow.field.due"> <control template="/org/alfresco/components/form/controls/info.ftl" /> </field> <field id="bpm:status" set="progress" /> <field id="packageItems" set="items" /> </appearance> </form> </forms> </config>
  • 28. Appendix – Demo Config – Datalist - Model 27 <type name="devcon:sessionFeedbackList"> <title>Devcon Session Feedback</title> <description>A list of feedback from attendees on the quality of the sessions.</description> <parent>dl:dataListItem</parent> <properties> <property name="devcon:attendeeFirstName"> <title>Attendee First Name</title> <type>d:text</type> <mandatory>true</mandatory> </property> <property name="devcon:attendeeLastName"> <title>Attendee Last Name</title> <type>d:text</type> <mandatory>false</mandatory> </property> <property name="devcon:feedback"> <title>Feedback</title> <type>d:text</type> <mandatory>true</mandatory> </property> <property name="devcon:score"> <title>Score</title> <type>d:int</type> <constraints> <constraint ref="devcon:score" /> </constraints> </property> </properties> </type>
  • 29. Appendix – Demo Config – Datalist - Create 28 <config evaluator="model-type" condition="devcon:sessionFeedbackList"> <forms> <form> <field-visibility> <show id="devcon:attendeeFirstName" /> <show id="devcon:attendeeLastName" /> <show id="devcon:feedback" /> <show id="devcon:score" /> </field-visibility> <create-form template="../data-lists/forms/dataitem.ftl" /> <appearance> <field id="devcon:feedback"> <control template="/org/alfresco/components/form/controls/textarea.ftl"> <control-param name="rows">6</control-param> </control> </field> </appearance> </form> </forms> </config>
  • 30. Appendix – Demo Config – Datalist - Edit 29 <config evaluator="node-type" condition="devcon:sessionFeedbackList"> <forms> <form> <field-visibility> <show id="devcon:attendeeFirstName" /> <show id="devcon:attendeeLastName" /> <show id="devcon:feedback" /> <show id="devcon:score" /> </field-visibility> <edit-form template="../data-lists/forms/dataitem.ftl" /> <appearance> <field id="devcon:feedback"> <control template="/org/alfresco/components/form/controls/textarea.ftl"> <control-param name="rows">6</control-param> </control> </field> </appearance> </form> </forms> </config>
  • 31.
  • 32. In the meantime have a look at the FDK for more examples