Trigger SQL
Trigger SQL
Bonjour 
est il possible de connaitre le nom du programme qui a effectué l'opération sur la base de donnée comme on peut le faire avec un trigger RPG.
J'ai essayé en utilisant une procédure stockée basée sur la fonction quiappel trouvé sur le forum mais je n'obtient jamais le bon nom de programme.
Y a t'il un autre solution?
Cdlt
			
			
			
									
									
						est il possible de connaitre le nom du programme qui a effectué l'opération sur la base de donnée comme on peut le faire avec un trigger RPG.
J'ai essayé en utilisant une procédure stockée basée sur la fonction quiappel trouvé sur le forum mais je n'obtient jamais le bon nom de programme.
Y a t'il un autre solution?
Cdlt
Re: Trigger SQL
Bonjour,
avec STACK_INFO c'est possible, par exemple
			
			
			
									
									avec STACK_INFO c'est possible, par exemple
Code : Tout sélectionner
select
	program_name
from
	table(QSYS2.STACK_INFO('*')) A
where
	program_name is not null
	and (program_library_name not like 'Q%'
	or program_name in ('QZDASOINIT', 'QSQIMAIN'))
order by ordinal_position desc
limit 1;Nicolas
						Re: Trigger SQL
bonjour à tous
on utilise les triggers pour historiser les opération sur la base de donnée pour certain fichiers sensibles.
on historise le type d'opération (creation, modification suppression), le programme a l'origine de l'opération, l'utilsateur ainsi que certaines donnée du fichier a pister.
Jusqu'à présent on utilise des triggers rpgle.
je voulais voir comment faire la même chose en trigger SQL mais je n'arrive pas a recuper le nom du programme.
La solution de Vasymimil me retourne le nom du trigger.
Cdlt
			
			
			
									
									
						on utilise les triggers pour historiser les opération sur la base de donnée pour certain fichiers sensibles.
on historise le type d'opération (creation, modification suppression), le programme a l'origine de l'opération, l'utilsateur ainsi que certaines donnée du fichier a pister.
Jusqu'à présent on utilise des triggers rpgle.
je voulais voir comment faire la même chose en trigger SQL mais je n'arrive pas a recuper le nom du programme.
La solution de Vasymimil me retourne le nom du trigger.
Cdlt
Re: Trigger SQL
Alors quelque chose comme ça :
			
			
			
									
									Code : Tout sélectionner
select
	program_library_name,
	program_name,
	procedure_name
from
	(
	select
		program_library_name, program_name, procedure_name,
		row_number() over(order by ordinal_position desc) pos
	from
		table(QSYS2.STACK_INFO('*')) A
	where
		program_name is not null
		and (program_library_name not like 'Q%'
		or program_name in ('QZDASOINIT', 'QSQIMAIN', 'QSQXCUTE'))
	)
where
	pos = 3;
Nicolas
						Re: Trigger SQL
Bonsoir Vasymimil
Cela semble fonctionné.
Merci beaucoup.
Cdlt
			
			
			
									
									
						Cela semble fonctionné.
Merci beaucoup.
Cdlt
Re: Trigger SQL
Bonjour
j'ai rajouter les programme suivant 'QCPGENIO', 'QDZXDBI' car j'avais des plantages lors de l'utilisation de cpyf et de DFU.
Cdlt
			
			
			
									
									
						j'ai rajouter les programme suivant 'QCPGENIO', 'QDZXDBI' car j'avais des plantages lors de l'utilisation de cpyf et de DFU.
Cdlt