Search in sources :

Example 1 with Elemento_voceHome

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

the class ObbligazioneComponent method verificaObbligazione.

/**
 *  Tutti controlli superati - anno di creazione obbligazione < anno competenza dell'obbligazione
 *    PreCondition:
 *      testata dell'obbligazione verificata (controllato nel metodo verificaTestataObbligazione).
 *      sum(scadenzario.importo) = obbligazione.importo
 *      sum(scad_voce.importo)  = scadenzario.importo
 *		 dettagli d'imputazione finanziaria specificati
 *      almeno una scadenza definita
 *      verfiche per spese per costi altrui superate (metodo verificaFl_spese_costi_altrui)
 *      L'anno di competenza dell'obbligazione è superiore all'anno di creazione dell'obbligazione
 *    PostCondition:
 *      Il sistema può proseguire con la creazione/modifica dell'obbligazione, ma non verranno aggiornati i saldi
 *      dei capitoli di spesa CdS.
 *
 *  Tutti controlli superati - anno di creazione obbligazione = anno competenza
 *    PreCondition:
 *      testata dell'obbligazione verificata (controllato nel metodo verificaTestataObbligazione).
 *      sum(scadenzario.import) = obbligazione.import.
 *      sum(scad_voce.importo)  = scadenzario.importo
 *		 dettagli d'imputazione finanziaria specificati
 *      almeno una scadenza definita
 *      verfiche per spese per costi altrui superate (metodo verificaFl_spese_costi_altrui)
 *      L'anno di competenza dell'obbligazione è uguale all'anno di creazione dell'obbligazione
 *    PostCondition:
 *      Il sistema può proseguire con la creazione/modifica dell'obbligazione e dovrà effettuare l'aggiornamento
 *      dei saldi dei capitoli di spesa CdS. (Questo processo viene eseguito dal metodo 'aggiornaCapitoloSaldoObbligazione').
 *
 *  sum(scadenzario.importo) not = obbligazione.importo
 *    PreCondition:
 *      La somma degli importi delle scadenze dell'obbligazione non è uguale all'importo dell'obbligazione in elaborazione.
 *    PostCondition:
 *      Il metodo utilizza un Throw Exception per comunicare che il salvataggio dell'obbligazione non è consentito
 *      se l'importo non è uguale alla somma degli importi delle scadenze dell'obbligazione.
 *
 *  sum(scad_voce.importo) not = scadenzario.importo
 *    PreCondition:
 *      L'utente ha selezionato l'imputazione manuale degli importi dei dettagli delle scadenze e la somma degli importi
 *      dei dettagli di una scadenza dell'obbligazione non è uguale all'importo della scadenza
 *    PostCondition:
 *      Il metodo utilizza un Throw Exception per comunicare che il salvataggio dell'obbligazione non è consentito
 *      se l'importo della scadenza non è uguale alla somma degli importi dei dettagli della scadenza dell'obbligazione.
 *
 *  dettagli d'imputazione finanziaria non specificati al livello di obbligazione
 *    PreCondition:
 *      I dettagli d'imputazione finanziaria (capitolo di spesa, linea d'attività) non sono stati specificati
 *      al livello di obbligazione
 *    PostCondition:
 *      Il sistema segnala l'impossibilità di craere/aggiornare l'obbligazione fino a quando l'imputazione finanziaria non viene completata
 *
 *  scadenze non definite
 *    PreCondition:
 *      Non sono state definite scadenze per l'obbligazione
 *    PostCondition:
 *      Il metodo utilizza un Throw Exception per comunicare che il salvataggio dell'obbligazione non è consentito
 *      se non viene definita almento una scadenza
 *
 *  spese per costi altrui
 *    PreCondition:
 *      L'utente ha specificato di voler emettere un'obbligazione non di tipo spese per costi altrui
 *      ma ha selezionato linee di attività appartenenti a cdr che non sipendono dall'uo di scrivania
 *      (questo controllo viene effettuato dal metodo 'verificaFl_spese_costi_altrui')
 *    PostCondition:
 *      Il metodo utilizza un Throw Exception per comunicare che il salvataggio dell'obbligazione non è consentito
 *
 * @param aUC lo user context
 * @param obbligazione l'istanza di  <code>ObbligazioneBulk</code> da verificare
 */
public void verificaObbligazione(UserContext aUC, ObbligazioneBulk obbligazione) throws ComponentException {
    Obbligazione_scadenzarioBulk os;
    Obbligazione_scad_voceBulk osv;
    BigDecimal totalObbligazione = new BigDecimal(0);
    BigDecimal totalScadenza;
    verificaTestataObbligazione(aUC, obbligazione);
    // non e' stata fatta l'imputazione finanziaria
    if (obbligazione.getLineeAttivitaSelezionateColl().size() == 0 && obbligazione.getNuoveLineeAttivitaColl().size() == 0)
        throw handleException(new it.cnr.jada.comp.ApplicationException("E' necessario effettuare l'imputazione finanziaria"));
    // non ci sono scadenze
    if (obbligazione.getObbligazione_scadenzarioColl().isEmpty())
        throw handleException(new it.cnr.jada.comp.ApplicationException("E' necessario creare almeno una scadenza"));
    for (Iterator i = obbligazione.getObbligazione_scadenzarioColl().iterator(); i.hasNext(); ) {
        os = (Obbligazione_scadenzarioBulk) i.next();
        totalObbligazione = totalObbligazione.add(os.getIm_scadenza());
        totalScadenza = new BigDecimal(0);
        for (Iterator j = os.getObbligazione_scad_voceColl().iterator(); j.hasNext(); ) {
            osv = (Obbligazione_scad_voceBulk) j.next();
            if (osv.getIm_voce() == null)
                throw handleException(new it.cnr.jada.comp.ApplicationException("E' necessario inserire l'importo di un dettaglio per la scadenza del " + String.valueOf(os.getDt_scadenza()).substring(0, 10)));
            totalScadenza = totalScadenza.add(osv.getIm_voce());
        }
        if (totalScadenza.compareTo(os.getIm_scadenza()) != 0)
            throw handleException(new it.cnr.jada.comp.ApplicationException("La somma degli importi dei singoli dettagli della scadenza e' diverso dall'importo complessivo della scadenza"));
    }
    if (totalObbligazione.compareTo(obbligazione.getIm_obbligazione()) > 0)
        throw handleException(new it.cnr.jada.comp.ApplicationException("La somma degli importi delle singole scadenze supera l'importo complessivo dell'impegno"));
    if (totalObbligazione.compareTo(obbligazione.getIm_obbligazione()) < 0)
        throw handleException(new it.cnr.jada.comp.ApplicationException("La somma degli importi delle singole scadenze e' inferiore all'importo complessivo dell'impegno"));
    if ((obbligazione.getContratto() != null && obbligazione.getContratto().getFigura_giuridica_esterna() != null && !(obbligazione.getCreditore().equalsByPrimaryKey(obbligazione.getContratto().getFigura_giuridica_esterna()) || verificaAssociato(aUC, obbligazione.getContratto().getFigura_giuridica_esterna(), obbligazione))))
        throw new it.cnr.jada.comp.ApplicationException("Il Creditore (Codice Terzo:" + obbligazione.getCreditore().getCd_terzo() + ") \n" + "non è congruente con quello del contratto (Codice Terzo:" + obbligazione.getContratto().getFigura_giuridica_esterna().getCd_terzo() + ")");
    if ((obbligazione.getIncarico_repertorio() != null && obbligazione.getIncarico_repertorio().getTerzo() != null && !(obbligazione.getCreditore().equalsByPrimaryKey(obbligazione.getIncarico_repertorio().getTerzo()) || verificaAssociato(aUC, obbligazione.getIncarico_repertorio().getTerzo(), obbligazione))))
        throw new it.cnr.jada.comp.ApplicationException("Il Creditore (Codice Terzo:" + obbligazione.getCreditore().getCd_terzo() + ") \n" + "non è congruente con quello dell'incarico (Codice Terzo:" + obbligazione.getIncarico_repertorio().getTerzo().getCd_terzo() + ")");
    verificaFl_spese_costi_altrui(aUC, obbligazione);
    if (obbligazione.getFl_gara_in_corso().booleanValue() && obbligazione.isObbligazioneResiduo() && obbligazione.getStato_obbligazione().equals(obbligazione.STATO_OBB_PROVVISORIO))
        throw new ApplicationException("Non e' possibile modificare un'impegno residuo con gara di appalto in corso di espletamento, si prega di riportarlo indietro all'esercizio precedente e di renderlo definitivo");
    /*
	 * Controllo l'eventuale obbligatorietà del Contratto
	 */
    Elemento_voceHome home = (Elemento_voceHome) getHome(aUC, Elemento_voceBulk.class);
    Elemento_voceBulk elemento_voce;
    try {
        elemento_voce = (Elemento_voceBulk) home.findByPrimaryKey(new Elemento_voceBulk(obbligazione.getCd_elemento_voce(), obbligazione.getEsercizio(), obbligazione.getTi_appartenenza(), obbligazione.getTi_gestione()));
    } catch (PersistencyException e) {
        throw new ComponentException(e);
    }
    if (elemento_voce.getFl_recon().booleanValue()) {
        Parametri_cdsHome paramHome = (Parametri_cdsHome) getHome(aUC, Parametri_cdsBulk.class);
        Parametri_cdsBulk param_cds;
        try {
            param_cds = (Parametri_cdsBulk) paramHome.findByPrimaryKey(new Parametri_cdsBulk(obbligazione.getCd_cds(), obbligazione.getEsercizio()));
        } catch (PersistencyException e) {
            throw new ComponentException(e);
        }
        if (obbligazione.getFl_gara_in_corso().booleanValue() && obbligazione.getDs_gara_in_corso() == null)
            throw new it.cnr.jada.comp.ApplicationException("La gara di appalto risulta essere in corso di espletamento. Campo \"Descrizione gara di appalto\" obbligatorio!");
        if (obbligazione.getFl_gara_in_corso().booleanValue() && (obbligazione.getPg_contratto() != null || obbligazione.getPg_repertorio() != null))
            throw new it.cnr.jada.comp.ApplicationException("La gara di appalto risulta essere in corso di espletamento. Non è possibile valorizzare il campo contratto e/o incarico. Disattivare il flag \"Gara in corso di espletamento\" e ripetere l'operazione!");
        if (obbligazione.getPg_contratto() != null && obbligazione.getPg_repertorio() != null)
            throw new it.cnr.jada.comp.ApplicationException("Il campo contratto e incarico non possono essere valorizzati contemporaneamente. Eliminare uno dei due e ripetere l'operazione!");
        if (param_cds != null && param_cds.getIm_soglia_contratto_s() != null && obbligazione.getIm_obbligazione().compareTo(param_cds.getIm_soglia_contratto_s()) != -1)
            if (!obbligazione.getFl_gara_in_corso().booleanValue() && obbligazione.getPg_contratto() == null && obbligazione.getPg_repertorio() == null)
                throw new it.cnr.jada.comp.ApplicationException("I campi contratto e incarico non possono essere contemporaneamente nulli in assenza di una gara in corso di espletamento. Importo dell'Impegno superiore al limite stabilito!");
    }
    verificaGestioneTrovato(aUC, obbligazione, elemento_voce);
    verificaGestioneMissioni(aUC, obbligazione, elemento_voce);
}
Also used : ApplicationException(it.cnr.jada.comp.ApplicationException) Parametri_cdsBulk(it.cnr.contab.config00.bulk.Parametri_cdsBulk) Elemento_voceBulk(it.cnr.contab.config00.pdcfin.bulk.Elemento_voceBulk) BigDecimal(java.math.BigDecimal) Elemento_voceHome(it.cnr.contab.config00.pdcfin.bulk.Elemento_voceHome) Parametri_cdsHome(it.cnr.contab.config00.bulk.Parametri_cdsHome) ApplicationException(it.cnr.jada.comp.ApplicationException) ComponentException(it.cnr.jada.comp.ComponentException) PersistencyException(it.cnr.jada.persistency.PersistencyException)

Example 2 with Elemento_voceHome

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

the class StampaSingoloContoComponent method selectElemento_voceByClause.

public it.cnr.jada.persistency.sql.SQLBuilder selectElemento_voceByClause(UserContext userContext, V_voce_f_sing_contoBulk filtro, Elemento_voceBulk elementoVoce, CompoundFindClause clauses) throws ComponentException {
    Elemento_voceHome elementoVoceHome = (Elemento_voceHome) getHome(userContext, elementoVoce);
    it.cnr.jada.persistency.sql.SQLBuilder sql = elementoVoceHome.createSQLBuilder();
    sql.addClause("AND", "esercizio", SQLBuilder.EQUALS, ((CNRUserContext) userContext).getEsercizio());
    if (filtro.getTi_gestione().compareTo(SospesoBulk.TIPO_ENTRATA) == 0) {
        sql.addClause("AND", "ti_gestione", SQLBuilder.EQUALS, SospesoBulk.TIPO_ENTRATA);
        sql.addClause("AND", "ti_elemento_voce", SQLBuilder.EQUALS, "C");
        if (!filtro.isEnteInScrivania() && filtro.getFl_partita_giro())
            sql.addClause("AND", "ti_appartenenza", SQLBuilder.EQUALS, "D");
        else
            sql.addClause("AND", "ti_appartenenza", SQLBuilder.EQUALS, "C");
    } else {
        sql.addClause("AND", "ti_gestione", SQLBuilder.EQUALS, SospesoBulk.TIPO_SPESA);
        sql.addClause("AND", "ti_appartenenza", SQLBuilder.EQUALS, "D");
        sql.addClause("AND", "ti_elemento_voce", SQLBuilder.EQUALS, "C");
    }
    sql.addClause("AND", "fl_partita_giro", SQLBuilder.EQUALS, filtro.getFl_partita_giro());
    sql.addClause(clauses);
    return sql;
}
Also used : Elemento_voceHome(it.cnr.contab.config00.pdcfin.bulk.Elemento_voceHome) SQLBuilder(it.cnr.jada.persistency.sql.SQLBuilder)

Example 3 with Elemento_voceHome

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

the class LiquidazioneRateMinicarrieraComponent method selectElementoVoceByClause.

/**
 * Costruisce l'struzione SQL corrispondente ad una ricerca con le clausole specificate.
 * Aggiunge una clausola a tutte le operazioni di ricerca eseguite sulle Linee di Attivita
 *
 * Nome: Richiesta di ricerca di una Linea di Attivita
 * Pre: E' stata generata la richiesta di ricerca della Linea di Attivita
 * Post: Viene restituito l'SQLBuilder per filtrare le Linee di Attivita
 *
 * @param userContext		lo userContext che ha generato la richiesta
 * @param compenso			l'OggettoBulk che rappresenta il contesto della ricerca.
 * @param lineaAttivita	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 selectElementoVoceByClause(UserContext userContext, Liquidazione_rate_minicarrieraBulk bulk, Elemento_voceBulk elementoVoce, CompoundFindClause clauses) throws ComponentException {
    Elemento_voceHome home = (Elemento_voceHome) getHome(userContext, elementoVoce);
    SQLBuilder sql = home.createSQLBuilder();
    sql.addClause("AND", "esercizio", sql.EQUALS, CNRUserContext.getEsercizio(userContext));
    sql.addClause("AND", "fl_partita_giro", sql.EQUALS, Boolean.FALSE);
    sql.addClause("AND", "ti_elemento_voce", sql.EQUALS, home.TIPO_CAPITOLO);
    sql.addClause("AND", "ti_appartenenza", sql.EQUALS, home.APPARTENENZA_CDS);
    sql.addClause("AND", "ti_gestione", sql.EQUALS, home.GESTIONE_SPESE);
    sql.addClause("AND", "cd_parte", sql.EQUALS, home.PARTE_1);
    if (!Tipo_unita_organizzativaHome.TIPO_UO_SAC.equalsIgnoreCase(bulk.getUoScrivania().getCd_tipo_unita()))
        sql.addClause("AND", "fl_voce_sac", SQLBuilder.EQUALS, Boolean.FALSE);
    sql.addClause(clauses);
    return sql;
}
Also used : Elemento_voceHome(it.cnr.contab.config00.pdcfin.bulk.Elemento_voceHome) SQLBuilder(it.cnr.jada.persistency.sql.SQLBuilder)

Example 4 with Elemento_voceHome

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

the class DocumentoGenericoComponent method inizializzaBulkPerModifica.

// ^^@@
/**
 * normale
 * PreCondition:
 * Viene richiesta una possibile operazione di modifica.
 * PostCondition:
 * L'OggettoBulk viene aggiornato con tutti gli oggetti collegati e preparato per una operazione di modifica.
 */
// ^^@@
public OggettoBulk inizializzaBulkPerModifica(UserContext userContext, OggettoBulk bulk) throws ComponentException {
    if (bulk == null)
        throw new ComponentException("Attenzione: non esiste alcun documento corrispondente ai criteri di ricerca!");
    Documento_genericoBulk generico = (Documento_genericoBulk) bulk;
    if (generico.getEsercizio() == null)
        throw new it.cnr.jada.comp.ApplicationException("L'esercizio del documento non è valorizzato! Impossibile proseguire.");
    if (generico.getEsercizio().intValue() > it.cnr.contab.utenze00.bp.CNRUserContext.getEsercizio(userContext).intValue())
        throw new it.cnr.jada.comp.ApplicationException("Il documento deve appartenere o all'esercizio di scrivania o ad esercizi precedenti per essere aperto in modifica!");
    generico = (Documento_genericoBulk) super.inizializzaBulkPerModifica(userContext, generico);
    try {
        lockBulk(userContext, generico);
    // setDt_termine_creazione_docamm(userContext, generico);
    } catch (Throwable t) {
        throw handleException(t);
    }
    try {
        // imposta il tipo di documento
        if (generico.getCd_tipo_documento_amm() == null && generico.getTipo_documento().getCd_tipo_documento_amm() != null)
            generico.setCd_tipo_documento_amm(generico.getTipo_documento().getCd_tipo_documento_amm());
        // generico.setCd_tipo_documento_amm(generico.getTipo_documento().getCd_tipo_documento_amm());
        // it.cnr.jada.bulk.BulkHome homeTD= getHome(userContext, Tipo_documento_ammBulk.class);
        // it.cnr.jada.persistency.sql.SQLBuilder sqlTD= homeTD.createSQLBuilder();
        // sqlTD.addClause("AND", "cd_tipo_documento_amm", sqlTD.EQUALS, generico.getCd_tipo_documento_amm());
        // it.cnr.jada.persistency.Broker brokerTD= homeTD.createBroker(sqlTD);
        // generico.setTipo_documento((Tipo_documento_ammBulk) brokerTD.fetch(Tipo_documento_ammBulk.class));
        // brokerTD.close();
        // }
        // generico =(Documento_genericoBulk) super.inizializzaBulkPerModifica(userContext, generico);
        it.cnr.jada.bulk.BulkHome home = getHome(userContext, Documento_generico_rigaBulk.class);
        it.cnr.jada.persistency.sql.SQLBuilder sql = home.createSQLBuilder();
        sql.addClause("AND", "pg_documento_generico", SQLBuilder.EQUALS, generico.getPg_documento_generico());
        sql.addClause("AND", "cd_cds", SQLBuilder.EQUALS, generico.getCd_cds());
        sql.addClause("AND", "esercizio", SQLBuilder.EQUALS, generico.getEsercizio());
        sql.addClause("AND", "cd_unita_organizzativa", SQLBuilder.EQUALS, generico.getCd_unita_organizzativa());
        sql.addClause("AND", "cd_tipo_documento_amm", SQLBuilder.EQUALS, generico.getCd_tipo_documento_amm());
        getHomeCache(userContext).fetchAll(userContext);
        generico.setDocumento_generico_dettColl(new it.cnr.jada.bulk.BulkList(home.fetchAll(sql)));
        // to be chkd
        generico.setTi_entrate_spese(generico.getTipo_documento().getTi_entrata_spesa().charAt(0));
        // 03/03/04 - BORRIELLO
        // Corretto Errore interno: questa operazione deve essere fatta DOPO aver impostato il
        // <code>Ti_entrate_spese</code>, altrimenti la dt_termine_creazione_docamm NON viene impostata e,
        // in fase di salvataggio, genera un errore di NullPointerException.
        setDt_termine_creazione_docamm(userContext, generico);
        try {
            generico.setDataInizioObbligoRegistroUnico(Utility.createConfigurazioneCnrComponentSession().getDt01(userContext, new Integer(0), null, "REGISTRO_UNICO_FATPAS", "DATA_INIZIO"));
        } catch (Exception e) {
            throw handleException(generico, e);
        }
        if (!generico.getCd_uo_origine().equals(generico.getCd_unita_organizzativa()))
            generico.setFlagEnte(true);
        if (!generico.isGenericoAttivo())
            generico.setPassivo_ente(generico.isFlagEnte());
        else
            generico.setPassivo_ente(true);
        if (!generico.getCd_uo_origine().equals(generico.getCd_unita_organizzativa()))
            impostaDatiEnteNelDocumento(userContext, generico, null);
        else {
            Unita_organizzativa_enteBulk uoEnte = getUOEnte(userContext);
            if (generico.getCd_unita_organizzativa().equalsIgnoreCase(uoEnte.getCd_unita_organizzativa()))
                impostaDatiEnteNelDocumento(userContext, generico, uoEnte);
        }
        if (generico.getValuta().getCd_divisa().equals(getEuro(userContext).getCd_divisa()))
            generico.setDefaultValuta(true);
        if (!generico.isGenericoAttivo())
            rebuildObbligazioni(userContext, generico);
        if (generico.isGenericoAttivo()) {
            rebuildAccertamenti(userContext, generico);
            generico.setTerzo_uo_cds(generico.getDocumento_generico_dettColl().get(0).getTerzo_uo_cds());
        }
        for (java.util.Iterator i = generico.getDocumento_generico_dettColl().iterator(); i.hasNext(); ) initializeKeysAndOptionsInto(userContext, (OggettoBulk) i.next());
        int dettagliRiportati = 0;
        generico.setHa_beniColl(ha_beniColl(userContext, generico));
        for (java.util.Iterator i = generico.getDocumento_generico_dettColl().iterator(); i.hasNext(); ) {
            OggettoBulk rigabulk = (OggettoBulk) i.next();
            Documento_generico_rigaBulk riga = (Documento_generico_rigaBulk) rigabulk;
            if (generico.getTi_entrate_spese() == Documento_genericoBulk.SPESE && riga.getObbligazione_scadenziario() != null && riga.getObbligazione_scadenziario().getObbligazione() != null && riga.getObbligazione_scadenziario().getObbligazione().getElemento_voce() != null && riga.getObbligazione_scadenziario().getObbligazione().getElemento_voce().getFl_inv_beni_patr().booleanValue()) {
                riga.setInventariato(true);
                riga.setInventariato(ha_beniColl(userContext, riga).booleanValue());
            } else {
                if (riga.getAccertamento_scadenziario() != null && riga.getAccertamento_scadenziario().getAccertamento() != null && riga.getAccertamento_scadenziario().getAccertamento().getCd_elemento_voce() != null) {
                    Elemento_voceHome Home = (Elemento_voceHome) getHome(userContext, Elemento_voceBulk.class);
                    Elemento_voceBulk elem_voce = (Elemento_voceBulk) Home.findByPrimaryKey(new Elemento_voceBulk(riga.getAccertamento_scadenziario().getAccertamento().getCd_elemento_voce(), riga.getAccertamento_scadenziario().getAccertamento().getEsercizio(), riga.getAccertamento_scadenziario().getAccertamento().getTi_appartenenza(), riga.getAccertamento_scadenziario().getAccertamento().getTi_gestione()));
                    if (elem_voce.getFl_inv_beni_patr().booleanValue())
                        riga.setInventariato(true);
                    riga.setInventariato(ha_beniColl(userContext, riga).booleanValue());
                }
            }
            if (generico.isPassivo_ente())
                riga.setIm_riga_iniziale(riga.getIm_imponibile());
            if (generico.getTi_entrate_spese() == Documento_genericoBulk.ENTRATE) {
                riga.setModalita_pagamento_uo_cds(findModalitaSelezionate(userContext, riga));
                riga.setTermini_pagamento_uo_cds(findTerminiSelezionati(userContext, riga));
                riga.setModalita_uo_cds(findModalita(userContext, riga));
                riga.setBanca_uo_cds(findBancaSelezionata(userContext, riga));
                initializeKeysAndOptionsInto(userContext, riga);
            } else {
                riga.setModalita_pagamento(findModalitaSelezionate(userContext, riga));
                riga.setTermini_pagamento(findTerminiSelezionati(userContext, riga));
                riga.setModalita(findModalita(userContext, riga));
                riga.setBanca(findBancaSelezionata(userContext, riga));
                initializeKeysAndOptionsInto(userContext, riga);
            }
            if (riga.checkIfRiportata()) {
                riga.setRiportata(riga.RIPORTATO);
                generico.setRiportata(generico.PARZIALMENTE_RIPORTATO);
                dettagliRiportati++;
            }
        }
        generico.setRiportata(getStatoRiporto(userContext, generico));
        /**
         * Gennaro Borriello - (02/11/2004 15.04.39)
         *	Aggiunta gestione dell Stato Riportato all'esercizio di scrivania.
         */
        generico.setRiportataInScrivania(getStatoRiportoInScrivania(userContext, generico));
        /**
         * Gennaro Borriello - (08/11/2004 13.35.27)
         *	Aggiunta proprietà <code>esercizioInScrivania</code>, che verrà utilizzata
         *	per la gestione di isRiportataInScrivania(), in alcuni casi.
         */
        generico.setEsercizioInScrivania(it.cnr.contab.utenze00.bp.CNRUserContext.getEsercizio(userContext));
    } catch (it.cnr.jada.persistency.PersistencyException e) {
        throw handleException(generico, e);
    } catch (it.cnr.jada.persistency.IntrospectionException e) {
        throw handleException(generico, e);
    }
    caricaScrittura(userContext, generico);
    return generico;
}
Also used : Elemento_voceBulk(it.cnr.contab.config00.pdcfin.bulk.Elemento_voceBulk) IntrospectionException(it.cnr.jada.persistency.IntrospectionException) it.cnr.jada.persistency.sql(it.cnr.jada.persistency.sql) ApplicationException(it.cnr.jada.comp.ApplicationException) PersistencyException(it.cnr.jada.persistency.PersistencyException) IntrospectionException(it.cnr.jada.persistency.IntrospectionException) ApplicationException(it.cnr.jada.comp.ApplicationException) PersistencyException(it.cnr.jada.persistency.PersistencyException) RemoteException(java.rmi.RemoteException) EJBException(javax.ejb.EJBException) DetailedRuntimeException(it.cnr.jada.DetailedRuntimeException) ComponentException(it.cnr.jada.comp.ComponentException) Elemento_voceHome(it.cnr.contab.config00.pdcfin.bulk.Elemento_voceHome) java.util(java.util) ComponentException(it.cnr.jada.comp.ComponentException) it.cnr.contab.anagraf00.core.bulk(it.cnr.contab.anagraf00.core.bulk) it.cnr.contab.doccont00.core.bulk(it.cnr.contab.doccont00.core.bulk) it.cnr.contab.inventario01.bulk(it.cnr.contab.inventario01.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.jada.bulk(it.cnr.jada.bulk) it.cnr.contab.inventario00.docs.bulk(it.cnr.contab.inventario00.docs.bulk)

Example 5 with Elemento_voceHome

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

the class DocumentoGenericoComponent method controlloTrovato.

private void controlloTrovato(UserContext aUC, Obbligazione_scadenzarioBulk scadenza) throws ComponentException {
    Elemento_voceHome evHome = (Elemento_voceHome) getHome(aUC, Elemento_voceBulk.class);
    SQLBuilder sql = evHome.createSQLBuilder();
    sql.addSQLClause("AND", "esercizio", SQLBuilder.EQUALS, scadenza.getObbligazione().getEsercizio());
    sql.addSQLClause("AND", "ti_appartenenza", SQLBuilder.EQUALS, scadenza.getObbligazione().getTi_appartenenza());
    sql.addSQLClause("AND", "ti_gestione", SQLBuilder.EQUALS, scadenza.getObbligazione().getTi_gestione());
    sql.addSQLClause("AND", "cd_elemento_voce", SQLBuilder.EQUALS, scadenza.getObbligazione().getCd_elemento_voce());
    try {
        List voce = evHome.fetchAll(sql);
        if (!voce.isEmpty()) {
            Elemento_voceBulk elementoVoce = (Elemento_voceBulk) voce.get(0);
            if (elementoVoce.isVocePerTrovati()) {
                throw new it.cnr.jada.comp.ApplicationException("Sui documenti generici non è possibile selezionare obbligazioni su capitoli collegati a Brevetti/Trovati.");
            }
        }
    } catch (PersistencyException ex) {
        throw handleException(ex);
    }
}
Also used : Elemento_voceHome(it.cnr.contab.config00.pdcfin.bulk.Elemento_voceHome) ApplicationException(it.cnr.jada.comp.ApplicationException) PersistencyException(it.cnr.jada.persistency.PersistencyException) Elemento_voceBulk(it.cnr.contab.config00.pdcfin.bulk.Elemento_voceBulk)

Aggregations

Elemento_voceHome (it.cnr.contab.config00.pdcfin.bulk.Elemento_voceHome)30 Elemento_voceBulk (it.cnr.contab.config00.pdcfin.bulk.Elemento_voceBulk)28 PersistencyException (it.cnr.jada.persistency.PersistencyException)23 SQLBuilder (it.cnr.jada.persistency.sql.SQLBuilder)19 ApplicationException (it.cnr.jada.comp.ApplicationException)15 ComponentException (it.cnr.jada.comp.ComponentException)11 Parametri_cnrBulk (it.cnr.contab.config00.bulk.Parametri_cnrBulk)8 BigDecimal (java.math.BigDecimal)8 List (java.util.List)8 CdrBulk (it.cnr.contab.config00.sto.bulk.CdrBulk)6 Unita_organizzativaBulk (it.cnr.contab.config00.sto.bulk.Unita_organizzativaBulk)6 Iterator (java.util.Iterator)6 Parametri_cnrHome (it.cnr.contab.config00.bulk.Parametri_cnrHome)5 Pdg_modulo_speseBulk (it.cnr.contab.prevent01.bulk.Pdg_modulo_speseBulk)5 CompoundFindClause (it.cnr.jada.persistency.sql.CompoundFindClause)5 TerzoBulk (it.cnr.contab.anagraf00.core.bulk.TerzoBulk)4 Parametri_cdsBulk (it.cnr.contab.config00.bulk.Parametri_cdsBulk)4 Tipo_unita_organizzativaHome (it.cnr.contab.config00.sto.bulk.Tipo_unita_organizzativaHome)4 RemoteException (java.rmi.RemoteException)4 Parametri_enteBulk (it.cnr.contab.config00.bulk.Parametri_enteBulk)3