F_DOCENTETE: erreur domaine de validité du champ incorrect

Forum consacré aux développements d'applications interfacées avec les logiciels Sage

Modérateurs: Super Modérateur, Modérateurs

Règles du forum
Merci de prendre connaissance des règles d'utilisation du forum

Avant de poster un nouveau message, utilisez la fonction RECHERCHER. Indiquez la VERSION de votre logiciel et toutes informations utiles à la résolution de votre question. Ne rédigez pas vos messages en MAJUSCULES. Soyez courtois et pensez aux formules de POLITESSE d'usage. Les messages à vocation COMMERCIALE ou PUBLICITAIRE seront supprimés.

*** LORSQU'UN SUJET EST RESOLU, SON AUTEUR DOIT EDITER LE 1ER MESSAGE DU SUJET EN HAUT DE PAGE ET COCHER "SUJET RESOLU" ***

F_DOCENTETE: erreur domaine de validité du champ incorrect

Messagede fj049 » Sam 2 Juin 2007 10:42

Bonjour,

Je développe une application qui synchronise des devis/commande entre Sage et un site web. Sage est sur un système windows et le site sur un système linux/mysql.

Lorsque je remonte les informations du site web vers sage, je mets à jour l'entete F_DOCENTETE ainsi :
Code: Tout sélectionner
UPDATE F_DOCENTETE SET LI_NO=:a, DO_DATELIVR=:b, DO_STATUT=:c, CBMODIFICATION=:d WHERE DO_DOMAINE=0 AND DO_TYPE=0 AND DO_PIECE=:f


Cette requête fonctionne pour plein de ligne et plante sur une avec le message "domaine de validité du champ incorrect"

Mon log m'affiche la requête suivante après substitution des paramètres :
Code: Tout sélectionner
UPDATE F_DOCENTETE SET LI_NO=994, DO_DATELIVR="31/03/2005", DO_STATUT=2, CBMODIFICATION="01/06/2007 15:04:37" WHERE DO_DOMAINE=0 AND DO_TYPE=0 AND DO_PIECE="DV050209"



Quelqu'un saurait il pourquoi cette requete plante alors que d'autres fonctionne ?


Note: je développe en delphi via le driver odbc. les champs date sont typé en AsDate dans delphi.


EDIT :

En regardant mieux, il ne s'agit pas de la requete de mise à jour de l'entete mais une requete de suppression des lignes de devis.

Dans mon fonctionnement, je prend les devis sage et je les mets sur la base du site internet. Ensuite je remonte les données du site vers sage. Pour être sur d'avoir la même chose si un devis est modifié sur le site, je supprime les lignes du devis dans sage et je recrée les lignes en fonction de celle du site.

Je fait donc la requete suivante :
Code: Tout sélectionner
DELETE FROM F_DOCLIGNE WHERE DO_DOMAINE=0 AND DO_TYPE=0 AND DO_PIECE=:a


C'est cette ligne qui plante et je ne sais aps pourquoi avec le message 'Domaine de validité du champs incorrect". Le domaine et le type sont bon (c'est bien un devis) et le n° de devis est bon (puisque que je viens de faire un update de l'entete juste avant).

Ce code fonctionne pour plein de devis avant qu'un ne plante.

Quelqu'un aurait il une explication ?

Merci.
fj049
Posteur néophyte
Posteur néophyte
 
Messages: 1
Inscription: Ven 1 Juin 2007 16:12

Messagede Cluf » Ven 8 Juin 2007 18:07

de Cluf, Bonjour

le message champs de validité non valide correspond à l'utilisation d'un numérique a la place d'un alpha ou inversement ..

Il est possible qu'il te manque des guillemets ou l'inverse, affiche l'sql qui plante ... c'est le plus simple ...

Autre possibilité tu essayes de suprimer des lignes qui n'existe plus, un devis vide, moi je procéde a la suppression de ligne avec leur N° unique ça va aussi plus vite ...

a plus

Claude, Expert Consultant Sage_ligne_100
Développements spécifiques, intégration
Membre du "LE FORUM DES UTILISATEURS SAGE"
==================================
Cluf
Contributeur
Contributeur
 
Messages: 69
Inscription: Lun 12 Mar 2007 15:59

Messagede pbonomme » Mer 20 Juin 2007 15:26

Effectivement, vérifie tes guillemets.
Par contre tu ne peux nous donner ta requete exacte, et vérifié si y a bien la ligne que tu souhaite supprimé
pbonomme
Posteur néophyte
Posteur néophyte
 
Messages: 2
Inscription: Mer 20 Juin 2007 10:03


Retourner vers Développements ODBC, Objets métiers, SQL

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités