Quoi, tu ne connais pas PB ? Va falloir parcourir tout le forum alors !

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 24-05-2007 16:54:30

Anpi  
Membre Geek
Date d'inscription: 22-04-2007
Messages: 59
Pépites: 3,000
Banque: 9,223,372,036,854,776,000

[RESOLU] Message d'erreur lors d'un retrieve - SQLSTATE = 22005

Bonjour à tous,

Je rencontre actuellement un soucis et un peu d'aide serait la bienvenue :

Lors de l'utilisation de l'interface de développement, j'effectue un retrieve manuel dans une datawindow déjà existante ( Procédure stockée + argument passé en paramètre d'entrée ) et j'obtiens l'anomalie suivante :
         Select error : SQLSTATE = 22005 [Microsoft] [SQL Native Client] Valeur de caractère non valide pour la spécification de la casse

Après plusieurs tentatives, je décide de créer une procédure stockée 'basique' avec quand même un paramètre en entrée et de créer une datawindow basée sur celle-ci.
Voici le code de la proc :

Code: mssql

CREATE PROC anpi_test (
  @as_event varchar(3)
                             )
AS
BEGIN
  SELECT 'test' 'COL'
END

Après avoir click sur finish dans le wizard, j'obtiens le message suivant :
Cannot create datawindow
'SQLSTATE = 22005 [Microsoft] [SQL Native Client] Valeur de caractère non valide pour la spécification de la casse
1 execute anpi_test; 1 @as_event = :as_event'

Nouveau test : je créé une nouvelle procédure stockée 'basique' mais cette fois-ci sans paramètre en entrée.
Dans ce cas j'arrive à créer la datawindow.

L'erreur se produit également en runtime et aussi avec l'exécutable.


J'ai essayé tous les drivers ODBC + natifs disponibles au bureau : cela ne change rien
J'ai modifié les paramètres ODBC de la même manière ( et plus encore ) que ce qui est décrit dans les post relatifs au même problème sur le site : cela ne change rien

Je sais que le problème ne se rencontrait pas dans la version 10.2
Je sais que sur le support Sybase, le problème est régulièrement résolu par la livraison d'un patch (EBF)


Une demande de support  a été réalisée aujourd'hui auprès de Sybase

Je ne sais pas si quelqu'un a une idée parce que là j'avoue que je patine... 

Anpi


PS :

Ma config :
- PB 10.5.1 build 6602
- SQL Server 2000

Hors ligne

 

#2 25-05-2007 10:08:26

pick ouic  
La bourse ou la vie ^^
Award: gearotter
Lieu: Massy-Verrières
Date d'inscription: 29-05-2006
Messages: 4658
Pépites: 942
Banque: 2,147,483,647
Site web

Re: [RESOLU] Message d'erreur lors d'un retrieve - SQLSTATE = 22005

cette datawindow appelant la procedure stockée existait deja ? et ca fonctionnait avant ?


Connaitre son ignorance est une grande part de la connaissance.
http://animegifs.free.fr/anime/mazinger/mazinger.gif

Hors ligne

 

#3 25-05-2007 11:30:13

Anpi  
Membre Geek
Date d'inscription: 22-04-2007
Messages: 59
Pépites: 3,000
Banque: 9,223,372,036,854,776,000

Re: [RESOLU] Message d'erreur lors d'un retrieve - SQLSTATE = 22005

Bonjour Pick ouic,

oui, la procédure stockée existait déjà auparavant et cela fonctionnait sous pb 10.2 .

As-tu une idée du temps moyen que cela prend lorsque l'on soumet un problème au support Sybase ?

Anpi

Hors ligne

 

#4 25-05-2007 11:45:17

pick ouic  
La bourse ou la vie ^^
Award: gearotter
Lieu: Massy-Verrières
Date d'inscription: 29-05-2006
Messages: 4658
Pépites: 942
Banque: 2,147,483,647
Site web

Re: [RESOLU] Message d'erreur lors d'un retrieve - SQLSTATE = 22005

SQLCA.DBParm = "StripParmNames='Yes'"

tu as ca dans tes parametres ?


Connaitre son ignorance est une grande part de la connaissance.
http://animegifs.free.fr/anime/mazinger/mazinger.gif

Hors ligne

 

#5 25-05-2007 11:50:26

Anpi  
Membre Geek
Date d'inscription: 22-04-2007
Messages: 59
Pépites: 3,000
Banque: 9,223,372,036,854,776,000

Re: [RESOLU] Message d'erreur lors d'un retrieve - SQLSTATE = 22005

Je vais tout reprendre à 0 dans mes tests, peut-être que j'ai oublié quelque chose, on ne sait jamais.

Je vais faire le test au niveau des paramètres de connexion et je te tiens au courant...

Anpi

Hors ligne

 

#6 25-05-2007 11:55:13

pick ouic  
La bourse ou la vie ^^
Award: gearotter
Lieu: Massy-Verrières
Date d'inscription: 29-05-2006
Messages: 4658
Pépites: 942
Banque: 2,147,483,647
Site web

Re: [RESOLU] Message d'erreur lors d'un retrieve - SQLSTATE = 22005

ok
esssaye avec ca deja...


Connaitre son ignorance est une grande part de la connaissance.
http://animegifs.free.fr/anime/mazinger/mazinger.gif

Hors ligne

 

#7 25-05-2007 12:00:53

Anpi  
Membre Geek
Date d'inscription: 22-04-2007
Messages: 59
Pépites: 3,000
Banque: 9,223,372,036,854,776,000

Re: [RESOLU] Message d'erreur lors d'un retrieve - SQLSTATE = 22005

Voici mes tests ainsi que les résultats obtenus :


Cas testé = Retrieve manuel dans une datawindow déjà existante ( Procédure stockée + argument passé en paramètre d'entrée )

Config du test n°1

// Profile DEV
SQLCA.DBMS = "ODBC"
SQLCA.AutoCommit = False
SQLCA.DBParm = "ConnectString='DSN=XXXXX;UID=XXXXX;PWD=XXXXX'"

Resultat du test n°1 :
Select error : SQLSTATE = 22005 [Microsoft] [SQL Native Client] Valeur de caractère non valide pour la spécification de la casse


Config du test n°2

// Profile DEV
SQLCA.DBMS = "ODBC"
SQLCA.AutoCommit = False
SQLCA.DBParm = "ConnectString='DSN=XXXXX;UID=XXXXX;PWD=XXXXX',StripParmNames='Yes'"

Resultat du test n°2 :
Select error : An error occured, but no message was returned by the database driver


Résultat de la modification du paramétrage de connexion :
Le messgage d'erreur a changé mais l'erreur subsiste.

Ca te donne une indication ?

Hors ligne

 

#8 25-05-2007 12:02:52

pick ouic  
La bourse ou la vie ^^
Award: gearotter
Lieu: Massy-Verrières
Date d'inscription: 29-05-2006
Messages: 4658
Pépites: 942
Banque: 2,147,483,647
Site web

Re: [RESOLU] Message d'erreur lors d'un retrieve - SQLSTATE = 22005

tu as changé la version du driver de l'ODBC ?


Connaitre son ignorance est une grande part de la connaissance.
http://animegifs.free.fr/anime/mazinger/mazinger.gif

Hors ligne

 

#9 25-05-2007 12:05:35

pick ouic  
La bourse ou la vie ^^
Award: gearotter
Lieu: Massy-Verrières
Date d'inscription: 29-05-2006
Messages: 4658
Pépites: 942
Banque: 2,147,483,647
Site web

Re: [RESOLU] Message d'erreur lors d'un retrieve - SQLSTATE = 22005

et ce n'est pas plutot ca ?

Config du test n°2

// Profile DEV
SQLCA.DBMS = "ODBC"
SQLCA.AutoCommit = False
SQLCA.DBParm = "ConnectString='DSN=XXXXX;UID=XXXXX;PWD=XXXXX;StripParmNames=Yes'"


Connaitre son ignorance est une grande part de la connaissance.
http://animegifs.free.fr/anime/mazinger/mazinger.gif

Hors ligne

 

#10 25-05-2007 12:06:57

Anpi  
Membre Geek
Date d'inscription: 22-04-2007
Messages: 59
Pépites: 3,000
Banque: 9,223,372,036,854,776,000

Re: [RESOLU] Message d'erreur lors d'un retrieve - SQLSTATE = 22005

Je n'ai pas changé la version du driver ODBC entre les 2 tests effectués dans mon post précédent. J'ai juste coché l'option StripParmNames dans l'éditeur de profil DB sous powerbuilder.

Hors ligne

 

#11 25-05-2007 12:09:15

pick ouic  
La bourse ou la vie ^^
Award: gearotter
Lieu: Massy-Verrières
Date d'inscription: 29-05-2006
Messages: 4658
Pépites: 942
Banque: 2,147,483,647
Site web

Re: [RESOLU] Message d'erreur lors d'un retrieve - SQLSTATE = 22005

autant pour moi.


Connaitre son ignorance est une grande part de la connaissance.
http://animegifs.free.fr/anime/mazinger/mazinger.gif

Hors ligne

 

#12 25-05-2007 12:24:07

Anpi  
Membre Geek
Date d'inscription: 22-04-2007
Messages: 59
Pépites: 3,000
Banque: 9,223,372,036,854,776,000

Re: [RESOLU] Message d'erreur lors d'un retrieve - SQLSTATE = 22005

Pas de problème, c'est déjà sympa de ta part de regarder...

Bon sinon, j'ai trouvé un truc marrant ( un bug ??? ) par rapport à ton précédent message :

lorsque l'on coche l'option Strip Parameter Names dans l'onglet Syntax cela met ça dans le preview :
SQLCA.DBParm = "ConnectString='DSN=XXXXX;UID=XXXXX;PWD=XXXXX',StripParmNames='Yes'"

et

lorsque l'on ecrit StripParmNames='Yes' dans la zone driver specific parameter de l'onglet Connection, cela met ça dans le preview :
SQLCA.DBParm = "ConnectString='DSN=XXXXX;UID=XXXXX;PWD=XXXXX';StripParmNames='Yes'"


J'ai l'impression que le fait de cocher l'option dans l'interface génère une erreur de syntaxe (, au lieu du ;) dans la chaine de connexion.

Marrant non ?

Hors ligne

 

#13 25-05-2007 12:33:46

pick ouic  
La bourse ou la vie ^^
Award: gearotter
Lieu: Massy-Verrières
Date d'inscription: 29-05-2006
Messages: 4658
Pépites: 942
Banque: 2,147,483,647
Site web

Re: [RESOLU] Message d'erreur lors d'un retrieve - SQLSTATE = 22005

Code: pb

SQLCA.DBParm = "ConnectString='DSN=EAS Demo DB V3;UID=dba;PWD=sql',DelimitIdentifier='No',CallEscape='No',StripParmNames='Yes'"

rajoute le callescape = 'No'


Connaitre son ignorance est une grande part de la connaissance.
http://animegifs.free.fr/anime/mazinger/mazinger.gif

Hors ligne

 

#14 25-05-2007 12:40:41

Anpi  
Membre Geek
Date d'inscription: 22-04-2007
Messages: 59
Pépites: 3,000
Banque: 9,223,372,036,854,776,000

Re: [RESOLU] Message d'erreur lors d'un retrieve - SQLSTATE = 22005

J'ai misexactement la même chaîne et cela donne toujours au moment du retrieve :

Select error : SQLSTATE = 22005 [Microsoft] [SQL Native Client] Valeur de caractère non valide pour la spécification de la casse

Je ne vois pas. Plus ça va plus je pense qu'il s'agit d'un bug lié à la version 10.5.1 ...


As-tu une idée du temps moyen que cela prend lorsque l'on soumet un problème au support Sybase ?

Hors ligne

 

#15 25-05-2007 12:53:43

pick ouic  
La bourse ou la vie ^^
Award: gearotter
Lieu: Massy-Verrières
Date d'inscription: 29-05-2006
Messages: 4658
Pépites: 942
Banque: 2,147,483,647
Site web

Re: [RESOLU] Message d'erreur lors d'un retrieve - SQLSTATE = 22005

http://pbadonf.fr/forum/viewtopic.php?pid=57#p57

je ne connais pas le support de sybase... mais il parait que ca peut etre assez long


Connaitre son ignorance est une grande part de la connaissance.
http://animegifs.free.fr/anime/mazinger/mazinger.gif

Hors ligne

 

#16 01-06-2007 08:20:47

pick ouic  
La bourse ou la vie ^^
Award: gearotter
Lieu: Massy-Verrières
Date d'inscription: 29-05-2006
Messages: 4658
Pépites: 942
Banque: 2,147,483,647
Site web

Re: [RESOLU] Message d'erreur lors d'un retrieve - SQLSTATE = 22005

tu as des news depuis ?
de sybase ?
ou tu as réussi à regler ton probleme ?


Connaitre son ignorance est une grande part de la connaissance.
http://animegifs.free.fr/anime/mazinger/mazinger.gif

Hors ligne

 

#17 04-06-2007 12:26:58

Anpi  
Membre Geek
Date d'inscription: 22-04-2007
Messages: 59
Pépites: 3,000
Banque: 9,223,372,036,854,776,000

Re: [RESOLU] Message d'erreur lors d'un retrieve - SQLSTATE = 22005

Bonjour Pick ouic,

Oui j'ai des news, j'ai enfin réussi à me sortir d'affaire... ( ouf ! )

En fait, j'avais un double problème :

1 - Problème de paramétrage de ma connexion :

Il fallait que je mette le paramétrage suivant :

PBNewSPInvocation = 'Yes'
StripParmNames='Yes'
CallEscape='No'

Une fois que cela a été fait, j'ai pu à nouveau créer de nouvelles datawindows basées sur des procs stocks ayant des paramètres

2 - Problème de "Select error ..." lors du retrieve de la datawindow que je devais corriger

Au moins une des colonnes définies dans ma dw était trop petite pour supporter le select renvoyé par ma proc. stockée.
( ex : string 5 dans la dw pour string de 10 effectivement retourné par le select de la proc ).
J'ai aggrandi la taille de toutes les colonnes dans la dw et le retrieve s'est enfin déroulé correctement !

Il y a apparament une différence entre PB 10.2 et la version 10.5.1 au niveau de la gestion de ce type d'erreur car, à configuration égale ( dw + proc stoc ), cela ne posait pas de problème en PB 10.2 . Donc attention à tous ceux que passent en PB 10.5.1 .


Merci pour ton aide

PS : comment met-on résolu sur le titre de la discussion ?

Hors ligne

 

#18 04-06-2007 12:28:59

pick ouic  
La bourse ou la vie ^^
Award: gearotter
Lieu: Massy-Verrières
Date d'inscription: 29-05-2006
Messages: 4658
Pépites: 942
Banque: 2,147,483,647
Site web

Re: [RESOLU] Message d'erreur lors d'un retrieve - SQLSTATE = 22005

merci pour tes reponses.

c'est fait pour le RESOLU


Connaitre son ignorance est une grande part de la connaissance.
http://animegifs.free.fr/anime/mazinger/mazinger.gif

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22