Search in sources :

Example 1 with it.cnr.contab.config00.pdcep.bulk

use of it.cnr.contab.config00.pdcep.bulk in project sigla-main by consiglionazionaledellericerche.

the class SaldoComponent method checkPdgPianoEconomico.

public void checkPdgPianoEconomico(UserContext userContext, Pdg_variazioneBulk variazione) throws ComponentException {
    try {
        if (Utility.createParametriEnteComponentSession().isProgettoPianoEconomicoEnabled(userContext, CNRUserContext.getEsercizio(userContext))) {
            Unita_organizzativaBulk uoScrivania = (Unita_organizzativaBulk) getHome(userContext, Unita_organizzativaBulk.class).findByPrimaryKey(new Unita_organizzativaBulk(CNRUserContext.getCd_unita_organizzativa(userContext)));
            /*
				 * non effettuo alcun controllo se è collegata la UO Ente e la variazione è fatta dalla UO Ente
				 * oppure
				 * la variazione è generata automaticamente (es. in fase di emissione obbligazione)
				 */
            if (variazione.getCentro_responsabilita().getUnita_padre().isUoEnte() && (uoScrivania.isUoEnte() || Pdg_variazioneBulk.MOTIVAZIONE_VARIAZIONE_AUTOMATICA.equals(variazione.getTiMotivazioneVariazione())))
                return;
            /*
				 * non effettuo alcun controllo se si tratta di variazione IVA
				 */
            PersistentHome homeLiqVar = getHome(userContext, Liquidazione_iva_variazioniBulk.class);
            SQLBuilder sqlLiqVar = homeLiqVar.createSQLBuilder();
            sqlLiqVar.addClause(FindClause.AND, "esercizio_variazione_comp", SQLBuilder.EQUALS, variazione.getEsercizio());
            sqlLiqVar.addClause(FindClause.AND, "pg_variazione_comp", SQLBuilder.EQUALS, variazione.getPg_variazione_pdg());
            if (sqlLiqVar.executeCountQuery(getConnection(userContext)) > 0)
                return;
            it.cnr.contab.config00.ejb.Configurazione_cnrComponentSession configSession = Utility.createConfigurazioneCnrComponentSession();
            List<CtrlPianoEco> listCtrlPianoEco = new ArrayList<CtrlPianoEco>();
            String cdNaturaReimpiego = configSession.getVal01(userContext, new Integer(0), null, Configurazione_cnrBulk.PK_GESTIONE_PROGETTI, Configurazione_cnrBulk.SK_NATURA_REIMPIEGO);
            String cdVoceSpeciale = configSession.getVal01(userContext, new Integer(0), null, Configurazione_cnrBulk.PK_ELEMENTO_VOCE_SPECIALE, Configurazione_cnrBulk.SK_TEMPO_IND_SU_PROGETTI_FINANZIATI);
            String cdrPersonale = Optional.ofNullable(((Configurazione_cnrHome) getHome(userContext, Configurazione_cnrBulk.class)).getCdrPersonale(CNRUserContext.getEsercizio(userContext))).orElseThrow(() -> new ComponentException("Non è possibile individuare il codice CDR del Personale."));
            CdrBulk cdrPersonaleBulk = (CdrBulk) getHome(userContext, CdrBulk.class).findByPrimaryKey(new CdrBulk(cdrPersonale));
            String uoRagioneria = ((Configurazione_cnrHome) getHome(userContext, Configurazione_cnrBulk.class)).getUoRagioneria(CNRUserContext.getEsercizio(userContext));
            Ass_pdg_variazione_cdrHome ass_cdrHome = (Ass_pdg_variazione_cdrHome) getHome(userContext, Ass_pdg_variazione_cdrBulk.class);
            java.util.Collection<Pdg_variazione_riga_gestBulk> dettagliVariazione = ass_cdrHome.findDettagli(variazione);
            for (Pdg_variazione_riga_gestBulk varStanzRiga : dettagliVariazione) {
                // verifico se si tratta di area
                CdrBulk cdrBulk = (CdrBulk) getHome(userContext, CdrBulk.class).findByPrimaryKey(new CdrBulk(varStanzRiga.getCd_cdr_assegnatario()));
                Unita_organizzativaBulk uoBulk = (Unita_organizzativaBulk) getHome(userContext, Unita_organizzativaBulk.class).findByPrimaryKey(new Unita_organizzativaBulk(cdrBulk.getCd_unita_organizzativa()));
                boolean isUoArea = uoBulk.getCd_tipo_unita().equals(Tipo_unita_organizzativaHome.TIPO_UO_AREA);
                // verifico se si tratta di voce accentrata verso il personale
                Elemento_voceBulk voce = (Elemento_voceBulk) getHome(userContext, Elemento_voceBulk.class).findByPrimaryKey(varStanzRiga.getElemento_voce());
                Classificazione_vociBulk classif = (Classificazione_vociBulk) getHome(userContext, Classificazione_vociBulk.class).findByPrimaryKey(new Classificazione_vociBulk(voce.getId_classificazione()));
                boolean isDettPersonale = classif.getFl_accentrato() && cdrPersonale.equals(classif.getCdr_accentratore());
                boolean isUoRagioneria = uoBulk.getCd_unita_organizzativa().equals(uoRagioneria);
                // recupero la GAE
                WorkpackageBulk linea = ((WorkpackageHome) getHome(userContext, WorkpackageBulk.class)).searchGAECompleta(userContext, varStanzRiga.getEsercizio(), varStanzRiga.getCd_cdr_assegnatario(), varStanzRiga.getCd_linea_attivita());
                Optional.ofNullable(linea).orElseThrow(() -> new ApplicationException("Errore in fase di ricerca linea_attivita " + varStanzRiga.getEsercizio() + "/" + varStanzRiga.getCd_centro_responsabilita() + "/" + varStanzRiga.getCd_linea_attivita() + "."));
                ProgettoBulk progetto = linea.getProgetto();
                // effettuo controlli sulla validità del progetto
                Optional.of(progetto.getOtherField()).filter(el -> el.isStatoApprovato() || el.isStatoChiuso()).orElseThrow(() -> new ApplicationException("Attenzione! Il progetto " + progetto.getCd_progetto() + " non risulta in stato approvato o chiuso. Variazione non consentita!"));
                if (progetto.getOtherField().isDatePianoEconomicoRequired()) {
                    Optional.ofNullable(progetto.getOtherField().getDtInizio()).orElseThrow(() -> new ApplicationException("Attenzione! GAE " + linea.getCd_linea_attivita() + " non selezionabile. " + "La data inizio del progetto non risulta impostata."));
                    Optional.ofNullable(progetto.getOtherField().getDtFine()).orElseThrow(() -> new ApplicationException("Attenzione! GAE " + linea.getCd_linea_attivita() + " non selezionabile. " + "La data fine del progetto non risulta impostata."));
                    // Nelle variazioni controllare la più piccola data tra data inizio progetto e data stipula contratto definitivo
                    // Recupero la lista dei contratti attivi collegati al progetto
                    ProgettoHome progettoHome = (ProgettoHome) getHome(userContext, ProgettoBulk.class);
                    java.util.Collection<ContrattoBulk> contrattiAssociati = progettoHome.findContratti(progetto.getPg_progetto());
                    Optional<ContrattoBulk> optContratto = contrattiAssociati.stream().filter(el -> el.isAttivo() || el.isAttivo_e_Passivo()).min((p1, p2) -> p1.getDt_stipula().compareTo(p2.getDt_stipula())).filter(el -> el.getDt_stipula().before(progetto.getOtherField().getDtInizio()));
                    if (optContratto.isPresent())
                        optContratto.filter(ctr -> ctr.getDt_stipula().after(variazione.getDt_chiusura())).ifPresent(ctr -> {
                            throw new ApplicationRuntimeException("Attenzione! GAE " + linea.getCd_linea_attivita() + " non selezionabile. " + "La data stipula (" + new java.text.SimpleDateFormat("dd/MM/yyyy").format(ctr.getDt_stipula()) + ") del primo contratto " + ctr.getEsercizio() + "/" + ctr.getStato() + "/" + ctr.getPg_contratto() + " associato al progetto " + progetto.getCd_progetto() + " è successiva " + "rispetto alla data di chiusura della variazione (" + new java.text.SimpleDateFormat("dd/MM/yyyy").format(variazione.getDt_chiusura()) + ").");
                        });
                    else
                        Optional.of(progetto.getOtherField().getDtInizio()).filter(dt -> !dt.after(variazione.getDt_chiusura())).orElseThrow(() -> new ApplicationException("Attenzione! GAE " + linea.getCd_linea_attivita() + " non selezionabile. " + "La data inizio (" + new java.text.SimpleDateFormat("dd/MM/yyyy").format(progetto.getOtherField().getDtInizio()) + ") del progetto " + progetto.getCd_progetto() + " associato è successiva " + "rispetto alla data di chiusura della variazione (" + new java.text.SimpleDateFormat("dd/MM/yyyy").format(variazione.getDt_chiusura()) + ")."));
                }
                // recupero il record se presente altrimenti ne creo uno nuovo
                CtrlPianoEco pianoEco = listCtrlPianoEco.stream().filter(el -> el.getProgetto().getPg_progetto().equals(progetto.getPg_progetto())).findFirst().orElse(new CtrlPianoEco(progetto));
                if (variazione.isVariazioneRimodulazioneProgetto()) {
                    if (variazione.getProgettoRimodulazione().getPg_progetto().compareTo(progetto.getPg_progetto()) != 0)
                        throw new ApplicationException("Attenzione! Nella variazione " + variazione.getEsercizio() + "/" + variazione.getPg_variazione_pdg() + " risulta movimentato un progetto differente rispetto a quello della " + "rimodulazione associata. Operazione non possibile!");
                    pianoEco.setRimodulazione(variazione.getProgettoRimodulazione());
                }
                // creo il dettaglio
                CtrlPianoEcoDett dett = new CtrlPianoEcoDett();
                dett.setTipoDett(varStanzRiga.getTi_gestione());
                dett.setImporto(varStanzRiga.getIm_variazione());
                dett.setCdrPersonale(isDettPersonale);
                dett.setUoArea(isUoArea);
                dett.setUoRagioneria(isUoRagioneria);
                dett.setElementoVoce(varStanzRiga.getElemento_voce());
                if (Optional.ofNullable(cdNaturaReimpiego).map(el -> el.equals(linea.getNatura().getCd_natura())).orElse(Boolean.FALSE)) {
                    dett.setTipoNatura(CtrlPianoEcoDett.TIPO_REIMPIEGO);
                    if (!variazione.getTipo_variazione().isStorno())
                        throw new ApplicationException("Attenzione! Risultano movimentazioni sulla GAE " + linea.getCd_linea_attivita() + " con natura 6 - 'Reimpiego di risorse' " + " consentito solo per operazioni di storno. Operazione non possibile.");
                } else if (linea.getNatura().isFonteEsterna())
                    dett.setTipoNatura(CtrlPianoEcoDett.TIPO_FONTE_ESTERNA);
                else
                    dett.setTipoNatura(CtrlPianoEcoDett.TIPO_FONTE_INTERNA);
                dett.setVoceSpeciale(Optional.ofNullable(cdVoceSpeciale).map(el -> el.equals(varStanzRiga.getCd_elemento_voce())).orElse(Boolean.FALSE));
                pianoEco.getDett().add(dett);
                if (!listCtrlPianoEco.contains(pianoEco))
                    listCtrlPianoEco.add(pianoEco);
            }
            controllaPdgPianoEconomico(userContext, variazione, listCtrlPianoEco, cdVoceSpeciale, cdrPersonaleBulk);
        }
    } catch (DetailedRuntimeException _ex) {
        throw new ApplicationException(_ex.getMessage());
    } catch (PersistencyException | RemoteException | IntrospectionException | SQLException e) {
        throw new ComponentException(e);
    }
}
Also used : V_classificazione_vociBulk(it.cnr.contab.config00.pdcfin.cla.bulk.V_classificazione_vociBulk) Pdg_variazione_riga_gestBulk(it.cnr.contab.pdg01.bulk.Pdg_variazione_riga_gestBulk) EsercizioBulk(it.cnr.contab.config00.esercizio.bulk.EsercizioBulk) Voce_piano_economico_prgBulk(it.cnr.contab.progettiric00.tabrif.bulk.Voce_piano_economico_prgBulk) BigDecimal(java.math.BigDecimal) Liquidazione_iva_variazioniBulk(it.cnr.contab.gestiva00.core.bulk.Liquidazione_iva_variazioniBulk) Var_stanz_res_rigaBulk(it.cnr.contab.varstanz00.bulk.Var_stanz_res_rigaBulk) CostantiTi_gestione(it.cnr.contab.config00.latt.bulk.CostantiTi_gestione) it.cnr.contab.progettiric00.core.bulk(it.cnr.contab.progettiric00.core.bulk) ObjectNotFoundException(it.cnr.jada.persistency.ObjectNotFoundException) Ass_var_stanz_res_cdrBulk(it.cnr.contab.varstanz00.bulk.Ass_var_stanz_res_cdrBulk) Pdg_variazioneBulk(it.cnr.contab.pdg00.bulk.Pdg_variazioneBulk) PersistentHome(it.cnr.jada.persistency.sql.PersistentHome) CdrHome(it.cnr.contab.config00.sto.bulk.CdrHome) Classificazione_vociBulk(it.cnr.contab.config00.pdcfin.cla.bulk.Classificazione_vociBulk) Timestamp(java.sql.Timestamp) it.cnr.contab.config00.bulk(it.cnr.contab.config00.bulk) SQLBuilder(it.cnr.jada.persistency.sql.SQLBuilder) Tipo_unita_organizzativaHome(it.cnr.contab.config00.sto.bulk.Tipo_unita_organizzativaHome) Pdg_modulo_speseBulk(it.cnr.contab.prevent01.bulk.Pdg_modulo_speseBulk) Collectors(java.util.stream.Collectors) Ass_pdg_variazione_cdrHome(it.cnr.contab.pdg00.cdip.bulk.Ass_pdg_variazione_cdrHome) Serializable(java.io.Serializable) RemoteException(java.rmi.RemoteException) Ass_var_stanz_res_cdrHome(it.cnr.contab.varstanz00.bulk.Ass_var_stanz_res_cdrHome) EJBException(javax.ejb.EJBException) DetailedRuntimeException(it.cnr.jada.DetailedRuntimeException) Stream(java.util.stream.Stream) Var_stanz_resBulk(it.cnr.contab.varstanz00.bulk.Var_stanz_resBulk) WorkpackageBulk(it.cnr.contab.config00.latt.bulk.WorkpackageBulk) Voce_piano_economico_prgHome(it.cnr.contab.progettiric00.tabrif.bulk.Voce_piano_economico_prgHome) UserContext(it.cnr.jada.UserContext) java.util(java.util) OggettoBulk(it.cnr.jada.bulk.OggettoBulk) Unita_organizzativaBulk(it.cnr.contab.config00.sto.bulk.Unita_organizzativaBulk) ApplicationRuntimeException(it.cnr.jada.comp.ApplicationRuntimeException) Utility(it.cnr.contab.util.Utility) it.cnr.contab.prevent00.bulk(it.cnr.contab.prevent00.bulk) IntrospectionException(it.cnr.jada.persistency.IntrospectionException) Pdg_variazioneHome(it.cnr.contab.pdg00.bulk.Pdg_variazioneHome) Pdg_modulo_costiBulk(it.cnr.contab.prevent01.bulk.Pdg_modulo_costiBulk) SQLException(java.sql.SQLException) it.cnr.contab.config00.pdcfin.bulk(it.cnr.contab.config00.pdcfin.bulk) V_classificazione_vociHome(it.cnr.contab.config00.pdcfin.cla.bulk.V_classificazione_vociHome) Var_stanz_res_rigaHome(it.cnr.contab.varstanz00.bulk.Var_stanz_res_rigaHome) Tipo_variazioneBulk(it.cnr.contab.pdg01.bulk.Tipo_variazioneBulk) FindClause(it.cnr.jada.persistency.sql.FindClause) CNRUserContext(it.cnr.contab.utenze00.bp.CNRUserContext) Configurazione_cnrComponentSession(it.cnr.contab.config00.ejb.Configurazione_cnrComponentSession) WorkpackageHome(it.cnr.contab.config00.latt.bulk.WorkpackageHome) ApplicationException(it.cnr.jada.comp.ApplicationException) PersistencyException(it.cnr.jada.persistency.PersistencyException) ContrattoBulk(it.cnr.contab.config00.contratto.bulk.ContrattoBulk) Var_stanz_resHome(it.cnr.contab.varstanz00.bulk.Var_stanz_resHome) CdrBulk(it.cnr.contab.config00.sto.bulk.CdrBulk) BulkList(it.cnr.jada.bulk.BulkList) Pdg_variazione_riga_gestHome(it.cnr.contab.pdg01.bulk.Pdg_variazione_riga_gestHome) Numerazione_doc_contBulk(it.cnr.contab.doccont00.core.bulk.Numerazione_doc_contBulk) ObbligazioneBulk(it.cnr.contab.doccont00.core.bulk.ObbligazioneBulk) EsercizioHome(it.cnr.contab.config00.esercizio.bulk.EsercizioHome) ComponentException(it.cnr.jada.comp.ComponentException) Ass_pdg_variazione_cdrBulk(it.cnr.contab.pdg00.cdip.bulk.Ass_pdg_variazione_cdrBulk) SQLBuilder(it.cnr.jada.persistency.sql.SQLBuilder) Unita_organizzativaBulk(it.cnr.contab.config00.sto.bulk.Unita_organizzativaBulk) SQLException(java.sql.SQLException) WorkpackageHome(it.cnr.contab.config00.latt.bulk.WorkpackageHome) IntrospectionException(it.cnr.jada.persistency.IntrospectionException) Ass_pdg_variazione_cdrHome(it.cnr.contab.pdg00.cdip.bulk.Ass_pdg_variazione_cdrHome) CdrBulk(it.cnr.contab.config00.sto.bulk.CdrBulk) Ass_pdg_variazione_cdrBulk(it.cnr.contab.pdg00.cdip.bulk.Ass_pdg_variazione_cdrBulk) Pdg_variazione_riga_gestBulk(it.cnr.contab.pdg01.bulk.Pdg_variazione_riga_gestBulk) PersistencyException(it.cnr.jada.persistency.PersistencyException) UserContext(it.cnr.jada.UserContext) CNRUserContext(it.cnr.contab.utenze00.bp.CNRUserContext) WorkpackageBulk(it.cnr.contab.config00.latt.bulk.WorkpackageBulk) Classificazione_vociBulk(it.cnr.contab.config00.pdcfin.cla.bulk.Classificazione_vociBulk) DetailedRuntimeException(it.cnr.jada.DetailedRuntimeException) Configurazione_cnrComponentSession(it.cnr.contab.config00.ejb.Configurazione_cnrComponentSession) ContrattoBulk(it.cnr.contab.config00.contratto.bulk.ContrattoBulk) ApplicationException(it.cnr.jada.comp.ApplicationException) java.util(java.util) ApplicationRuntimeException(it.cnr.jada.comp.ApplicationRuntimeException) ComponentException(it.cnr.jada.comp.ComponentException) PersistentHome(it.cnr.jada.persistency.sql.PersistentHome) RemoteException(java.rmi.RemoteException)

Example 2 with it.cnr.contab.config00.pdcep.bulk

use of it.cnr.contab.config00.pdcep.bulk in project sigla-main by consiglionazionaledellericerche.

the class SaldoComponent method checkDispPianoEconomicoProgetto.

/**
 * Metodo che verifica la congruenza delle disponibilità sul piano economico del progetto
 *
 * @param userContext
 * @param moduloCosti
 * @param isFromChangeStato indica che la modifica è stata richiesta in fase di cambio stato progetto
 * @throws ComponentException
 */
public void checkDispPianoEconomicoProgetto(UserContext userContext, Pdg_modulo_costiBulk moduloCosti, boolean isFromChangeStato) throws ComponentException {
    try {
        it.cnr.contab.config00.ejb.Configurazione_cnrComponentSession configSession = (it.cnr.contab.config00.ejb.Configurazione_cnrComponentSession) it.cnr.jada.util.ejb.EJBCommonServices.createEJB("CNRCONFIG00_EJB_Configurazione_cnrComponentSession", it.cnr.contab.config00.ejb.Configurazione_cnrComponentSession.class);
        BigDecimal annoFrom = configSession.getIm01(userContext, new Integer(0), null, Configurazione_cnrBulk.PK_GESTIONE_PROGETTI, Configurazione_cnrBulk.SK_PROGETTO_PIANO_ECONOMICO);
        if (Optional.ofNullable(annoFrom).map(BigDecimal::intValue).filter(el -> el.compareTo(moduloCosti.getEsercizio()) <= 0).isPresent()) {
            Progetto_piano_economicoHome ppeHome = (Progetto_piano_economicoHome) getHome(userContext, Progetto_piano_economicoBulk.class);
            List<Progetto_piano_economicoBulk> pianoEconomicoList = (List<Progetto_piano_economicoBulk>) ppeHome.findProgettoPianoEconomicoList(moduloCosti.getPg_progetto());
            List<Pdg_modulo_speseBulk> speseList = (List<Pdg_modulo_speseBulk>) moduloCosti.getDettagliSpese();
            pianoEconomicoList.stream().filter(e -> e.getFl_ctrl_disp() && (e.getEsercizio_piano().equals(0) || e.getEsercizio_piano().equals(moduloCosti.getEsercizio()))).forEach(e -> {
                try {
                    Progetto_piano_economicoBulk bulk = null;
                    Progetto_piano_economicoBulk bulkToFind = new Progetto_piano_economicoBulk();
                    bulkToFind.setVoce_piano_economico(e.getVoce_piano_economico());
                    bulkToFind.setPg_progetto(e.getPg_progetto());
                    bulkToFind.setEsercizio_piano(e.getEsercizio_piano());
                    try {
                        bulk = (Progetto_piano_economicoBulk) getHome(userContext, Progetto_piano_economicoBulk.class).findAndLock(bulkToFind);
                    } catch (ObjectNotFoundException ex) {
                    }
                    if (bulk != null && bulk.getFl_ctrl_disp()) {
                        V_saldi_piano_econom_progettoBulk saldo = ((V_saldi_piano_econom_progettoHome) getHome(userContext, V_saldi_piano_econom_progettoBulk.class)).cercaSaldoPianoEconomico(bulk, "S");
                        BigDecimal dispResiduaFin = saldo.getDispResiduaFinanziamento();
                        if (!isFromChangeStato)
                            dispResiduaFin = dispResiduaFin.subtract(speseList.stream().filter(x -> Optional.ofNullable(x.getVoce_piano_economico()).isPresent()).filter(x -> x.getVoce_piano_economico().equalsByPrimaryKey(e.getVoce_piano_economico())).map(el -> Utility.nvl(el.getIm_spese_gest_decentrata_est())).collect(Collectors.reducing(BigDecimal.ZERO, BigDecimal::add)));
                        if (dispResiduaFin.compareTo(BigDecimal.ZERO) < 0)
                            throw new ApplicationException("Impossibile effettuare l'operazione !\n" + "L'importo indicato in previsione per le fonti decentrate esterne supera di " + new it.cnr.contab.util.EuroFormat().format(dispResiduaFin.abs()) + "  l'importo finanziato indicato sul piano economico " + e.getCd_voce_piano() + " del progetto " + (e.getEsercizio_piano().equals(0) ? "" : "per l'esercizio " + e.getEsercizio_piano()) + ".");
                        if (isFromChangeStato && Optional.ofNullable(moduloCosti).flatMap(el -> Optional.ofNullable(el.getPdg_modulo())).flatMap(el -> Optional.ofNullable(el.getProgetto())).flatMap(el -> Optional.ofNullable(el.getOtherField())).flatMap(el -> Optional.ofNullable(el.getTipoFinanziamento())).map(TipoFinanziamentoBulk::getFlAllPrevFin).orElse(Boolean.TRUE) && dispResiduaFin.compareTo(BigDecimal.ZERO) != 0) {
                            Voce_piano_economico_prgBulk vocePianoEconomico = (Voce_piano_economico_prgBulk) ((Voce_piano_economico_prgHome) getHome(userContext, Voce_piano_economico_prgBulk.class)).findByPrimaryKey(e.getVoce_piano_economico());
                            if (Optional.ofNullable(vocePianoEconomico).map(Voce_piano_economico_prgBulk::getFlAllPrevFin).orElse(Boolean.TRUE))
                                throw new ApplicationException("Impossibile effettuare l'operazione !\n" + "L'importo totale indicato in previsione per le fonti decentrate esterne non corrisponde " + "  all'importo finanziato indicato sul piano economico " + e.getCd_voce_piano() + " del progetto " + (e.getEsercizio_piano().equals(0) ? "" : "per l'esercizio " + e.getEsercizio_piano()) + "(diff: " + new it.cnr.contab.util.EuroFormat().format(dispResiduaFin) + ").");
                        }
                        BigDecimal dispResiduaCofin = saldo.getDispResiduaCofinanziamento();
                        if (!isFromChangeStato)
                            dispResiduaCofin = dispResiduaCofin.subtract(speseList.stream().filter(x -> Optional.ofNullable(x.getVoce_piano_economico()).isPresent()).filter(x -> x.getVoce_piano_economico().equalsByPrimaryKey(e.getVoce_piano_economico())).map(el -> Utility.nvl(el.getIm_spese_gest_decentrata_int())).collect(Collectors.reducing(BigDecimal.ZERO, BigDecimal::add)));
                        if (dispResiduaCofin.compareTo(BigDecimal.ZERO) < 0)
                            throw new ApplicationException("Impossibile effettuare l'operazione !\n" + "L'importo indicato in previsione per le fonti decentrate interne supera di " + new it.cnr.contab.util.EuroFormat().format(dispResiduaCofin.abs()) + "  l'importo cofinanziato indicato sul piano economico " + e.getCd_voce_piano() + " del progetto " + (e.getEsercizio_piano().equals(0) ? "" : "per l'esercizio " + e.getEsercizio_piano()) + ".");
                    }
                } catch (Exception ex) {
                    throw new RuntimeException(ex);
                }
            });
        }
    } catch (Exception e) {
        if (e instanceof RuntimeException)
            throw handleException(e.getCause());
        throw handleException(e);
    }
}
Also used : V_classificazione_vociBulk(it.cnr.contab.config00.pdcfin.cla.bulk.V_classificazione_vociBulk) Pdg_variazione_riga_gestBulk(it.cnr.contab.pdg01.bulk.Pdg_variazione_riga_gestBulk) EsercizioBulk(it.cnr.contab.config00.esercizio.bulk.EsercizioBulk) Voce_piano_economico_prgBulk(it.cnr.contab.progettiric00.tabrif.bulk.Voce_piano_economico_prgBulk) BigDecimal(java.math.BigDecimal) Liquidazione_iva_variazioniBulk(it.cnr.contab.gestiva00.core.bulk.Liquidazione_iva_variazioniBulk) Var_stanz_res_rigaBulk(it.cnr.contab.varstanz00.bulk.Var_stanz_res_rigaBulk) CostantiTi_gestione(it.cnr.contab.config00.latt.bulk.CostantiTi_gestione) it.cnr.contab.progettiric00.core.bulk(it.cnr.contab.progettiric00.core.bulk) ObjectNotFoundException(it.cnr.jada.persistency.ObjectNotFoundException) Ass_var_stanz_res_cdrBulk(it.cnr.contab.varstanz00.bulk.Ass_var_stanz_res_cdrBulk) Pdg_variazioneBulk(it.cnr.contab.pdg00.bulk.Pdg_variazioneBulk) PersistentHome(it.cnr.jada.persistency.sql.PersistentHome) CdrHome(it.cnr.contab.config00.sto.bulk.CdrHome) Classificazione_vociBulk(it.cnr.contab.config00.pdcfin.cla.bulk.Classificazione_vociBulk) Timestamp(java.sql.Timestamp) it.cnr.contab.config00.bulk(it.cnr.contab.config00.bulk) SQLBuilder(it.cnr.jada.persistency.sql.SQLBuilder) Tipo_unita_organizzativaHome(it.cnr.contab.config00.sto.bulk.Tipo_unita_organizzativaHome) Pdg_modulo_speseBulk(it.cnr.contab.prevent01.bulk.Pdg_modulo_speseBulk) Collectors(java.util.stream.Collectors) Ass_pdg_variazione_cdrHome(it.cnr.contab.pdg00.cdip.bulk.Ass_pdg_variazione_cdrHome) Serializable(java.io.Serializable) RemoteException(java.rmi.RemoteException) Ass_var_stanz_res_cdrHome(it.cnr.contab.varstanz00.bulk.Ass_var_stanz_res_cdrHome) EJBException(javax.ejb.EJBException) DetailedRuntimeException(it.cnr.jada.DetailedRuntimeException) Stream(java.util.stream.Stream) Var_stanz_resBulk(it.cnr.contab.varstanz00.bulk.Var_stanz_resBulk) WorkpackageBulk(it.cnr.contab.config00.latt.bulk.WorkpackageBulk) Voce_piano_economico_prgHome(it.cnr.contab.progettiric00.tabrif.bulk.Voce_piano_economico_prgHome) UserContext(it.cnr.jada.UserContext) java.util(java.util) OggettoBulk(it.cnr.jada.bulk.OggettoBulk) Unita_organizzativaBulk(it.cnr.contab.config00.sto.bulk.Unita_organizzativaBulk) ApplicationRuntimeException(it.cnr.jada.comp.ApplicationRuntimeException) Utility(it.cnr.contab.util.Utility) it.cnr.contab.prevent00.bulk(it.cnr.contab.prevent00.bulk) IntrospectionException(it.cnr.jada.persistency.IntrospectionException) Pdg_variazioneHome(it.cnr.contab.pdg00.bulk.Pdg_variazioneHome) Pdg_modulo_costiBulk(it.cnr.contab.prevent01.bulk.Pdg_modulo_costiBulk) SQLException(java.sql.SQLException) it.cnr.contab.config00.pdcfin.bulk(it.cnr.contab.config00.pdcfin.bulk) V_classificazione_vociHome(it.cnr.contab.config00.pdcfin.cla.bulk.V_classificazione_vociHome) Var_stanz_res_rigaHome(it.cnr.contab.varstanz00.bulk.Var_stanz_res_rigaHome) Tipo_variazioneBulk(it.cnr.contab.pdg01.bulk.Tipo_variazioneBulk) FindClause(it.cnr.jada.persistency.sql.FindClause) CNRUserContext(it.cnr.contab.utenze00.bp.CNRUserContext) Configurazione_cnrComponentSession(it.cnr.contab.config00.ejb.Configurazione_cnrComponentSession) WorkpackageHome(it.cnr.contab.config00.latt.bulk.WorkpackageHome) ApplicationException(it.cnr.jada.comp.ApplicationException) PersistencyException(it.cnr.jada.persistency.PersistencyException) ContrattoBulk(it.cnr.contab.config00.contratto.bulk.ContrattoBulk) Var_stanz_resHome(it.cnr.contab.varstanz00.bulk.Var_stanz_resHome) CdrBulk(it.cnr.contab.config00.sto.bulk.CdrBulk) BulkList(it.cnr.jada.bulk.BulkList) Pdg_variazione_riga_gestHome(it.cnr.contab.pdg01.bulk.Pdg_variazione_riga_gestHome) Numerazione_doc_contBulk(it.cnr.contab.doccont00.core.bulk.Numerazione_doc_contBulk) ObbligazioneBulk(it.cnr.contab.doccont00.core.bulk.ObbligazioneBulk) EsercizioHome(it.cnr.contab.config00.esercizio.bulk.EsercizioHome) ComponentException(it.cnr.jada.comp.ComponentException) Ass_pdg_variazione_cdrBulk(it.cnr.contab.pdg00.cdip.bulk.Ass_pdg_variazione_cdrBulk) Voce_piano_economico_prgBulk(it.cnr.contab.progettiric00.tabrif.bulk.Voce_piano_economico_prgBulk) DetailedRuntimeException(it.cnr.jada.DetailedRuntimeException) ApplicationRuntimeException(it.cnr.jada.comp.ApplicationRuntimeException) BulkList(it.cnr.jada.bulk.BulkList) Configurazione_cnrComponentSession(it.cnr.contab.config00.ejb.Configurazione_cnrComponentSession) Configurazione_cnrComponentSession(it.cnr.contab.config00.ejb.Configurazione_cnrComponentSession) BigDecimal(java.math.BigDecimal) ObjectNotFoundException(it.cnr.jada.persistency.ObjectNotFoundException) RemoteException(java.rmi.RemoteException) EJBException(javax.ejb.EJBException) DetailedRuntimeException(it.cnr.jada.DetailedRuntimeException) ApplicationRuntimeException(it.cnr.jada.comp.ApplicationRuntimeException) IntrospectionException(it.cnr.jada.persistency.IntrospectionException) SQLException(java.sql.SQLException) ApplicationException(it.cnr.jada.comp.ApplicationException) PersistencyException(it.cnr.jada.persistency.PersistencyException) ComponentException(it.cnr.jada.comp.ComponentException) Pdg_modulo_speseBulk(it.cnr.contab.prevent01.bulk.Pdg_modulo_speseBulk) ApplicationException(it.cnr.jada.comp.ApplicationException) java.util(java.util) ObjectNotFoundException(it.cnr.jada.persistency.ObjectNotFoundException)

Example 3 with it.cnr.contab.config00.pdcep.bulk

use of it.cnr.contab.config00.pdcep.bulk in project sigla-main by consiglionazionaledellericerche.

the class OrdineComponent method selectUoForPrintByClause.

/**
 * Costruisce l'struzione SQL corrispondente ad una ricerca con le clausole specificate.
 * Aggiunge una clausola a tutte le operazioni di ricerca eseguite sulla Unita Organizzativa
 *
 * Nome: Richiesta di ricerca di una Unita Organizzativa per la Stampa situazione di cassa
 * Pre: E' stata generata la richiesta di ricerca delle UO associate al Cds di scrivania
 * Post: Viene restituito l'SQLBuilder per filtrare le UO
 *		  in base al cds di scrivania
 *
 * @param userContext	lo userContext che ha generato la richiesta
 * @param stampa		l'OggettoBulk che rappresenta il contesto della ricerca.
 * @param uo			l'OggettoBulk da usare come prototipo della ricerca; sul prototipo vengono
 *						costruite delle clausole aggiuntive che vengono aggiunte in AND alle clausole specificate.
 * @param				clauses L'albero logico delle clausole da applicare alla ricerca
 * @return Un'istanza di SQLBuilder contenente l'istruzione SQL da eseguire e tutti i parametri
 *			della query.
 */
public SQLBuilder selectUoForPrintByClause(UserContext userContext, Stampa_vpg_situazione_cassaVBulk stampa, it.cnr.contab.config00.sto.bulk.Unita_organizzativaBulk uo, CompoundFindClause clauses) throws ComponentException {
    Unita_organizzativaHome home = (Unita_organizzativaHome) getHome(userContext, it.cnr.contab.config00.sto.bulk.Unita_organizzativaBulk.class);
    SQLBuilder sql = home.createSQLBuilder();
    sql.addClause("AND", "cd_unita_padre", sql.EQUALS, stampa.getCd_cds());
    sql.addClause(clauses);
    return sql;
}
Also used : Unita_organizzativaBulk(it.cnr.contab.config00.sto.bulk.Unita_organizzativaBulk) Unita_organizzativaHome(it.cnr.contab.config00.sto.bulk.Unita_organizzativaHome)

Example 4 with it.cnr.contab.config00.pdcep.bulk

use of it.cnr.contab.config00.pdcep.bulk in project sigla-main by consiglionazionaledellericerche.

the class ReversaleComponent method docGenerico_creaDocumentoGenericoRiga.

/**
 * creazione riga di documento di entrata x incasso IVA da fatture estere
 * PreCondition:
 * E' stata generata la richiesta di creazione di una riga di documento amministrativo di entrata
 * a partire da una reversale di incasso IVA x fattura estera
 * PostCondition:
 * Un riga di documento amministrativo viene creata.
 *
 * @param userContext lo <code>UserContext</code> che ha generato la richiesta
 * @param documento   <code>Documento_genericoBulk</code> il documento generico
 * @param scadenza    <code>Accertamento_scadenzarioBulk</code> la scadenza dell'accertamento
 * @param importo     L'importo della reversale di regolarizzazione
 * @param mRiga       Mandato_rigaBulk da cui dedurre le modalita di pagamento
 * @return riga <code>Documento_generico_rigaBulk</code> la riga del documento generico creata
 */
public Documento_generico_rigaBulk docGenerico_creaDocumentoGenericoRiga(UserContext userContext, Documento_genericoBulk documento, Accertamento_scadenzarioBulk scadenza, BigDecimal importo, Mandato_rigaBulk mRiga) throws ComponentException {
    try {
        Documento_generico_rigaBulk riga = docGenerico_creaDocumentoGenericoRiga(userContext, documento, scadenza, importo);
        // terzo uo
        SQLBuilder sql = getHome(userContext, TerzoBulk.class).createSQLBuilder();
        sql.addClause("AND", "cd_unita_organizzativa", SQLBuilder.EQUALS, documento.getCd_unita_organizzativa());
        sql.addClause("AND", "dt_canc", SQLBuilder.ISNULL, null);
        List result = getHome(userContext, TerzoBulk.class).fetchAll(sql);
        if (result == null || result.size() == 0)
            throw handleException(new ApplicationException(" Impossibile emettere la reversale: l'unità organizzativa " + documento.getCd_unita_organizzativa() + " non e' stata codificata in anagrafica"));
        TerzoBulk terzo_uo = (TerzoBulk) result.get(0);
        riga.setCd_terzo_uo_cds(terzo_uo.getCd_terzo());
        riga.setTerzo_uo_cds(terzo_uo);
        // modalità pagamento
        sql = getHome(userContext, Modalita_pagamentoBulk.class).createSQLBuilder();
        sql.addClause("AND", "cd_terzo", SQLBuilder.EQUALS, terzo_uo.getCd_terzo());
        sql.addClause("AND", "cd_terzo_delegato", SQLBuilder.ISNULL, null);
        sql.addTableToHeader("RIF_MODALITA_PAGAMENTO");
        sql.addSQLJoin("RIF_MODALITA_PAGAMENTO.CD_MODALITA_PAG", "MODALITA_PAGAMENTO.CD_MODALITA_PAG");
        sql.addSQLClause("AND", "TI_PAGAMENTO", SQLBuilder.EQUALS, Rif_modalita_pagamentoBulk.BANCARIO);
        result = getHome(userContext, Modalita_pagamentoBulk.class).fetchAll(sql);
        if (result == null || result.size() == 0)
            throw handleException(new ApplicationException(" Impossibile emettere la reversale: l'unità organizzativa " + documento.getCd_unita_organizzativa() + " non ha modalità di pagamento associate"));
        Modalita_pagamentoBulk mp = (Modalita_pagamentoBulk) result.get(0);
        riga.setCd_modalita_pag_uo_cds(mp.getCd_modalita_pag());
        riga.setModalita_pagamento_uo_cds(new Rif_modalita_pagamentoBulk(mp.getCd_modalita_pag()));
        sql = getHome(userContext, BancaBulk.class).createSQLBuilder();
        sql.addClause("AND", "cd_terzo", SQLBuilder.EQUALS, terzo_uo.getCd_terzo());
        sql.addClause("AND", "ti_pagamento", SQLBuilder.EQUALS, Rif_modalita_pagamentoBulk.BANCARIO);
        sql.addClause("AND", "fl_cancellato", SQLBuilder.EQUALS, Boolean.FALSE);
        sql.addSQLClause("AND", "CODICE_IBAN", SQLBuilder.ISNOTNULL, null);
        sql.addSQLClause("AND", "cd_terzo_delegato", SQLBuilder.ISNULL, null);
        try {
            if (!Utility.createParametriCnrComponentSession().getParametriCnr(userContext, CNRUserContext.getEsercizio(userContext)).getFl_tesoreria_unica().booleanValue())
                sql.addSQLClause("AND", "BANCA.FL_CC_CDS", SQLBuilder.EQUALS, "Y");
            else {
                Configurazione_cnrBulk config = new Configurazione_cnrBulk("CONTO_CORRENTE_SPECIALE", "ENTE", "*", new Integer(0));
                it.cnr.contab.config00.bulk.Configurazione_cnrHome home = (it.cnr.contab.config00.bulk.Configurazione_cnrHome) getHome(userContext, config);
                List configurazioni = home.find(config);
                if ((configurazioni != null) && (configurazioni.size() == 1)) {
                    Configurazione_cnrBulk configBanca = (Configurazione_cnrBulk) configurazioni.get(0);
                    sql.addSQLClause("AND", "BANCA.ABI", SQLBuilder.EQUALS, configBanca.getVal01());
                    sql.addSQLClause("AND", "BANCA.CAB", SQLBuilder.EQUALS, configBanca.getVal02());
                    sql.addSQLClause("AND", "BANCA.NUMERO_CONTO", SQLBuilder.CONTAINS, configBanca.getVal03());
                }
            }
        } catch (Exception e) {
            throw handleException(e);
        }
        result = getHome(userContext, BancaBulk.class).fetchAll(sql);
        if (result == null || result.size() == 0)
            throw handleException(new ApplicationException(" Impossibile emettere la reversale: l'unità organizzativa " + documento.getCd_unita_organizzativa() + " non ha coordinate bancarie associate"));
        BancaBulk banca = (BancaBulk) result.get(0);
        riga.setPg_banca_uo_cds(banca.getPg_banca());
        riga.setBanca_uo_cds(banca);
        return riga;
    } catch (Exception e) {
        throw handleException(e);
    }
}
Also used : Configurazione_cnrHome(it.cnr.contab.config00.bulk.Configurazione_cnrHome) ParseException(java.text.ParseException) ValidationException(it.cnr.jada.bulk.ValidationException) RemoteException(java.rmi.RemoteException) IntrospectionException(it.cnr.jada.persistency.IntrospectionException) SQLException(java.sql.SQLException) PersistencyException(it.cnr.jada.persistency.PersistencyException) IOException(java.io.IOException) BulkList(it.cnr.jada.bulk.BulkList) it.cnr.contab.anagraf00.core.bulk(it.cnr.contab.anagraf00.core.bulk) it.cnr.contab.config00.sto.bulk(it.cnr.contab.config00.sto.bulk) it.cnr.contab.docamm00.docs.bulk(it.cnr.contab.docamm00.docs.bulk) it.cnr.contab.doccont00.core.bulk(it.cnr.contab.doccont00.core.bulk) Configurazione_cnrHome(it.cnr.contab.config00.bulk.Configurazione_cnrHome) Rif_modalita_pagamentoBulk(it.cnr.contab.anagraf00.tabrif.bulk.Rif_modalita_pagamentoBulk) Configurazione_cnrBulk(it.cnr.contab.config00.bulk.Configurazione_cnrBulk)

Example 5 with it.cnr.contab.config00.pdcep.bulk

use of it.cnr.contab.config00.pdcep.bulk in project sigla-main by consiglionazionaledellericerche.

the class CompensoComponent method validaCompenso.

private void validaCompenso(UserContext userContext, CompensoBulk compenso) throws ComponentException {
    // Controllo Testata Compenso
    if (isCompensoSoloInailEnte(compenso.getTipoTrattamento())) {
        if (compenso.isDaMinicarriera()) {
            throw new ApplicationException("Attenzione! Non è possibile utilizzare un trattamento di tipo 'Torno Subito con solo INAIL a carico ente' per una minicarriera");
        }
    }
    if (isCompensoSoggettoConguaglio(compenso.getTipoTrattamento()) && !compenso.isDaConguaglio()) {
        controlloRiduzioneCuneo32020(userContext, compenso);
    }
    try {
        compenso.setDataInizioObbligoRegistroUnico(Utility.createConfigurazioneCnrComponentSession().getDt01(userContext, new Integer(0), null, "REGISTRO_UNICO_FATPAS", "DATA_INIZIO"));
        compenso.validaTestata();
    } catch (RemoteException e) {
        throw handleException(e);
    } catch (it.cnr.jada.action.BusinessProcessException e) {
        throw handleException(e);
    } catch (java.text.ParseException ex) {
        throw handleException(ex);
    } catch (javax.ejb.EJBException ex) {
        throw handleException(ex);
    }
    // Controllo Terzo per Compenso
    validaTerzo(userContext, compenso);
    // Controllo Dati Fattura Inseriti
    compenso.validaDatiFattura();
    if (compenso.getFl_liquidazione_differita() && compenso.getDt_fattura_fornitore() != null) {
        java.sql.Timestamp data_limite;
        java.sql.Timestamp data_limite_sup;
        try {
            data_limite = ((it.cnr.contab.config00.ejb.Configurazione_cnrComponentSession) it.cnr.jada.util.ejb.EJBCommonServices.createEJB("CNRCONFIG00_EJB_Configurazione_cnrComponentSession", it.cnr.contab.config00.ejb.Configurazione_cnrComponentSession.class)).getDt01(userContext, new Integer(0), "*", "COSTANTI", "LIMITE_CREAZIONE_FATT_PASS_ES_DIF");
            data_limite_sup = ((it.cnr.contab.config00.ejb.Configurazione_cnrComponentSession) it.cnr.jada.util.ejb.EJBCommonServices.createEJB("CNRCONFIG00_EJB_Configurazione_cnrComponentSession", it.cnr.contab.config00.ejb.Configurazione_cnrComponentSession.class)).getDt02(userContext, new Integer(0), "*", "COSTANTI", "LIMITE_CREAZIONE_FATT_PASS_ES_DIF");
        } catch (RemoteException e) {
            throw handleException(e);
        }
        if ((compenso.getDt_fattura_fornitore().compareTo(data_limite) < 0) || (data_limite_sup != null && compenso.getDt_fattura_fornitore().compareTo(data_limite_sup) > 0)) {
            compenso.setFl_liquidazione_differita(false);
            throw new it.cnr.jada.comp.ApplicationException("Non è possibile indicare la liquidazione differita con la data fattura fornitore indicata.");
        }
    }
    // Controlli aggiunti per l'Art.35 DL n.223/2006
    if (compenso.getTipoTrattamento().getFl_utilizzabile_art35() && !isImportoOk(userContext, compenso) && !compenso.LIBERO_FONDO_ECO.equals(compenso.getStato_pagamento_fondo_eco()))
        throw new it.cnr.jada.comp.ApplicationException("Il compenso non può essere associato a fondo economale per il tipo di trattamento prescelto");
    if (compenso.getFl_generata_fattura() && compenso.getPartita_iva() == null && !((TerzoBulk) compenso.getTerzo()).getAnagrafico().getFl_non_obblig_p_iva())
        throw new it.cnr.jada.comp.ApplicationException("Per poter generare la fattura è necessario che il terzo abbia la Partita Iva");
    if (compenso.getFl_generata_fattura() && compenso.getCodice_fiscale() == null)
        throw new it.cnr.jada.comp.ApplicationException("Per poter generare la fattura è necessario che il terzo abbia il Codice Fiscale valorizzato");
    validaDatiLiquidazione(compenso);
    if (compenso.isStatoCompensoEseguiCalcolo())
        throw new it.cnr.jada.comp.ApplicationException("E' necessario eseguire il calcolo prima di continuare");
    // controllo omesso sull'esegui calcolo per  !compenso.isSenzaCalcoli() da fare al riporta
    if ((compenso != null && compenso.getIm_totale_compenso() != null && compenso.getFatturaPassiva() != null && compenso.getFatturaPassiva().getIm_totale_fattura() != null && compenso.getIm_totale_compenso().compareTo(compenso.getFatturaPassiva().getIm_totale_fattura()) != 0 && (!compenso.getFl_split_payment().booleanValue() || (compenso.getFl_split_payment().booleanValue() && compenso.getTi_istituz_commerc().compareTo(TipoIVA.ISTITUZIONALE.value()) == 0))))
        throw new it.cnr.jada.comp.ApplicationException("Importo totale del compenso calcolato: " + compenso.getIm_totale_compenso() + " diverso da quello della fattura: " + compenso.getFatturaPassiva().getIm_totale_fattura());
    if (compenso != null && compenso.getIm_totale_compenso() != null && compenso.getFatturaPassiva() != null && compenso.getFl_split_payment().booleanValue() && compenso.getTi_istituz_commerc().compareTo(TipoIVA.COMMERCIALE.value()) == 0 && compenso.getFatturaPassiva().getIm_totale_imponibile() != null && compenso.getIm_totale_compenso().compareTo(compenso.getFatturaPassiva().getIm_totale_imponibile()) != 0)
        throw new it.cnr.jada.comp.ApplicationException("Importo totale del compenso calcolato: " + compenso.getIm_totale_compenso() + " diverso da quello della fattura: " + compenso.getFatturaPassiva().getIm_totale_imponibile());
    validaObbligazione(userContext, compenso.getObbligazioneScadenzario(), compenso);
    validaCompensoPerContabilizzazione(userContext, compenso);
    if (compenso.getObbligazioneScadenzario() == null) {
        compenso.setPg_trovato(null);
    } else {
        Elemento_voceBulk voce = compenso.getObbligazioneScadenzario().getObbligazione().getElemento_voce();
        if (compenso.getPg_trovato() != null && compenso.getObbligazioneScadenzario() != null && isInibitaIndicazioneTrovato(voce))
            compenso.setPg_trovato(null);
        if (isObbligatoriaIndicazioneTrovato(voce) && compenso.getPg_trovato() == null)
            throw new it.cnr.jada.comp.ApplicationException("Attenzione! Non è stato inserito il Brevetto/Trovato mentre la voce di bilancio utilizzata per la contabilizzazione del dettaglio collegato ne prevede l'indicazione obbligatoria");
    }
}
Also used : ApplicationException(it.cnr.jada.comp.ApplicationException) Timestamp(java.sql.Timestamp) Elemento_voceBulk(it.cnr.contab.config00.pdcfin.bulk.Elemento_voceBulk) ApplicationException(it.cnr.jada.comp.ApplicationException) UserContext(it.cnr.jada.UserContext) CNRUserContext(it.cnr.contab.utenze00.bp.CNRUserContext) RemoteException(java.rmi.RemoteException)

Aggregations

ComponentException (it.cnr.jada.comp.ComponentException)59 RemoteException (java.rmi.RemoteException)54 Unita_organizzativaBulk (it.cnr.contab.config00.sto.bulk.Unita_organizzativaBulk)52 PersistencyException (it.cnr.jada.persistency.PersistencyException)50 SQLBuilder (it.cnr.jada.persistency.sql.SQLBuilder)47 ApplicationException (it.cnr.jada.comp.ApplicationException)45 WorkpackageBulk (it.cnr.contab.config00.latt.bulk.WorkpackageBulk)38 it.cnr.jada.bulk (it.cnr.jada.bulk)35 EJBException (javax.ejb.EJBException)35 Configurazione_cnrBulk (it.cnr.contab.config00.bulk.Configurazione_cnrBulk)28 it.cnr.contab.doccont00.core.bulk (it.cnr.contab.doccont00.core.bulk)28 CdrBulk (it.cnr.contab.config00.sto.bulk.CdrBulk)26 BigDecimal (java.math.BigDecimal)26 it.cnr.contab.docamm00.docs.bulk (it.cnr.contab.docamm00.docs.bulk)24 it.cnr.contab.anagraf00.core.bulk (it.cnr.contab.anagraf00.core.bulk)23 it.cnr.contab.config00.sto.bulk (it.cnr.contab.config00.sto.bulk)21 BulkList (it.cnr.jada.bulk.BulkList)21 SQLException (java.sql.SQLException)20 IntrospectionException (it.cnr.jada.persistency.IntrospectionException)19 Iterator (java.util.Iterator)19