Insertion F_COMPTET SQL (v16.05)

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

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

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" ***

Insertion F_COMPTET SQL (v16.05)

Messagede Windev » Lun 5 Juil 2010 19:33

Bonjour Ă  tous.

Développeur Windev depuis de nombreuses années,
j'ai déjà effectué des développements LISANT des bases
SAGE SQLserver.

A noter : je connais mal SQLserver.

Jusqu'au aujourd'hui je n'avais jamais eu besoin
d'ECRIRE dans une table SAGE SQLserver.

Le problème c'est que malheureusement, c'est très
urgent (comme par hasard, quand un tombe sur un
os...)

Bref, j'ai tout essayé pour insérer un enregistrement
dans la table F_COMPTET et Ă  chaque fois, quelque
soit la méthode j'obtiens le message suivant :

Erreur de l'accès natif SQLSERVER.
Numéro d'erreur = 100

Message SQL Server 1934, état 1, sévérité 16 :
Échec de INSERT car les options SET suivantes comportent des paramètres incorrects : 'ANSI_NULLS, QUOTED_IDENTIFIER, CONCAT_NULL_YIELDS_NULL, ANSI_WARNINGS, ANSI_PADDING'. Assurez-vous que les options SET peuvent être utilisées avec vues indexées et/ou index sur les colonnes calculées et/ou index filtrés et/ou notifications de requêtes et/ou méthodes de type de données XML et/ou opérations d'index spatial.
SQLServer a renvoyé l'erreur suivante :
Erreur générale sur SQL Server : Consultez les messages SQL Server., n° : 10007, sévérité : 5
SQLServer a renvoyé une erreur lors de l'exécution de la requête suivante :
INSERT INTO F_COMPTET
(CT_Num, CT_Intitule, CG_NumPrinc, CT_NumPayeur, N_Risque, N_CatTarif, N_CatCompta, N_Period, CT_Facture, CT_BLFact, N_Expedition, N_Condition, CT_Saut, CT_Lettrage)
VALUES
('toto', 'toto', '4110000', 'toto', 1, 1, 1, 1, 1, 1, 1, 1, 1, 1)


Bref, je deviens chèvre et les lecture et relecture de la doc décrivant
la structure de la table n'y change rien.

Y'a t-il une âme charitable pour me venir en aide ?

Merci d'avance.
Windev
Posteur néophyte
Posteur néophyte
 
Messages: 3
Inscription: Lun 5 Juil 2010 19:22

Re: Insertion F_COMPTET SQL (v16.05)

Messagede NicNic » Mar 6 Juil 2010 11:38

Bonjour Windev!

D'abord je veux m'excuser pour des erreurs contre la langue Français car ce n'est pas ma langue maternelle.

Alors, votre erreur. J'ai recherché un peu et votre erreur me semble un erreur de configuration. Les options SET sont pour processer votres queries de SQL. L' erreur vous dit qu' il y a un problème avec les options suivants: _NULLS, QUOTED_IDENTIFIER, CONCAT_NULL_YIELDS_NULL, ANSI_WARNINGS, ANSI_PADDING, et il y a un problème avec les paramètres.

Je vous advise de rechercher quels sont les paramètres sont corrects pour votre environnement.

Je ne sais pas si votre englais est bien, mais peut ĂŞtre ceci peut vous aider:

http://msdn.microsoft.com/en-us/library/ms190707.aspx
http://msdn.microsoft.com/en-us/library/ms191203.aspx

http://www.tech-archive.net/Archive/SQL ... /2699.html

J'espère que je vous ai aidé un peu.
Salutions,
NicNic
NicNic
Posteur néophyte
Posteur néophyte
 
Messages: 1
Inscription: Lun 5 Juil 2010 14:59

Re: Insertion F_COMPTET SQL (v16.05)

Messagede Richad » Mar 6 Juil 2010 17:17

Bonjour,

Testez la requête suivante sur la base de données :

alter database NOMDELABASEDEDONNEES set arithabort on

Une fois cette requête passée, retestez votre insert .

Richad
Richad
Super Modérateur
Super Modérateur
 
Messages: 151
Inscription: Ven 12 Mai 2006 15:05

Re: Insertion F_COMPTET SQL (v16.05)

Messagede Windev » Mar 6 Juil 2010 17:51

Merci de ta proposition Richad mais
malheureusement, cela ne change rien :
le message d'erreur est identique.

Une autre idée avant que je me pende ? :?
Windev
Posteur néophyte
Posteur néophyte
 
Messages: 3
Inscription: Lun 5 Juil 2010 19:22

Re: Insertion F_COMPTET SQL (v16.05)

Messagede NicolasJ » Mer 7 Juil 2010 16:25

