bonjour à tous,
je viens de récupérer un application qui tourne en DELPHI 2006 sur une bdd DB2 et il faut que je la fasse tourner en DELPHI 2006 (sachant que je ne connais pas du tout DELPHI) sur une bdd ORACLE 10g.
J'ai des modifications à apporter au niveau des procédures stockées (qui retournent des curseurs servant à alimenter des grid) et de l'appel de ces proc stockées à partir de DELPHI.
Cependant, ne connaissant ni DELPHI, ni DB2, je n'arrive pas à trouver de solutions...
Voici un exemple de procédure stockée en DB2 :
et voici l'appel de cette procédure sous DELPHI
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 CREATE PROCEDURE REC_NUMFAX_Z (IN NUMFAX INTEGER ) DYNAMIC RESULT SETS 1 LANGUAGE SQL SPECIFIC REC_NUMFAX_Z NOT DETERMINISTIC READS SQL DATA CALLED ON NULL INPUT BEGIN DECLARE SQLCODE INTEGER DEFAULT 0 ; DECLARE RELATION INTEGER ; DECLARE RELATION1 INTEGER ; DECLARE QUERY1 CHAR ( 512 ) ; DECLARE C11 DYNAMIC SCROLL CURSOR FOR S11 ; DECLARE C12 DYNAMIC SCROLL CURSOR FOR SELECT ORPC00 FROM ORPTBL1I6 WHERE ( ORPC19 = NUMFAX ) ; OPEN C12 ; FETCH C12 INTO RELATION ; IF SQLCODE <> 0 THEN SET QUERY1 = 'SELECT * FROM ORPTBL1IZ WHERE ORPC00=0000000' ; ELSE SET RELATION1 = RELATION ; FETCH C12 INTO RELATION ; IF SQLCODE = 0 THEN SET QUERY1 = 'SELECT ORPC00, ORPC03, ORPC13, ORPC20, ORPC15, ORPC14, ORPC21, ORPC23 FROM ORPTBL1I6 WHERE (ORPC19=' CONCAT CAST ( NUMFAX AS VARCHAR ( 10) ) CONCAT ')' ; ELSE SET QUERY1 = 'SELECT * FROM ORPTBL1IZ WHERE (ORPC00=' CONCAT CAST ( RELATION1 AS VARCHAR ( 7 ) ) CONCAT ')' ; END IF ; END IF ; CLOSE C12 ; PREPARE S11 FROM QUERY1 ; OPEN C11 ; SET RESULT SETS CURSOR C11 ; END ;
1) Quelqu'un peut-il m'indiquer comment retranscrire cette procédure DB2 au format d'un base ORACLE ???
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 begin numrac := edtEntree.Text; numrac := format('%.10d',[strtoint(numrac)]); qryReccli.SQL.Add('Call orphee.rec_numfax_z(' + numrac + ')'); end;
2) Quelqu'un peut-il m'indiquer l'appel de la procédure stockée ORACLE sous DELPHI ???
Je vous remercie d'avance.
a+
Partager