use of it.cnr.contab.gestiva00.core.bulk.Liquidazione_ivaBulk in project sigla-main by consiglionazionaledellericerche.
the class StampaRegistriIvaComponent method callStampeIva.
// ^^@@
/**
* gestisce il richiamo delle procedure sul DB per la registrazione, la stampa,
* la liquidazione, la conferma dei registri e l'annullamento di un registro
* registro provvisorio o definitivo
* PreCondition:
* richiesta di creare un registro nuovo provvisorio o definitivo
* PostCondition:
* crea il registro
* stampa di un registro
* PreCondition:
* richiesta di stampa di un registro provvisorio o definitivo
* PostCondition:
* crea il prospetto di stampa
* liquidazione
* PreCondition:
* liquidazione provvisoria o definitiva
* PostCondition:
* crea la liquidazione
* Si è verificato un errore.
* PreCondition:
* Si è verificato un errore.
* PostCondition:
* Viene inviato un messaggio e non permette l'operazione
*/
// ^^@@
public MTUWrapper callStampeIva(it.cnr.jada.UserContext userContext, Stampa_registri_ivaVBulk stampaBulk) throws it.cnr.jada.comp.ComponentException {
// ricavo il progressivo unico pg_stampa
java.math.BigDecimal pg_Stampa = null;
if (stampaBulk instanceof IPrintable) {
if (stampaBulk instanceof Liquidazione_massa_provvisoria_ivaVBulk)
pg_Stampa = ((IPrintable) stampaBulk).getId_report();
else {
pg_Stampa = getSequence(userContext);
((IPrintable) stampaBulk).setId_report(pg_Stampa);
}
}
MTUStuff message = new MTUStuff("");
// per le liquidazioni aggiungo una riga con i dati i dati inseriti dall'utente
if (stampaBulk.isLiquidazione()) {
Liquidazione_ivaBulk liquidazione = aggiornaLiquidazione(userContext, (Liquidazione_ivaVBulk) stampaBulk, pg_Stampa);
try {
insertBulk(userContext, liquidazione);
} catch (it.cnr.jada.persistency.PersistencyException ex) {
throw new it.cnr.jada.comp.ApplicationException("Errore generale");
}
}
String msgSP = "";
if (stampaBulk.getTipo_stampa().equals("GESTIONE")) {
controllaSezionali(userContext, stampaBulk);
LoggableStatement cs = null;
try {
try {
if (stampaBulk.getTipo_report().equals("CONFERMA"))
cs = new LoggableStatement(getConnection(userContext), "{call " + it.cnr.jada.util.ejb.EJBCommonServices.getDefaultSchema() + "CNRCTB250.conferma_registro(?,?,?,?,?,?,?) }", false, this.getClass());
else
cs = new LoggableStatement(getConnection(userContext), "{call " + it.cnr.jada.util.ejb.EJBCommonServices.getDefaultSchema() + "CNRCTB250.annulla_registro(?,?,?,?,?,?,?) }", false, this.getClass());
// CD CDS
cs.setString(1, ((Gestione_registri_ivaVBulk) stampaBulk).getUnita_organizzativa().getUnita_padre().getCd_unita_organizzativa());
// Cd_unita_organizzativa
cs.setString(2, ((Gestione_registri_ivaVBulk) stampaBulk).getUnita_organizzativa().getCd_unita_organizzativa());
// ESERCIZIO
cs.setInt(3, stampaBulk.getEsercizio().intValue());
// Cd_tipo_sezionale
cs.setString(4, stampaBulk.getTipo_sezionale().getCd_tipo_sezionale());
// Data inizio
cs.setDate(5, new Date(stampaBulk.getData_da().getTime()));
// Data fine
cs.setDate(6, new Date(stampaBulk.getData_a().getTime()));
// Utente
cs.setString(7, stampaBulk.getUser());
cs.executeQuery();
} catch (java.sql.SQLException e) {
throw SQLExceptionHandler.getInstance().handleSQLException(e);
} finally {
if (cs != null)
cs.close();
}
} catch (Throwable ex) {
if (ex instanceof ApplicationWarningPersistencyException)
message.setMessage(ex.getMessage());
else
throw handleException(ex);
}
} else {
// richiamo la stored procedure per la generazione dei vari report
LoggableStatement cs = null;
try {
try {
cs = new LoggableStatement(getConnection(userContext), "{call " + it.cnr.jada.util.ejb.EJBCommonServices.getDefaultSchema() + "CNRCTB250.StampeIVA(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?) }", false, this.getClass());
// CD CDS
cs.setString(1, stampaBulk.getCd_cds());
// Cd_unita_organizzativa
cs.setString(2, stampaBulk.getCd_unita_organizzativa());
// ESERCIZIO
cs.setInt(3, stampaBulk.getEsercizio().intValue());
if (stampaBulk.isStarSezionali())
// Cd_tipo_sezionale
cs.setString(4, "*");
else
// Cd_tipo_sezionale
cs.setString(4, stampaBulk.getTipo_sezionale().getCd_tipo_sezionale());
// Data inizio
cs.setDate(5, new Date(stampaBulk.getData_da().getTime()));
// Data fine
cs.setDate(6, new Date(stampaBulk.getData_a().getTime()));
if (stampaBulk.getTipo_stampa().equals(stampaBulk.TIPO_STAMPA_LIQUIDAZIONE) && stampaBulk.getTipo_report().equals(stampaBulk.DEFINITIVO))
// TipoStampa = 'LIQUIDAZIONE_DEF'
cs.setString(7, stampaBulk.getTipo_stampa() + "_DEF");
else
// TipoStampa = 'REGISTRI'/ 'RIEPILOGATIVI' / 'LIQUIDAZIONE' / 'LIQUIDAZIONE DI MASSA'
cs.setString(7, stampaBulk.getTipo_stampa());
if (stampaBulk.isStarRegistro()) {
if (stampaBulk.isRiepilogativo())
cs.setString(8, ((Riepilogativi_ivaVBulk) stampaBulk).getSezionaliFlag());
else
// TipoRegistro
cs.setString(8, "*");
} else if (stampaBulk.getTipo_stampa() != null && stampaBulk.getTipo_stampa().equals(stampaBulk.TIPO_STAMPA_RIEPILOGATIVI_IVA_DIFFERITA))
cs.setString(8, ((Riepilogativi_ivaVBulk) stampaBulk).getSezionaliFlag());
else
// TipoRegistro
cs.setString(8, stampaBulk.getTipo_sezionale().getTi_acquisti_vendite());
// TipoReport = 'P' [provvisorio] / 'D' [definitivo]
cs.setString(9, stampaBulk.getTipo_report());
cs.setString(10, ((stampaBulk.isRistampa()) ? stampaBulk.RISTAMPA : // Ristampa = 'N' [no ristampa] / 'Y' [ristampa]
stampaBulk.NON_RISTAMPA));
// repId [dalla sequence]
cs.setBigDecimal(11, pg_Stampa);
// logId [?] (al momento non è gestito...)
cs.setInt(12, 1);
cs.registerOutParameter(13, java.sql.Types.VARCHAR);
cs.setString(14, stampaBulk.getUser());
cs.setString(15, (stampaBulk.getTipoSezionaleFlag() == null) ? "" : stampaBulk.getTipoSezionaleFlag());
cs.setString(16, stampaBulk.getTipoImpegnoFlag());
cs.executeQuery();
msgSP = cs.getString(13);
} catch (java.sql.SQLException e) {
throw SQLExceptionHandler.getInstance().handleSQLException(e);
} finally {
if (cs != null)
cs.close();
}
} catch (Throwable ex) {
if (ex instanceof ApplicationWarningPersistencyException)
message.setMessage(ex.getMessage());
else
throw handleException(ex);
}
// per la liquidazione vado a rileggere i dati updatati dalla stored procedure
if (stampaBulk.isLiquidazione()) {
try {
Liquidazione_ivaBulk liquidazione = ((Liquidazione_ivaVBulk) stampaBulk).getLiquidazione_iva();
it.cnr.jada.bulk.BulkHome home = getHome(userContext, Liquidazione_ivaBulk.class);
it.cnr.jada.persistency.sql.SQLBuilder sql = home.createSQLBuilder();
sql.addClause("AND", "cd_cds", sql.EQUALS, liquidazione.getCd_cds());
sql.addClause("AND", "esercizio", sql.EQUALS, liquidazione.getEsercizio());
sql.addClause("AND", "cd_unita_organizzativa", sql.EQUALS, liquidazione.getCd_unita_organizzativa());
sql.addClause("AND", "dt_inizio", sql.EQUALS, liquidazione.getDt_inizio());
sql.addClause("AND", "dt_fine", sql.EQUALS, liquidazione.getDt_fine());
if (stampaBulk instanceof Liquidazione_definitiva_ivaVBulk)
sql.addClause("AND", "report_id", sql.EQUALS, new Long(0L));
else
sql.addClause("AND", "report_id", sql.EQUALS, liquidazione.getReport_id());
sql.addClause("AND", "tipo_liquidazione", sql.EQUALS, stampaBulk.getTipoSezionaleFlag());
it.cnr.jada.persistency.Broker broker = home.createBroker(sql);
if (!broker.next())
throw new ApplicationException("Impossibile recuperare i dati della liquidazione dopo l'esecuzione della procedura!");
((Liquidazione_ivaVBulk) stampaBulk).setLiquidazione_iva((Liquidazione_ivaBulk) broker.fetch(Liquidazione_ivaBulk.class));
} catch (it.cnr.jada.persistency.PersistencyException e) {
throw handleException(e);
}
}
}
if (msgSP != null && msgSP != "")
message.setMessage(msgSP);
return new MTUWrapper(stampaBulk, message);
}
use of it.cnr.contab.gestiva00.core.bulk.Liquidazione_ivaBulk in project sigla-main by consiglionazionaledellericerche.
the class LiquidIvaInterfComponent method inizializzaMese.
public Liquidazione_definitiva_ivaVBulk inizializzaMese(UserContext aUC, Liquidazione_definitiva_ivaVBulk bulk) throws ComponentException {
try {
if (bulk != null) {
bulk.setRipartizione_finanziaria(new BulkList());
bulk.setLiquidazioniProvvisorie(new BulkList());
bulk.setVariazioni_associate(new BulkList());
bulk.setMandato_righe_associate(new BulkList());
if (bulk.getMese() != null) {
Unita_organizzativaBulk uoScrivania = ((Unita_organizzativaBulk) getHome(aUC, Unita_organizzativaBulk.class).findByPrimaryKey(new Unita_organizzativaBulk(CNRUserContext.getCd_unita_organizzativa(aUC))));
boolean isUoEnte = uoScrivania.getCd_tipo_unita().compareTo(it.cnr.contab.config00.sto.bulk.Tipo_unita_organizzativaHome.TIPO_UO_ENTE) == 0;
if (isUoEnte) {
Liquidazione_ivaHome home = (Liquidazione_ivaHome) getHome(aUC, Liquidazione_ivaBulk.class);
if (bulk.getProspetti_stampati() != null) {
for (Iterator iterator = bulk.getProspetti_stampati().iterator(); iterator.hasNext(); ) {
Liquidazione_ivaBulk liq = (Liquidazione_ivaBulk) iterator.next();
Calendar cal = new GregorianCalendar();
cal.setTime(liq.getDt_inizio());
if (bulk.getMesi_int().get(bulk.getMese()).equals(cal.get(Calendar.MONTH) + 1)) {
bulk.setMandato_righe_associate(new BulkList(home.findMandatoRigheAssociateList(liq)));
break;
}
}
}
} else {
Liquidazione_ivaHome home = (Liquidazione_ivaHome) getHome(aUC, Liquidazione_ivaBulk.class);
bulk.setRipartizione_finanziaria(new BulkList(home.findRipartizioneFinanziariaList(bulk)));
if (!bulk.isRegistroStampato(bulk.getMese())) {
bulk.setLiquidazioniProvvisorie(new BulkList(home.findLiquidazioniProvvisorieList(bulk)));
} else {
bulk.setVariazioni_associate(new BulkList(home.findVariazioniAssociateList(bulk)));
}
getHomeCache(aUC).fetchAll(aUC);
}
}
}
return bulk;
} catch (Exception e) {
throw handleException(e);
}
}
use of it.cnr.contab.gestiva00.core.bulk.Liquidazione_ivaBulk in project sigla-main by consiglionazionaledellericerche.
the class ElaboraFileIntraComponent method recuperoMaxDtPagamentoLiq.
public java.util.Date recuperoMaxDtPagamentoLiq(UserContext uc, OggettoBulk bulk) throws ComponentException {
try {
Liquidazione_ivaHome home = (Liquidazione_ivaHome) getHome(uc, Liquidazione_ivaBulk.class);
SQLBuilder sql = home.createSQLBuilder();
sql.addTableToHeader("v_unita_organizzativa_valida");
sql.addSQLClause("AND", "V_UNITA_ORGANIZZATIVA_VALIDA.CD_TIPO_UNITA", SQLBuilder.EQUALS, it.cnr.contab.config00.sto.bulk.Tipo_unita_organizzativaHome.TIPO_UO_ENTE);
sql.addSQLClause("AND", "V_UNITA_ORGANIZZATIVA_VALIDA.FL_CDS", SQLBuilder.EQUALS, "N");
sql.addSQLClause("AND", "V_UNITA_ORGANIZZATIVA_VALIDA.ESERCIZIO", SQLBuilder.EQUALS, it.cnr.contab.utenze00.bp.CNRUserContext.getEsercizio(uc));
sql.addSQLJoin("V_UNITA_ORGANIZZATIVA_VALIDA.CD_UNITA_ORGANIZZATIVA", "LIQUIDAZIONE_IVA.CD_UNITA_ORGANIZZATIVA");
sql.addSQLClause("AND", "STATO", SQLBuilder.EQUALS, Stampa_registri_ivaVBulk.DEFINITIVO);
sql.addSQLClause("AND", "DT_INIZIO", SQLBuilder.EQUALS, new java.sql.Timestamp(new GregorianCalendar(it.cnr.contab.utenze00.bp.CNRUserContext.getEsercizio(uc).intValue(), ((VIntra12Bulk) bulk).getMese().intValue() - 1, 01).getTime().getTime()));
sql.openParenthesis("AND");
sql.addSQLClause("AND", "TIPO_LIQUIDAZIONE", SQLBuilder.EQUALS, Stampa_registri_ivaVBulk.SEZIONALI_SERVIZI_NON_RESIDENTI);
sql.addSQLClause("OR", "TIPO_LIQUIDAZIONE", SQLBuilder.EQUALS, Stampa_registri_ivaVBulk.SEZIONALI_BENI_INTRA_UE);
sql.closeParenthesis();
java.util.Date maxData = null;
for (Iterator i = home.fetchAll(sql).iterator(); i.hasNext(); ) {
Liquidazione_ivaBulk liq = (Liquidazione_ivaBulk) i.next();
MandatoIHome home_man = (MandatoIHome) getHome(uc, MandatoIBulk.class);
SQLBuilder sql_man = home_man.createSQLBuilder();
sql_man.addTableToHeader("MANDATO_RIGA");
sql_man.addSQLClause("AND", "MANDATO_RIGA.ESERCIZIO_DOC_AMM", SQLBuilder.EQUALS, liq.getEsercizio_doc_amm());
sql_man.addSQLClause("AND", "MANDATO_RIGA.CD_CDS_DOC_AMM", SQLBuilder.EQUALS, liq.getCd_cds_doc_amm());
sql_man.addSQLClause("AND", "MANDATO_RIGA.CD_UO_DOC_AMM", SQLBuilder.EQUALS, liq.getCd_uo_doc_amm());
sql_man.addSQLClause("AND", "MANDATO_RIGA.CD_TIPO_DOCUMENTO_AMM", SQLBuilder.EQUALS, liq.getCd_tipo_documento());
sql_man.addSQLClause("AND", "MANDATO_RIGA.PG_DOC_AMM", SQLBuilder.EQUALS, liq.getPg_doc_amm());
sql_man.addSQLClause("AND", "MANDATO.STATO", SQLBuilder.EQUALS, MandatoBulk.STATO_MANDATO_PAGATO);
sql_man.addSQLJoin("MANDATO.ESERCIZIO", SQLBuilder.EQUALS, "MANDATO_RIGA.ESERCIZIO");
sql_man.addSQLJoin("MANDATO.CD_CDS", SQLBuilder.EQUALS, "MANDATO_RIGA.CD_CDS");
sql_man.addSQLJoin("MANDATO.PG_MANDATO", SQLBuilder.EQUALS, "MANDATO_RIGA.PG_MANDATO");
for (Iterator i_man = home_man.fetchAll(sql_man).iterator(); i_man.hasNext(); ) {
MandatoIBulk man = (MandatoIBulk) i_man.next();
if (maxData == null || maxData.after(man.getDt_pagamento())) {
maxData = man.getDt_pagamento();
}
}
}
return maxData;
} catch (Exception e) {
handleException(e);
}
return null;
}
use of it.cnr.contab.gestiva00.core.bulk.Liquidazione_ivaBulk in project sigla-main by consiglionazionaledellericerche.
the class StampaRegistriIvaComponent method selectProspetti_stampatiByClause.
// ^^@@
/**
* Prospetto delle liquidazioni definitive
* richiesta la lista delle liquidazioni
* PreCondition:
* Viene richiesta la lista delle liquidazioni già stampate
* PostCondition:
* visualizza la lista delle liquidazioni stampate
* si verifica un errore
* PreCondition:
* Si è verificato un errore.
* PostCondition:
* Viene inviato un messaggio con il relativo errore ritornato dal DB
*/
// ^^@@
public java.util.Collection selectProspetti_stampatiByClause(UserContext aUC, OggettoBulk bulk, Liquidazione_ivaBulk liq, CompoundFindClause clauses) throws ComponentException, it.cnr.jada.persistency.PersistencyException {
Liquidazione_ivaHome home = (Liquidazione_ivaHome) getHome(aUC, Liquidazione_ivaBulk.class);
it.cnr.jada.persistency.sql.SQLBuilder sql = home.createSQLBuilder();
Stampa_registri_ivaVBulk stampaBulk = (Stampa_registri_ivaVBulk) bulk;
sql.addClause(clauses);
sql.setDistinctClause(true);
sql.addSQLClause("AND", "CD_CDS", sql.EQUALS, stampaBulk.getCd_cds());
sql.addSQLClause("AND", "CD_UNITA_ORGANIZZATIVA", sql.EQUALS, stampaBulk.getCd_unita_organizzativa());
sql.addSQLClause("AND", "ESERCIZIO", sql.EQUALS, stampaBulk.getEsercizio());
sql.addSQLClause("AND", "STATO", sql.EQUALS, stampaBulk.DEFINITIVO);
sql.addSQLClause("AND", "TIPO_LIQUIDAZIONE", sql.EQUALS, stampaBulk.getTipoSezionaleFlag());
return (java.util.Collection) home.fetchAll(sql);
}
use of it.cnr.contab.gestiva00.core.bulk.Liquidazione_ivaBulk in project sigla-main by consiglionazionaledellericerche.
the class StampaRegistriIvaComponent method aggiornaLiquidazione.
private Liquidazione_ivaBulk aggiornaLiquidazione(it.cnr.jada.UserContext userContext, Liquidazione_ivaVBulk stampaBulk, java.math.BigDecimal pg_Stampa) throws it.cnr.jada.comp.ComponentException {
Liquidazione_ivaBulk liquidazione = stampaBulk.getLiquidazione_iva();
liquidazione.setReport_id(new Long(pg_Stampa.longValue()));
liquidazione.setDt_inizio(stampaBulk.getData_da());
liquidazione.setDt_fine(stampaBulk.getData_a());
liquidazione.setTipo_liquidazione(stampaBulk.getTipoSezionaleFlag());
return liquidazione;
}
Aggregations