use of it.cnr.jada.bulk.ValidationException in project sigla-main by consiglionazionaledellericerche.
the class CRUDAggiornamentoInventarioBP method validate_Percentuali_LA.
public void validate_Percentuali_LA(ActionContext context, OggettoBulk model) throws ValidationException {
Utilizzatore_CdrVBulk cdrUtilizzatore = (Utilizzatore_CdrVBulk) model;
SimpleBulkList utilizzatori_LA = cdrUtilizzatore.getBuono_cs_utilizzatoriColl();
java.math.BigDecimal percentuale_utilizzo_LA = new java.math.BigDecimal("0");
Vector cdr = new Vector();
java.math.BigDecimal cento = new java.math.BigDecimal(100);
if (utilizzatori_LA.size() > 0) {
Iterator i = utilizzatori_LA.iterator();
while (i.hasNext()) {
Inventario_utilizzatori_laBulk utilizzatore_LA = (Inventario_utilizzatori_laBulk) i.next();
// Controlla che sia stata specificata la line di Attività
if (utilizzatore_LA.getLinea_attivita() == null || utilizzatore_LA.getLinea_attivita().getCd_linea_attivita() == null) {
throw new ValidationException("GAE non valido. Indicare sia il codice del GAE, sia la sua percentuale di utilizzo");
}
// Controlla che non vi siano Linee di Attività DUPLICATE
if (BulkCollections.containsByPrimaryKey(cdr, utilizzatore_LA.getLinea_attivita())) {
throw new ValidationException("GAE duplicato. Non è possibile indicare più volte uno stesso GAE");
} else {
cdr.add(utilizzatore_LA.getLinea_attivita());
}
// Controlla che sia stata indicata una PERCENTUALE DI UTILIZZO VALIDA per Linea di Attività
if (utilizzatore_LA.getPercentuale_utilizzo_la() != null) {
percentuale_utilizzo_LA = percentuale_utilizzo_LA.add(utilizzatore_LA.getPercentuale_utilizzo_la());
} else {
throw new ValidationException("La percentuale di utilizzo per i GAE non può essere nulla");
}
}
// Controlla che il totale delle percentuali di utilizzo delle Linee di Attività sia 100
if (percentuale_utilizzo_LA.compareTo(cento) != 0)
throw new ValidationException("La percentuale di utilizzo per i GAE non è valida");
}
}
use of it.cnr.jada.bulk.ValidationException in project sigla-main by consiglionazionaledellericerche.
the class CRUDClassificazioneVociEPAction method doTab.
public Forward doTab(ActionContext actioncontext, String tabName, String pageName) {
CRUDClassificazioneVociEPBP bp = (CRUDClassificazioneVociEPBP) actioncontext.getBusinessProcess();
Classificazione_voci_epBulk classModelNew = null;
int intTabOld = (new Integer(bp.getTab(tabName).substring("tabLivello".length()))).intValue();
int intTabNew = (new Integer(pageName.substring("tabLivello".length()))).intValue();
/*
* Non è possibile cambiare Tab se esistono dati non confermati.
*/
try {
fillModel(actioncontext);
if (bp.isDirty()) {
setErrorMessage(actioncontext, "Confermare le modifiche prima di proseguire.");
return actioncontext.findDefaultForward();
}
} catch (FillException e1) {
e1.printStackTrace();
}
/*
* Se la navigazione tra le Tab è in avanti deve essere selezionato sul Bulk corrente
* almeno un livello successivo da utilizzare per il caricamento delle Bulk successive.
* Regola non valida se si naviga dalla Tab1
*/
if ((new Integer(intTabNew)).compareTo(new Integer(intTabOld)) > 0 && ((intTabOld == 1 && bp.getModel().getCrudStatus() != OggettoBulk.NORMAL) || (intTabOld != 1 && bp.getCrudAssLivelli().getSelection().getFocus() < 0))) {
bp.setMessage("E' necessario selezionare un livello.");
return actioncontext.findDefaultForward();
}
/*
* Se è stato selezionato un livello diverso da quello precedentemente memorizzato (il focus del
* controller è diverso da quello memorizzato nel Bulk) vengono annullati tutti i riferimenti
* memorizzati nel BP ai Bulk e focus dei livelli successivi.
* Se si naviga dalla Tab1 il processo di annullamento avviene se cambia il model del BP
*/
bp.allineaFocusBulkTab(intTabOld);
/*
* Se la navigazione tra le Tab è in avanti è possibile navigare solo fino alla Tab immediatamente
* successiva all'ultima Tab caricata.
*/
if ((new Integer(intTabNew)).compareTo(new Integer(intTabOld)) > 0 && bp.getBulkTab(intTabNew - 1) == null && intTabNew != intTabOld + 1) {
bp.setMessage("E' necessario caricare i livelli nella sequenza corretta.");
return actioncontext.findDefaultForward();
} else if ((new Integer(intTabNew)).compareTo(new Integer(intTabOld)) > 0 && intTabNew != 2 && bp.getBulkTab(intTabNew - 1) != null && bp.getFocusTab(intTabNew - 1) == -1 && intTabNew != intTabOld + 1) {
bp.setMessage("E' necessario selezionare un dettaglio del livello precedente.");
return actioncontext.findDefaultForward();
}
/*
* Individuazione del model da associare al BP
*/
if (bp.getBulkTab(intTabNew) != null)
classModelNew = bp.getBulkTab(intTabNew);
else if (intTabOld == 1)
classModelNew = (Classificazione_voci_epBulk) bp.getModel();
else if (intTabNew == intTabOld + 1 && !(bp.getCrudAssLivelli().getSelection().getFocus() < 0))
classModelNew = (Classificazione_voci_epBulk) ((Classificazione_voci_epBulk) bp.getModel()).getClassVociAssociate().get(bp.getCrudAssLivelli().getSelection().getFocus());
else if (intTabNew != intTabOld + 1 && !(bp.getFocusTab(intTabNew - 1) < 0))
classModelNew = (Classificazione_voci_epBulk) ((Classificazione_voci_epBulk) bp.getBulkTab(intTabNew - 1)).getClassVociAssociate().get(bp.getFocusTab(intTabNew - 1));
Forward fw = super.doTab(actioncontext, tabName, pageName);
try {
if (bp.getBulkTab(intTabNew) == null)
bp.setModel(actioncontext, bp.initializeModelForEdit(actioncontext, classModelNew));
else
bp.setModel(actioncontext, classModelNew);
} catch (BusinessProcessException e) {
e.printStackTrace();
}
bp.allineaDescriptionTab(intTabNew);
/*
* Settaggio del focus sulle Classificazioni associate al livello visualizzato
*/
try {
Selection selCopy = new Selection();
if (bp.getBulkTab(intTabNew) == null && !((Classificazione_voci_epBulk) bp.getModel()).getClassVociAssociate().isEmpty())
bp.getCrudAssLivelli().setSelection(actioncontext, selCopy);
else if (bp.getBulkTab(intTabNew) != null) {
selCopy.setFocus(bp.getFocusTab(intTabNew));
bp.getCrudAssLivelli().setSelection(actioncontext, selCopy);
}
} catch (BusinessProcessException e2) {
e2.printStackTrace();
} catch (ValidationException e2) {
e2.printStackTrace();
}
return fw;
}
use of it.cnr.jada.bulk.ValidationException in project sigla-main by consiglionazionaledellericerche.
the class CRUDConfigParametriLivelliEPAction method doCambiaLivelliEconomica.
/**
* Viene richiamato nel momento in cui viene cambiato il livello delle Economica
*/
public Forward doCambiaLivelliEconomica(ActionContext context) {
try {
CRUDConfigParametriLivelliEPBP bp = (CRUDConfigParametriLivelliEPBP) getBusinessProcess(context);
Parametri_livelli_epBulk parLiv = (Parametri_livelli_epBulk) bp.getModel();
Integer livOld = parLiv.getLivelli_eco();
try {
fillModel(context);
if (!bp.isSearching())
parLiv.validaLivelliValorizzati();
return context.findDefaultForward();
} catch (ValidationException e) {
parLiv.setLivelli_eco(livOld);
bp.setModel(context, parLiv);
throw e;
}
} catch (Throwable e) {
return handleException(context, e);
}
}
use of it.cnr.jada.bulk.ValidationException in project sigla-main by consiglionazionaledellericerche.
the class LockObjectAction method doSelectUtenti.
public it.cnr.jada.action.Forward doSelectUtenti(it.cnr.jada.action.ActionContext actionContext) throws BusinessProcessException {
LockObjectBP bp = (LockObjectBP) actionContext.getBusinessProcess();
try {
bp.getUtenti().setSelection(actionContext);
} catch (BusinessProcessException e) {
return handleException(actionContext, e);
} catch (ValidationException e) {
return handleException(actionContext, e);
}
LockedObjectBulk lockedObject = (LockedObjectBulk) bp.getModel();
lockedObject.setUtente((UtenteBulk) bp.getUtenti().getModel());
bp.selezionaUtente(actionContext);
return actionContext.findDefaultForward();
}
use of it.cnr.jada.bulk.ValidationException in project sigla-main by consiglionazionaledellericerche.
the class CRUDClassificazioneVociAction method doTab.
public Forward doTab(ActionContext actioncontext, String tabName, String pageName) {
CRUDClassificazioneVociBP bp = (CRUDClassificazioneVociBP) actioncontext.getBusinessProcess();
Classificazione_vociBulk classModelNew = null;
int intTabOld = (new Integer(bp.getTab(tabName).substring("tabLivello".length()))).intValue();
int intTabNew = (new Integer(pageName.substring("tabLivello".length()))).intValue();
/*
* Non è possibile cambiare Tab se esistono dati non confermati.
*/
try {
fillModel(actioncontext);
if (bp.isDirty()) {
setErrorMessage(actioncontext, "Confermare le modifiche prima di proseguire.");
return actioncontext.findDefaultForward();
}
} catch (FillException e1) {
e1.printStackTrace();
}
/*
* Se la navigazione tra le Tab è in avanti deve essere selezionato sul Bulk corrente
* almeno un livello successivo da utilizzare per il caricamento delle Bulk successive.
* Regola non valida se si naviga dalla Tab1
*/
if ((new Integer(intTabNew)).compareTo(new Integer(intTabOld)) > 0 && ((intTabOld == 1 && bp.getModel().getCrudStatus() != OggettoBulk.NORMAL) || (intTabOld != 1 && bp.getCrudAssLivelli().getSelection().getFocus() < 0))) {
bp.setMessage("E' necessario selezionare un livello.");
return actioncontext.findDefaultForward();
}
/*
* Se è stato selezionato un livello diverso da quello precedentemente memorizzato (il focus del
* controller è diverso da quello memorizzato nel Bulk) vengono annullati tutti i riferimenti
* memorizzati nel BP ai Bulk e focus dei livelli successivi.
* Se si naviga dalla Tab1 il processo di annullamento avviene se cambia il model del BP
*/
bp.allineaFocusBulkTab(intTabOld);
/*
* Se la navigazione tra le Tab è in avanti è possibile navigare solo fino alla Tab immediatamente
* successiva all'ultima Tab caricata.
*/
if ((new Integer(intTabNew)).compareTo(new Integer(intTabOld)) > 0 && bp.getBulkTab(intTabNew - 1) == null && intTabNew != intTabOld + 1) {
bp.setMessage("E' necessario caricare i livelli nella sequenza corretta.");
return actioncontext.findDefaultForward();
} else if ((new Integer(intTabNew)).compareTo(new Integer(intTabOld)) > 0 && intTabNew != 2 && bp.getBulkTab(intTabNew - 1) != null && bp.getFocusTab(intTabNew - 1) == -1 && intTabNew != intTabOld + 1) {
bp.setMessage("E' necessario selezionare un dettaglio del livello precedente.");
return actioncontext.findDefaultForward();
}
/*
* Individuazione del model da associare al BP
*/
if (bp.getBulkTab(intTabNew) != null)
classModelNew = bp.getBulkTab(intTabNew);
else if (intTabOld == 1)
classModelNew = (Classificazione_vociBulk) bp.getModel();
else if (intTabNew == intTabOld + 1 && !(bp.getCrudAssLivelli().getSelection().getFocus() < 0))
classModelNew = (Classificazione_vociBulk) ((Classificazione_vociBulk) bp.getModel()).getClassVociAssociate().get(bp.getCrudAssLivelli().getSelection().getFocus());
else if (intTabNew != intTabOld + 1 && !(bp.getFocusTab(intTabNew - 1) < 0))
classModelNew = (Classificazione_vociBulk) ((Classificazione_vociBulk) bp.getBulkTab(intTabNew - 1)).getClassVociAssociate().get(bp.getFocusTab(intTabNew - 1));
Forward fw = super.doTab(actioncontext, tabName, pageName);
try {
if (bp.getBulkTab(intTabNew) == null)
bp.setModel(actioncontext, bp.initializeModelForEdit(actioncontext, classModelNew));
else
bp.setModel(actioncontext, classModelNew);
} catch (BusinessProcessException e) {
e.printStackTrace();
}
bp.allineaDescriptionTab(intTabNew);
/*
* Settaggio del focus sulle Classificazioni associate al livello visualizzato
*/
try {
Selection selCopy = new Selection();
if (bp.getBulkTab(intTabNew) == null && !((Classificazione_vociBulk) bp.getModel()).getClassVociAssociate().isEmpty())
bp.getCrudAssLivelli().setSelection(actioncontext, selCopy);
else if (bp.getBulkTab(intTabNew) != null) {
selCopy.setFocus(bp.getFocusTab(intTabNew));
bp.getCrudAssLivelli().setSelection(actioncontext, selCopy);
}
} catch (BusinessProcessException e2) {
e2.printStackTrace();
} catch (ValidationException e2) {
e2.printStackTrace();
}
return fw;
}
Aggregations