...
- We will start with desiging the form itself. The form itself is quite simple, with just 3 fields and all of them made mandatroy.
Figure 2
- In the userview, we are making use of the Form Menu and link it to the form we have just designed.
Figure 3
Configure "Action to Perform After Form Saved" to redirect to a "HTML Page" to show form submitted message (e.g. Form submitted. Thank you!).
- Do not forget to create a CRUD menu too so that we can browse through all the submissions easily using Generate CRUD.
Figure 4
- At this point of time, there's no integration yet with the external CRM.
...
By using Post Form Submission Processing in Form, and "Method 1 JSON Call" earlier, this is the easiest and quickest method. This allows us to invoke any Process Tool & Post Form Submission Processing Plugin. JSON Tool is one such candidate.
Figure 9
- Upon form submission, form fields will be validated, with its form data stored, then, the "Post Form Submission Processing" will be triggered.
- Response time of form submission will now include complete execution of the JSON Tool.
- Imagine that the external JSON API takes longer than expected to respond, the end user will be kept waiting.
- Depending on the feature of the API call, we would assume that it would return a response to indicate successful execution. For example:-
{ "success" : "true" } - By using this integration point, there's no way to redirect the user to other place/menu when error occurs.
| Point 1 - Post Form Submission Processing + Method 1 - JSON Call |
---|
Pros | - Quickest
- Easiest to Configure
|
Cons | - Increased wait time. Response time includes JSON Tool's turnaround time.
- No guarantee of successful JSON call to external system.
|
Point 2 - Workflow Process