procédure stockée qui ne fonctionne que dans l'environnement IBEasy+
Bonjour
Firebird 1.5 embeded
Delphi 7
IBEasy+ comme interface de gestion
J'ai écris cette procédure stocké qui fonctionne parfaitement dans l'environnement de développement IBEasy + et me ramène bien les bons résultat, bien visible dans la table,
Mais quand je la lance dans l'onglet des requête ou par tout autre moyen(mon applic Delphi), elle ne m'écrit que la première ligne(correcte), alors que selon les dates choisis je devrai avoir et c'est ce que me donne IBEasy + entre 15 et 25 lignes,
Comment expliquez-vous ceci ?
Comment y remédier ?
Merci par avance de vos conseils
Henri :calim2:
Ma ligne de commande(correcte !) :
Code:
EXECUTE PROCEDURE REF_DATE ('05/27/09' ,'05/27/09')
La procedure :
Code:
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 47 48 49 50 51 52 53 54 55 56 57
| COMMIT WORK;
SET AUTODDL OFF;
SET TERM ^ ;
/* Stored procedures */
CREATE PROCEDURE "REF_DATE"
(
"DATE_DEB" DATE,
"DATE_FIN" DATE
)
RETURNS
(
"NOMBRE" INTEGER,
"COMPOSITION" CHAR(70) CHARACTER SET ISO8859_1
)
AS
BEGIN EXIT; END ^
ALTER PROCEDURE "REF_DATE"
(
"DATE_DEB" DATE,
"DATE_FIN" DATE
)
RETURNS
(
"NOMBRE" INTEGER,
"COMPOSITION" CHAR(70) CHARACTER SET ISO8859_1
)
AS
BEGIN
DELETE FROM REF_CONSO ;
FOR SELECT SUM(PROD.DOCS) , ANNEXE.COMPO
FROM PROD LEFT OUTER JOIN MODELE LEFT OUTER JOIN ANNEXE
ON PROD.PREIMP = MODELE.PREIMP
ON PROD.ANN = ANNEXE.ANN
WHERE PROD.JOUR BETWEEN : DATE_DEB AND : DATE_FIN
GROUP BY ANNEXE.COMPO
INTO : NOMBRE,
:COMPOSITION
DO
BEGIN
INSERT INTO REF_CONSO(COMPOSITION, SOMME) VALUES (:COMPOSITION,:NOMBRE);
SUSPEND;
END
END
^
SET TERM ; ^
COMMIT WORK;
SET AUTODDL ON; |
La table ou j'ecris :
Code:
1 2 3 4 5
| CREATE TABLE "REF_CONSO"
(
"SOMME" INTEGER,
"COMPOSITION" CHAR(70) CHARACTER SET ISO8859_1
); |