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();
}
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);
}
}
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);
}
}
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 };
}
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);
}
}
Aggregations