Search in sources :

Example 1 with IDocumentoAmministrativoBP

use of it.cnr.contab.docamm00.bp.IDocumentoAmministrativoBP in project sigla-main by consiglionazionaledellericerche.

the class DocumentiAmministrativiFatturazioneElettronicaAction method doRiportaSelezione.

/**
 * Gestisce la selezione dopo una richiesta di ricerca.
 * <p>
 * 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 doRiportaSelezione(ActionContext context) {
    DocumentiAmministrativiFatturazioneElettronicaBP bp = (DocumentiAmministrativiFatturazioneElettronicaBP) context.getBusinessProcess();
    try {
        Filtro_ricerca_doc_amm_fatturazione_elettronicaVBulk filtro = (Filtro_ricerca_doc_amm_fatturazione_elettronicaVBulk) bp.getModel();
        IDocumentoAmministrativoBulk docAmm = (IDocumentoAmministrativoBulk) filtro.getInstance();
        if (docAmm instanceof Fattura_attivaBulk) {
            Fattura_attivaBulk fa = (Fattura_attivaBulk) docAmm;
            IDocumentoAmministrativoBP docAmmBP = getBusinessProcessForDocAmm(context, docAmm);
            FatturaAttivaSingolaComponentSession session = (FatturaAttivaSingolaComponentSession) docAmmBP.createComponentSession();
        } else
            throw new it.cnr.jada.comp.ApplicationException("Documento amministrativo selezionato NON valido!");
    } catch (Exception e) {
        try {
            ((BusinessProcess) bp).rollbackUserTransaction();
        } catch (BusinessProcessException ex) {
            return handleException(context, ex);
        }
        return handleException(context, e);
    }
    return context.findDefaultForward();
}
Also used : Filtro_ricerca_doc_amm_fatturazione_elettronicaVBulk(it.cnr.contab.docamm00.docs.bulk.Filtro_ricerca_doc_amm_fatturazione_elettronicaVBulk) Fattura_attivaBulk(it.cnr.contab.docamm00.docs.bulk.Fattura_attivaBulk) FatturaAttivaSingolaComponentSession(it.cnr.contab.docamm00.ejb.FatturaAttivaSingolaComponentSession) IDocumentoAmministrativoBulk(it.cnr.contab.docamm00.docs.bulk.IDocumentoAmministrativoBulk) IDocumentoAmministrativoBP(it.cnr.contab.docamm00.bp.IDocumentoAmministrativoBP) DocumentiAmministrativiFatturazioneElettronicaBP(it.cnr.contab.docamm00.bp.DocumentiAmministrativiFatturazioneElettronicaBP) BusinessProcessException(it.cnr.jada.action.BusinessProcessException) BusinessProcessException(it.cnr.jada.action.BusinessProcessException)

Example 2 with IDocumentoAmministrativoBP

use of it.cnr.contab.docamm00.bp.IDocumentoAmministrativoBP 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 IDocumentoAmministrativoBP

use of it.cnr.contab.docamm00.bp.IDocumentoAmministrativoBP 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 IDocumentoAmministrativoBP

use of it.cnr.contab.docamm00.bp.IDocumentoAmministrativoBP in project sigla-main by consiglionazionaledellericerche.

the class ListaDocumentiAmministrativiAction method getBPAndRealInstanceFor.

/**
 * Ottiene un'istanza dell'oggetto reale partendo al DocumentoAmministrativoGenerico
 * selezionato e relativo business process responsabile.
 */
protected Object[] getBPAndRealInstanceFor(ActionContext context, IDocumentoAmministrativoGenericoBulk docAmmGenerico) throws it.cnr.jada.comp.ComponentException, BusinessProcessException, java.rmi.RemoteException {
    if (docAmmGenerico == null)
        return null;
    IDocumentoAmministrativoBulk docAmm = docAmmGenerico.getSpecializedInstance();
    if (docAmm == null)
        return null;
    IDocumentoAmministrativoBP docAmmBP = getBusinessProcessForDocAmm(context, docAmm);
    it.cnr.jada.util.RemoteIterator ri = null;
    try {
        ri = docAmmBP.createComponentSession().cerca(context.getUserContext(), null, (OggettoBulk) docAmm);
        ri = it.cnr.jada.util.ejb.EJBCommonServices.openRemoteIterator(context, ri);
        docAmm = (IDocumentoAmministrativoBulk) ri.nextElement();
    } finally {
        if (ri != null)
            it.cnr.jada.util.ejb.EJBCommonServices.closeRemoteIterator(context, ri);
    }
    if (docAmm == null)
        throw new it.cnr.jada.comp.ApplicationException("Impossibile caricare il documento amministrativo selezionato!");
    return new Object[] { docAmmBP, docAmm };
}
Also used : IDocumentoAmministrativoBP(it.cnr.contab.docamm00.bp.IDocumentoAmministrativoBP) OggettoBulk(it.cnr.jada.bulk.OggettoBulk)

