it.cnr.contab.inventario00.bp.AssBeneFatturaBP Maven / Gradle / Ivy
/*
* Copyright (C) 2019 Consiglio Nazionale delle Ricerche
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see .
*/
package it.cnr.contab.inventario00.bp;
/**
* Questa classe gestisce le operazioni di business relative all'associazione di
* una Fattura Passiva a dei beni esistenti nel DB.
**/
import it.cnr.contab.inventario00.docs.bulk.Ass_inv_bene_fatturaBulk;
import it.cnr.contab.inventario00.docs.bulk.Inventario_beniBulk;
import it.cnr.contab.inventario01.ejb.BuonoCaricoScaricoComponentSession;
import it.cnr.contab.inventario01.bulk.*;
import it.cnr.contab.docamm00.docs.bulk.*;
import it.cnr.jada.action.*;
import it.cnr.jada.bulk.*;
import it.cnr.jada.persistency.sql.CompoundFindClause;
import it.cnr.jada.util.RemoteIterator;
import it.cnr.jada.util.action.*;
public class AssBeneFatturaBP extends SimpleCRUDBP implements SelectionListener{
private Boolean perAumentoValore = new Boolean(false);
private Boolean perAumentoValoreDoc = new Boolean(false);
private Boolean daDocumento = new Boolean(false);
private final SimpleDetailCRUDController dettagliFattura = new it.cnr.jada.util.action.SimpleDetailCRUDController("DettagliFattura",Fattura_passiva_rigaBulk.class,"dettagliFatturaColl",this,true);
private final SimpleDetailCRUDController dettagliDocumento = new it.cnr.jada.util.action.SimpleDetailCRUDController("DettagliDocumento",Documento_generico_rigaBulk.class,"dettagliDocumentoColl",this,true);
private final RemoteDetailCRUDController righeInventarioDaFattura = new RemoteDetailCRUDController("RigheInventarioDaFattura",Inventario_beniBulk.class,"beniAssociati","CNRINVENTARIO01_EJB_BuonoCaricoScaricoComponentSession",dettagliFattura){
protected it.cnr.jada.util.RemoteIterator createRemoteIterator(ActionContext context) {
try{
return selectBeniAssociatibyClause(context);
} catch (BusinessProcessException e){
return null;
}
}
public void removeAll(it.cnr.jada.action.ActionContext context) throws ValidationException,it.cnr.jada.action.BusinessProcessException {
eliminaBeniAssociatiConBulk(context);
reset(context);
}
protected void removeDetails(ActionContext context,it.cnr.jada.bulk.OggettoBulk[] details) throws BusinessProcessException {
eliminaBeniAssociatiConBulk(context, details);
}
public void save(ActionContext context,OggettoBulk bulk) throws it.cnr.jada.action.BusinessProcessException {
modificaBeneAssociatoConBulk(context, bulk);
resync(context);
}
protected void validate(ActionContext context,OggettoBulk bulk) throws ValidationException {
validaAssocia(context, bulk);
}
};
private final RemoteDetailCRUDController righeInventarioDaDocumento = new RemoteDetailCRUDController("RigheInventarioDaDocumento",Inventario_beniBulk.class,"beniAssociati","CNRINVENTARIO01_EJB_BuonoCaricoScaricoComponentSession",dettagliDocumento){
protected it.cnr.jada.util.RemoteIterator createRemoteIterator(ActionContext context) {
try{
return selectBeniAssociatiDocbyClause(context);
} catch (BusinessProcessException e){
return null;
}
}
public void removeAll(it.cnr.jada.action.ActionContext context) throws ValidationException,it.cnr.jada.action.BusinessProcessException {
eliminaBeniAssociatiConBulk(context);
reset(context);
}
protected void removeDetails(ActionContext context,it.cnr.jada.bulk.OggettoBulk[] details) throws BusinessProcessException {
eliminaBeniAssociatiConBulk(context, details);
}
public void save(ActionContext context,OggettoBulk bulk) throws it.cnr.jada.action.BusinessProcessException {
modificaBeneAssociatoConBulk(context, bulk);
resync(context);
}
protected void validate(ActionContext context,OggettoBulk bulk) throws ValidationException {
validaAssocia(context, bulk);
}
};
private final RemoteDetailCRUDController righeDaFattura = new RemoteDetailCRUDController("RigheDaFattura",Buono_carico_scarico_dettBulk.class,"buoniAssociati","CNRINVENTARIO01_EJB_BuonoCaricoScaricoComponentSession",dettagliFattura){
protected it.cnr.jada.util.RemoteIterator createRemoteIterator(ActionContext context) {
try{
return selectBeniAssociatibyClause(context);
} catch (BusinessProcessException e){
return null;
}
}
public void removeAll(it.cnr.jada.action.ActionContext context) throws ValidationException,it.cnr.jada.action.BusinessProcessException {
eliminaBuoniAssociatiConBulk(context);
reset(context);
}
protected void removeDetails(ActionContext context,it.cnr.jada.bulk.OggettoBulk[] details) throws BusinessProcessException {
eliminaBuoniAssociatiConBulk(context, details);
}
public void save(ActionContext context,OggettoBulk bulk) throws it.cnr.jada.action.BusinessProcessException {
modificaBeneAssociatoConBulk(context, bulk);
resync(context);
}
/*protected void validate(ActionContext context,OggettoBulk bulk) throws ValidationException {
validaAssocia(context, bulk);
}*/
};
private final RemoteDetailCRUDController righeDaDocumento = new RemoteDetailCRUDController("RigheDaDocumento",Buono_carico_scarico_dettBulk.class,"buoniAssociati","CNRINVENTARIO01_EJB_BuonoCaricoScaricoComponentSession",dettagliDocumento){
protected it.cnr.jada.util.RemoteIterator createRemoteIterator(ActionContext context) {
try{
return selectBeniAssociatiDocbyClause(context);
} catch (BusinessProcessException e){
return null;
}
}
public void removeAll(it.cnr.jada.action.ActionContext context) throws ValidationException,it.cnr.jada.action.BusinessProcessException {
eliminaBuoniAssociatiConBulk(context);
reset(context);
}
protected void removeDetails(ActionContext context,it.cnr.jada.bulk.OggettoBulk[] details) throws BusinessProcessException {
eliminaBuoniAssociatiConBulk(context, details);
}
public void save(ActionContext context,OggettoBulk bulk) throws it.cnr.jada.action.BusinessProcessException {
modificaBeneAssociatoConBulk(context, bulk);
resync(context);
}
};
// Controller sulla proprietà buono_carico: permette di utilizzare le property dell'oggetto
// senza doverle rimappare
private final CompoundPropertyController buonoController = new CompoundPropertyController("test_buono", Buono_carico_scaricoBulk.class,"test_buono",this);
/**
* CRUDAssBeneFatturaBP constructor comment.
*/
public AssBeneFatturaBP() {
super();
setTab("tab","tabTestata");
setTab("tabDettaglio","tab_ass_bene_fattura_per_aumentoDett");
}
/**
* CRUDAssBeneFatturaBP constructor comment.
* @param function java.lang.String
*/
public AssBeneFatturaBP(String function) {
super(function);
setTab("tab","tabTestata");
setTab("tabDettaglio","tab_ass_bene_fattura_per_aumentoDett");
}
/**
* Metodo richiesto dall'interfaccia SelectionListener.
* L'utente sta associando dei beni già presenti sul DB alle righe di una Fattura Passiva.
* Il metodo è invocato dal FrameWork tutte le volte che si richiede una operazione di
* "Aggiungi nuovo bene" da associare alla riga di Fattura.
*
* @param context il ActionContext che contiene le informazioni relative alla richiesta
**/
public void clearSelection(it.cnr.jada.action.ActionContext context) throws it.cnr.jada.action.BusinessProcessException {
try {
((BuonoCaricoScaricoComponentSession)createComponentSession()).annullaModificaBeniAssociati(
context.getUserContext());
} catch(it.cnr.jada.comp.ComponentException e) {
throw handleException(e);
} catch(java.rmi.RemoteException e) {
throw handleException(e);
} catch(javax.ejb.EJBException ejbe){
throw handleException(ejbe);
}
}
/**
* Crea la {@link BuonoCaricoScaricoComponentSession } da usare per effettuare operazioni.
* Si è resa necessaria la sua implementazione, poichè il BP è un BulkBP piuttosto
* che un SimpleCRUDBP.
*
**/
public BuonoCaricoScaricoComponentSession createComponentSession() throws BusinessProcessException {
return (BuonoCaricoScaricoComponentSession)createComponentSession("CNRINVENTARIO01_EJB_BuonoCaricoScaricoComponentSession", BuonoCaricoScaricoComponentSession.class);
}
/**
* Crea la toolbar in sostituzione alla normale toolbar del CRUD.
* Il BusinessProcess, infatti, non è di tipo CRUDBP, ma è di tipo BulkBP; questo comporta
* che la normale barra degli strumenti non viene creata automaticamente e, quindi,
* bisogna provvedere.
*
* @return toolbar i Button[] pulsanti creati
**/
protected it.cnr.jada.util.jsp.Button[] createToolbar() {
it.cnr.jada.util.jsp.Button[] toolbar = new it.cnr.jada.util.jsp.Button[2];
int i = 0;
toolbar[i++] = new it.cnr.jada.util.jsp.Button(it.cnr.jada.util.Config.getHandler().getProperties(it.cnr.jada.util.action.CRUDBP.class),"CRUDToolbar.bringBack");
toolbar[i++] = new it.cnr.jada.util.jsp.Button(it.cnr.jada.util.Config.getHandler().getProperties(it.cnr.jada.util.action.CRUDBP.class),"CRUDToolbar.undoBringBack");
return toolbar;
}
/**
* Metodo richiesto dall'interfaccia SelectionListener.
*
* @param context il ActionContext che contiene le informazioni relative alla richiesta
**/
public void deselectAll(it.cnr.jada.action.ActionContext context) {}
/**
* Gestisce l'operazione di eliminazione di tutti i beni associati ad una data riga di Fattura.
* Invoca il metodo BuonoCaricoScaricoComponent.eliminaBeniAssociatiConBulk(UserContext, Ass_inv_bene_fatturaBulk, Fattura_passiva_rigaIBulk)
*
* @param context il ActionContext che contiene le informazioni relative alla richiesta
**/
private void eliminaBeniAssociatiConBulk(ActionContext context) throws it.cnr.jada.action.BusinessProcessException{
try {
((BuonoCaricoScaricoComponentSession)createComponentSession()).eliminaBeniAssociatiConBulk(
context.getUserContext(),
getModel(),
getDettagliFattura().getModel());
} catch(it.cnr.jada.comp.ComponentException e) {
throw handleException(e);
} catch(java.rmi.RemoteException e) {
throw handleException(e);
} catch(javax.ejb.EJBException e) {
throw handleException(e);
} catch (Throwable t){
throw handleException(t);
}
}
private void eliminaBuoniAssociatiConBulk(ActionContext context) throws it.cnr.jada.action.BusinessProcessException{
try {
((BuonoCaricoScaricoComponentSession)createComponentSession()).eliminaBuoniAssociatiConBulk(
context.getUserContext(),
(Ass_inv_bene_fatturaBulk)getModel(),
getDettagliFattura().getModel());
} catch(it.cnr.jada.comp.ComponentException e) {
throw handleException(e);
} catch(java.rmi.RemoteException e) {
throw handleException(e);
} catch(javax.ejb.EJBException e) {
throw handleException(e);
} catch (Throwable t){
throw handleException(t);
}
}
private void eliminaBuoniAssociatiConBulk(ActionContext context,it.cnr.jada.bulk.OggettoBulk[] details) throws it.cnr.jada.action.BusinessProcessException{
try {
((BuonoCaricoScaricoComponentSession)createComponentSession()).eliminaBuoniAssociatiConBulk(
context.getUserContext(),
(Ass_inv_bene_fatturaBulk)getModel(),
details,
getDettagliFattura().getModel());
} catch(it.cnr.jada.comp.ComponentException e) {
throw handleException(e);
} catch(java.rmi.RemoteException e) {
throw handleException(e);
} catch(javax.ejb.EJBException e) {
throw handleException(e);
}
}
/**
* Gestisce l'operazione di eliminazione di alcuni beni associati ad una data riga di Fattura.
* Invoca il metodo BuonoCaricoScaricoComponent.eliminaBeniAssociatiConBulk(UserContext, Ass_inv_bene_fatturaBulk, OggettoBulk[], Fattura_passiva_rigaIBulk)
*
* @param context il ActionContext che contiene le informazioni relative alla richiesta
* @param details i OggettoBulk[] beni da eliminare, selezionati dall'utente
**/
private void eliminaBeniAssociatiConBulk(ActionContext context,it.cnr.jada.bulk.OggettoBulk[] details) throws it.cnr.jada.action.BusinessProcessException{
try {
((BuonoCaricoScaricoComponentSession)createComponentSession()).eliminaBeniAssociatiConBulk(
context.getUserContext(),
(Ass_inv_bene_fatturaBulk)getModel(),
details,
getDettagliFattura().getModel());
} catch(it.cnr.jada.comp.ComponentException e) {
throw handleException(e);
} catch(java.rmi.RemoteException e) {
throw handleException(e);
} catch(javax.ejb.EJBException e) {
throw handleException(e);
}
}
public it.cnr.jada.util.RemoteIterator find(it.cnr.jada.action.ActionContext actionContext, it.cnr.jada.persistency.sql.CompoundFindClause clauses, it.cnr.jada.bulk.OggettoBulk bulk, it.cnr.jada.bulk.OggettoBulk context, String property) throws it.cnr.jada.action.BusinessProcessException {
return null;
}
/**
* Permette di reindirizzare la chiamata ad una pagina jsp piuttosto che ad un'altra.
* Se isPerAumentoValore == TRUE, vuol dire che la chiamata è stata fatta dalla fattura
* per una operazione di Aumento valore su Beni, quindi
* sarà visualizzata la pagina corrispondente.
*
* @return Forward
**/
public Forward findDefaultForward() {
if (isPerAumentoValore()){
return findForward("perAumentoValore");
}
else if (isPerAumentoValoreDoc()){
return findForward("perAumentoValoreDoc");
}else if(isDaDocumento())
return findForward("daDocumento");
else{
return findForward("default");
}
}
public SearchProvider getBeneSearchProvider(ActionContext context){
return new SearchProvider() {
public it.cnr.jada.util.RemoteIterator search(it.cnr.jada.action.ActionContext context,it.cnr.jada.persistency.sql.CompoundFindClause clauses,it.cnr.jada.bulk.OggettoBulk prototype) throws it.cnr.jada.action.BusinessProcessException {
Ass_inv_bene_fatturaBulk associa =(Ass_inv_bene_fatturaBulk)getModel();
try{
return getListaBeni(context.getUserContext(), false, associa.getBuoniColl(), clauses);
} catch (Throwable t){
return null;
}
}
};
}
public OggettoBulk getBringBackModel() {
return getModel();
}
/**
* Insert the method's description here.
* Creation date: (28/06/2004 12.17.57)
* @return it.cnr.jada.util.action.CompoundPropertyController
*/
public final it.cnr.jada.util.action.CompoundPropertyController getBuonoController() {
return buonoController;
}
public final SimpleDetailCRUDController getDettagliFattura() {
return dettagliFattura;
}
/**
* Costruisce un iteratore sui beni disponibili per l'associazione ad una riga di Fattura.
*
* @param userContext il UserContext che ha generato la richiesta
* @param no_accessori boolean indica se includere i beni accessori nella ricerca
* @param beni_da_escludere la BulkList lista di beni già selezionati
* @param clauses le CompoundFindClause clausole della ricerca selezionate dall'utente
**/
public it.cnr.jada.util.RemoteIterator getListaBeni(
it.cnr.jada.UserContext userContext,
boolean no_accessori,
BulkList beni_da_escludere,
it.cnr.jada.persistency.sql.CompoundFindClause clauses) throws BusinessProcessException {
try{
return ((BuonoCaricoScaricoComponentSession)createComponentSession()).getListaBeni(userContext, (Ass_inv_bene_fatturaBulk)this.getModel(), no_accessori,beni_da_escludere, clauses);
} catch(javax.ejb.EJBException e) {
throw handleException(e);
} catch(java.rmi.RemoteException e) {
throw handleException(e);
} catch(it.cnr.jada.comp.ComponentException e) {
throw handleException(e);
}
}
public final AbstractDetailCRUDController getRigheDaFattura() {
return righeDaFattura;
}
public java.util.List getRigheDaFatturaDetails(
Ass_inv_bene_fatturaBulk associativa,
Fattura_passiva_rigaBulk riga_selezionata) {
if (associativa != null && riga_selezionata != null){
BulkList list = (BulkList)associativa.getDettagliRigheHash().get(riga_selezionata);
return list;
}
else{
return null;
}
}
public final AbstractDetailCRUDController getRigheInventarioDaFattura() {
return righeInventarioDaFattura;
}
public java.util.List getRigheInventarioDaFatturaDetails(
Ass_inv_bene_fatturaBulk associativa,
Fattura_passiva_rigaBulk riga_selezionata) {
if (associativa != null && riga_selezionata != null){
BulkList list = (BulkList)associativa.getDettagliRigheHash().get(riga_selezionata);
return list;
}
else{
return null;
}
}
/**
* Restituisce la Selezione fatta sul Controller dei Beni Associati
*/
public java.util.BitSet getSelection(it.cnr.jada.action.ActionContext context, it.cnr.jada.bulk.OggettoBulk[] bulks, java.util.BitSet currentSelection) {
return currentSelection;
}
/**
* Imposta come attivi i tab di default.
*
* @param context ActionContext
*/
protected void init(it.cnr.jada.action.Config config,it.cnr.jada.action.ActionContext context) throws it.cnr.jada.action.BusinessProcessException {
super.init(config,context);
resetTabs();
}
/**
* initializeSelection method comment.
*/
public void initializeSelection(it.cnr.jada.action.ActionContext context) throws it.cnr.jada.action.BusinessProcessException {
try {
((BuonoCaricoScaricoComponentSession)createComponentSession()).inizializzaBeniAssociatiPerModifica(
context.getUserContext());
} catch(it.cnr.jada.comp.ComponentException e) {
throw handleException(e);
} catch(java.rmi.RemoteException e) {
throw handleException(e);
} catch(javax.ejb.EJBException ejbe) {
throw handleException(ejbe);
}
}
/**
* Abilito il bottone di "Riporta"
**/
public boolean isBringbackButtonEnabled() {
return true;
}
/**
* Rendo visibile il bottone di Riporta
**/
public boolean isBringbackButtonHidden() {
return false;
}
/**
* Insert the method's description here.
* Creation date: (24/06/2004 11.48.10)
* @return java.lang.Boolean
*/
public boolean isPerAumentoValore() {
if (perAumentoValore == null)
return false;
return perAumentoValore.booleanValue();
}
/**
* Abilito il bottone di "Annulla Riporta"
**/
public boolean isUndoBringBackButtonEnabled() {
return true;
}
/**
* Rendo visibile il bottone di "Annulla Riporta"
**/
public boolean isUndoBringBackButtonHidden() {
return false;
}
/**
*
*/
public void modificaBeneAssociatoConBulk(ActionContext context, OggettoBulk bulk) throws BusinessProcessException{
try {
if (!isDaDocumento()){
((BuonoCaricoScaricoComponentSession)createComponentSession()).modificaBeneAssociatoConBulk(
context.getUserContext(),
getModel(),
getDettagliFattura().getModel(),
(Inventario_beniBulk)bulk);
}else{
((BuonoCaricoScaricoComponentSession)createComponentSession()).modificaBeneAssociatoConBulk(
context.getUserContext(),
getModel(),
getDettagliDocumento().getModel(),
(Inventario_beniBulk)bulk);
}
} catch(it.cnr.jada.comp.ComponentException e) {
throw handleException(e);
} catch(java.rmi.RemoteException e) {
throw handleException(e);
} catch(javax.ejb.EJBException e) {
throw handleException(e);
}
}
/**
* Imposta come attivi i tab di default.
*
* @param context ActionContext
*/
public void resetTabs() {
setTab("tab","tabTestata");
}
/**
* selectAll method comment.
*/
public void selectAll(it.cnr.jada.action.ActionContext context) throws it.cnr.jada.action.BusinessProcessException {
selectAll(context,null);
}
/**
* selectAll method comment.
*/
public void selectAll(it.cnr.jada.action.ActionContext context, CompoundFindClause clause) throws it.cnr.jada.action.BusinessProcessException {
try {
if (!isDaDocumento()){
((BuonoCaricoScaricoComponentSession)createComponentSession()).associaTuttiBeni(
context.getUserContext(),
(Ass_inv_bene_fatturaBulk)getModel(),
getDettagliFattura().getSelectedModels(context),
clause);
}else{
((BuonoCaricoScaricoComponentSession)createComponentSession()).associaTuttiBeni(
context.getUserContext(),
(Ass_inv_bene_fatturaBulk)getModel(),
getDettagliDocumento().getSelectedModels(context),
clause);
}
} catch(it.cnr.jada.comp.ComponentException e) {
throw handleException(e);
} catch(java.rmi.RemoteException e) {
throw handleException(e);
} catch(javax.ejb.EJBException e) {
throw handleException(e);
} catch(ValidationException e) {
throw handleException(e);
}
}
/**
*
*/
private it.cnr.jada.util.RemoteIterator selectBeniAssociatibyClause(ActionContext context) throws BusinessProcessException{
try {
it.cnr.jada.persistency.sql.CompoundFindClause clauses = ((RemoteDetailCRUDController)getRigheInventarioDaFattura()).getFilter();
it.cnr.jada.UserContext userContext = context.getUserContext();
Ass_inv_bene_fatturaBulk associaBulk = (Ass_inv_bene_fatturaBulk)getModel();
Fattura_passiva_rigaIBulk rigaFattura=null;
Fattura_attiva_rigaIBulk fattura_attiva=null;
Nota_di_credito_rigaBulk nota=null;
Nota_di_debito_rigaBulk notadeb=null;
if (getDettagliFattura().getModel() instanceof Fattura_passiva_rigaIBulk)
rigaFattura = (Fattura_passiva_rigaIBulk)getDettagliFattura().getModel();
else if (getDettagliFattura().getModel() instanceof Nota_di_credito_rigaBulk)
nota =(Nota_di_credito_rigaBulk)getDettagliFattura().getModel();
else if (getDettagliFattura().getModel() instanceof Fattura_attiva_rigaIBulk)
fattura_attiva =(Fattura_attiva_rigaIBulk)getDettagliFattura().getModel();
else
notadeb =(Nota_di_debito_rigaBulk)getDettagliFattura().getModel();
Class bulkClass;
if (associaBulk.isPerAumentoValore())
bulkClass = Inventario_beniBulk.class;
else
bulkClass = Buono_carico_scarico_dettBulk.class;
// R.P. MODIFICA BENI ASSOCIATI(IN SOSPESO)
if (rigaFattura != null && rigaFattura.getFattura_passiva().getHa_beniColl().booleanValue()){
((BuonoCaricoScaricoComponentSession)createComponentSession()).selectBeniAssociatiForModifica(userContext,associaBulk,getDettagliFattura().getModel());
return ((BuonoCaricoScaricoComponentSession)createComponentSession()).selectBeniAssociatiByClause(userContext,associaBulk,getDettagliFattura().getModel(),bulkClass,clauses);
}
else if (nota != null && nota.getFattura_passiva().getHa_beniColl().booleanValue()){
((BuonoCaricoScaricoComponentSession)createComponentSession()).selectBeniAssociatiForModifica(userContext,associaBulk,getDettagliFattura().getModel());
return ((BuonoCaricoScaricoComponentSession)createComponentSession()).selectBeniAssociatiByClause(userContext,associaBulk,getDettagliFattura().getModel(),bulkClass,clauses);
}
else if (notadeb != null && notadeb.getFattura_passiva().getHa_beniColl().booleanValue()){
((BuonoCaricoScaricoComponentSession)createComponentSession()).selectBeniAssociatiForModifica(userContext,associaBulk,getDettagliFattura().getModel());
return ((BuonoCaricoScaricoComponentSession)createComponentSession()).selectBeniAssociatiByClause(userContext,associaBulk,getDettagliFattura().getModel(),bulkClass,clauses);
}
else if (fattura_attiva != null && fattura_attiva.getFattura_attiva().getHa_beniColl().booleanValue()){
((BuonoCaricoScaricoComponentSession)createComponentSession()).selectBeniAssociatiForModifica(userContext,associaBulk,getDettagliFattura().getModel());
return ((BuonoCaricoScaricoComponentSession)createComponentSession()).selectBeniAssociatiByClause(userContext,associaBulk,getDettagliFattura().getModel(),bulkClass,clauses);
}
//FINE
else
return ((BuonoCaricoScaricoComponentSession)createComponentSession()).selectBeniAssociatiByClause(userContext,associaBulk,getDettagliFattura().getModel(),bulkClass,clauses);
} catch(it.cnr.jada.comp.ComponentException e) {
throw handleException(e);
} catch(java.rmi.RemoteException e) {
throw handleException(e);
} catch(javax.ejb.EJBException e) {
throw handleException(e);
}
}
/**
*
*/
public void setModel(ActionContext context,OggettoBulk newModel) throws BusinessProcessException {
Ass_inv_bene_fatturaBulk associaBulk = (Ass_inv_bene_fatturaBulk)newModel;
try {
BuonoCaricoScaricoComponentSession component = createComponentSession();
if (getModel() == null)
associaBulk.setInventario(component.caricaInventario(context.getUserContext()));
} catch(javax.ejb.EJBException e) {
throw handleException(e);
} catch(java.rmi.RemoteException e) {
throw handleException(e);
} catch(it.cnr.jada.comp.ComponentException e) {
throw handleException(e);
} catch (Throwable t){
throw handleException(t);
}
super.setModel(context,associaBulk);
}
/**
* Insert the method's description here.
* Creation date: (24/06/2004 11.48.10)
* @param newPerAumentoValore java.lang.Boolean
*/
public void setPerAumentoValore(java.lang.Boolean newPerAumentoValore) {
perAumentoValore = newPerAumentoValore;
}
/**
* setSelection method comment.
*/
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 (!daDocumento){
((BuonoCaricoScaricoComponentSession)createComponentSession()).modificaBeniAssociati(
context.getUserContext(),
(Ass_inv_bene_fatturaBulk)getModel(),
getDettagliFattura().getSelectedModels(context),
bulks,
oldSelection,
newSelection);
}else{
((BuonoCaricoScaricoComponentSession)createComponentSession()).modificaBeniAssociati(
context.getUserContext(),
(Ass_inv_bene_fatturaBulk)getModel(),
getDettagliDocumento().getSelectedModels(context),
bulks,
oldSelection,
newSelection);
}
return newSelection;
} catch(it.cnr.jada.comp.ComponentException e) {
throw handleException(e);
} catch(java.rmi.RemoteException e) {
throw handleException(e);
} catch(javax.ejb.EJBException e) {
throw handleException(e);
} catch (ValidationException e){
throw handleException(e);
}
}
/**
* Valida i beni associati ad una riga di Fattura.
* L'utente sta associando dei beni ad una riga di Fattura. Se la fattura è per aumento valore,
* viene controllato che l'utente abbia inserito un valore valido nel campo variazione piu.
* Le proprietà che vengono controllate sono:
*
* - Valore da caricare
*
* @param context la
ActionContext che ha generato la richiesta
* @param bulk il OggettoBulk bene scaricato.
**/
private void validaAssocia(it.cnr.jada.action.ActionContext context, it.cnr.jada.bulk.OggettoBulk bulk) throws ValidationException{
if (isPerAumentoValore()||isPerAumentoValoreDoc()){
Inventario_beniBulk bene = (Inventario_beniBulk)bulk;
if (bene!=null)
if ((bene.getVariazione_piu() == null )||(bene.getVariazione_piu().compareTo(new java.math.BigDecimal(0))==0)||(bene.getValore_alienazione_apg().compareTo(new java.math.BigDecimal(0))==0))
{
throw new ValidationException("Attenzione: specificare un valore da Caricare");
}
}
}
/**
* Richiede l'ID univoco di Transazione.
* E' stato richiesto di recuperare/generare l'identificativo di transazione.
* Viene richiesto l'ID e, se questo non esiste, verrà generato, se force = TRUE
*
* @param aUC lo UserContext che ha generato la richiesta.
* @param force boolean il flag che indica se forzare la generazione dell'ID.
*
* @return String l'ID di transazione richiesto.
**/
public String getLocalTransactionID(it.cnr.jada.UserContext aUC, boolean force) throws BusinessProcessException {
Ass_inv_bene_fatturaBulk associaBulk = (Ass_inv_bene_fatturaBulk)getModel();
if (associaBulk != null && associaBulk.getLocal_transactionID()!= null)
return associaBulk.getLocal_transactionID();
else if (force){
try{
return ((BuonoCaricoScaricoComponentSession)createComponentSession()).getLocalTransactionID(aUC, force);
} catch(javax.ejb.EJBException e) {
throw handleException(e);
} catch(java.rmi.RemoteException e) {
throw handleException(e);
} catch(it.cnr.jada.comp.ComponentException e) {
throw handleException(e);
} catch (Throwable t) {
throw handleException(t);
}
}
return null;
}
public final SimpleDetailCRUDController getDettagliDocumento() {
return dettagliDocumento;
}
public boolean isPerAumentoValoreDoc() {
if (perAumentoValoreDoc == null)
return false;
return perAumentoValoreDoc.booleanValue();
}
public void setPerAumentoValoreDoc(java.lang.Boolean newPerAumentoValore) {
daDocumento=newPerAumentoValore;
perAumentoValoreDoc = newPerAumentoValore;
}
public RemoteDetailCRUDController getRigheInventarioDaDocumento() {
return righeInventarioDaDocumento;
}
public RemoteDetailCRUDController getRigheDaDocumento() {
return righeDaDocumento;
}
public Boolean isDaDocumento() {
if (daDocumento == null)
return false;
return daDocumento.booleanValue();
}
public void setDaDocumento(Boolean daDocumento) {
this.daDocumento = daDocumento;
}
private it.cnr.jada.util.RemoteIterator selectBeniAssociatiDocbyClause(ActionContext context) throws BusinessProcessException{
try {
it.cnr.jada.persistency.sql.CompoundFindClause clauses = ((RemoteDetailCRUDController)getRigheInventarioDaDocumento()).getFilter();
it.cnr.jada.UserContext userContext = context.getUserContext();
Ass_inv_bene_fatturaBulk associaBulk = (Ass_inv_bene_fatturaBulk)getModel();
Documento_generico_rigaBulk riga=null;
if (isDaDocumento())
riga = (Documento_generico_rigaBulk)getDettagliDocumento().getModel();
Class bulkClass;
if (associaBulk.isPerAumentoValoreDoc())
bulkClass = Inventario_beniBulk.class;
else
bulkClass = Buono_carico_scarico_dettBulk.class;
// R.P. MODIFICA BENI ASSOCIATI(IN SOSPESO)
if (riga != null && riga.getDocumento_generico().getHa_beniColl().booleanValue()){
((BuonoCaricoScaricoComponentSession)createComponentSession()).selectBeniAssociatiForModifica(userContext,associaBulk,getDettagliDocumento().getModel());
return ((BuonoCaricoScaricoComponentSession)createComponentSession()).selectBeniAssociatiByClause(userContext,associaBulk,getDettagliDocumento().getModel(),bulkClass,clauses);
}
//FINE
else
return ((BuonoCaricoScaricoComponentSession)createComponentSession()).selectBeniAssociatiByClause(userContext,associaBulk,getDettagliDocumento().getModel(),bulkClass,clauses);
} catch(it.cnr.jada.comp.ComponentException e) {
throw handleException(e);
} catch(java.rmi.RemoteException e) {
throw handleException(e);
} catch(javax.ejb.EJBException e) {
throw handleException(e);
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy