Momenteel heb ik bij enkele klanten een zeer flexibele ui draaien. De schermen/dropdowns etc worden volledig dynamisch opgebouwd adhv de meta-gegevens van de database. (link oude blog). Het grote voordeel is dus dat ALLE functionaliteit voor de klanten strikt gescheiden blijft van het framework. Menu zit in een aparte dll (=plugin) specifiek voor elke klant. Bij wijziging van functionalitiet (bv exporteer grid naar excel) kan ik deze dus bij al m'n klanten zonder veel poeha implementeren.
Wat is nu het grote probleem : het ontbreken van een workflow engine om bv een nieuwe verzekering toe te voegen; als gebruikers in verschillende tabellen iets moeten wijzigen, loopt men het risico iets te vergeten (concreet : nieuwe blog).
Nu sta ik voor een paar punten waar ik graag jullie mening over zou hebben :
Momenteel werk ik met een soort module die een propertybag aanmaakt adhv de metagegevens in de db, die ik rechtstreeks kan gebruiken in een propertygrid (met dropdowns, nullable types,...
Ik zeg dus gewoon : die tabel, dat veld, en de rest gebeurt automatisch. Het grote voordeel is natuurlijk de flexibiliteit van zo'n systeem.... Write once, use everywhere...
Doordat de interface steeds uniform is, ontstaat er bij de gebruikers geen verwarring...
Ik dacht dus zo'n soortgelijk systeem te ontwerpen met wizards, gestuurd door XML-files voor de bedrijfsprocessen. Maar nu kom ik bij het volgende probleem :Wat moet er gebeuren wanneer een gebruiker meerdere records moet aanmaken voor een bepaald gedeelte.... (vb order/orderlijnen)
A. per orderlijn nieuwe wizard opstarten
B. per orderlijn een knop voorzien "nog een orderlijn toevoegen" naast de "Next" knop
C. de gebruikers een grid geven waar ze naar hartelust orderlijnen kunnen ingeven
D. Geen wizard gebruiken, en links een Pane voorzien waarop men in realtime ziet wat er al gebeurd is, en wat niet (links zou men dan verzekerde, order en orderdetails te zien krijgen in een html-achtige opmaak, waar men dan terug kan op klikken om naar de desbetreffende geg te gaan..)
A lijkt me al direct niet aan te raden
Ik twijfel eigenlijk vooral tussen een combinatie van B en C, of D.
D zou zeker en vast het minste werk met zich meebrengen...
Ik wil sowiezo de onafhankelijkheid bewaren, dus kom alsjeblieft niet af met "programmeer gewoon een paar wizard forms...", want dan moet ik bij wijziging van de structuur van de db dlls gaan hercompileren, en dat wil ik nou net niet
Een tweede vraag : bestaat er al zo'n gelijkaardig systeem ? ik ben het nog nergens tegengekomen (geen vgl met access e.d.; deze tonen de gebruikers nl niet rechtstreeks de relaties van de gegevens, of er komt programmeerwerk bij kijken).
Alle input is welkom...
Wat is nu het grote probleem : het ontbreken van een workflow engine om bv een nieuwe verzekering toe te voegen; als gebruikers in verschillende tabellen iets moeten wijzigen, loopt men het risico iets te vergeten (concreet : nieuwe blog).
Nu sta ik voor een paar punten waar ik graag jullie mening over zou hebben :
Momenteel werk ik met een soort module die een propertybag aanmaakt adhv de metagegevens in de db, die ik rechtstreeks kan gebruiken in een propertygrid (met dropdowns, nullable types,...
Ik zeg dus gewoon : die tabel, dat veld, en de rest gebeurt automatisch. Het grote voordeel is natuurlijk de flexibiliteit van zo'n systeem.... Write once, use everywhere...
Doordat de interface steeds uniform is, ontstaat er bij de gebruikers geen verwarring...
Ik dacht dus zo'n soortgelijk systeem te ontwerpen met wizards, gestuurd door XML-files voor de bedrijfsprocessen. Maar nu kom ik bij het volgende probleem :Wat moet er gebeuren wanneer een gebruiker meerdere records moet aanmaken voor een bepaald gedeelte.... (vb order/orderlijnen)
A. per orderlijn nieuwe wizard opstarten
B. per orderlijn een knop voorzien "nog een orderlijn toevoegen" naast de "Next" knop
C. de gebruikers een grid geven waar ze naar hartelust orderlijnen kunnen ingeven
D. Geen wizard gebruiken, en links een Pane voorzien waarop men in realtime ziet wat er al gebeurd is, en wat niet (links zou men dan verzekerde, order en orderdetails te zien krijgen in een html-achtige opmaak, waar men dan terug kan op klikken om naar de desbetreffende geg te gaan..)
A lijkt me al direct niet aan te raden
Ik twijfel eigenlijk vooral tussen een combinatie van B en C, of D.
D zou zeker en vast het minste werk met zich meebrengen...
Ik wil sowiezo de onafhankelijkheid bewaren, dus kom alsjeblieft niet af met "programmeer gewoon een paar wizard forms...", want dan moet ik bij wijziging van de structuur van de db dlls gaan hercompileren, en dat wil ik nou net niet
Een tweede vraag : bestaat er al zo'n gelijkaardig systeem ? ik ben het nog nergens tegengekomen (geen vgl met access e.d.; deze tonen de gebruikers nl niet rechtstreeks de relaties van de gegevens, of er komt programmeerwerk bij kijken).
Alle input is welkom...