Buenas,
Tengo q ejecutar un stored procedure que hace una actualizacion a un
grupo de registros. Como no es el update normal de un registro, quise
incluirlo en una Named Query.
Pero siempre obtengo el error [ Named query not known: "Nombre de la
consulta" ]
El archivo de mapeo esta bien incluido y funciona perfecto para el
resto de las operaciones del sistema.
Mi configuracion de las consultas y la forma en que quiero usarlas es
la siguiente:
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" namespace
="CallCenter.ObjectModel.Domain" assembly ="CallCenter.ObjectModel">
<class name="Gestion" table="Gestiones" where ="Estado='A'" >
.
.
.
<sql-query name="AG">
exec
ActivarGestionesPendientes :IdCamp, :IdDescripcion_Gestion, :PostergarHasta
</sql-query>
<query name="ActivarGestiones">
<query-param name="IdCamp" type="Int32"/>
<query-param name="IdDescripcion_Gestion" type="Int32"/>
<query-param name="PostergarHasta" type="Date"/>
exec ActivarGestionesPendientes ?,?,?
</query>
</class>
</hibernate-mapping>
Funcion en el Repocitorio de la clase Gestion
Public Sub ActivarGestiones(ByVal idCampaña As Integer, ByVal
idDescripcionGestion As Integer, ByVal postergarHasta As Date)
'Traemos la consulta definida en el archivo de mapeo
'y seteamos sus parametros
Dim c As IQuery =
Session.GetNamedQuery("ActivarGestiones")
c.SetInt32("IdCamp", idCampaña)
c.SetInt32("IdDescripcion_Gestion", idDescripcionGestion)
c.SetDateTime("PostergarHasta", postergarHasta)
c.ExecuteUpdate()
Session.GetNamedQuery("AG").SetInt32("IdCamp",
idCampaña).SetInt32("IdDescripcion_Gestion",
idDescripcionGestion).SetDateTime("PostergarHasta",
postergarHasta).UniqueResult()
Dim list = Session.CreateSQLQuery("exec
ActivarGestionesPendientes ?, ?, ?")
list.SetInt32(0, idCampaña)
list.SetInt32(1, idDescripcionGestion)
list.SetDateTime(2, postergarHasta)
list.UniqueResult()
End Sub
Las dos primeras maneras en las que quiero traer la consulta que esta
en el archivo de mapeo dan el error que les menciono.
La 3ra forma (usar en el nombre del SP y crear la consulta por codigo)
anda bien. Pero me gustaria poder dejar todo en el archivo de mapeo.
Muchas gracias a cualquier idea q me puedan dar.
--
Para escribir al Grupo, hágalo a esta dirección:
[email protected]
Para más, visite: http://groups.google.com/group/NHibernate-Hispano