comment connaitre l'utilisateur qui utilise un document 'en'

Cette section est consacrée aux développements d'applications interfacées avec les logiciels Sage.

Modérateurs: Super-Apogea, Super Modérateur

comment connaitre l'utilisateur qui utilise un document 'en'

de Mahjoubi1 » Ven 20 Mai 2022 12:20

Salut tout le monde
je veux connaitre l'utilisateur qui utilise un document en cours d'utilisation
j'ai un code sql mais il passe par xp_CBUnLockRecord que je ne veux pas la debloquer je veux juste connaitre qui la utilise
use database
DECLARE @LOCK int
DECLARE @lBase int
DECLARE @lTable int
DECLARE @lRes int
DECLARE @ress int
DECLARE @ress1 varchar (15)
DECLARE @spid int
DECLARE @sp int
DECLARE @DO_Piece varchar (8)
declare @table varchar (50)

set @spid = 0
set @DO_Piece='document Number' --@piece
set @table ='f_docentete'


DECLARE MyCursor CURSOR FOR
SELECT cbMarq FROM F_DOCENTETE where DO_Piece=@DO_Piece -- BCXXX = NUMERO DE PIECE (numero du document)
OPEN MyCursor
FETCH NEXT FROM MyCursor INTO @ress

WHILE @spid < 200 -- on considère que 200 est un gros chiffre mais vous pouvez le mettre plus haut
BEGIN
SET NOCOUNT ON
SELECT @lBase = DB_ID()
SELECT @lTable = OBJECT_ID(@table)
EXECUTE @lRes = master..xp_CBUnLockRecord @spid,@lBase,@lTable, 3,@ress -- essaye de débloquer le document du processus i want bypass this without execution
--IF @lRes <> 0
-- RAISERROR(@lRes,11,1) WITH SETERROR

exec CB_IsRecordLock @table, @ress, @LOCK OUTPUT -- test si le document est toujours bloqué
IF @LOCK = 0
BEGIN
IF @spid = 0
BEGIN
print 'Ce document n''est pas bloqué'
break
END
DECLARE Qui CURSOR FOR
select nt_username from master..sysprocesses where spid=@spid
OPEN Qui
FETCH NEXT FROM Qui INTO @ress1
-- print @LOCK
-- print @spid
print 'Le Document '+@DO_Piece + ' bloqué par SPID:' + convert(varchar,@spid) + ' - Username:' + @ress1 + ' a été debloqué'
CLOSE Qui -- je ferme mon curseur
DEALLOCATE Qui -- je libère la mémoire allouée à ce curseur
break
END
set @spid=@spid+1
END

CLOSE myCursor -- je ferme mon curseur
DEALLOCATE myCursor -- je libère la mémoire allouée à ce curseur
Posteur néophyte
Posteur néophyte
 
Messages: 4
Inscription: Ven 20 Mai 2022 12:12

Re: comment connaitre l'utilisateur qui utilise un document

de Mahjoubi1 » Lun 23 Mai 2022 10:30

Qui peut m'aider svp c'est tres urgent pour moi?
Posteur néophyte
Posteur néophyte
 
Messages: 4
Inscription: Ven 20 Mai 2022 12:12

Re: comment connaitre l'utilisateur qui utilise un document

de Mahjoubi1 » Mer 25 Mai 2022 10:11

l'idée c'est de changé cette procedure avec une autre
EXECUTE @lRes = master..xp_CBUnLockRecord @spid,@lBase,@lTable, 3,@ress
si je peux changer xp_CBUnLockRecord vers CBisRECORDLOCK
ca va etre la solution que je voix
svp qui peut m'aider
Posteur néophyte
Posteur néophyte
 
Messages: 4
Inscription: Ven 20 Mai 2022 12:12


Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité