Search in sources :

Example 26 with ValidationException

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");
    }
}
Also used : ValidationException(it.cnr.jada.bulk.ValidationException) Iterator(java.util.Iterator) RemoteIterator(it.cnr.jada.util.RemoteIterator) Utilizzatore_CdrVBulk(it.cnr.contab.inventario00.docs.bulk.Utilizzatore_CdrVBulk) Vector(java.util.Vector) Inventario_utilizzatori_laBulk(it.cnr.contab.inventario00.docs.bulk.Inventario_utilizzatori_laBulk) SimpleBulkList(it.cnr.jada.bulk.SimpleBulkList)

Example 27 with ValidationException

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;
}
Also used : Classificazione_voci_epBulk(it.cnr.contab.config00.pdcep.cla.bulk.Classificazione_voci_epBulk) ValidationException(it.cnr.jada.bulk.ValidationException) FillException(it.cnr.jada.bulk.FillException) Selection(it.cnr.jada.util.action.Selection) Forward(it.cnr.jada.action.Forward) CRUDClassificazioneVociEPBP(it.cnr.contab.config00.bp.CRUDClassificazioneVociEPBP) BusinessProcessException(it.cnr.jada.action.BusinessProcessException)

Example 28 with ValidationException

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);
    }
}
Also used : ValidationException(it.cnr.jada.bulk.ValidationException) Parametri_livelli_epBulk(it.cnr.contab.config00.pdcep.cla.bulk.Parametri_livelli_epBulk) CRUDConfigParametriLivelliEPBP(it.cnr.contab.config00.bp.CRUDConfigParametriLivelliEPBP)

Example 29 with ValidationException

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();
}
Also used : ValidationException(it.cnr.jada.bulk.ValidationException) LockedObjectBulk(it.cnr.contab.utenze00.bulk.LockedObjectBulk) LockObjectBP(it.cnr.contab.config00.bp.LockObjectBP) BusinessProcessException(it.cnr.jada.action.BusinessProcessException)

Example 30 with ValidationException

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;
}
Also used : CRUDClassificazioneVociBP(it.cnr.contab.config00.bp.CRUDClassificazioneVociBP) ValidationException(it.cnr.jada.bulk.ValidationException) FillException(it.cnr.jada.bulk.FillException) Selection(it.cnr.jada.util.action.Selection) Forward(it.cnr.jada.action.Forward) BusinessProcessException(it.cnr.jada.action.BusinessProcessException)

Aggregations

ValidationException (it.cnr.jada.bulk.ValidationException)173 BusinessProcessException (it.cnr.jada.action.BusinessProcessException)41 ComponentException (it.cnr.jada.comp.ComponentException)37 RemoteException (java.rmi.RemoteException)33 ApplicationException (it.cnr.jada.comp.ApplicationException)30 BigDecimal (java.math.BigDecimal)29 Iterator (java.util.Iterator)21 BulkList (it.cnr.jada.bulk.BulkList)20 Timestamp (java.sql.Timestamp)20 CNRUserContext (it.cnr.contab.utenze00.bp.CNRUserContext)19 UserContext (it.cnr.jada.UserContext)14 RemoteIterator (it.cnr.jada.util.RemoteIterator)14 CRUDIncarichiProceduraBP (it.cnr.contab.incarichi00.bp.CRUDIncarichiProceduraBP)12 DetailedRuntimeException (it.cnr.jada.DetailedRuntimeException)12 EJBException (javax.ejb.EJBException)12 OggettoBulk (it.cnr.jada.bulk.OggettoBulk)10 PersistencyException (it.cnr.jada.persistency.PersistencyException)9 ServletException (javax.servlet.ServletException)9 Incarichi_repertorioBulk (it.cnr.contab.incarichi00.bulk.Incarichi_repertorioBulk)8 Incarichi_proceduraBulk (it.cnr.contab.incarichi00.bulk.Incarichi_proceduraBulk)7