Search in sources :

Example 1 with CompoundFindClause

use of it.cnr.jada.persistency.sql.CompoundFindClause in project sigla-main by consiglionazionaledellericerche.

the class ConsSchedaAnaliticaContoBP method init.

protected void init(it.cnr.jada.action.Config config, it.cnr.jada.action.ActionContext context) throws it.cnr.jada.action.BusinessProcessException {
    try {
        String cds = it.cnr.contab.utenze00.bp.CNRUserContext.getCd_cds(context.getUserContext());
        Integer esercizio = it.cnr.contab.utenze00.bp.CNRUserContext.getEsercizio(context.getUserContext());
        CompoundFindClause clauses = new CompoundFindClause();
        // clauses.addClause("AND", "cd_cds", SQLBuilder.NOT_EQUALS, "*");
        clauses.addClause("AND", "esercizio", SQLBuilder.EQUALS, esercizio);
        setBaseclause(clauses);
        super.init(config, context);
    } catch (Throwable e) {
        throw new BusinessProcessException(e);
    }
}
Also used : CompoundFindClause(it.cnr.jada.persistency.sql.CompoundFindClause) BusinessProcessException(it.cnr.jada.action.BusinessProcessException)

Example 2 with CompoundFindClause

use of it.cnr.jada.persistency.sql.CompoundFindClause in project sigla-main by consiglionazionaledellericerche.

the class DocumentiAmministrativiRistampabiliAction method doCerca.

/**
 * Gestisce una richiesta di ricerca.
 *
 * L'implementazione di default utilizza il metodo astratto <code>read</code>
 * di <code>CRUDBusinessProcess</code>.
 * Se la ricerca fornisce più di un risultato viene creato un
 * nuovo <code>SelezionatoreListaBP</code> per la selezione di un elemento.
 * Al business process viene anche chiesto l'elenco delle colonne da
 * visualizzare.
 */
