it-swarm.it

Segnalazione in un'applicazione CRUD

È l'ennesimo dilemma relativo all'app aziendale.

La maggior parte delle app professionali utilizza scrittori di report che sono troppo complicati per l'utente generico, anche se la maggior parte di essi è wysiwyg. Alcune semplici app hanno solo modelli fissi che non sono personalizzabili.

Nel tentativo di risolvere questo problema di vecchia data, abbiamo scelto la soluzione di base per il problema, ovvero la stampa basata su modelli. È un po 'come il funzionamento dei motori di blog o dei motori di forum, i modelli possono contenere un semplice codice logico e impostazioni semplici che un utente può facilmente modificare senza dover conoscere alcun codice. Un ottimo esempio di come funziona sta guardando questo sito: www.squarespace.com

Tuttavia, a differenza di un sito Web, la maggior parte dei report sulle app CRUD ha vincoli di dati, determinati criteri di selezione come gruppi o categorie. Per esempio. Voglio un rapporto di tutte le sedie dal database.

La domanda è: i criteri di selezione dovrebbero essere inclusi nei modelli? La separazione dei criteri consentirà un migliore controllo sui dati che verranno stampati. Questo paradigma viene utilizzato attraverso l'app ma senza la selezione di criteri. Per esempio. Stampa fattura ma con modelli

Come programmatori, tendiamo a pensare che la presentazione (modelli) e la logica (in questo caso i dati) dovrebbero essere separati. Cosa farai in questa situazione?

PS: I modelli generano PDF e quindi non sono in grado di mostrare dal vivo con i modelli.

3
vener

Supponendo che stiamo parlando di una parte generale dell'app di reporting in cui tutti i dati disponibili dall'app devono essere "riportabili": terrei i criteri di selezione separati dai modelli.

Consentire all'utente di selezionare prima tutto ciò che desidera vedere, quindi offrire un'azione di stampa in cui è possibile selezionare un modello da utilizzare. In questo modo i modelli possono essere filtrati anche in base ai dati selezionati (non serve presentare modelli di fattura quando l'app mostra gli elementi del diario nella griglia di selezione).

Un'alternativa sarebbe iniziare con la selezione di un modello (e quindi limitare la selezione dei dati). I tuoi utenti dovranno darti una guida in merito. Per loro potrebbe essere più naturale selezionare prima un modello.

In entrambi i casi, tenderei a mostrare i dati selezionati in base ai criteri inseriti. Ad esempio in una griglia o treeview di qualche tipo. Preferibilmente "live" in modo che l'utente possa vedere immediatamente l'effetto dei criteri che inserisce. Altrimenti, inseriscili in alcuni criteri, visualizza i dati, lasciali affinare tali criteri (aggiungi/rimuovi/modifica) tornando alla finestra di dialogo dei criteri fino a quando non sono soddisfatti di ciò che hanno selezionato.

Aggiorna in risposta al commento

Quindi assicurati di avere un modello predefinito ragionevole. Ancora meglio: seleziona un modello più adatto in base ai dati selezionati dall'utente.

Non dire che non li hai :-), ma altre funzionalità che possono aiutare gli utenti in queste situazioni:

  • Memorizza l'ultima selezione, i criteri e il modello utilizzati
  • Consentire agli utenti di salvare le ricerche con un nome significativo e preferibilmente consentire loro di organizzarle in una sorta di struttura di cartelle. Preferibilmente con il completo supporto del trascinamento della selezione in modo che possano spostare le ricerche salvate
2
Marjan Venema