Précédent   Forum des professionnels en informatique > Environnements de développement > WinDev
WinDev Forum d'entraide sur la programmation en WinDev
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
Vieux 19/10/2011, 09h03   #1
Nouveau Membre du Club
 
Inscription : décembre 2008
Messages : 115
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : décembre 2008
Messages : 115
Points : 35
Points : 35
Par défaut PS + MSSQL + NULL

Bonne rencontre,

J’utilise MS-SQL en natif et les procédures stockées de MS-SQL.

Je ne trouve pas le moyen d’envoyer la valeur NULL.

Exemple, j’ai une heure de fin de prestation. On ne sait pas d’avance l’heure de fin donc celle-ci est remplie par après lors d’un update sur la DB.

Le problème, c’est que lors de l’INSERT, il me met d’office la valeur 1900-01-01 00:00:00.000

Quand je test ma PS et que je lui passe NULL, c’est ok. Mon souci vient de la possibilité de passer NULL à la PS depuis windev.

Si je mets ça sdAjouterPersonnelDossier.PHeureFin = Null, j’obtiens ça : 1900-01-01 00:00:00.000

Ce qui est normal d’après la doc : NULL Entier initialisé à 0. Par exemple, il est possible d'utiliser un paramètre "null" dans une fonction API (fonction API ou AppelDLL32) 0

Une idée pour avoir réellement NULL dans la DB ? Je ne trouve rien à ce niveau dans la doc…

D’avance, merci.
Raphaël.
Raphael1980 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/10/2011, 09h33   #2
Membre Expert
 
Inscription : mars 2005
Messages : 1 532
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : mars 2005
Messages : 1 532
Points : 2 123
Points : 2 123
Bonjour,

Peut être avec la syntaxe suivante :

Code :
sdAjouterPersonnelDossier.PHeureFin..Null = Vrai
Jamais testé dans le cas de l'exécution d'une PS via accès natif. Mais c'est la syntaxe normale pour déclarer une colonne à NULL dans un buffer fichier ou une source de données (http://doc.pcsoft.fr/fr-FR/?2512064&name=null-propriete)
vmolines est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/10/2011, 09h41   #3
Nouveau Membre du Club
 
Inscription : décembre 2008
Messages : 115
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : décembre 2008
Messages : 115
Points : 35
Points : 35
Malheureusement dans ce cas, j'obtiens ce message.

Code :
1
2
Erreur à la ligne 26 du traitement Sortie de FI_Personnel.
<PHeureFin> n'est ni une rubrique ni un paramètre de la requête <sdAjouterPersonnelDossier>. De nouveaux paramètres ne doivent pas être déclarés après la préparation d'une requête. Vérifier également qu'il n'y a pas d'erreur de syntaxe dans le nom de la rubrique ou du paramètre.
En gros, il considère que PHeureFin n'existe pas et il plante lors de l'appel à la PS.

Code :
1
2
3
4
5
6
SI HExécuteRequêteSQL(sdAjouterPersonnelDossier,"gcnxMaConnexion", ...
			hRequêteSansCorrection ,"AjouterPersonnelDossier @PTypePersonnel,@PCodePersonnel,@PNom,@PDepart,@PHeureDebut,@PHeureFin,@PResponsableEquipe,@PResponsableCamion,@PConfirmer,@PPrixForfait,@PPrixSup,@PSaisiPar,@IDDossier") ALORS
	HAnnuleDéclaration(sdAjouterPersonnelDossier)
SINON
	Erreur(HErreurInfo())				
FIN
sdAjouterPersonnelDossier.PHeureFin n'existe pas dans ce cas.

C'est embattant...
Raphael1980 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/10/2011, 09h43   #4
Nouveau Membre du Club
 
Inscription : décembre 2008
Messages : 115
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : décembre 2008
Messages : 115
Points : 35
Points : 35
Je ne vais quand même pas de voir faire un truc comme ça...

Code :
1
2
3
4
5
Si sdAjouterPersonnelDossier.PHeureFin..Null = vrai alors
HExécuteRequêteSQL sans le paramètre PHeureFin
sinon
HExécuteRequêteSQL avec le paramètre PHeureFin
FIN
C'est lourd... Surtout le fait d'avoir deux PS presque identiques.
Raphael1980 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/10/2011, 10h02   #5
Membre Expert
 
Inscription : mars 2005
Messages : 1 532
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : mars 2005
Messages : 1 532
Points : 2 123
Points : 2 123
Donnez le vrai code utilisé pour vos tests et le résultat ou erreur obtenus.

C'est difficile de comprendre ce que vous avez réellement fait.
vmolines est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/10/2011, 10h12   #6
Nouveau Membre du Club
 
Inscription : décembre 2008
Messages : 115
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : décembre 2008
Messages : 115
Points : 35
Points : 35
Etape 1 :

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
		sdAjouterPersonnelDossier est une Source de Données
		sdAjouterPersonnelDossier.PTypePersonnel = TABLE_Personnel.COL_Fonction[i]
		sdAjouterPersonnelDossier.PCodePersonnel = TABLE_Personnel.COL_CodePersonnel[i]
		sdAjouterPersonnelDossier.PNom = TABLE_Personnel.COL_Nom[i]
		sdAjouterPersonnelDossier.PDepart = TABLE_Personnel.COL_Depart[i]
		dhDateHeureDebut = TABLE_Personnel.COL_HeureDebut[i]
		dhDateHeureFin = TABLE_Personnel.COL_HeureFin[i]
		sdAjouterPersonnelDossier.PHeureDebut = dhDateHeureDebut..PartieDate + " " + dhDateHeureDebut..Heure + ":" + dhDateHeureDebut..Minute + ":" + dhDateHeureDebut..Seconde + ".000"
		//sdAjouterPersonnelDossier.PHeureFin = dhDateHeureFin..PartieDate + " " + dhDateHeureFin..Heure + ":" + dhDateHeureFin..Minute + ":" + dhDateHeureFin..Seconde + ".000"
		sdAjouterPersonnelDossier.PHeureFin..Null = Vrai
		sdAjouterPersonnelDossier.PResponsableEquipe =  TABLE_Personnel.COL_ResponsableEquipe[i]
		sdAjouterPersonnelDossier.PResponsableCamion =  TABLE_Personnel.COL_ResponsableCamion[i]
		sdAjouterPersonnelDossier.PConfirmer =  TABLE_Personnel.COL_Confirme[i]
		sdAjouterPersonnelDossier.PPrixForfait =  TABLE_Personnel.COL_Prix[i]
		sdAjouterPersonnelDossier.PPrixSup =  TABLE_Personnel.COL_PrixSup[i]		
		sdAjouterPersonnelDossier.PSaisiPar =  gsLoginUtilisateur
		sdAjouterPersonnelDossier.IDDossier =  gnDossierEnCours
		
		SI HExécuteRequêteSQL(sdAjouterPersonnelDossier,"gcnxMaConnexion", ...
			hRequêteSansCorrection ,"AjouterPersonnelDossier @PTypePersonnel,@PCodePersonnel,@PNom,@PDepart,@PHeureDebut,@PHeureFin,@PResponsableEquipe,@PResponsableCamion,@PConfirmer,@PPrixForfait,@PPrixSup,@PSaisiPar,@IDDossier") ALORS
			HAnnuleDéclaration(sdAjouterPersonnelDossier)
		SINON
			Erreur(HErreurInfo())				
		FIN

Résultat :
Erreur à la ligne 26 du traitement Sortie de FI_Personnel.
<PHeureFin> n'est ni une rubrique ni un paramètre de la requête <sdAjouterPersonnelDossier>. De nouveaux paramètres ne doivent pas être déclarés après la préparation d'une requête. Vérifier également qu'il n'y a pas d'erreur de syntaxe dans le nom de la rubrique ou du paramètre.

Etape 2 :

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
		sdAjouterPersonnelDossier est une Source de Données
		sdAjouterPersonnelDossier.PTypePersonnel = TABLE_Personnel.COL_Fonction[i]
		sdAjouterPersonnelDossier.PCodePersonnel = TABLE_Personnel.COL_CodePersonnel[i]
		sdAjouterPersonnelDossier.PNom = TABLE_Personnel.COL_Nom[i]
		sdAjouterPersonnelDossier.PDepart = TABLE_Personnel.COL_Depart[i]
		dhDateHeureDebut = TABLE_Personnel.COL_HeureDebut[i]
		dhDateHeureFin = TABLE_Personnel.COL_HeureFin[i]
		sdAjouterPersonnelDossier.PHeureDebut = dhDateHeureDebut..PartieDate + " " + dhDateHeureDebut..Heure + ":" + dhDateHeureDebut..Minute + ":" + dhDateHeureDebut..Seconde + ".000"
		//sdAjouterPersonnelDossier.PHeureFin = dhDateHeureFin..PartieDate + " " + dhDateHeureFin..Heure + ":" + dhDateHeureFin..Minute + ":" + dhDateHeureFin..Seconde + ".000"
		sdAjouterPersonnelDossier.PHeureFinl = null
		sdAjouterPersonnelDossier.PResponsableEquipe =  TABLE_Personnel.COL_ResponsableEquipe[i]
		sdAjouterPersonnelDossier.PResponsableCamion =  TABLE_Personnel.COL_ResponsableCamion[i]
		sdAjouterPersonnelDossier.PConfirmer =  TABLE_Personnel.COL_Confirme[i]
		sdAjouterPersonnelDossier.PPrixForfait =  TABLE_Personnel.COL_Prix[i]
		sdAjouterPersonnelDossier.PPrixSup =  TABLE_Personnel.COL_PrixSup[i]		
		sdAjouterPersonnelDossier.PSaisiPar =  gsLoginUtilisateur
		sdAjouterPersonnelDossier.IDDossier =  gnDossierEnCours
		
		SI HExécuteRequêteSQL(sdAjouterPersonnelDossier,"gcnxMaConnexion", ...
			hRequêteSansCorrection ,"AjouterPersonnelDossier @PTypePersonnel,@PCodePersonnel,@PNom,@PDepart,@PHeureDebut,@PHeureFin,@PResponsableEquipe,@PResponsableCamion,@PConfirmer,@PPrixForfait,@PPrixSup,@PSaisiPar,@IDDossier") ALORS
			HAnnuleDéclaration(sdAjouterPersonnelDossier)
		SINON
			Erreur(HErreurInfo())				
		FIN
Résultat : 1900-01-01 00:00:00.000 dans la DB

Mon but est d'avoir NULL dans le champ HeureFin de la DB.

La PS :

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
ALTER PROCEDURE [dbo].[AjouterPersonnelDossier]
	-- Add the parameters for the stored procedure here
	@PTypePersonnel varchar(30),
	@PCodePersonnel varchar(20),
	@PNom varchar(50),
	@PDepart varchar(50),
	@PHeureDebut datetime,
	@PHeureFin datetime,
	@PResponsableEquipe bit,
	@PResponsableCamion bit,
	@PConfirmer bit,
	@PPrixForfait money,
	@PPrixSup money,
	@PSaisiPar varchar(64),
	@IDDossier int
AS
BEGIN
	-- SET NOCOUNT ON added to prevent extra result sets from
	-- interfering with SELECT statements.
	SET NOCOUNT ON;

    -- Insert statements for procedure here
	INSERT INTO dbo.Personnel_dossier (TypePersonnel,CodePersonnel,Nom,Depart,HeureDebut,HeureFin,ResponsableEquipe,ResponsableCamion,
	Confirmer,PrixForfait,PrixSupplement,SaisiLe,SaisiPar,IDdossier)
	VALUES (@PTypePersonnel,@PCodePersonnel,@PNom,@PDepart,@PHeureDebut,@PHeureFin,@PResponsableEquipe,@PResponsableCamion,
	@PConfirmer,@PPrixForfait,@PPrixSup,GETDATE(),@PSaisiPar,@IDDossier)
END
Raphael1980 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/10/2011, 10h25   #7
Membre Expert
 
Inscription : mars 2005
Messages : 1 532
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : mars 2005
Messages : 1 532
Points : 2 123
Points : 2 123
Merci c'est plus clair. L'erreur de l'étape 1 se produit à l'exécution de la requête (l. 19) ou à l'affectation du paramètre (l. 10) ?

Autre test, ça marche bien quand vous forcez le passage de NULL à l'appel de la PS ?

Code :
1
2
3
4
5
6
SI HExécuteRequêteSQL(sdAjouterPersonnelDossier,"gcnxMaConnexion", ...
			hRequêteSansCorrection ,"AjouterPersonnelDossier @PTypePersonnel,@PCodePersonnel,@PNom,@PDepart,@PHeureDebut, NULL,@PResponsableEquipe,@PResponsableCamion,@PConfirmer,@PPrixForfait,@PPrixSup,@PSaisiPar,@IDDossier") ALORS
			HAnnuleDéclaration(sdAjouterPersonnelDossier)
SINON
	Erreur(HErreurInfo())				
FIN
vmolines est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/10/2011, 10h44   #8
Nouveau Membre du Club
 
Inscription : décembre 2008
Messages : 115
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : décembre 2008
Messages : 115
Points : 35
Points : 35
L'erreur se produit à l'affectation du paramètre (l. 10) --> sdAjouterPersonnelDossier.PHeureFin..Null = Vrai

Sinon, si je mets directement null dans HExécuteRequêteSQL, j'ai cette erreur.



Le SQL ne trouve donc pas le paramètre qu'il attend ce qui normal. Quand on exécute une PS directement sur le SGBD et qu'il y a un null, on doit faire.

Code :
1
2
3
4
5
6
7
8
9
DECLARE	@return_value int

EXEC	@return_value = [dbo].[XXTestXX]
		@valeur1 = 1,
		@valeur2 = NULL

SELECT	'Return Value' = @return_value

GO
Si on vire le @valeur2, on obtient bien le même message d'erreur : Procedure or function 'XXTestXX' expects parameter '@valeur2', which was not supplied.

Donc si je mets null comme ça dans la requête envoyé par Windev, il considère qu'il manque un paramètre.
Raphael1980 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/10/2011, 10h54   #9
Nouveau Membre du Club
 
Inscription : décembre 2008
Messages : 115
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : décembre 2008
Messages : 115
Points : 35
Points : 35
Si je ne définis pas PHeureFin dans la source de données et que je laisse :

Code :
1
2
3
SI HExécuteRequêteSQL(sdAjouterPersonnelDossier,"gcnxMaConnexion", ...
			hRequêteSansCorrection ,"AjouterPersonnelDossier @PTypePersonnel,@PCodePersonnel,@PNom,@PDepart,@PHeureDebut,@PHeureFin,@PResponsableEquipe,@PResponsableCamion,@PConfirmer,@PPrixForfait,@PPrixSup,@PSaisiPar,@IDDossier") ALORS
		HAnnuleDéclaration(sdAjouterPersonnelDossier)
Je n'ai pas d'erreur mais j'ai 1900-01-01 00:00:00.000 dans la DB.

*soupir*
Raphael1980 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/10/2011, 11h23   #10
Membre Expert
 
Inscription : mars 2005
Messages : 1 532
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : mars 2005
Messages : 1 532
Points : 2 123
Points : 2 123
Citation:
Envoyé par Raphael1980 Voir le message
...
Sinon, si je mets directement null dans HExécuteRequêteSQL, j'ai cette erreur.



Le SQL ne trouve donc pas le paramètre qu'il attend ce qui normal. Quand on exécute une PS directement sur le SGBD et qu'il y a un null, on doit faire.

Code :
1
2
3
4
5
6
7
8
9
DECLARE	@return_value int

EXEC	@return_value = [dbo].[XXTestXX]
		@valeur1 = 1,
		@valeur2 = NULL

SELECT	'Return Value' = @return_value

GO
Si on vire le @valeur2, on obtient bien le même message d'erreur : Procedure or function 'XXTestXX' expects parameter '@valeur2', which was not supplied.

Donc si je mets null comme ça dans la requête envoyé par Windev, il considère qu'il manque un paramètre.
Vous avez raison, la syntaxe que je proposais ne fonctionne pas.

Et en mixant passage de paramètre via paramètre sur source de données pour tout ce qui non null et passage du NULL dans le "call" :

Code :
1
2
3
SI HExécuteRequêteSQL(sdAjouterPersonnelDossier,"gcnxMaConnexion", ...
			hRequêteSansCorrection ,"AjouterPersonnelDossier @PTypePersonnel,@PCodePersonnel,@PNom,@PDepart,@PHeureDebut,@PHeureFin=NULL,@PResponsableEquipe,@PResponsableCamion,@PConfirmer,@PPrixForfait,@PPrixSup,@PSaisiPar,@IDDossier") ALORS
		HAnnuleDéclaration(sdAjouterPersonnelDossier)
Ca passe ?


Edit : il faudrait qu'Hibernatus passe par là, il a une bonne maîtrise de l'interaction AN <-> SQL Server.
vmolines est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/10/2011, 11h31   #11
Nouveau Membre du Club
 
Inscription : décembre 2008
Messages : 115
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : décembre 2008
Messages : 115
Points : 35
Points : 35
J'ai également essayé tout à l'heure. Je n'ai pas de message d'erreur mais j'ai ça dans la db 1900-01-01 00:00:00.000.

Code :
1
2
3
SI HExécuteRequêteSQL(sdAjouterPersonnelDossier,"gcnxMaConnexion", ...
			hRequêteSansCorrection ,"AjouterPersonnelDossier @PTypePersonnel,@PCodePersonnel,@PNom,@PDepart,@PHeureDebut,@PHeureFin=NULL,@PResponsableEquipe,@PResponsableCamion,@PConfirmer,@PPrixForfait,@PPrixSup,@PSaisiPar,@IDDossier") ALORS
			HAnnuleDéclaration(sdAjouterPersonnelDossier)
Raphael1980 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/10/2011, 11h37   #12
Membre éclairé
 
