Bonjour à tous,
Je poste mon problème ici ne sachant pas où le mettre.
Je travaille actuellement sur la mise en place de queue qui me permettent de faire transiter des messages.
La mise en place des queues et le dequeuing des messages fonctionnent.
Mon problème réside dans le fait que lorsque je dequeue les messages je lance unecommande fnd_request.submit_request:
Et req_id vaut toujours 0.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46 PROCEDURE _dequeue_message( context RAW, reginfo SYS.AQ$_REG_INFO, descr SYS.AQ$_DESCRIPTOR, payload RAW, payloadl NUMBER) IS r_dequeue_options DBMS_AQ.DEQUEUE_OPTIONS_T; r_message_properties DBMS_AQ.MESSAGE_PROPERTIES_T; v_message_handle RAW(16); o_payload XXHR_HRM_MESSAGE_TYPE; ref_doc XMLTYPE; update_query VARCHAR(4000) ; obj xxhr_create_detail_wf_obj; req_id NUMBER; BEGIN r_dequeue_options.msgid := descr.msg_id; r_dequeue_options.consumer_name := descr.consumer_name; DBMS_AQ.DEQUEUE( queue_name => descr.queue_name, dequeue_options => r_dequeue_options, message_properties => r_message_properties, payload => o_payload, msgid => v_message_handle ); req_id := fnd_request.submit_request ( application => 'XXHR', program => 'C_WF', description => 'C_WF', start_time => NULL, sub_request => FALSE, argument1 => 69044, argument2 => CHR (0) COMMIT; END dequeue_message;
Par contre lorsque je lance bêtement la commande sans le dequeue cela fonctionne, req_id ne vaut pas 0.
si quelqu'un a une idée je suis preneur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 DECLARE req_id NUMBER; BEGIN req_id:=fnd_request.submit_request ( application => 'XXHR', program => 'C_WF', description => 'C_WF', start_time => NULL, sub_request => FALSE, argument1 => 69044, argument2 => CHR (0) ); COMMIT; END; /
Merci d'avance
Partager