/ Development  

The game-changing power of layout-driven creation

Hi there “Process Automation” fans,

Welcome to a new installment of “Process Automation” tips.

A happy new year for 2025! 🎉 where we will continue our journey for our beloved platform. You see already a rename change from the good old “AppWorks” to “Process Automation”; Or “OpenText Process Automation” with the abbreviation of OPA! Read all about it here. I will start with this new name for this new year (as recommended by OpenText as well). So, time to say goodbye, although it’s still the same good old platform. 🤗

This post gets input from a quick LinkedIn question from a “Process Automation” comrade in crime; Let’s put a post out of it to see if it helps others. “Can’t blame a guy for trying” if we all learn something for it.

The LinkedIn-chat (with some manipulation to fit the post!):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
The comrade: 
Can we integrate or show business workspace (or any other panel) on create
of the form page?
Me:
You can use a layout as a creation screen (instead of the 'Create' form).
In that layout, you can use the BW panel, but I don't know if the BW is
already available as it is created "onCreate" and not "onInit".
The comrade:
Great! Thanks for your information, could you please create an article on
this requirement? So, that it will help people like me...
Me:
Sure, let me put it on my backlog; It will take some time as I work 10 weeks
upfront before you see it online.
The comrade:
Okay, thanks!

Well, here it is…the answer on creating an entity instance via a layout where we also experience what is possible and what is not/nuts! 🙈


Let get right into it…

Let’s boot up the VM, dive into your project with workspace, and create yourself the simplest, one property (case_name) entity. With the default BBs applied (for now!)

layout_001

We all know that ‘Create’ (with capital C) will enable the creation buttons for an entity in runtime. If we rename this form to frm_view, you can’t create any entity instances! BUT what we can do is enabling the “create” option on the layout:

layout_002

Publish it, and now create an instance in runtime (where the creation buttons are available again):

layout_003

Hit that button and see what happens:

layout_004

Have also a look in the “Create” button on the homepage:

layout_005

Interesting…You do see technical names but that’s labeling stuff on the layout…A task on your own!

So, now you know…
Only what happens when we enrich the layout with some fancy panels!? Especially panels we know from experience will not show anything because of an uncreated/temporary instance!? AHA!! 🧐

Below is an overview of BBs added with a description of the results we see in runtime during initialization (not creating) of the entity instance…AND because we’re “Process Automation Tips”, we’ll also have a look in the database to see what happens to it if you cancel the instance:

🧱 “Content” (via default platform docstore connector!)

Works great in the UI, including the preview panel!

layout_006

After we cancel the instance, we can still find the document in the documentstore (via the CMC-tool):

layout_007

Is this valid!? I leave it with you…Does it cleanup automatically? I don’t think so!

🧱 “Discussion”

Works great in the UI:

layout_008

After cancellation? Yes, we see the entries removed as well from the database table o2aw_tipsprj_genericdiscussions.

🧱 “Dynamic workflow”

Well, this partly works in the UI…We can create and initiate one:

layout_009

BUT it’s only visible in the panels after we save the instance. From a DB perspective it’s available already in the o2aw_tipsprj_genericdynamicworkflows table but removed when we cancel the entity instance. When we call the save action, it shows the workflow instance in the panels:

layout_010

🧱 “Lifecycle”

When you closely watch the previous screenshots, you see that on initialization the lifecycle panel hides. It will be visible when you hit the save action. From a DB perspective there is nothing going on until hitting the save action; As expected!

🧱 “Email”

I make this one easy (as I don’t have a mail service up and running). Simply create a new mail and save it as draft:

layout_011

On entity cancellation, the corresponding tables (o2aw_tipsprj_genericemails and o2aw_tipsprj_genericemailscontents) get a clean too; Great…next one!

🧱 “History”

Interesting, as when I update the case_name, I do see a change:

layout_012

I also see rows in the corresponding DB table:

1
2
3
4
SELECT s_audit_id,
s_top_item_id,
convert_from(s_history_data, 'UTF8')
FROM o2aw_tipsprj_generichistoryloglist

Hitting that refresh shows nothing!? When I cancel, the regular entries in the DB table remove too; except for one which “smells” like lifecycle related with a converted data of the s_history_data field like this:

1
2
3
4
5
6
7
8
<History>
<ID
e="080027f2140da1efa5dfa681d37c1f66"
i="080027f2140da1efa5dfa681d37c1f66.3.3"
t="Default"
v="334bc67252da3db2b2b6ce2490f8cbe2"
x="080027f2140da1efa5dfa1c225f80aee.3.080027f2140da1efa5dfa681d37c1f66.3."/>
</History>

Looks like a cleanup action for ourselves! Making it even more interesting…After saving the entity and updating the case_name, I do see the new property change and not the old changes:

layout_013

And deleting it will leave me again with one entry in the o2aw_tipsprj_generichistoryloglist table!

Read more about the History BB here.

What about a “Business Workspace” panel? Well, I don’t have xECM up and running, but this was the feedback we got the next day:

1
2
Dear Antal, although business workspace is available 
but we cannot add any files until we save the instance!

A nicely evaluated “DONE” where we put (with input from a LinkedIn comrade) the creation of an entity via a layout BB to the test. You see it has some limitation (as expected), but I think we can conclude that things are working as expected with some cleaning leftovers for maintenance. It is what it is; Have a great weekend and I see you in another post, next week.

Don’t forget to subscribe to get updates on the activities happening on this site. Have you noticed the quiz where you find out if you are also “The Process Automation guy”?