Inscription : août 2010
Messages : 247
Détails du profil
Informations forums :
Inscription : août 2010
Messages : 247
Points : 393
Points : 393
Bonjour,

Code :
1
2
3
4
5
6
sdReq	est une Source de Données
vNull	est un Variant	= Null

sdReq.Param1 = Null
sdReq.Param2 = vNull
Trace("Param1 : " + TypeVar(sdReq.Param1) + ", wlVariant : " + wlVariant + ", Param2 : " + TypeVar(sdReq.Param2))
C'est bien Null qui est stocké dans Param1 et pas 0.
Notez qu'on ne peut pas écrire sdReq.Param1..Type pour vérifier que ça vaut zéro (type indéfini = Null), donc il y a déjà un problème dans la façon dont WinDev gère ou donne accès aux paramètres de requêtes.

C'est un défaut de WinDev et/ou de l'accès natif si ça devient 0.

Contactez le support technique.

Sinon, si vous pouvez modifier la PS vous pouvez définir une valeur spéciale comme -1 qui remplace le NULL.

PS. vmolines : merci, mais en fait je ne connais que l'accès par OLE DB, je n'ai jamais utilisé l'accès natif.
Hibernatus34 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 19/10/2011, 12h20   #13
Nouveau Membre du Club
 
Inscription : décembre 2008
Messages : 115
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : décembre 2008
Messages : 115
Points : 35
Points : 35
Je viens de faire le test...

Effectivement avant l'envoi vers l'accès natif la valeur est bonne.



J'ai sonné au support du Benelux mais ils ne savent pas...

Je viens donc d'envoyer un mail au support technique en France.
Raphael1980 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/10/2011, 15h51   #14
Nouveau Membre du Club
 
Homme
Développeur informatique
Inscription : avril 2011
Messages : 14
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : avril 2011
Messages : 14
Points : 37
Points : 37
Salut,

Dans ta procédure stockée, déclare le paramètre PHeureFin comme étant optionnel en lui mettant une valeur par défaut, la valeur NULL par exemple.

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
ALTER PROCEDURE [dbo].[AjouterPersonnelDossier]
	-- Add the parameters for the stored procedure here
	@PTypePersonnel varchar(30),
	@PCodePersonnel varchar(20),
	@PNom varchar(50),
	@PDepart varchar(50),
	@PHeureDebut datetime,
	@PHeureFin datetime = NULL,
	@PResponsableEquipe bit,
	@PResponsableCamion bit,
	@PConfirmer bit,
	@PPrixForfait money,
	@PPrixSup money,
	@PSaisiPar varchar(64),
	@IDDossier int
AS
BEGIN
	-- SET NOCOUNT ON added to prevent extra result sets from
	-- interfering with SELECT statements.
	SET NOCOUNT ON;

    -- Insert statements for procedure here
	INSERT INTO dbo.Personnel_dossier (TypePersonnel,CodePersonnel,Nom,Depart,HeureDebut,HeureFin,ResponsableEquipe,ResponsableCamion,
	Confirmer,PrixForfait,PrixSupplement,SaisiLe,SaisiPar,IDdossier)
	VALUES (@PTypePersonnel,@PCodePersonnel,@PNom,@PDepart,@PHeureDebut,@PHeureFin,@PResponsableEquipe,@PResponsableCamion,
	@PConfirmer,@PPrixForfait,@PPrixSup,GETDATE(),@PSaisiPar,@IDDossier)
END

Comme cela lorsque tu veux que HeureFin soit NULL tu ne passes aucun paramètre @PHeureFin à ta procédure.
lemilano95 est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 19/10/2011, 16h45   #15
Nouveau Membre du Club
 
Inscription : décembre 2008
Messages : 115
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : décembre 2008
Messages : 115
Points : 35
Points : 35
Bien vu ! Dans ce cas, cette solution me va puisque je peux faire un truc comme ça :

SI TABLE_Personnel.COL_HeureFin[i] = NULL ALORS
PS sans paramètre
SINON
PS avec le paramètre

Et j'ai toujours bien qu'une seule PS dans mon SGBD pour le même travail.

Par contre, c'est quand même déplaisant que je ne puisse pas passer de NULL directement. Si j'ai une réponse du support, je vous post la réponse.

Merci à vous (tous les participants du post) pour votre aide qui m'a été très précieuse.

Raphaël.

Dernière modification par Raphael1980 ; 19/10/2011 à 16h59.
Raphael1980 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +1. Il est actuellement 23h09.


 
 
 
 
Partenaires

Hébergement Web