diff --git a/sigla-ejb/src/main/java/it/cnr/contab/ordmag/anag00/UnitaOperativaOrdHome.java b/sigla-ejb/src/main/java/it/cnr/contab/ordmag/anag00/UnitaOperativaOrdHome.java
index 8d79e86825..b41e861cea 100644
--- a/sigla-ejb/src/main/java/it/cnr/contab/ordmag/anag00/UnitaOperativaOrdHome.java
+++ b/sigla-ejb/src/main/java/it/cnr/contab/ordmag/anag00/UnitaOperativaOrdHome.java
@@ -5,11 +5,18 @@
package it.cnr.contab.ordmag.anag00;
import java.sql.Connection;
+import it.cnr.contab.config00.bulk.CigBulk;
+import it.cnr.contab.config00.sto.bulk.Unita_organizzativaBulk;
+import it.cnr.contab.config00.sto.bulk.Unita_organizzativaHome;
+import it.cnr.contab.config00.sto.bulk.Unita_organizzativa_enteBulk;
+import it.cnr.contab.utenze00.bp.CNRUserContext;
+import it.cnr.jada.UserContext;
import it.cnr.jada.bulk.BulkHome;
import it.cnr.jada.comp.ApplicationException;
import it.cnr.jada.persistency.IntrospectionException;
import it.cnr.jada.persistency.PersistencyException;
import it.cnr.jada.persistency.PersistentCache;
+import it.cnr.jada.persistency.sql.CompoundFindClause;
import it.cnr.jada.persistency.sql.PersistentHome;
import it.cnr.jada.persistency.sql.SQLBuilder;
public class UnitaOperativaOrdHome extends BulkHome {
@@ -23,8 +30,43 @@ public java.util.List findAssUnitaOperativaList(UnitaOperativaOrdBulk uop ) thro
{
PersistentHome repHome = getHomeCache().getHome(AssUnitaOperativaOrdBulk.class);
SQLBuilder sql = repHome.createSQLBuilder();
-
+
sql.addSQLClause( "AND", "cd_unita_operativa", SQLBuilder.EQUALS, uop.getCdUnitaOperativa());
return repHome.fetchAll(sql);
}
+ public SQLBuilder selectUnitaOrganizzativaByClause(UserContext userContext, UnitaOperativaOrdBulk uopBulk,
+ Unita_organizzativaHome unita_organizzativaHome, Unita_organizzativaBulk unita_organizzativaBulk,
+ CompoundFindClause compoundfindclause) throws PersistencyException{
+ SQLBuilder sql = unita_organizzativaHome.selectByClause(userContext, compoundfindclause);
+ filtraUO(userContext, sql, false);
+ return sql;
+ }
+
+ @Override
+ public SQLBuilder selectByClause(UserContext userContext,
+ CompoundFindClause compoundfindclause) throws PersistencyException {
+ SQLBuilder sql = super.selectByClause(userContext, compoundfindclause);
+ filtraUO(userContext, sql, true);
+ return sql;
+ }
+
+ private void filtraUO(UserContext userContext, SQLBuilder sql, boolean join) throws PersistencyException{
+ Unita_organizzativa_enteBulk ente = (Unita_organizzativa_enteBulk)
+ getHomeCache().getHome(Unita_organizzativa_enteBulk.class).findAll().get(0);
+ if (!CNRUserContext.getCd_unita_organizzativa(userContext).equals(ente.getCd_unita_organizzativa())){
+ Unita_organizzativaBulk uoScrivania = (Unita_organizzativaBulk)getHomeCache().getHome(Unita_organizzativaBulk.class).
+ findByPrimaryKey(new Unita_organizzativaBulk(CNRUserContext.getCd_unita_organizzativa(userContext)));
+ if(!uoScrivania.isUoCds())
+ sql.addSQLClause("AND","CD_UNITA_ORGANIZZATIVA",SQLBuilder.EQUALS,CNRUserContext.getCd_unita_organizzativa(userContext));
+ else {
+ if (join){
+ sql.addTableToHeader("UNITA_ORGANIZZATIVA");
+ sql.addSQLJoin("UNITA_OPERATIVA_ORD.CD_UNITA_ORGANIZZATIVA", "UNITA_ORGANIZZATIVA.CD_UNITA_ORGANIZZATIVA");
+ sql.addSQLClause("AND", "UNITA_ORGANIZZATIVA.CD_UNITA_PADRE", SQLBuilder.EQUALS, CNRUserContext.getCd_cds(userContext));
+ }else {
+ sql.addSQLClause("AND","CD_UNITA_PADRE",SQLBuilder.EQUALS,CNRUserContext.getCd_cds(userContext));
+ }
+ }
+ }
+ }
}
\ No newline at end of file
diff --git a/sigla-ejb/src/main/java/it/cnr/contab/ordmag/richieste/bp/CRUDRichiestaUopBP.java b/sigla-ejb/src/main/java/it/cnr/contab/ordmag/richieste/bp/CRUDRichiestaUopBP.java
index 9d0af0cb2e..e1ed7fc8c2 100644
--- a/sigla-ejb/src/main/java/it/cnr/contab/ordmag/richieste/bp/CRUDRichiestaUopBP.java
+++ b/sigla-ejb/src/main/java/it/cnr/contab/ordmag/richieste/bp/CRUDRichiestaUopBP.java
@@ -274,9 +274,9 @@ public CRUDRichiestaUopBP(String function) throws BusinessProcessException{
// *
// * @return Il valore della proprietà 'dettaglio'
// */
-//public final SimpleDetailCRUDController getRighe() {
-// return righe;
-//}
+public final SimpleDetailCRUDController getRighe() {
+ return righe;
+}
///**
// * Restituisce il valore della proprietà 'dettaglioObbligazioneController'
// *
diff --git a/sigla-ejb/src/main/java/it/cnr/contab/ordmag/richieste/bulk/RichiestaUopBulk.java b/sigla-ejb/src/main/java/it/cnr/contab/ordmag/richieste/bulk/RichiestaUopBulk.java
index 649b230c37..619eb41a24 100644
--- a/sigla-ejb/src/main/java/it/cnr/contab/ordmag/richieste/bulk/RichiestaUopBulk.java
+++ b/sigla-ejb/src/main/java/it/cnr/contab/ordmag/richieste/bulk/RichiestaUopBulk.java
@@ -257,7 +257,6 @@ public Dictionary getStatoKeysForSearch() {
OrderedHashtable d = (OrderedHashtable)getStatoKeys();
if (d == null) return null;
-
OrderedHashtable clone = (OrderedHashtable)d.clone();
return clone;
}
diff --git a/sigla-ejb/src/main/resources/it/cnr/contab/ordmag/anag00/UnitaOperativaOrdBulkInfo.xml b/sigla-ejb/src/main/resources/it/cnr/contab/ordmag/anag00/UnitaOperativaOrdBulkInfo.xml
index 05d646dac7..f9f2941a73 100644
--- a/sigla-ejb/src/main/resources/it/cnr/contab/ordmag/anag00/UnitaOperativaOrdBulkInfo.xml
+++ b/sigla-ejb/src/main/resources/it/cnr/contab/ordmag/anag00/UnitaOperativaOrdBulkInfo.xml
@@ -9,7 +9,7 @@
name="cdUnitaOperativa"
property="cdUnitaOperativa"
inputType="TEXT"
- inputSize="30"
+ inputSize="20"
maxLength="30"
enabledOnEdit="false"
enabledOnSearch="true"
diff --git a/sigla-ejb/src/main/resources/it/cnr/contab/ordmag/richieste/bulk/RichiestaUopBulkInfo.xml b/sigla-ejb/src/main/resources/it/cnr/contab/ordmag/richieste/bulk/RichiestaUopBulkInfo.xml
index 0348ca4bab..5fc605d6ef 100644
--- a/sigla-ejb/src/main/resources/it/cnr/contab/ordmag/richieste/bulk/RichiestaUopBulkInfo.xml
+++ b/sigla-ejb/src/main/resources/it/cnr/contab/ordmag/richieste/bulk/RichiestaUopBulkInfo.xml
@@ -90,6 +90,20 @@
nullable="false"
keysProperty="statoKeys"
label="Stato" />
+
- <%
- bp.getController().writeFormField(out, "stato");
- %>
+ <% if (!bp.isSearching()) {
+ bp.getController().writeFormField(out, "stato");
+ } else {
+ bp.getController().writeFormField(out, "statoKeysForSearch");
+ } %>
diff --git a/sigla-web/src/main/webapp/ordmag/richieste/tab_richiesta_uop_dettaglio.jsp b/sigla-web/src/main/webapp/ordmag/richieste/tab_richiesta_uop_dettaglio.jsp
index 749b6a4c57..3d51f4e02d 100644
--- a/sigla-web/src/main/webapp/ordmag/richieste/tab_richiesta_uop_dettaglio.jsp
+++ b/sigla-web/src/main/webapp/ordmag/richieste/tab_richiesta_uop_dettaglio.jsp
@@ -1,17 +1,16 @@
<%@ page
- import="it.cnr.jada.util.jsp.*,
+ import = "it.cnr.jada.util.jsp.*,
it.cnr.jada.action.*,
java.util.*,
it.cnr.jada.util.action.*,
- it.cnr.contab.docamm00.tabrif.bulk.*,
- it.cnr.contab.docamm00.docs.bulk.*,
- it.cnr.contab.docamm00.bp.*,
- it.cnr.contab.anagraf00.tabrif.bulk.*"
+ it.cnr.contab.ordmag.richieste.bp.CRUDRichiestaUopBP,
+ it.cnr.contab.ordmag.richieste.bulk.RichiestaUopRigaBulk,
+ it.cnr.contab.ordmag.anag00.*"
%>
-<% CRUDDocumentoGenericoPassivoBP bp = (CRUDDocumentoGenericoPassivoBP)BusinessProcess.getBusinessProcess(request);
- Documento_generico_rigaBulk riga = (Documento_generico_rigaBulk)bp.getDettaglio().getModel();
- bp.getDettaglio().writeHTMLTable(pageContext,"righiSet",true,false,true,"100%","100px"); %>
+<% CRUDBP bp = (CRUDRichiestaUopBP)BusinessProcess.getBusinessProcess(request);
+ RichiestaUopRigaBulk riga = (RichiestaUopRigaBulk)bp.getRighe().getModel();
+ bp.getDettaglio().writeHTMLTable(pageContext,"default",true,false,true,"100%","100px"); %>