Hi,
I m try use procedure for insert in a N:N with a PK and XML Document but the code report a error ... becouse the named query don´t has a return value.
My nhibernate map file is:
Code:
<sql-query name="SQL.Procedure.Permissao.Menu">
<![CDATA[
exec up_atualiza_permissao :menu :xml
]]>
</sql-query>
my code :
Code:
public void SetPermissao(XmlDocument xmlDoc)
{
ISession session = null;
try
{
session = this.SessionFactory.OpenSession();
IQuery spPermissao = session.GetNamedQuery("SQL.Procedure.Permissao.Menu");
spPermissao.SetInt32("menu",this.Codigo);
spPermissao.SetString("xml", xmlDoc.InnerXml);
}
catch(Exception)
{
throw;
}
finally
{
session.Flush();
session.Close();
}
}
procedure code:
Code:
EXEC sp_xml_preparedocument @idoc OUTPUT, @xml
begin try
begin tran
delete usu_grupo where gru_id_grupo = @grupo
insert into permissao (gru_id_grupo, men_id_menu)
SELECT GRUPOID, USUARIOID
FROM OPENXML (@idoc, '/USUARIOS_GRUPO/USUARIO_GRUPO',1)
WITH (GRUPOID int,
USUARIOID int)
commit tran
end try
begin catch
if @@trancount > 0 rollback tran
raiserror('Erro na atualização da tabela de grupos de usuários. Transação não-concluída.',16,1)
end catch
what s wrong?
thanks