Closed prestoncabe closed 1 month ago
I looked more deeply into this last night and today:
dateOfBirth
and livesInPhiladelphiaPa
). Here is a portable HTML file that implements this simple form and logs the form output to the JS console when you change the form or hit the submit button.@sierscse FYI
This page has really interesting ideas for how to customize Camunda Forms:
Some other food for thought for using Camunda Forms effectively: https://camunda.com/blog/2023/05/draft-to-perfection-effective-forms-human-workflows/
Another idea: using custom properties of form components to customize those components. For example, you could reference an external API (like a DMN decision service) to populate some reference on a form (like the current income limit or something like that).
Is this also how we could use the response from DMN to hide/show form elements based on whether the household is still eligible for a particular benefit? For example, the changed/submitted callbacks could update properties that are used to hide/show questions for a benefit.
https://github.com/bpmn-io/form-js-examples/blob/master/custom-properties/README.md
I was able to rig up a development environment for using Camunda forms interacting with our DMN API. Using Project IDX (or Cloud Shell) makes this a bit more convoluted as compared to using a local dev environment, but it can be worked around.
Here are the steps:
.form
file using Camunda Modeler (local desktop application).
<script type="application/form-schema">
) in an html file.index.html
, putting it in the root directory of the project, and running npx live-server
. (can put it somewhere else if you run the server from the other directory).With the above steps, I am able to develop and test forms, see results back from the DMN!! It's fairly clunky to setup, but I expect that we'll streamline this over time.
Example gist: https://gist.github.com/prestoncabe/f44800973357ce5f191c0a4a6152040f
For now, I think I'll take a break on this front and fix some issues in the DMN revealed by testing the form (it doesn't handle blank/null data like I think we'll want).
@sierscse FYI
Things to do a proof of concept for (that we will need for the philly tax benefit screener):
I'm still swimming around in uncertainty, but I've learned some more things in the past couple of days:
#if
control).You can configure IDX to automatically launch a web server and preview it within the IDX window. Makes it easy to sit down and automatically troubleshoot forms. Not sure how/if this will be useful long term for a hypothetical DMN Benefits Toolbox developer, but it seems like it will have a place in helping to simplify the experience.
Well, I think I've proved the concept of a simple screener using Camunda Forms + DMN. There's a lot more to figure out to build a real screener (need a production deployment plan, figure out how to handle multiple benefits in one screening, deal with the look and feel - including what to do about the BPMN.io watermark, etc.)... but I think the enough pieces are there to start planning what a MVP solution for Philly real estate tax benefits would look like.
@sierscse - we can start talking about that tomorrow!
Screencast from 2024-10-07 22-29-08.webm
demo! @sierscse
I'll experiment and document my findings here.
This is for #28