I've built a workflow process that uses a single table to collect the data within the workflow. As workflow participants fill out forms and complete their tasks, new information is added into the row in the database for that process instance. I'd like to create a view that allows an administrator to easily view that data.

I could create a Datalist which presents all the information in a single column as it is collected in the database, but that would be a long, ugly row of data (and it would not include information like custom HTML in sub-forms.)

I would like to create a new form (or use existing forms) in my workflow that displays all that collected information in a more user friendly manner, but without altering the state of the workflow (e.g. no 'Complete' button.)  That way I could create a hyperlink to the form/view (passing the id) from my view list to see the form. 

Is this sort of thing possible using existing forms or do I have to write a custom HTML/JSP page?

  • No labels

6 Comments

  1. Hi Pete,

    First of all, thanks for all your contributions in the forum.

    On your question, I don't really get you as we can add multiple columns into a Datalist (See Build a Datalist with Datalist Builder). You can also configure on how data are fetched by using various Datalist Binder.

    In your userview, you can use the Advanced CRUD Userview Menu to list the records and to Edit/View its Form.

    Hope this helps. Thanks.

    1. Hi Hugo,

      Thanks for your response. Let's say I have a workflow that is tracking a citizen through some lengthy process with lots of activities, each which has its own form. I guess what I'm trying to do is to give someone (an administrator)

      1. The ability to search through a list of processes for that citizen
      2. The ability to click an entry in that list and look at the current state of the process with all gathered information from all of the forms from all the activities within the process instance (the results of all the activities that have occurred.) 

      I could easily accomplish step 1 with a Datalist and search through whatever fields I added through the datalist.

      I can kind of accomplish step 2 by looking at the Inbox and clicking one of the entries there. Unfortunately, the Inbox doesn't expose anything about the process except for the Activity name. What if I am looking for a particular process instance and I only know the National Registration Identification Card Number (NRIC) entered in the first activity of the workflow? I can't easily search the Inbox for that (I have to click each process in the Inbox until I find it.) Even if I could, the Inbox still sends me to the latest activity for that process which may not show all of the data that has been collected by all activities.

      I can create a form which displays all that activity data nicely, but what is the link (with process ID parameter) I can use to Hyperlink to that populated form from a Datalist?
      I didn't want to use the datalist to show all the information because a) There is a lot of data being collected and it would be unwieldly to view all of it in row format b) It doesn't show the custom HTMLs that the forms allow (which use hash variables in their URLs to link to outside web applications). 

      Any ideas?

      Thanks!

      1. Hi Pete,

        Have you tried using the Datalist Inbox? Maybe that might be suitable for what you're trying to do :)

        1. I'm not using the Enterprise Edition so I haven't. I'm working on a plugin which does something similar. If I can figure something out, I'll probably figure out a place where I can upload the plugin (or at least post the source) so the entire community can use it.

      2. Hi Pete,

        That's a long one. Can this possbily article helps? http://dev.joget.org/community/display/KB/Linking+List+Record+to+Form

        Hope this gets you somewhere.

        1. Hi Hugo,

          That's exactly what I was looking for to solve step 2. I tried to do this earlier, but didn't realize that the 'customID' field was the form ID used in the URL, not the actual formID of the form I wanted to use.

          Thanks!