I have a use case which I think can only be modeled by heavy customization of the CRUD form; hoping there is a better way, and if not, for any kind of insight :)
I need to model a use case where the standard create Referral (custom entity) form is a sequence of stages (eg. tabs with logical previous/next buttons). I need to hold the user's hand in going through these steps, creating child entities, and lots of hidden/related attributes as he moves on in the process. When later retrieving this data in views I will probably end up using FetchXML with various loosely connected entities.
The real issue is that this should popup as the default form (for specific roles), when clicking the hyperlink to the entity anywhere in the CRM. So far I modified the /UserDefined/edit.aspx to check for my specific entity type and user role and redirect him to a new page (which for now is a slightly modified copy of edit.aspx).
I could just write the whole new page from scratch and use the SDK to query/update fields, but I was wondering if I could still load the default frm:CrudForm as crmForm and use it's attributes/methods. Any thoughts?
I don't like the redirect OnLoad() method, but the alternative to grep/sed all places where the default edit.aspx url could pop up (in the CRM aspxs) sounds even worse. Is there a third option?
Should I write the aspx website from scratch, or should I try to tie this in with the default CrudForm? If the latter, can you offer some advice on how to go about this; such customizations seem to be far from standard and are not well-written about ;)
Is there a better way to approach this use case? Maybe I missed some basic insight in how I could use the standard CRM features to fix this. (at first glance, the default Workflows are not really an option-> I originally worked it out like this, creating tasks and using public queues for every step of the process, but from a user's perspective this is a real mess -> hard to get a grip where exactly in the referral process we are)