Search in sources :

Example 1 with Fattura_passiva_IBulk

use of it.cnr.contab.docamm00.docs.bulk.Fattura_passiva_IBulk in project sigla-main by consiglionazionaledellericerche.

the class CRUDFatturaPassivaIBP method isInputReadonlyDoc1210.

/**
 * Insert the method's description here.
 * Creation date: (04/06/2001 11:45:16)
 * @return boolean
 */
public boolean isInputReadonlyDoc1210() {
    Fattura_passiva_IBulk fp = (Fattura_passiva_IBulk) getModel();
    it.cnr.contab.docamm00.docs.bulk.Lettera_pagam_esteroBulk lettera = fp.getLettera_pagamento_estero();
    return super.isInputReadonlyDoc1210() || isDeleting() || isModelVoided() || (fp.isDoc1210Associato() && !lettera.isAnnoDiCompetenza()) || (fp != null && ((fp.isPagata() && !isSearching()) || (isAnnoDiCompetenza() && fp.isRiportata()) || // DA UN ES. PRECEDENTE a quello di scrivania.
    (!isAnnoDiCompetenza() && !fp.COMPLETAMENTE_RIPORTATO.equalsIgnoreCase(fp.getRiportataInScrivania()))));
}
Also used : Fattura_passiva_IBulk(it.cnr.contab.docamm00.docs.bulk.Fattura_passiva_IBulk)

Example 2 with Fattura_passiva_IBulk

use of it.cnr.contab.docamm00.docs.bulk.Fattura_passiva_IBulk in project sigla-main by consiglionazionaledellericerche.

the class FatturaPassivaComponent method validazioneComune.

