Search in sources :

Example 1 with DocumentiAmministrativiProtocollabiliBP

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

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

the class DocumentiAmministrativiProtocollabiliAction method doStampaProtocollati.

/**
 * Gestisce la selezione dopo 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.
 */
private Forward doStampaProtocollati(ActionContext context, Filtro_ricerca_doc_amm_protocollabileVBulk filtro) throws BusinessProcessException {
    DocumentiAmministrativiProtocollabiliBP bp = (DocumentiAmministrativiProtocollabiliBP) context.getBusinessProcess();
    OfflineReportPrintBP printbp = (OfflineReportPrintBP) context.createBusinessProcess(bp.getPrintbp(), new Object[] { "Th" });
    printbp.setReportName("/docamm/docamm/fatturaattiva_ncd.jasper");
    Print_spooler_paramBulk param;
    param = new Print_spooler_paramBulk();
    param.setNomeParam("Ti_stampa");
    param.setValoreParam("S");
    param.setParamType("java.lang.String");
    printbp.addToPrintSpoolerParam(param);
    param = new Print_spooler_paramBulk();
    param.setNomeParam("id_report");
    param.setValoreParam(filtro.getPgStampa().toString());
    param.setParamType("java.lang.Long");
    printbp.addToPrintSpoolerParam(param);
    context.addHookForward("close", this, "doStampaAnnullata");
    printbp.setMessage(it.cnr.jada.util.action.OptionBP.MESSAGE, "Il protocollo IVA è stato assegnato correttamente. Per confermare eseguire la stampa.");
    return context.addBusinessProcess(printbp);
}
Also used : OfflineReportPrintBP(it.cnr.contab.reports.bp.OfflineReportPrintBP) DocumentiAmministrativiProtocollabiliBP(it.cnr.contab.docamm00.bp.DocumentiAmministrativiProtocollabiliBP) Print_spooler_paramBulk(it.cnr.contab.reports.bulk.Print_spooler_paramBulk)

Example 3 with DocumentiAmministrativiProtocollabiliBP

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

the class DocumentiAmministrativiProtocollabiliAction method getSelectionListener.

/**
 * Gestisce la selezione dopo 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.
 */
private it.cnr.jada.util.action.SelectionListener getSelectionListener(ActionContext context, it.cnr.contab.docamm00.bp.CRUDFatturaAttivaBP aDocAmmBP, FatturaAttivaSingolaComponentSession faSession, Filtro_ricerca_doc_amm_protocollabileVBulk aFiltro) {
    final DocumentiAmministrativiProtocollabiliBP docAmmProtocollabileBP = (DocumentiAmministrativiProtocollabiliBP) context.getBusinessProcess();
    final it.cnr.contab.docamm00.bp.CRUDFatturaAttivaBP docAmmBP = aDocAmmBP;
    final FatturaAttivaSingolaComponentSession session = faSession;
    final Filtro_ricerca_doc_amm_protocollabileVBulk filtro = aFiltro;
    final Fattura_attivaBulk instance = (Fattura_attivaBulk) filtro.getInstance();
    return new it.cnr.jada.util.action.SelectionListener() {

        Integer counter = null;

        public void clearSelection(it.cnr.jada.action.ActionContext context) throws it.cnr.jada.action.BusinessProcessException {
            try {
                session.annullaSelezionePerStampa(context.getUserContext(), instance);
            } catch (it.cnr.jada.comp.ComponentException e) {
                throw docAmmBP.handleException(e);
            } catch (java.rmi.RemoteException e) {
                throw docAmmBP.handleException(e);
            }
        }

        public void deselectAll(it.cnr.jada.action.ActionContext context) {
        // Non deve fare nulla
        }

        public java.util.BitSet getSelection(it.cnr.jada.action.ActionContext context, it.cnr.jada.bulk.OggettoBulk[] bulks, java.util.BitSet currentSelection) {
            return currentSelection;
        }

        public void initializeSelection(it.cnr.jada.action.ActionContext context) throws it.cnr.jada.action.BusinessProcessException {
            try {
                session.inizializzaSelezionePerStampa(context.getUserContext(), instance);
            } catch (it.cnr.jada.comp.ComponentException e) {
                throw docAmmBP.handleException(e);
            } catch (java.rmi.RemoteException e) {
                throw docAmmBP.handleException(e);
            }
        }

        public void selectAll(it.cnr.jada.action.ActionContext context) throws it.cnr.jada.action.BusinessProcessException {
            try {
                Filtro_ricerca_doc_amm_protocollabileVBulk nuovoFiltro = session.selezionaTuttiPerStampa(context.getUserContext(), filtro);
                docAmmProtocollabileBP.setModel(context, nuovoFiltro);
            } catch (it.cnr.jada.comp.ComponentException e) {
                throw docAmmBP.handleException(e);
            } catch (java.rmi.RemoteException e) {
                throw docAmmBP.handleException(e);
            }
        }

        public java.util.BitSet setSelection(it.cnr.jada.action.ActionContext context, it.cnr.jada.bulk.OggettoBulk[] bulks, java.util.BitSet oldSelection, java.util.BitSet newSelection) throws it.cnr.jada.action.BusinessProcessException {
            try {
                if (counter == null) {
                    counter = new Integer(0);
                    filtro.setPgProtocollazioneIVA(session.callGetPgPerProtocolloIVA(context.getUserContext()));
                    filtro.setPgStampa(session.callGetPgPerStampa(context.getUserContext()));
                }
                counter = session.modificaSelezionePerStampa(context.getUserContext(), instance, bulks, oldSelection, newSelection, filtro.getPgProtocollazioneIVA(), counter, filtro.getPgStampa(), filtro.getDt_stampa());
                return newSelection;
            } catch (it.cnr.jada.comp.ComponentException e) {
                throw docAmmBP.handleException(e);
            } catch (java.rmi.RemoteException e) {
                throw docAmmBP.handleException(e);
            }
        }
    };
}
Also used : DocumentiAmministrativiProtocollabiliBP(it.cnr.contab.docamm00.bp.DocumentiAmministrativiProtocollabiliBP) ActionContext(it.cnr.jada.action.ActionContext) Fattura_attivaBulk(it.cnr.contab.docamm00.docs.bulk.Fattura_attivaBulk) FatturaAttivaSingolaComponentSession(it.cnr.contab.docamm00.ejb.FatturaAttivaSingolaComponentSession) Filtro_ricerca_doc_amm_protocollabileVBulk(it.cnr.contab.docamm00.docs.bulk.Filtro_ricerca_doc_amm_protocollabileVBulk)

Example 4 with DocumentiAmministrativiProtocollabiliBP

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

the class DocumentiAmministrativiProtocollabiliAction method doRiportaSelezione.

/**
 * Gestisce la selezione dopo 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 doRiportaSelezione(ActionContext context) {
    DocumentiAmministrativiProtocollabiliBP bp = (DocumentiAmministrativiProtocollabiliBP) context.getBusinessProcess();
    try {
        Filtro_ricerca_doc_amm_protocollabileVBulk filtro = (Filtro_ricerca_doc_amm_protocollabileVBulk) 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();
            if (session.esistonoDatiPerProtocollazioneIva(context.getUserContext(), filtro.getPgProtocollazioneIVA())) {
                session.protocolla(context.getUserContext(), filtro.getDt_stampa(), filtro.getPgProtocollazioneIVA());
                return doStampaProtocollati(context, filtro);
            }
        } 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 : DocumentiAmministrativiProtocollabiliBP(it.cnr.contab.docamm00.bp.DocumentiAmministrativiProtocollabiliBP) Fattura_attivaBulk(it.cnr.contab.docamm00.docs.bulk.Fattura_attivaBulk) Filtro_ricerca_doc_amm_protocollabileVBulk(it.cnr.contab.docamm00.docs.bulk.Filtro_ricerca_doc_amm_protocollabileVBulk) FatturaAttivaSingolaComponentSession(it.cnr.contab.docamm00.ejb.FatturaAttivaSingolaComponentSession) IDocumentoAmministrativoBulk(it.cnr.contab.docamm00.docs.bulk.IDocumentoAmministrativoBulk) IDocumentoAmministrativoBP(it.cnr.contab.docamm00.bp.IDocumentoAmministrativoBP) BusinessProcessException(it.cnr.jada.action.BusinessProcessException) BusinessProcessException(it.cnr.jada.action.BusinessProcessException)

Aggregations

DocumentiAmministrativiProtocollabiliBP (it.cnr.contab.docamm00.bp.DocumentiAmministrativiProtocollabiliBP)4 Filtro_ricerca_doc_amm_protocollabileVBulk (it.cnr.contab.docamm00.docs.bulk.Filtro_ricerca_doc_amm_protocollabileVBulk)3 FatturaAttivaSingolaComponentSession (it.cnr.contab.docamm00.ejb.FatturaAttivaSingolaComponentSession)3 IDocumentoAmministrativoBP (it.cnr.contab.docamm00.bp.IDocumentoAmministrativoBP)2 Fattura_attivaBulk (it.cnr.contab.docamm00.docs.bulk.Fattura_attivaBulk)2 BusinessProcessException (it.cnr.jada.action.BusinessProcessException)2 Unita_organizzativaBulk (it.cnr.contab.config00.sto.bulk.Unita_organizzativaBulk)1 IGenericSearchDocAmmBP (it.cnr.contab.docamm00.bp.IGenericSearchDocAmmBP)1 IDocumentoAmministrativoBulk (it.cnr.contab.docamm00.docs.bulk.IDocumentoAmministrativoBulk)1 OfflineReportPrintBP (it.cnr.contab.reports.bp.OfflineReportPrintBP)1 Print_spooler_paramBulk (it.cnr.contab.reports.bulk.Print_spooler_paramBulk)1 ActionContext (it.cnr.jada.action.ActionContext)1 BulkInfo (it.cnr.jada.bulk.BulkInfo)1 OggettoBulk (it.cnr.jada.bulk.OggettoBulk)1 CompoundFindClause (it.cnr.jada.persistency.sql.CompoundFindClause)1 SelezionatoreListaBP (it.cnr.jada.util.action.SelezionatoreListaBP)1