|
Iniciado por vin.janssens, ago., 15 2003 7:27 PM - 4 respostas |
| |
| | | |
|
| |
Publicado em agosto, 15 2003 - 7:27 PM |
Salut à tous,
J'ai une page commande sur laquelle j'utilise les fonction Hajoute() pour insérer un nouvel enregistrement. Le hic c'est qu'avant d'insérer mon enregistrement dans le fichier commande, je dois dabord créer un client, un acompte, une ligne de commande,etc...Une foi ces enregistrements insérés, je récupère les ID pour les insérer dans mon fichier commande et je me retrouve avec une erreur d'intégrité. Là ou çà se corse, c'est que si j'insère directement les données via l'éditeur de requète, je n'ai aucune erreur ??? On dirait que le Hajoute() n'applique pas un commit sur le fichier et que lorsque je veux insérer un enregistrement dans commande avec les clés étrangère des fichiers clients, acompte, ligne de commande...il considère que ces enregistrements n'existent pas encore et me renvois forcément un problème d'intégrité... Je précise que je réalise toutes ces opérations dans la même page (création du client, acompte, ligne de commande et puis commande) J'utilise également le pageversfichier avant le Hajoute(), et ce une seule foi avant tous les traitements.
Vous auriez pas une idée de ce dont il pourrait s'agir ?
Merci à vous
Vincent |
| |
| |
| | | |
|
| | |
| |
Publicado em agosto, 18 2003 - 7:50 PM |
Salut, tu devrais peut etre spécifier les fichiers sur lesquels tu veux faire le rajout, en commencant avec le bon! HAJOUTE(CLIENT) HAJOUTE(ACCOMPTE) HAJOUTE(COMMANDE) .... Sinon il risque de commencer par le dernier et là il y a effectivement une erreur d'integrite (commande sans client!) Espèrant t'avoir aidé, A+ "Vincent Janssens" <vin.janssens@skynet.be> wrote:
Salut à tous,
J'ai une page commande sur laquelle j'utilise les fonction Hajoute() pour insérer un nouvel enregistrement. Le hic c'est qu'avant d'insérer mon enregistrement dans le fichier commande, je dois dabord créer un client, un acompte, une ligne de commande,etc...Une foi ces enregistrements insérés, je récupère les ID pour les insérer dans mon fichier commande et je me retrouve avec une erreur d'intégrité. Là ou çà se corse, c'est que si j'insère directement les données via l'éditeur de requète, je n'ai aucune erreur ??? On dirait que le Hajoute() n'applique pas un commit sur le fichier et que lorsque je veux insérer un enregistrement dans commande avec les clés étrangère des fichiers clients, acompte, ligne de commande...il considère que ces enregistrements n'existent pas encore et me renvois forcément un problème d'intégrité... Je précise que je réalise toutes ces opérations dans la même page (création du client, acompte, ligne de commande et puis commande) J'utilise également le pageversfichier avant le Hajoute(), et ce une seule foi avant tous les traitements.
Vous auriez pas une idée de ce dont il pourrait s'agir ?
Merci à vous
Vincent
|
| |
| |
| | | |
|
| | |
| |
Publicado em agosto, 18 2003 - 11:01 PM |
"Christian" <cciochir@cmii.fr> wrote in message news:3f4103e0$1@news....
tu devrais peut etre spécifier les fichiers sur lesquels tu veux faire le rajout, en commencant avec le bon! HAJOUTE(CLIENT) HAJOUTE(ACCOMPTE) HAJOUTE(COMMANDE) Sinon il risque de commencer par le dernier et là il y a effectivement une erreur d'integrite (commande sans client!) Espèrant t'avoir aidé,
Tout dabord merci pour l'info Ben en fait c'est ce que je fait, j'ai bien vérifié les liens entre mes fichiers commandes, clients, acompte et en changeant mes lien de sorte qu'il ne me pose pas d'erreur d'intégrité (en changeant la cardianlité 1,1 de commande en 0,1), il me crée bien ma commande mais avec les ID pour client et acompte à 0...??? Dans ma page, faut-il nécessairement disposer des 2 champs correspondant aux ID, çàd le champ CLIENT_ID de client et celui de commande car c'est ce que j'ai en ce moment et commence à me poser des questions... J'utilise également un transactiondebut() et transactionfin() qui englobe ma portion de code ou je remplis les enregistrements...
A part çà je vois pas pourquoi çà fonctionne pas...
Merci à vous
A+
Vincent |
| |
| |
| | | |
|
| | |
| |
Publicado em agosto, 19 2003 - 10:28 AM |
Slt Vincent
Peux-tu nous montrer un bout de code épuré ne contenant que les commandes wlangage STP ?
Alain V
"Vincent Janssens" <vin.janssens@skynet.be> a écrit dans le message de news: 3f412d01$1@news....
"Christian" <cciochir@cmii.fr> wrote in message news:3f4103e0$1@news.... tu devrais peut etre spécifier les fichiers sur lesquels tu veux faire le
rajout, en commencant avec le bon! HAJOUTE(CLIENT) HAJOUTE(ACCOMPTE) HAJOUTE(COMMANDE) Sinon il risque de commencer par le dernier et là il y a effectivement une
erreur d'integrite (commande sans client!) Espèrant t'avoir aidé,
Tout dabord merci pour l'info Ben en fait c'est ce que je fait, j'ai bien vérifié les liens entre mes fichiers commandes, clients, acompte et en changeant mes lien de sorte qu'il ne me pose pas d'erreur d'intégrité (en changeant la cardianlité 1,1 de commande en 0,1), il me crée bien ma commande mais avec les ID pour client et acompte à 0...??? Dans ma page, faut-il nécessairement disposer des 2 champs correspondant aux
ID, çàd le champ CLIENT_ID de client et celui de commande car c'est ce que j'ai en ce moment et commence à me poser des questions... J'utilise également un transactiondebut() et transactionfin() qui englobe ma
portion de code ou je remplis les enregistrements...
A part çà je vois pas pourquoi çà fonctionne pas...
Merci à vous
A+
Vincent
|
| |
| |
| | | |
|
| | |
| |
Publicado em agosto, 20 2003 - 12:02 PM |
Tout dabor, merci pour vos réponses
Je viens finalement de trouver une solution ou on pourrait dire la solution à mon problème, je vous explique:
Ce qui se passait en fait, c'est que j'utilisais dans ma page, les champs Acompte_id et client_id provenant tantôt de commande, tantôt de leur fichier respectif (acomptes, clients). En effet, comme je fait habituellement, j'avais fait un drag and drop de ces champs directement à partir de la liste des fichiers (en bas à gauche) et apparement, le fait d'avoir sur ma page les deux même champs en fait (car il portait le même nom chacun, que ce soit celui pointant sur commande ou sur accompte et client) provoquait cette erreur: apparemment Webdev s'en mêle les pinceaux lorsqu'on retrouve sur la même page deux champs pointant sur des fichiers différents mais ayant le même nom et comme il le permet et ne donne aucune info aux risques que cela pourrait engendrer, je considère qu'il s'agit d'un bug de Webdev. (je travaille toujours sur la 1.5 en fait). Ma solution a été tout simplement de créer 4 nouveaux champs avec des noms distincts pointant sur les fichiers respectifs et plus de problème du tout...Vous allez certainement me dire que c'est logique mais pour un débutant en webdev comme moi et malgré quelques années de programmation dans divers languages, je dois avouer là, que j'ai séché...
Encore merci
A+
Vincent |
| |
| |
| | | |
|
| | | | |
| | |
|