Ciao a tutti.
Devo realizzare due applicazioni che in fase di setup (ovvero da un pannello in backend, da usare la prima volta e poco più) devono definire la struttura di alcune tabelle/form, su cui poi gli utenti dei siti andranno ad inserire i dati e su cui fare successivamente dei report.
E' necessario che ogni admin (sono diversi portali che popolano lo stesso database) definisca le proprie tabelle/form e i propri campi da backend (possibilmente una volta sola in fase di setup), ma che la base dati sia unica, per poter confrontare i risultati

Fosse il male di fare dei form dinamici sarebbe tutto molto più semplice. Il problema è che successivamente questi dati vanno archiviati e quindi ciò presuppone che anche il DB sia predisposto coi campi giusti.
Il tutto da incrociare infine con dei form di anagrafica comuni a tutti quanti gli admin (ma per i quali dovrei prevedere di poter personalizzare le label sempre da backend).

Come posso implementare questa funzionalità senza sapere a priori quante tabelle avrò e come sono strutturate?
Una soluzione avevo pensato fosse usare un ORM dove dal pannello di setup si compila il modello XML e poi da questo si creano le tabelle in più e si eseguono le query.
Ma un modello simile oltre ad essere molto complesso richiede delle operazioni batch (di creazione, modifica delle tabelle del db) non semplici da gestire da un normale pannello di amministrazione via web.

Qualcuno ha in mente altre soluzioni più semplici?
Eventualmente vi viene in mente qualche soluzione ORM o framework leggeri che si adatti alle mie esigenze senza complicare eccessivamente la situazione?

Vi ringrazio e spero di essere stato chiaro nello spiegare il mio problema..