private void validazioneComune(UserContext aUC, Fattura_passivaBulk fatturaPassiva) throws ComponentException {
    if (!verificaEsistenzaSezionalePer(aUC, fatturaPassiva)) {
        throw new ApplicationMessageFormatException("Attenzione: non è stato definito un sezionale per le {0} e il tipo sezionale '{1}'!", fatturaPassiva.getDescrizioneEntitaPlurale(), Optional.ofNullable(fatturaPassiva).flatMap(fattura_passivaBulk -> Optional.ofNullable(fattura_passivaBulk.getTipo_sezionale())).flatMap(tipo_sezionaleBulk -> Optional.ofNullable(tipo_sezionaleBulk.getDs_tipo_sezionale())).orElse("NON DEFINITO"));
    }
    try {
        fatturaPassiva.validateDate();
        // quella inserita in configurazione
        if (fatturaPassiva.getFl_liquidazione_differita() && fatturaPassiva.getDt_fattura_fornitore() != null) {
            java.sql.Timestamp data_limite;
            java.sql.Timestamp data_limite_sup;
            try {
                data_limite = ((it.cnr.contab.config00.ejb.Configurazione_cnrComponentSession) it.cnr.jada.util.ejb.EJBCommonServices.createEJB("CNRCONFIG00_EJB_Configurazione_cnrComponentSession", it.cnr.contab.config00.ejb.Configurazione_cnrComponentSession.class)).getDt01(aUC, new Integer(0), "*", "COSTANTI", "LIMITE_CREAZIONE_FATT_PASS_ES_DIF");
                data_limite_sup = ((it.cnr.contab.config00.ejb.Configurazione_cnrComponentSession) it.cnr.jada.util.ejb.EJBCommonServices.createEJB("CNRCONFIG00_EJB_Configurazione_cnrComponentSession", it.cnr.contab.config00.ejb.Configurazione_cnrComponentSession.class)).getDt02(aUC, new Integer(0), "*", "COSTANTI", "LIMITE_CREAZIONE_FATT_PASS_ES_DIF");
            } catch (RemoteException e) {
                throw handleException(e);
            }
            if (fatturaPassiva.getDt_fattura_fornitore().compareTo(data_limite) < 0 || fatturaPassiva.getDt_fattura_fornitore().compareTo(data_limite_sup) > 0) {
                fatturaPassiva.setFl_liquidazione_differita(false);
                throw new it.cnr.jada.comp.ApplicationException("Non è possibile indicare la liquidazione differita con la data emissione inserita.");
            }
        }
        // Verifica la validità della data di registrazione rispetto all'ultima
        // data di stampa registri IVA
        callVerifyDataRegistrazione(aUC, fatturaPassiva);
        // Verifica che il documento rispetti la sequenza data/numero
        // di registrazione
        validaSequenceDateNumber(aUC, fatturaPassiva);
        // Controllo date competenza COGE
        fatturaPassiva.validaDateCompetenza();
        // r.p. 17/09/2015 controllo non ritenuto utile
        // competenze omogenee per dettagli collegate alla stessa scadenza
        // controllaCompetenzaCOGEDettagli(aUC, fatturaPassiva);
        validateFornitore(aUC, fatturaPassiva);
    } catch (it.cnr.jada.bulk.ValidationException e) {
        throw new it.cnr.jada.comp.ApplicationException(e.getMessage());
    }
    Fattura_passivaBulk original = null;
    try {
        original = (Fattura_passivaBulk) getHome(aUC, fatturaPassiva, null, "none").findByPrimaryKey(fatturaPassiva);
    } catch (it.cnr.jada.persistency.PersistencyException e) {
        throw handleException(fatturaPassiva, e);
    }
    if (original != null) {
        if (fatturaPassiva.isStampataSuRegistroIVA() || fatturaPassiva.getProgr_univoco() != null) {
            if (!original.getDt_registrazione().equals(fatturaPassiva.getDt_registrazione()))
                throw new it.cnr.jada.comp.ApplicationException("Attenzione: non è possibile modificare la data registrazione della " + fatturaPassiva.getDescrizioneEntita() + " o della sua autofattura (se esiste) quando è presente sui registri.");
            if (fatturaPassiva.isStampataSuRegistroIVA()) {
                if (!original.getCd_tipo_sezionale().equalsIgnoreCase(fatturaPassiva.getCd_tipo_sezionale()) && hasFatturaPassivaARowNotStateI(fatturaPassiva))
                    throw new it.cnr.jada.comp.ApplicationException("Attenzione: non è possibile modificare il sezionale di " + fatturaPassiva.getDescrizioneEntitaPlurale() + " o della relativa autofattura (se esiste) parzialmente contabilizzate e stato IVA B o C.");
            }
            if (original.getFl_autofattura() != null && !original.getFl_autofattura().equals(fatturaPassiva.getFl_autofattura()))
                throw new it.cnr.jada.comp.ApplicationException("Attenzione: non è possibile modificare il tipo di sezionale o la tipologia dei dettagli (bene/servizio) per " + fatturaPassiva.getDescrizioneEntitaPlurale() + " o per la relativa autofattura (se esiste) in stato IVA B o C.");
            if (fatturaPassiva.isStampataSuRegistroIVA() || fatturaPassiva.isElettronica() || fatturaPassiva.isGenerataDaCompenso())
                if (original.getIm_totale_fattura().compareTo(fatturaPassiva.getIm_totale_fattura()) != 0)
                    throw new it.cnr.jada.comp.ApplicationException("Attenzione: non si può modificare il totale fattura quando la fattura è elettronica e/o presente sui sezionali iva");
            if (!original.getNr_fattura_fornitore().equalsIgnoreCase(fatturaPassiva.getNr_fattura_fornitore()) || !original.getDt_fattura_fornitore().equals(fatturaPassiva.getDt_fattura_fornitore()) || // original.getIm_totale_fattura().compareTo(fatturaPassiva.getIm_totale_fattura()) != 0 ||
            !original.getFl_intra_ue().equals(fatturaPassiva.getFl_intra_ue()) || !original.getFl_extra_ue().equals(fatturaPassiva.getFl_extra_ue()) || !original.getFl_san_marino_con_iva().equals(fatturaPassiva.getFl_san_marino_con_iva()) || // ||
            !original.getFl_san_marino_senza_iva().equals(fatturaPassiva.getFl_san_marino_senza_iva()))
                // !original.getCd_tipo_sezionale().equalsIgnoreCase(fatturaPassiva.getCd_tipo_sezionale()))
                throw new it.cnr.jada.comp.ApplicationException("Attenzione: non si possono modificare campi relativi alla " + fatturaPassiva.getDescrizioneEntita() + " del fornitore quando la fattura o la relativa autofattura (se esiste).");
            if (!original.getCd_divisa().equals(fatturaPassiva.getCd_divisa()) || original.getCambio().compareTo(fatturaPassiva.getCambio()) != 0)
                throw new it.cnr.jada.comp.ApplicationException("Attenzione: non si possono modificare i campi della valuta o del cambio della " + fatturaPassiva.getDescrizioneEntita());
            if (!original.getCd_terzo().equals(fatturaPassiva.getCd_terzo()))
                throw new it.cnr.jada.comp.ApplicationException("Attenzione: non si possono modificare campi relativi al fornitore della " + fatturaPassiva.getDescrizioneEntita());
        }
        if (!fatturaPassiva.isStampataSuRegistroIVA() && fatturaPassiva.getProgr_univoco() == null && fatturaPassiva.isPagata() && !original.getCd_terzo().equals(fatturaPassiva.getCd_terzo()))
            throw new it.cnr.jada.comp.ApplicationException("Attenzione: non si possono modificare campi relativi al fornitore della " + fatturaPassiva.getDescrizioneEntita());
        // se già collegate
        if (fatturaPassiva instanceof Fattura_passiva_IBulk && (original.getFl_extra_ue() != null && original.getFl_extra_ue().booleanValue() && Fattura_passivaBulk.FATTURA_DI_BENI.equalsIgnoreCase(original.getTi_bene_servizio()))) {
            if ((fatturaPassiva.getFl_extra_ue() == null || !fatturaPassiva.getFl_extra_ue().booleanValue()) || !Fattura_passivaBulk.FATTURA_DI_BENI.equalsIgnoreCase(fatturaPassiva.getTi_bene_servizio())) {
                Fattura_passiva_IBulk fp = (Fattura_passiva_IBulk) fatturaPassiva;
                Fattura_passiva_IHome fpHome = (Fattura_passiva_IHome) getHome(aUC, fatturaPassiva);
                try {
                    if (fpHome.selectBolleDoganaliPer(fp).executeExistsQuery(getConnection(aUC)) || fpHome.selectSpedizionieriPer(fp).executeExistsQuery(getConnection(aUC)))
                        throw new ApplicationException("La fattura estera è collegata a fatture di tipo spedizioniere o bolle doganali. I cambiamenti apportati non sono validi. Operazione annullata!");
                } catch (SQLException e) {
                    throw handleException(fp, e);
                }
            }
        }
        // non posso cambiare tipo
        if (original.isEstera() && !fatturaPassiva.isEstera() && fatturaPassiva.getPg_lettera() != null)
            throw new ApplicationException("La fattura era estera: i cambiamenti apportati non sono validi perchè è già stato emesso un documento 1210. Operazione annullata!");
        java.util.List originalRows = null;
        try {
            Fattura_passiva_rigaBulk clause = null;
            if (fatturaPassiva instanceof Fattura_passiva_IBulk)
                clause = new Fattura_passiva_rigaIBulk();
            else if (fatturaPassiva instanceof Nota_di_creditoBulk)
                clause = new Nota_di_credito_rigaBulk();
            else
                clause = new Nota_di_debito_rigaBulk();
            clause.setFattura_passiva(original);
            originalRows = getHome(aUC, clause, null, "solo_voce_iva").find(clause);
            getHomeCache(aUC).fetchAll(aUC);
        } catch (it.cnr.jada.persistency.PersistencyException e) {
            throw handleException(fatturaPassiva, e);
        }
        // Modificato a seguito richiesta 423
        if (originalRows != null && (fatturaPassiva.isStampataSuRegistroIVA() || fatturaPassiva.getProgr_univoco() != null)) {
            // if (!(fatturaPassiva instanceof Fattura_passiva_IBulk) &&
            // originalRows.size() != fatturaPassiva.getFattura_passiva_dettColl().size())
            // throw new it.cnr.jada.comp.ApplicationException("Attenzione: non è possibile aggiungere, eliminare o modificare i dettagli quando lo stato IVA della " + fatturaPassiva.getDescrizioneEntita() + " è B o C.");
            // else {
            original.setFattura_passiva_dettColl(new BulkList(originalRows));
            for (Iterator i = original.getFattura_passiva_dettColl().iterator(); i.hasNext(); ) ((Fattura_passiva_rigaBulk) i.next()).calcolaCampiDiRiga();
            original.setChangeOperationOn(original.getValuta());
            validaConConsuntivi(aUC, original, fatturaPassiva);
        // }
        }
    }
}
Also used : it.cnr.contab.docamm00.intrastat.bulk(it.cnr.contab.docamm00.intrastat.bulk) EsercizioBulk(it.cnr.contab.config00.esercizio.bulk.EsercizioBulk) it.cnr.contab.anagraf00.core.bulk(it.cnr.contab.anagraf00.core.bulk) LoggerFactory(org.slf4j.LoggerFactory) BigDecimal(java.math.BigDecimal) AnagraficoComponentSession(it.cnr.contab.anagraf00.ejb.AnagraficoComponentSession) Inventario_beniComponentSession(it.cnr.contab.inventario00.ejb.Inventario_beniComponentSession) it.cnr.contab.docamm00.fatturapa.bulk(it.cnr.contab.docamm00.fatturapa.bulk) it.cnr.contab.docamm00.tabrif.bulk(it.cnr.contab.docamm00.tabrif.bulk) AccertamentoAbstractComponentSession(it.cnr.contab.doccont00.ejb.AccertamentoAbstractComponentSession) Timestamp(java.sql.Timestamp) it.cnr.contab.config00.bulk(it.cnr.contab.config00.bulk) Unita_organizzativa_enteHome(it.cnr.contab.config00.sto.bulk.Unita_organizzativa_enteHome) it.cnr.contab.docamm00.docs.bulk(it.cnr.contab.docamm00.docs.bulk) EJBCommonServices(it.cnr.jada.util.ejb.EJBCommonServices) Collectors(java.util.stream.Collectors) Elemento_voceBulk(it.cnr.contab.config00.pdcfin.bulk.Elemento_voceBulk) FileNotFoundException(java.io.FileNotFoundException) Serializable(java.io.Serializable) RemoteException(java.rmi.RemoteException) EJBException(javax.ejb.EJBException) DetailedRuntimeException(it.cnr.jada.DetailedRuntimeException) Parametri_cnrComponentSession(it.cnr.contab.config00.ejb.Parametri_cnrComponentSession) RicercaTrovato(it.cnr.contab.docamm00.client.RicercaTrovato) NazioneBulk(it.cnr.contab.anagraf00.tabter.bulk.NazioneBulk) UserContext(it.cnr.jada.UserContext) it.cnr.jada.persistency.sql(it.cnr.jada.persistency.sql) RemoveAccent(it.cnr.contab.util.RemoveAccent) java.util(java.util) Utility(it.cnr.contab.util.Utility) it.cnr.contab.doccont00.core.bulk(it.cnr.contab.doccont00.core.bulk) IntrospectionException(it.cnr.jada.persistency.IntrospectionException) ScritturaPartitaDoppiaFromDocumentoComponent(it.cnr.contab.coepcoan00.comp.ScritturaPartitaDoppiaFromDocumentoComponent) ContrattoHome(it.cnr.contab.config00.contratto.bulk.ContrattoHome) SQLException(java.sql.SQLException) Ass_contratto_uoBulk(it.cnr.contab.config00.contratto.bulk.Ass_contratto_uoBulk) ProgressiviAmmComponentSession(it.cnr.contab.docamm00.ejb.ProgressiviAmmComponentSession) it.cnr.contab.inventario01.bulk(it.cnr.contab.inventario01.bulk) EnteBulk(it.cnr.contab.config00.sto.bulk.EnteBulk) OptionRequestParameter(it.cnr.contab.doccont00.core.bulk.OptionRequestParameter) RemoteIterator(it.cnr.jada.util.RemoteIterator) Elemento_voceHome(it.cnr.contab.config00.pdcfin.bulk.Elemento_voceHome) TipoIVA(it.cnr.contab.util.enumeration.TipoIVA) DateUtils(it.cnr.jada.util.DateUtils) DocumentoContabileComponentSession(it.cnr.contab.doccont00.comp.DocumentoContabileComponentSession) CNRUserContext(it.cnr.contab.utenze00.bp.CNRUserContext) Configurazione_cnrComponentSession(it.cnr.contab.config00.ejb.Configurazione_cnrComponentSession) ApplicationException(it.cnr.jada.comp.ApplicationException) PersistencyException(it.cnr.jada.persistency.PersistencyException) it.cnr.contab.ordmag.ordini.bulk(it.cnr.contab.ordmag.ordini.bulk) Logger(org.slf4j.Logger) Rif_modalita_pagamentoBulk(it.cnr.contab.anagraf00.tabrif.bulk.Rif_modalita_pagamentoBulk) VoceIvaComponentSession(it.cnr.contab.docamm00.ejb.VoceIvaComponentSession) FatturaNonTrovataException(it.cnr.jada.comp.FatturaNonTrovataException) ContrattoBulk(it.cnr.contab.config00.contratto.bulk.ContrattoBulk) AutoFatturaComponentSession(it.cnr.contab.docamm00.ejb.AutoFatturaComponentSession) ObbligazioneAbstractComponentSession(it.cnr.contab.doccont00.ejb.ObbligazioneAbstractComponentSession) IOException(java.io.IOException) RiportoDocAmmComponentSession(it.cnr.contab.docamm00.ejb.RiportoDocAmmComponentSession) Unita_organizzativa_enteBulk(it.cnr.contab.config00.sto.bulk.Unita_organizzativa_enteBulk) StorageFolderFatturaPassiva(it.cnr.contab.docamm00.storage.StorageFolderFatturaPassiva) ApplicationMessageFormatException(it.cnr.contab.util.ApplicationMessageFormatException) it.cnr.jada.bulk(it.cnr.jada.bulk) it.cnr.contab.inventario00.docs.bulk(it.cnr.contab.inventario00.docs.bulk) ComponentException(it.cnr.jada.comp.ComponentException) SQLException(java.sql.SQLException) it.cnr.jada.persistency.sql(it.cnr.jada.persistency.sql) RemoteIterator(it.cnr.jada.util.RemoteIterator) ApplicationMessageFormatException(it.cnr.contab.util.ApplicationMessageFormatException) ApplicationException(it.cnr.jada.comp.ApplicationException) PersistencyException(it.cnr.jada.persistency.PersistencyException) Timestamp(java.sql.Timestamp) ApplicationException(it.cnr.jada.comp.ApplicationException) java.util(java.util) RemoteException(java.rmi.RemoteException) it.cnr.contab.docamm00.intrastat.bulk(it.cnr.contab.docamm00.intrastat.bulk) it.cnr.contab.anagraf00.core.bulk(it.cnr.contab.anagraf00.core.bulk) it.cnr.contab.docamm00.fatturapa.bulk(it.cnr.contab.docamm00.fatturapa.bulk) it.cnr.contab.docamm00.tabrif.bulk(it.cnr.contab.docamm00.tabrif.bulk) it.cnr.contab.config00.bulk(it.cnr.contab.config00.bulk) it.cnr.contab.docamm00.docs.bulk(it.cnr.contab.docamm00.docs.bulk) it.cnr.contab.doccont00.core.bulk(it.cnr.contab.doccont00.core.bulk) it.cnr.contab.inventario01.bulk(it.cnr.contab.inventario01.bulk) it.cnr.contab.ordmag.ordini.bulk(it.cnr.contab.ordmag.ordini.bulk) it.cnr.jada.bulk(it.cnr.jada.bulk) it.cnr.contab.inventario00.docs.bulk(it.cnr.contab.inventario00.docs.bulk)