Example 5 with IDocumentoAmministrativoBP

use of it.cnr.contab.docamm00.bp.IDocumentoAmministrativoBP in project sigla-main by consiglionazionaledellericerche.

the class ListaDocumentiAmministrativiAction method doRiportaSelezione.

/**
 * Gestisce una richiesta di ricerca.
 * <p>
 * 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 doRiportaSelezione(ActionContext context) {
    try {
        HookForward caller = (HookForward) context.getCaller();
        IDocumentoAmministrativoBulk selezione = (IDocumentoAmministrativoBulk) caller.getParameter("focusedElement");
        if (selezione != null) {
            ListaDocumentiAmministrativiBP bp = (ListaDocumentiAmministrativiBP) context.getBusinessProcess();
            Object[] docAmmSpecs = getDocAmmBP(context, selezione);
            IDocumentoAmministrativoBP docAmmBP = (IDocumentoAmministrativoBP) docAmmSpecs[0];
            selezione = (IDocumentoAmministrativoBulk) docAmmSpecs[1];
            ((CRUDBP) docAmmBP).edit(context, (OggettoBulk) selezione);
            return context.addBusinessProcess((BusinessProcess) docAmmBP);
        }
        return context.findDefaultForward();
    } catch (Exception e) {
        return handleException(context, e);
    }
}
Also used : CRUDBP(it.cnr.jada.util.action.CRUDBP) ListaDocumentiAmministrativiBP(it.cnr.contab.docamm00.bp.ListaDocumentiAmministrativiBP) IDocumentoAmministrativoBP(it.cnr.contab.docamm00.bp.IDocumentoAmministrativoBP) ValidationException(it.cnr.jada.bulk.ValidationException)

Aggregations

IDocumentoAmministrativoBP (it.cnr.contab.docamm00.bp.IDocumentoAmministrativoBP)30 BusinessProcessException (it.cnr.jada.action.BusinessProcessException)19 IGenericSearchDocAmmBP (it.cnr.contab.docamm00.bp.IGenericSearchDocAmmBP)13 HookForward (it.cnr.jada.action.HookForward)12 ValidationException (it.cnr.jada.bulk.ValidationException)12 ComponentException (it.cnr.jada.comp.ComponentException)10 OggettoBulk (it.cnr.jada.bulk.OggettoBulk)8 IDocumentoAmministrativoBulk (it.cnr.contab.docamm00.docs.bulk.IDocumentoAmministrativoBulk)7 it.cnr.contab.docamm00.docs.bulk (it.cnr.contab.docamm00.docs.bulk)6 ApplicationException (it.cnr.jada.comp.ApplicationException)6 RemoteException (java.rmi.RemoteException)6 DocumentiAmministrativiFatturazioneElettronicaBP (it.cnr.contab.docamm00.bp.DocumentiAmministrativiFatturazioneElettronicaBP)5 ListaDocumentiAmministrativiBP (it.cnr.contab.docamm00.bp.ListaDocumentiAmministrativiBP)5 Filtro_ricerca_doc_amm_fatturazione_elettronicaVBulk (it.cnr.contab.docamm00.docs.bulk.Filtro_ricerca_doc_amm_fatturazione_elettronicaVBulk)5 FatturaAttivaSingolaComponentSession (it.cnr.contab.docamm00.ejb.FatturaAttivaSingolaComponentSession)5 CRUDVirtualObbligazioneBP (it.cnr.contab.doccont00.bp.CRUDVirtualObbligazioneBP)5 BulkInfo (it.cnr.jada.bulk.BulkInfo)5 IntrospectionException (it.cnr.jada.persistency.IntrospectionException)5 PersistencyException (it.cnr.jada.persistency.PersistencyException)5 SelezionatoreListaBP (it.cnr.jada.util.action.SelezionatoreListaBP)5