Bonjour,

voici les requêtes que je fais à partir de mon exe Windev pour insérer un tiers :

// MAJ des paramètres de la base SQL
SET ANSI_PADDING, ANSI_WARNINGS, CONCAT_NULL_YIELDS_NULL, ARITHABORT, QUOTED_IDENTIFIER, ANSI_NULLS on

SET NUMERIC_ROUNDABORT off

// Insertion dans la base SQL
INSERT INTO F_COMPTET (CT_Num,CT_Intitule,CT_TYPE,CG_NumPrinc,CT_NumPayeur,N_Risque,N_CatTarif,N_CatCompta,N_Period,N_Expedition,N_Condition,CT_Lettrage,CT_Classement) VALUES ("...
+"'"+CT_NUM+"'"+","+...
+"'"+CT_INTITULE+"'"+","+...
+CT_TYPE+","+...
+"'"+CG_NUM+"'"+","+...
+"'"+CT_NUM+"'"+","+...
+"1"+","+...
+"1"+","+...
+"1"+","+...
+"1"+","+...
+"1"+","+...
+"1"+","+...
+"1"+","+...
+"'"+CT_NUM+"'"+...
+")"

// MAJ des paramètres de la base SQL
SET ANSI_PADDING, ANSI_WARNINGS, CONCAT_NULL_YIELDS_NULL, ARITHABORT, QUOTED_IDENTIFIER, ANSI_NULLS off

SET NUMERIC_ROUNDABORT on

En espérant que ça puisse t'aider :)

Nicolas
NicolasJ
Contributeur
Contributeur
 
Messages: 67
Inscription: Mer 24 Mar 2010 16:52

Re: Insertion F_COMPTET SQL (v16.05)

Messagede Windev » Mer 7 Juil 2010 18:15

Tu fais ça avec un hexecuteRequeteSql ou un sqlexec ?

Je vais tester, en espérant que ça fonctionne car
pour le moment je passe avec le driver oledb et
c'est pas rapide :(

En tout cas, merci Ă  toi
Windev
Posteur néophyte
Posteur néophyte
 
Messages: 3
Inscription: Lun 5 Juil 2010 19:22

Re: Insertion F_COMPTET SQL (v16.05)

Messagede NicolasJ » Jeu 8 Juil 2010 08:38

Bonjour,

J'utilise la fonction HExécuteRequêteSQL. Il faut être à l'affut des changements et des ajouts de champs lors des migrations de versions car cela peut te bloquer ta requête. Une petite veille supplémentaire ;)

Nicolas
NicolasJ
Contributeur
Contributeur
 
Messages: 67
Inscription: Mer 24 Mar 2010 16:52

Re: Insertion F_COMPTET SQL (v16.05)

Messagede bedmoca » Mar 1 Mar 2011 23:50

Bonjour Ă  tous,

J'essaie juste de modifier des données dans sage en partant de windev mais j'ai aussi le message d'erreur de l'accès natif SQLSERVER, numéro d'erreur = 100. UPDATE a échoué car les options set suivantes comportent des paramètres incorrects : 'ANSI_NULLS, QUOTED_IDENTIFIER, CONCAT_NULL_YIELS_NULL, etc etc
Comment enregistre t'on les paramètres corrects ???
Merci d'avance.
Cordialement,

Bedmoca
bedmoca
Posteur habitué
Posteur habitué
 
Messages: 34
Inscription: Sam 10 Oct 2009 15:00

Re: Insertion F_COMPTET SQL (v16.05)

Messagede DanySage » Jeu 14 Avr 2011 18:34

C'est très sinple LOL

Dans l'initialisation de ton programme et avant toute d'exécuter une requête sur la base , il faut au préalable lancer les 2 requêtes suivantes : (en WinDev)

TexteReq est une chaîne
NomReq est une chaîne="ReqInitSQLServer"
TexteReq="SET ANSI_PADDING,ANSI_WARNINGS,CONCAT_NULL_YIELDS_NULL,ARITHABORT,QUOTED_IDENTIFIER,ANSI_NULLS ON"
SI PAS SQLExec(TexteReq,NomReq) ALORS
----- inserer ici un message d'erreur
FIN
TexteReq="SET NUMERIC_ROUNDABORT OFF"
SI PAS SQLExec(TexteReq,NomReq) ALORS
----- inserer ici un message d'erreur
FIN

Ces 2 requêtes ne sont a exécuter qu'une seule fois en début de connexion, les paramètres sont ainsi fixés et restent valides pour toutes les requêtes sur la base.
DanySage
Posteur néophyte
Posteur néophyte
 
Messages: 1
Inscription: Jeu 14 Avr 2011 18:26


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

Qui est en ligne

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