Example 3 with Fattura_passiva_IBulk

use of it.cnr.contab.docamm00.docs.bulk.Fattura_passiva_IBulk in project sigla-main by consiglionazionaledellericerche.

the class CRUDFatturaPassivaAction method doOnChangeModified.

/**
 * Gestisce la variazione manuale del valore del cambio e ricalcola tutti i totali
 */
public Forward doOnChangeModified(ActionContext context) {
    try {
        CRUDFatturaPassivaBP bp = (CRUDFatturaPassivaBP) context.getBusinessProcess();
        Fattura_passivaBulk fp = (Fattura_passivaBulk) bp.getModel();
        it.cnr.jada.bulk.PrimaryKeyHashtable vecchiTotali = new it.cnr.jada.bulk.PrimaryKeyHashtable();
        if (fp instanceof Fattura_passiva_IBulk) {
            for (java.util.Iterator i = fp.getFattura_passiva_dettColl().iterator(); i.hasNext(); ) {
                Fattura_passiva_rigaIBulk dettaglio = (Fattura_passiva_rigaIBulk) i.next();
                java.math.BigDecimal vecchioTotale = dettaglio.getIm_imponibile().add(dettaglio.getIm_iva());
                vecchioTotale = vecchioTotale.add(dettaglio.getIm_totale_addebiti());
                vecchiTotali.put(dettaglio, vecchioTotale);
            }
        }
        java.math.BigDecimal vecchioCambio = fp.getCambio();
        fillModel(context);
        if (fp != null) {
            java.math.BigDecimal cambioAttuale = fp.getCambio();
            if (cambioAttuale == null)
                fp.setCambio((cambioAttuale = new java.math.BigDecimal(0)));
            cambioAttuale = cambioAttuale.setScale(4, java.math.BigDecimal.ROUND_HALF_UP);
            fp.setCambio(cambioAttuale);
            if (cambioAttuale.compareTo(new java.math.BigDecimal(0)) == 0) {
                fp.setCambio(vecchioCambio);
                throw new it.cnr.jada.comp.ApplicationException("Non è stato inserito un cambio valido (>0)");
            }
            if (fp.getObbligazioniHash() != null && !fp.getObbligazioniHash().isEmpty())
                bp.setErrorMessage("Attenzione: si ricorda che modificando il valore del cambio è necessario riportare in quadratura le scadenze delle obbligazioni!");
            if (fp.getAccertamentiHash() != null && !fp.getAccertamentiHash().isEmpty())
                bp.setErrorMessage("Attenzione: si ricorda che modificando il valore del cambio è necessario riportare in quadratura le scadenze degli accertamenti!");
            fp.aggiornaImportiTotali();
            basicDoCalcolaTotaleFatturaFornitoreInEur(fp);
            for (java.util.Iterator i = fp.getFattura_passiva_dettColl().iterator(); i.hasNext(); ) {
                Fattura_passiva_rigaBulk dettaglio = (Fattura_passiva_rigaBulk) i.next();
                if (dettaglio instanceof Fattura_passiva_rigaIBulk) {
                    java.math.BigDecimal vecchioTotale = (java.math.BigDecimal) vecchiTotali.get(dettaglio);
                    if (vecchioTotale == null)
                        vecchioTotale = new java.math.BigDecimal(0).setScale(2, java.math.BigDecimal.ROUND_HALF_UP);
                    basicCalcolaImportoDisponibileNC(context, (Fattura_passiva_rigaIBulk) dettaglio, vecchioTotale);
                }
            }
        }
    } catch (Throwable t) {
        return handleException(context, t);
    }
    return context.findDefaultForward();
}
Also used : Iterator(java.util.Iterator) Fattura_passiva_rigaIBulk(it.cnr.contab.docamm00.docs.bulk.Fattura_passiva_rigaIBulk) Fattura_passivaBulk(it.cnr.contab.docamm00.docs.bulk.Fattura_passivaBulk) ApplicationException(it.cnr.jada.comp.ApplicationException) Fattura_passiva_rigaBulk(it.cnr.contab.docamm00.docs.bulk.Fattura_passiva_rigaBulk) Fattura_passiva_IBulk(it.cnr.contab.docamm00.docs.bulk.Fattura_passiva_IBulk) CRUDFatturaPassivaBP(it.cnr.contab.docamm00.bp.CRUDFatturaPassivaBP)

Example 4 with Fattura_passiva_IBulk

use of it.cnr.contab.docamm00.docs.bulk.Fattura_passiva_IBulk in project sigla-main by consiglionazionaledellericerche.

the class CRUDFatturaPassivaAction method doSelezionaValuta.

/**
 * Viene richiamato nel momento in cui si seleziona una valuta dal combo Valuta nella
 * testata della fattura.
 * Viene ricercato il cambio valido, vengono ricalcolati i totali e ricalcolato il
 * totale in eur
 */
public Forward doSelezionaValuta(ActionContext context) {
    try {
        CRUDFatturaPassivaBP bp = (CRUDFatturaPassivaBP) getBusinessProcess(context);
        Fattura_passivaBulk fattura = (Fattura_passivaBulk) bp.getModel();
        DivisaBulk divisa = fattura.getValuta();
        it.cnr.jada.bulk.PrimaryKeyHashtable vecchiTotali = new it.cnr.jada.bulk.PrimaryKeyHashtable();
        if (fattura instanceof Fattura_passiva_IBulk) {
            for (java.util.Iterator i = fattura.getFattura_passiva_dettColl().iterator(); i.hasNext(); ) {
                Fattura_passiva_rigaIBulk dettaglio = (Fattura_passiva_rigaIBulk) i.next();
                java.math.BigDecimal vecchioTotale = dettaglio.getIm_imponibile().add(dettaglio.getIm_iva());
                vecchioTotale = vecchioTotale.add(dettaglio.getIm_totale_addebiti());
                vecchiTotali.put(dettaglio, vecchioTotale);
            }
        }
        fillModel(context);
        try {
            if (!bp.isSearching()) {
                FatturaPassivaComponentSession h = (FatturaPassivaComponentSession) bp.createComponentSession();
                fattura = h.cercaCambio(context.getUserContext(), fattura);
                basicDoCalcolaTotaleFatturaFornitoreInEur(fattura);
                for (java.util.Iterator i = fattura.getFattura_passiva_dettColl().iterator(); i.hasNext(); ) {
                    Fattura_passiva_rigaBulk dettaglio = (Fattura_passiva_rigaBulk) i.next();
                    if (dettaglio instanceof Fattura_passiva_rigaIBulk) {
                        java.math.BigDecimal vecchioTotale = (java.math.BigDecimal) vecchiTotali.get(dettaglio);
                        if (vecchioTotale == null)
                            vecchioTotale = new java.math.BigDecimal(0).setScale(2, java.math.BigDecimal.ROUND_HALF_UP);
                        basicCalcolaImportoDisponibileNC(context, (Fattura_passiva_rigaIBulk) dettaglio, vecchioTotale);
                    }
                }
                bp.setModel(context, fattura);
                if (fattura.getObbligazioniHash() != null && !fattura.getObbligazioniHash().isEmpty())
                    bp.setErrorMessage("Attenzione: si ricorda che modificando il valore del cambio è necessario riportare in quadratura le scadenze delle obbligazioni!");
                if (fattura.getAccertamentiHash() != null && !fattura.getAccertamentiHash().isEmpty())
                    bp.setErrorMessage("Attenzione: si ricorda che modificando il valore del cambio è necessario riportare in quadratura le scadenze degli accertamenti!");
            }
            return context.findDefaultForward();
        } catch (it.cnr.jada.comp.ComponentException e) {
            fattura.setValuta(divisa);
            throw e;
        }
    } catch (Throwable t) {
        return handleException(context, t);
    }
}
Also used : Iterator(java.util.Iterator) Fattura_passiva_rigaIBulk(it.cnr.contab.docamm00.docs.bulk.Fattura_passiva_rigaIBulk) Fattura_passivaBulk(it.cnr.contab.docamm00.docs.bulk.Fattura_passivaBulk) FatturaPassivaComponentSession(it.cnr.contab.docamm00.ejb.FatturaPassivaComponentSession) Fattura_passiva_rigaBulk(it.cnr.contab.docamm00.docs.bulk.Fattura_passiva_rigaBulk) DivisaBulk(it.cnr.contab.docamm00.tabrif.bulk.DivisaBulk) Fattura_passiva_IBulk(it.cnr.contab.docamm00.docs.bulk.Fattura_passiva_IBulk) CRUDFatturaPassivaBP(it.cnr.contab.docamm00.bp.CRUDFatturaPassivaBP) ComponentException(it.cnr.jada.comp.ComponentException)