public Forward doCerca(ActionContext context) throws java.rmi.RemoteException, InstantiationException, javax.ejb.RemoveException {
    DocumentiAmministrativiRistampabiliBP bp = (DocumentiAmministrativiRistampabiliBP) context.getBusinessProcess();
    try {
        fillModel(context);
        completaSoggetto(context);
        Filtro_ricerca_doc_amm_ristampabileVBulk filtro = (Filtro_ricerca_doc_amm_ristampabileVBulk) bp.getModel();
        filtro.setPgStampa(null);
        try {
            filtro.validateClauses();
        } catch (it.cnr.jada.bulk.ValidationException e) {
            return handleException(context, e);
        }
        OggettoBulk instance = (OggettoBulk) filtro.getInstance();
        Unita_organizzativaBulk unita_organizzativa = CNRUserInfo.getUnita_organizzativa(context);
        CompoundFindClause clauses = new CompoundFindClause();
        clauses.addClause("AND", "cd_cds_origine", SQLBuilder.EQUALS, unita_organizzativa.getUnita_padre().getCd_unita_organizzativa());
        clauses.addClause("AND", "cd_uo_origine", SQLBuilder.EQUALS, unita_organizzativa.getCd_unita_organizzativa());
        if (filtro.isProtocolliClause()) {
            clauses.addClause("AND", "cd_tipo_sezionale", SQLBuilder.EQUALS, filtro.getTipo_sezionale().getCd_tipo_sezionale());
            clauses.addClause("AND", "protocollo_iva", SQLBuilder.GREATER_EQUALS, filtro.getDa_protocollo_iva());
            clauses.addClause("AND", "protocollo_iva", SQLBuilder.LESS_EQUALS, filtro.getA_protocollo_iva());
        } else if (filtro.isProtocolliGeneraleClause()) {
            clauses.addClause("AND", "cd_tipo_sezionale", SQLBuilder.EQUALS, filtro.getTipo_sezionale().getCd_tipo_sezionale());
            clauses.addClause("AND", "protocollo_iva_generale", SQLBuilder.GREATER_EQUALS, filtro.getDa_protocollo_iva_generale());
            clauses.addClause("AND", "protocollo_iva_generale", SQLBuilder.LESS_EQUALS, filtro.getA_protocollo_iva_generale());
        } else {
            clauses.addClause("AND", "protocollo_iva", SQLBuilder.ISNOTNULL, null);
            clauses.addClause("AND", "protocollo_iva_generale", SQLBuilder.ISNOTNULL, null);
            clauses.addClause("AND", "dt_emissione", SQLBuilder.GREATER_EQUALS, filtro.getDt_da_stampa());
            clauses.addClause("AND", "dt_emissione", SQLBuilder.LESS_EQUALS, filtro.getDt_a_stampa());
        }
        clauses.addClause("AND", "stato_cofi", SQLBuilder.NOT_EQUALS, Fattura_attivaBulk.STATO_ANNULLATO);
        filtro.setSQLClauses(clauses);
        it.cnr.jada.util.RemoteIterator ri = bp.find(context, clauses, instance);
        if (ri == null || ri.countElements() == 0) {
            it.cnr.jada.util.ejb.EJBCommonServices.closeRemoteIterator(context, ri);
            bp.setMessage("La ricerca non ha fornito alcun risultato.");
            return context.findDefaultForward();
        } else {
            bp.setModel(context, filtro);
            IDocumentoAmministrativoBP docAmmBP = getBusinessProcessForDocAmm(context, (IDocumentoAmministrativoBulk) instance);
            SelezionatoreListaBP nbp = (SelezionatoreListaBP) context.createBusinessProcess("Selezionatore", new Object[] { "Th" });
            nbp.setMultiSelection(true);
            nbp.setSelectionListener(context, getSelectionListener(context, (it.cnr.contab.docamm00.bp.CRUDFatturaAttivaBP) docAmmBP, (FatturaAttivaSingolaComponentSession) docAmmBP.createComponentSession(), filtro));
            nbp.setIterator(context, ri);
            BulkInfo bulkInfo = BulkInfo.getBulkInfo(filtro.getInstance().getClass());
            nbp.setBulkInfo(bulkInfo);
            docAmmBP = getBusinessProcessForDocAmm(context, filtro.getInstance());
            if (docAmmBP instanceof IGenericSearchDocAmmBP) {
                String columnsetName = ((IGenericSearchDocAmmBP) docAmmBP).getColumnsetForGenericSearch();
                if (columnsetName != null)
                    nbp.setColumns(bulkInfo.getColumnFieldPropertyDictionary(columnsetName));
            }
            context.addHookForward("seleziona", this, "doRiportaSelezione");
            return context.addBusinessProcess(nbp);
        }
    } catch (Throwable e) {
        try {
            ((BusinessProcess) bp).rollbackUserTransaction();
        } catch (BusinessProcessException ex) {
            return handleException(context, ex);
        }
        return handleException(context, e);
    }
}
Also used : CompoundFindClause(it.cnr.jada.persistency.sql.CompoundFindClause) Filtro_ricerca_doc_amm_ristampabileVBulk(it.cnr.contab.docamm00.docs.bulk.Filtro_ricerca_doc_amm_ristampabileVBulk) IGenericSearchDocAmmBP(it.cnr.contab.docamm00.bp.IGenericSearchDocAmmBP) Unita_organizzativaBulk(it.cnr.contab.config00.sto.bulk.Unita_organizzativaBulk) DocumentiAmministrativiRistampabiliBP(it.cnr.contab.docamm00.bp.DocumentiAmministrativiRistampabiliBP) IDocumentoAmministrativoBP(it.cnr.contab.docamm00.bp.IDocumentoAmministrativoBP) OggettoBulk(it.cnr.jada.bulk.OggettoBulk) BusinessProcessException(it.cnr.jada.action.BusinessProcessException) BulkInfo(it.cnr.jada.bulk.BulkInfo) FatturaAttivaSingolaComponentSession(it.cnr.contab.docamm00.ejb.FatturaAttivaSingolaComponentSession) SelezionatoreListaBP(it.cnr.jada.util.action.SelezionatoreListaBP)

Example 3 with CompoundFindClause

use of it.cnr.jada.persistency.sql.CompoundFindClause in project sigla-main by consiglionazionaledellericerche.

the class DocumentiAmministrativiProtocollabiliAction method doCerca.

/**
 * Gestisce una richiesta di ricerca.
 *
 * L'implementazione di default utilizza il metodo astratto <code>read</code>
 * di <code>CRUDBusinessProcess</code>.
 * Se la ricerca fornisce più di un risultato viene creato un
 * nuovo <code>SelezionatoreListaBP</code> per la selezione di un elemento.
 * Al business process viene anche chiesto l'elenco delle colonne da
 * visualizzare.
 */
public Forward doCerca(ActionContext context) throws java.rmi.RemoteException, InstantiationException, javax.ejb.RemoveException {
    DocumentiAmministrativiProtocollabiliBP bp = (DocumentiAmministrativiProtocollabiliBP) context.getBusinessProcess();
    try {
        fillModel(context);
        completaSoggetto(context);
        Filtro_ricerca_doc_amm_protocollabileVBulk filtro = (Filtro_ricerca_doc_amm_protocollabileVBulk) bp.getModel();
        filtro.setPgStampa(null);
        filtro.setPgProtocollazioneIVA(null);
        OggettoBulk instance = (OggettoBulk) filtro.getInstance();
        Unita_organizzativaBulk unita_organizzativa = CNRUserInfo.getUnita_organizzativa(context);
        CompoundFindClause clauses = new CompoundFindClause();
        clauses.addClause("AND", "esercizio", SQLBuilder.EQUALS, it.cnr.contab.utenze00.bp.CNRUserContext.getEsercizio(context.getUserContext()));
        clauses.addClause("AND", "cd_cds_origine", SQLBuilder.EQUALS, unita_organizzativa.getUnita_padre().getCd_unita_organizzativa());
        clauses.addClause("AND", "cd_uo_origine", SQLBuilder.EQUALS, unita_organizzativa.getCd_unita_organizzativa());
        clauses.addClause("AND", "protocollo_iva", SQLBuilder.ISNULL, null);
        clauses.addClause("AND", "protocollo_iva_generale", SQLBuilder.ISNULL, null);
        clauses.addClause("AND", "flFatturaElettronica", SQLBuilder.EQUALS, Boolean.FALSE);
        clauses.addClause("AND", "dt_emissione", SQLBuilder.ISNULL, null);
        clauses.addClause("AND", "stato_cofi", SQLBuilder.NOT_EQUALS, it.cnr.contab.docamm00.docs.bulk.Fattura_attivaBulk.STATO_ANNULLATO);
        filtro.setSQLClauses(clauses);
        it.cnr.jada.util.RemoteIterator ri = bp.find(context, clauses, instance);
        if (ri == null || ri.countElements() == 0) {
            it.cnr.jada.util.ejb.EJBCommonServices.closeRemoteIterator(context, ri);
            bp.setMessage("La ricerca non ha fornito alcun risultato.");
            return context.findDefaultForward();
        } else {
            bp.setModel(context, filtro);
            IDocumentoAmministrativoBP docAmmBP = getBusinessProcessForDocAmm(context, (IDocumentoAmministrativoBulk) instance);
            SelezionatoreListaBP nbp = (SelezionatoreListaBP) context.createBusinessProcess("Selezionatore", new Object[] { "Th" });
            nbp.setMultiSelection(true);
            nbp.setSelectionListener(context, getSelectionListener(context, (it.cnr.contab.docamm00.bp.CRUDFatturaAttivaBP) docAmmBP, (FatturaAttivaSingolaComponentSession) docAmmBP.createComponentSession(), filtro));
            nbp.setIterator(context, ri);
            BulkInfo bulkInfo = BulkInfo.getBulkInfo(instance.getClass());
            nbp.setBulkInfo(bulkInfo);
            if (docAmmBP instanceof IGenericSearchDocAmmBP) {
                String columnsetName = ((IGenericSearchDocAmmBP) docAmmBP).getColumnsetForGenericSearch();
                if (columnsetName != null)
                    nbp.setColumns(bulkInfo.getColumnFieldPropertyDictionary(columnsetName));
            }
            context.addHookForward("seleziona", this, "doRiportaSelezione");
            return context.addBusinessProcess(nbp);
        }
    } catch (Throwable e) {
        try {
            ((BusinessProcess) bp).rollbackUserTransaction();
        } catch (BusinessProcessException ex) {
            return handleException(context, ex);
        }
        return handleException(context, e);
    }
}
Also used : CompoundFindClause(it.cnr.jada.persistency.sql.CompoundFindClause) DocumentiAmministrativiProtocollabiliBP(it.cnr.contab.docamm00.bp.DocumentiAmministrativiProtocollabiliBP) IGenericSearchDocAmmBP(it.cnr.contab.docamm00.bp.IGenericSearchDocAmmBP) Unita_organizzativaBulk(it.cnr.contab.config00.sto.bulk.Unita_organizzativaBulk) IDocumentoAmministrativoBP(it.cnr.contab.docamm00.bp.IDocumentoAmministrativoBP) OggettoBulk(it.cnr.jada.bulk.OggettoBulk) BusinessProcessException(it.cnr.jada.action.BusinessProcessException) BulkInfo(it.cnr.jada.bulk.BulkInfo) Filtro_ricerca_doc_amm_protocollabileVBulk(it.cnr.contab.docamm00.docs.bulk.Filtro_ricerca_doc_amm_protocollabileVBulk) FatturaAttivaSingolaComponentSession(it.cnr.contab.docamm00.ejb.FatturaAttivaSingolaComponentSession) SelezionatoreListaBP(it.cnr.jada.util.action.SelezionatoreListaBP)

Example 4 with CompoundFindClause

use of it.cnr.jada.persistency.sql.CompoundFindClause in project sigla-main by consiglionazionaledellericerche.

the class StampaSingoloContoComponent method selectVoce_fByClause.

public it.cnr.jada.persistency.sql.SQLBuilder selectVoce_fByClause(UserContext userContext, V_voce_f_sing_contoBulk filtro, Voce_fBulk voce_f, CompoundFindClause clauses) throws ComponentException {
    Voce_fHome voceFHome = (Voce_fHome) getHome(userContext, voce_f);
    it.cnr.jada.persistency.sql.SQLBuilder sql = voceFHome.createSQLBuilder();
    sql.addClause("AND", "esercizio", SQLBuilder.EQUALS, ((CNRUserContext) userContext).getEsercizio());
    if (Optional.ofNullable(filtro).filter(fil -> !Optional.ofNullable(fil.getFl_partita_giro()).orElse(Boolean.FALSE) || Optional.ofNullable(fil.getFl_ente()).orElse(Boolean.FALSE)).filter(fil -> !Optional.ofNullable(fil.isEnteInScrivania()).orElse(Boolean.FALSE)).isPresent()) {
        sql.addClause("AND", "cd_cds", SQLBuilder.EQUALS, ((CNRUserContext) userContext).getCd_cds());
        String uo = (((CNRUserContext) userContext).getCd_unita_organizzativa());
        try {
            Unita_organizzativaBulk bulk = (Unita_organizzativaBulk) getHome(userContext, Unita_organizzativaBulk.class).findByPrimaryKey(new Unita_organizzativaBulk(uo));
            if (!bulk.getFl_uo_cds().booleanValue())
                sql.addClause("AND", "cd_unita_organizzativa", SQLBuilder.EQUALS, ((CNRUserContext) userContext).getCd_unita_organizzativa());
        } catch (PersistencyException e) {
            handleException(e);
        }
    }
    if (Optional.ofNullable(filtro).filter(fil -> !Optional.ofNullable(fil.getFl_partita_giro()).orElse(Boolean.FALSE)).filter(fil -> Optional.ofNullable(fil.isEnteInScrivania()).orElse(Boolean.FALSE)).isPresent()) {
        sql.addClause("AND", "cd_cds", SQLBuilder.EQUALS, filtro.getCd_cds_proprio());
    }
    sql.addClause("AND", "cd_elemento_voce", SQLBuilder.EQUALS, filtro.getCd_elemento_voce());
    if (filtro.getTi_gestione().compareTo(SospesoBulk.TIPO_ENTRATA) == 0) {
        sql.addClause("AND", "ti_gestione", SQLBuilder.EQUALS, SospesoBulk.TIPO_ENTRATA);
        sql.addClause("AND", "ti_appartenenza", SQLBuilder.EQUALS, "C");
        if (filtro.getUnita_organizzativa() != null)
            sql.addClause("AND", "cd_unita_organizzativa", SQLBuilder.EQUALS, filtro.getUnita_organizzativa().getCd_unita_organizzativa());
    } else {
        sql.addClause("AND", "ti_gestione", SQLBuilder.EQUALS, SospesoBulk.TIPO_SPESA);
        if (filtro.getFl_ente().booleanValue() || (filtro.getCd_proprio_voce() != null) || filtro.isEnteInScrivania()) {
            sql.addClause("AND", "cd_proprio_voce", SQLBuilder.EQUALS, filtro.getCd_proprio_voce());
            sql.addClause("AND", "ti_appartenenza", SQLBuilder.EQUALS, "C");
        } else {
            sql.addClause("AND", "ti_appartenenza", SQLBuilder.EQUALS, "D");
        }
    }
    sql.addClause("AND", "fl_mastrino", SQLBuilder.EQUALS, true);
    sql.addClause(clauses);
    return sql;
}
Also used : UserContext(it.cnr.jada.UserContext) OggettoBulk(it.cnr.jada.bulk.OggettoBulk) Unita_organizzativaBulk(it.cnr.contab.config00.sto.bulk.Unita_organizzativaBulk) EsercizioBulk(it.cnr.contab.config00.esercizio.bulk.EsercizioBulk) SospesoBulk(it.cnr.contab.doccont00.core.bulk.SospesoBulk) Utility(it.cnr.contab.util.Utility) BigDecimal(java.math.BigDecimal) EnteBulk(it.cnr.contab.config00.sto.bulk.EnteBulk) Voce_fHome(it.cnr.contab.config00.pdcfin.bulk.Voce_fHome) Elemento_voceHome(it.cnr.contab.config00.pdcfin.bulk.Elemento_voceHome) Voce_fBulk(it.cnr.contab.config00.pdcfin.bulk.Voce_fBulk) CNRUserContext(it.cnr.contab.utenze00.bp.CNRUserContext) V_stm_paramin_sing_contoBulk(it.cnr.contab.doccont00.singconto.bulk.V_stm_paramin_sing_contoBulk) ApplicationException(it.cnr.jada.comp.ApplicationException) PersistencyException(it.cnr.jada.persistency.PersistencyException) Iterator(java.util.Iterator) LoggableStatement(it.cnr.jada.persistency.sql.LoggableStatement) SQLBuilder(it.cnr.jada.persistency.sql.SQLBuilder) V_voce_f_sing_contoBulk(it.cnr.contab.doccont00.singconto.bulk.V_voce_f_sing_contoBulk) Elemento_voceBulk(it.cnr.contab.config00.pdcfin.bulk.Elemento_voceBulk) V_voce_f_sing_contoHome(it.cnr.contab.doccont00.singconto.bulk.V_voce_f_sing_contoHome) Optional(java.util.Optional) Unita_organizzativaHome(it.cnr.contab.config00.sto.bulk.Unita_organizzativaHome) ComponentException(it.cnr.jada.comp.ComponentException) CompoundFindClause(it.cnr.jada.persistency.sql.CompoundFindClause) Unita_organizzativaBulk(it.cnr.contab.config00.sto.bulk.Unita_organizzativaBulk) SQLBuilder(it.cnr.jada.persistency.sql.SQLBuilder) PersistencyException(it.cnr.jada.persistency.PersistencyException) CNRUserContext(it.cnr.contab.utenze00.bp.CNRUserContext) Voce_fHome(it.cnr.contab.config00.pdcfin.bulk.Voce_fHome)

Example 5 with CompoundFindClause

use of it.cnr.jada.persistency.sql.CompoundFindClause in project sigla-main by consiglionazionaledellericerche.

the class ConsGAEComResSintBP method getSelezione.

/**
 * Ritorna la CompoundFindClause ottenuta in base alla selezione effettuata
 *
 * @param field il campo da aggiornare
 * @param label il nuovo valore da sostituire al vecchio
 */
public CompoundFindClause getSelezione(ActionContext context, String livello_destinazione) throws it.cnr.jada.action.BusinessProcessException {
    try {
        CompoundFindClause clauses = new CompoundFindClause();
        Integer esercizio = it.cnr.contab.utenze00.bp.CNRUserContext.getEsercizio(context.getUserContext());
        for (Iterator i = getSelectedElements(context).iterator(); i.hasNext(); ) {
            WorkpackageBulk bulk = (WorkpackageBulk) i.next();
            CompoundFindClause parzclause = new CompoundFindClause();
            if (livello_destinazione.compareTo(DETT) == 0) {
                parzclause.addClause("AND", "cdr", SQLBuilder.EQUALS, bulk.getCd_centro_responsabilita());
                parzclause.addClause("AND", "lda", SQLBuilder.EQUALS, bulk.getCd_linea_attivita());
            }
            clauses.addChild(parzclause);
            parzclause.setLogicalOperator("OR");
        }
        CompoundFindClause clausola_es = new CompoundFindClause();
        clausola_es.addClause("AND", "esercizio", SQLBuilder.EQUALS, esercizio);
        clauses = clauses.and(clauses, clausola_es);
        return clauses;
    } catch (Throwable e) {
        throw new BusinessProcessException(e);
    }
}
Also used : CompoundFindClause(it.cnr.jada.persistency.sql.CompoundFindClause) Iterator(java.util.Iterator) RemoteIterator(it.cnr.jada.util.RemoteIterator) WorkpackageBulk(it.cnr.contab.config00.latt.bulk.WorkpackageBulk) BusinessProcessException(it.cnr.jada.action.BusinessProcessException)

Aggregations

CompoundFindClause (it.cnr.jada.persistency.sql.CompoundFindClause)164 BusinessProcessException (it.cnr.jada.action.BusinessProcessException)73 Iterator (java.util.Iterator)44 SQLBuilder (it.cnr.jada.persistency.sql.SQLBuilder)36 ComponentException (it.cnr.jada.comp.ComponentException)35 RemoteException (java.rmi.RemoteException)30 PersistencyException (it.cnr.jada.persistency.PersistencyException)26 RemoteIterator (it.cnr.jada.util.RemoteIterator)24 ApplicationException (it.cnr.jada.comp.ApplicationException)23 FindClause (it.cnr.jada.persistency.sql.FindClause)22 Parametri_cnrBulk (it.cnr.contab.config00.bulk.Parametri_cnrBulk)21 Unita_organizzativaBulk (it.cnr.contab.config00.sto.bulk.Unita_organizzativaBulk)20 CNRUserContext (it.cnr.contab.utenze00.bp.CNRUserContext)20 OggettoBulk (it.cnr.jada.bulk.OggettoBulk)20 UserContext (it.cnr.jada.UserContext)18 Elemento_voceBulk (it.cnr.contab.config00.pdcfin.bulk.Elemento_voceBulk)17 Pdg_variazioneBulk (it.cnr.contab.pdg00.bulk.Pdg_variazioneBulk)17 Utility (it.cnr.contab.util.Utility)16 List (java.util.List)16 Optional (java.util.Optional)16