Hola a todos:
HEmos desarrollado en Sharepoint Portal Server 2003, un webpart que permite
aprobar o rechazar facturas, este webpart realiza una serie de tareas y
justamente la ultima permite la ejecución de un procedimiento almacenado.
La ejecución d ecada una d elas facturas se realiza mediante threads, lo que
quiere decir, es que por cada factura se abre un thread, se jecutan las
tareas y se ejecuta el procedimiento almacenado.
El mensaje de la BBDD que nos devuelve es el siguiente:
/////////////////////////////////////////////////////////////////////////////////
Función ActualizaERP con SQL: declare @NumeroFactura nvarchar(17)declare
@CIFProveedor nvarchar(20)declare @Estado nvarchar(17)declare @URLSite
nvarchar(255)set @NumeroFactura = 'F-2006-59'set @CIFProveedor =
'A48035901'set @Estado = 'Aprobada'set @URLSite =
'
http://srvsps/sites/facturascoop/Li...m.aspx?IDT'EXECUTE
sp_IWFL_UPDEstadoFacturas @NumeroFactura, @CIFProveedor, @Estado, @URLSite Ha
provocado este error --> Exception: La transacción (Id. de proceso 52) quedó
en interbloqueo en lock recursos con otro proceso y fue elegida como sujeto
del interbloqueo. Ejecute de nuevo la transacción.
facturascoop/Lists/AprobadasUN/DispForm.aspx?IDT
Sep 27 2006 5:32PM[ at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
at NPS.Webparts.Utilities.ActualizaERP(String cadenaConexion, String
sitioDestino, String listaDestino, String sitioDestinoRechazadas, String
listaDestinoRechazadas, SPListItem Item, String strEstadoERP)]
///////////////////////////////////////////////////////////////////////////////
es decir, estemensaje que nos da SQL server realmente que significa:
La transacción (Id. de proceso 52) quedó en interbloqueo en lock recursos
con otro proceso y fue elegida como sujeto del interbloqueo. Ejecute de nuevo
la transacción.
Puede ser que el uso de Threads produzca este error, antes no se utilizaban
threads en el webpart, pero se hizo necesario para disminuir el tiempo que
tomaba Sharepoint para actualizar los campos de dichas facturas.
En difinitiva, no tenemos ni idea de porque se produce el INTERBLOQUEO d
elas pelotas
Un saludo y muchas gracias.
Asier.
Leer las respuestas