Example 5 with Fattura_passiva_IBulk

use of it.cnr.contab.docamm00.docs.bulk.Fattura_passiva_IBulk in project sigla-main by consiglionazionaledellericerche.

the class CRUDFatturaPassivaAction method doRemoveFromCRUDMain_Obbligazioni.

/**
 * <!-- @TODO: da completare -->
 * Gestisce una richiesta di cancellazione dal controller "obbligazioni"
 *
 * @param context L'ActionContext della richiesta
 * @return Il Forward alla pagina di risposta
 */
public Forward doRemoveFromCRUDMain_Obbligazioni(ActionContext context) {
    CRUDFatturaPassivaBP bp = (CRUDFatturaPassivaBP) context.getBusinessProcess();
    it.cnr.jada.util.action.Selection selection = bp.getObbligazioniController().getSelection();
    try {
        if (selection.isEmpty())
            throw new it.cnr.jada.comp.ApplicationException("Selezionare le scadenze che si desidera eliminare!");
    } catch (it.cnr.jada.comp.ApplicationException e) {
        return handleException(context, e);
    }
    java.util.List obbligazioni = bp.getObbligazioniController().getDetails();
    for (it.cnr.jada.util.action.SelectionIterator i = selection.iterator(); i.hasNext(); ) {
        Obbligazione_scadenzarioBulk obbligazione = (Obbligazione_scadenzarioBulk) obbligazioni.get(i.nextIndex());
        java.util.Vector models = (java.util.Vector) ((Fattura_passivaBulk) bp.getModel()).getFattura_passiva_obbligazioniHash().get(obbligazione);
        try {
            if (models != null && models.isEmpty()) {
                Fattura_passivaBulk fattura = (Fattura_passivaBulk) bp.getModel();
                fattura.getFattura_passiva_obbligazioniHash().remove(obbligazione);
                fattura.addToDocumentiContabiliCancellati(obbligazione);
            } else {
                for (java.util.Iterator it = models.iterator(); it.hasNext(); ) {
                    Fattura_passiva_rigaBulk fpr = (Fattura_passiva_rigaBulk) it.next();
                    if (fpr.getTi_associato_manrev() != null && fpr.ASSOCIATO_A_MANDATO.equalsIgnoreCase(fpr.getTi_associato_manrev()))
                        throw new it.cnr.jada.comp.ApplicationException("Impossibile scollegare l'impegno \"" + +obbligazione.getEsercizio_originale().intValue() + "/" + obbligazione.getPg_obbligazione().longValue() + "\" perchè il dettaglio collegato \"" + ((fpr.getDs_riga_fattura() != null) ? fpr.getDs_riga_fattura() : String.valueOf(fpr.getProgressivo_riga().longValue())) + "\" è associato a mandato.");
                }
                scollegaDettagliDaObbligazione(context, (java.util.List) models.clone());
            }
        } catch (it.cnr.jada.comp.ComponentException e) {
            return handleException(context, e);
        }
        doCalcolaTotalePerObbligazione(context, null);
        Fattura_passiva_IBulk fattura = (Fattura_passiva_IBulk) bp.getModel();
        setAndVerifyStatusFor(context, fattura);
        bp.getObbligazioniController().getSelection().clear();
        bp.getObbligazioniController().setModelIndex(context, -1);
        bp.setDirty(true);
    }
    return context.findDefaultForward();
}
Also used : ApplicationException(it.cnr.jada.comp.ApplicationException) Iterator(java.util.Iterator) Selection(it.cnr.jada.util.action.Selection) Fattura_passivaBulk(it.cnr.contab.docamm00.docs.bulk.Fattura_passivaBulk) List(java.util.List) Vector(java.util.Vector) Fattura_passiva_rigaBulk(it.cnr.contab.docamm00.docs.bulk.Fattura_passiva_rigaBulk) Obbligazione_scadenzarioBulk(it.cnr.contab.doccont00.core.bulk.Obbligazione_scadenzarioBulk) Fattura_passiva_IBulk(it.cnr.contab.docamm00.docs.bulk.Fattura_passiva_IBulk) CRUDFatturaPassivaBP(it.cnr.contab.docamm00.bp.CRUDFatturaPassivaBP) Vector(java.util.Vector) ComponentException(it.cnr.jada.comp.ComponentException)

