Probléme de doublon
Utilisateur WDF
Inscrit:
29/01/2006 17:03
Post(s): 78
Bonjour à tous,

Voila, j'ai un probléme de doublon lors du remplissage d'un fichier a partire d'une table mémoire.

// Mise à jour de la base Clients
POUR i=1 A TableOccurrence(Table_Client_Import)
 
	TableSelectPlus(Table_Client_Import,i)

	Client.Code_Client = Table_Client_Import.Code_Client
	Client.Nom_Titulaire = Table_Client_Import.Nom_Titulaire
   ....

	// Recherche l'enregistrement
	HLitRecherchePremier ( Client, Code_Client, Table_Client_Import.Code_Client)
	
	SI HTrouve () ALORS
		HModifie (Client)
	SINON
		HAjoute(Client)
	FIN
FIN


Si je n'utilise pas la fonction HLitRecherchePremier et donc que je me contente d'un HAjoute(Client) tout fonctionne. Dans le cas contraire par moments il me detecte un doublon sur Code_Client (meme avec le fichier client vide au depart) au moment de l'importation.

Il y as surement une meilleur façon de régler de l'ajout ou la mise a jour d'un fichier au moment de l'importation, mais je débute en Windev.

Par avance merci pour toute réponse. :)

Contribution le : 29/01/2006 17:16
Créer un fichier PDF de la contribution Imprimer


Re: Probléme de doublon
Animateur WDF
Inscrit:
02/03/2003 04:07
De Noisy le grand(93)
Post(s): 2745
Bonjour Whaouu,

ATTENTION à l'ordre des traitement et merci d'y avoir coller le code sinon on aurait pas pou vous aider.

Dans votre code vous commmencer par faire des affectaion

Client.Code_Client = 100
Client.Nom_Titulaire = "Dupont"

Puis vous recherchez l'enregistrement dans la base réaffectant les valeurs trouvées de la base vers vos rubriques !!!!!
HLitRecherchePremier(....)
Puis si il trouve en faites vous ne faites aucune modification dans la base qui qu'il réécrit ce qu'il vient de lire. !!!!
et enfain vous écrivez bien dans la base lorsqu'il ne trouve pas.

ATTENTION à l'utilisation de la fonction HLitRecherche....
au type de rechercher et sur quelle type de rubrique.

Celon certains type de données comme les chaines de caractères une recherche sera par défaut une recherche du type commence par exemple:
HLitRecherche(Client,Code,"Dupont")
Seulement dans la base pas de Dupont mais un Dupontel et la recherche se positionne sur cette enregistrement et ainsi un enregistrement inexistant pointe sur un enregistrement qui n'est pas celui escompté.

Pour cela soit il faut utiliser l'option hIdentique à la fonction HLitRecherche*(<Fichier>,<Cle>,<Valeur>,hIdentique)
ou bien a vérifier ajouter le carat(0) à la fin de la valeur de recherche.

Contribution le : 30/01/2006 12:30
_________________
@A+
Contact (privé)......
email : drcharly@wdforge.org
[DrCharly93]
Créer un fichier PDF de la contribution Imprimer


Re: Probléme de doublon
Developpeur WDF
Inscrit:
24/01/2006 13:42
De Chartres
Post(s): 142
Si hlitrecherchepremier( Client, Code_Client, Table_Client_Import.Code_Client) alors
Hmodifie(CLIENT)
sinon
hajoute(CLIENT)
fin

Contribution le : 30/01/2006 14:09
Créer un fichier PDF de la contribution Imprimer


Re: Probléme de doublon
Anonyme
Merci pour vos réponses !!

Je ne pensai pas que la commande Hlitrecherchepremier modifier l'affection de mes variables. Maintenant que j'ai modifié mon code en ce sens tout fonctionne parfaitement.

J'ai déclaré une fonction locale pour l'affection de mes variables et j'ai modifié le code de cette façon :

// Mise à jour de la base Clients
POUR i=1 A TableOccurrence(Table_Client_Import)
 
 TableSelectPlus(Table_Client_Import,i)
 
 // Recherche l'enregistrement
 SI HLitRecherchePremier( Client, Code_Client, Table_Client_Import.Code_Client) ALORS
  Charge_Fiche_Client() 
  HModifie(Client)
 SINON
  Charge_Fiche_Client()
  HAjoute(Client)
 FIN
FIN


En regardant la documentation je savais qu'il y a une méthode de recherche qui diffère entre la commande Hlitrecherchepremier et Hlitrecherche.

Hlitrecherchepremier permet une recherche à l'identique.
Hlitrecherche permet une recherche générique.

Ces deux fonctions comportent une option qui permet d'inverser le type de recherche.

Encore merci !

Contribution le : 30/01/2006 20:41
Créer un fichier PDF de la contribution Imprimer


Re: Probléme de doublon
Anonyme
En parlant de doublon, je corrige ce doublon dans le post.

Contribution le : 30/01/2006 20:47

Edité par Whaouu sur 30/1/2006 21:24:16
Créer un fichier PDF de la contribution Imprimer



 Haut   Précédent   Suivant




Enregistrer votre réponse
CompteNom   Mot de passe   Authentification
Message:


Vous ne pouvez pas débuter de nouveaux sujets.
Vous pouvez voir les sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
Visualiser tous les Partenaires...
WinDev, WebDev, WinDev Mobile et HyperFile sont des marques déposées par PCSoft. |  Voter |  Legal |  Contact |   XOOPS 2.0.13.2