Répétez apres moi :J'aime PBAdonf. J'aime PBAdonf. J'aime PBAdonf.

Le forum (ô combien francophone) des utilisateurs de Powerbuilder.

Recherche rapide

Annonce

Certaines rubriques, dont des cours, sont uniquement visibles par les membres du forum ^^.
Dans la rubrique Liens & Références, vous avez accès à un sommaire de téléchargement, profitez-en !
Il existe maintenant un nouveau TOPIC "Votre CV en Ligne" accessible uniquement par demande.

#1 01-03-2013 14:05:38

laurent  
1000
Date d'inscription: 11-12-2009
Messages: 33
Pépites: 177
Banque: 0

[RESOLU] Création datawindow avec procédure sur base mysql

bonjour,

je suis en pb 11.5.1 build 4675
je me connecte à une bas mysql vai odbc (driver 5.1)
je créé une procedure sous msql

Code: sql

CREATE PROCEDURE gestion_conges_db_dev.`cra_lst`( in a_id_pers  int,
   in a_dt_deb   datetime )
 
  BEGIN
    DECLARE no_annee_encours     int;
    DECLARE no_semaine_encours   int;

    select taches_ident FROM taches;
END;


cette procédure ne veux pas dire grand chose mais le problème est là
lorsque je veux récupérer cette procédure dans une datawindows j'obtient le message d'erreur suivant:

Code: message erreur

Cannot create Datawindow
'SQLSTATE = S1000
[MySQL][ODBC 5.1 Driver]{mysqld-5.5.24]Incorrect datetime value: '0' for colum 'a_dt_deb at row 2

1 execute admin.cra_lst;0 a_id_pers = :a_id_pers, a_dt_deb = :a_dt_deb'


j'ai d'autres datawindow avec des procédures et je les récupère sans problème tant que je n'ai pas de champs date (ou datetime) en paramètre .

je ne sais pas si cela  provient d'une configuration de la base mysql ou de la connection odbc définie dans powerbuilder.

une petite idée?

merci par avance

Dernière modification par laurent (21-03-2013 10:02:12)

Hors ligne

 

#2 01-03-2013 14:39:19

rincevent  
Modérateur
Award: bf
Lieu: Belgique
Date d'inscription: 06-02-2007
Messages: 722
Pépites: 100,002,023
Banque: 0

Re: [RESOLU] Création datawindow avec procédure sur base mysql

Bonjour Laurent,

sans vraiment d'expérience sur les DW basées sur des SProc, juste en lisant le message on dirais que ta 2eme ligne de données contient une valeur (0) qui n'est pas compatible avec le format de données prévu (datetime)

donc je te conseillerai de vérifier tes données en DB.

c'est sûrement pas ça, trop simple, mais bon ça coûte pas grand chose à vérifier.

bonne chance.


http://img114.imageshack.us/img114/8519/userbar175801nb.gif
Pourquoi ne puis-je vivre comme n'importe quel être humain ? Pourquoi mon destin est-il de ne pouvoir cesser de me battre ?

Hors ligne

 

#3 01-03-2013 15:17:03

laurent  
1000
Date d'inscription: 11-12-2009
Messages: 33
Pépites: 177
Banque: 0

Re: [RESOLU] Création datawindow avec procédure sur base mysql

non cela ne peut être cela car la date qui pose problème correspond à un paramètre de ma procédure et n'exite pas en db.

c'est dans la constitution de la DW que le problème se pose.
toutes autres procédures qui ne possèdent pas de pramètre date en entreé fonctionnent
je créé aussi les DW avec une date en sortie en séléctionnant directement une table


merci tout de même

Hors ligne

 

#4 01-03-2013 18:41:16

rincevent  
Modérateur
Award: bf
Lieu: Belgique
Date d'inscription: 06-02-2007
Messages: 722
Pépites: 100,002,023
Banque: 0

Re: [RESOLU] Création datawindow avec procédure sur base mysql

et tu ne peux pas virer ces paramètre IN de ta SP ?

vu le code de la SP que tu as posté ils ne servent quand même à rien je me trompe ?

Sinon voir du côté des types de données, le type DateTime de MySQL est peut être différent du type datetime de PB.

c'est toujours la m.... avec ces types de données date/time/datetime ^^



P.S. utilise le DisableBind de PB pour voir ce que tu envoie comme arguments au lieu de voir ":a_dt_deb" pourra aussi peut être t'aider

Dernière modification par rincevent (01-03-2013 18:48:37)


http://img114.imageshack.us/img114/8519/userbar175801nb.gif
Pourquoi ne puis-je vivre comme n'importe quel être humain ? Pourquoi mon destin est-il de ne pouvoir cesser de me battre ?

Hors ligne

 

#5 04-03-2013 08:33:29

laurent  
1000
Date d'inscription: 11-12-2009
Messages: 33
Pépites: 177
Banque: 0

Re: [RESOLU] Création datawindow avec procédure sur base mysql

bonjour,

effectivement au vu du code poste cela ne sert à rien mais c'est juste pour avoir une procédure valide et c'est surtout que je doit écrire la proc avec cette date et j'ai d'autre procédure à venir qui seront dans la même situation.

au pire je passerais les infos dans des zones de type string

merci pour vos réponses

Hors ligne

 

#6 21-03-2013 10:01:48

laurent  
1000
Date d'inscription: 11-12-2009
Messages: 33
Pépites: 177
Banque: 0

Re: [RESOLU] Création datawindow avec procédure sur base mysql

bonjour,

n'ayant pas trouvé de solution j'applique la méthode suivante:

Lors de l'écriture de ma procédure je défini un paramètre de type string .
je récupère la procédure dans ma datawindow.
ensuite je vais modifier ma procédure pour mettre mon paramètre en datetime puis je modifie par edit source la datawindow de façon à faire correspondre les paramètres.

cdt

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22