Aggregations

Fattura_passiva_IBulk (it.cnr.contab.docamm00.docs.bulk.Fattura_passiva_IBulk)27 ApplicationException (it.cnr.jada.comp.ApplicationException)26 CRUDFatturaPassivaBP (it.cnr.contab.docamm00.bp.CRUDFatturaPassivaBP)19 ComponentException (it.cnr.jada.comp.ComponentException)18 Fattura_passivaBulk (it.cnr.contab.docamm00.docs.bulk.Fattura_passivaBulk)15 RemoteIterator (it.cnr.jada.util.RemoteIterator)9 CRUDFatturaPassivaIBP (it.cnr.contab.docamm00.bp.CRUDFatturaPassivaIBP)7 PersistencyException (it.cnr.jada.persistency.PersistencyException)7 RemoteException (java.rmi.RemoteException)7 Iterator (java.util.Iterator)7 EJBException (javax.ejb.EJBException)7 DetailedRuntimeException (it.cnr.jada.DetailedRuntimeException)6 it.cnr.jada.bulk (it.cnr.jada.bulk)6 IntrospectionException (it.cnr.jada.persistency.IntrospectionException)6 it.cnr.jada.persistency.sql (it.cnr.jada.persistency.sql)6 Timestamp (java.sql.Timestamp)6 CompensoBulk (it.cnr.contab.compensi00.docs.bulk.CompensoBulk)5 it.cnr.contab.docamm00.docs.bulk (it.cnr.contab.docamm00.docs.bulk)5 FatturaPassivaComponentSession (it.cnr.contab.docamm00.ejb.FatturaPassivaComponentSession)5 it.cnr.contab.doccont00.core.bulk (it.cnr.contab.doccont00.core.bulk)5