FORUMS PROFESSIONNELS
WINDEV
,
WEBDEV
et
WINDEV Mobile
Accueil
|
Messages récents
|
Connexion
|
Déconnexion
|
Français
Accueil
→
WINDEV 2024
→
How to prevent the Duplicate Record screen?
How to prevent the Duplicate Record screen?
Débuté par Jose Maldonado, 10 oct. 2017 15:51 - 4 réponses
Connectez-vous…
Jose Maldonado
#1
Posté le 10 octobre 2017 - 15:51
I am importing data from an Excel file into my database.
In the process I encounter duplicates that I want to ignore.
I am using the following code (after assigning the values):
IF HAdd(BVS_BOSS_LOAD) = False THEN
IF HErrorDuplicates() = True THEN
CONTINUE
END
ELSE
CONTINUE
END
All I need is that the process to ignore the duplicate record and
continue with the next record but it pops up a duplicate record
screen.
THNX !!
JoeMaldo
Signaler
0
0
GuenterP
#2
Posté le 10 octobre 2017 - 16:16
Hi Jose,
I'm doing this all the time! No such messages ...
The trick is to take a peek into the file before saving anything to the file.
MyPosition is 4-byte int . . MyPosition = HSavePosition(MyFile) IF HReadSeekFirst(MyFile, MyKey, MyUniqueKeyValueToBeSavedinFile) THEN // this is the potentially dangerous point, the key value to be saved is already there! IF MyPosition > -1 THEN HRestorePosition(MyPosition) // That's it. No save occurs ELSE HAdd(MyFile) // depending on the logic, you could insert a HRestorePosition(MyPosition) here END
Of course, if the record to insert is identical to that you already have in the file and an update doesn't hurt, then a simple HSave(MyFile) is sufficient!
Signaler
0
0
Fabrice Harari
#3
Posté le 10 octobre 2017 - 16:52
Hi
you can either :
- do a hreadseek first and do the hadd only if not there
- or DEACTIVATE the automatic error handling of HF before using your existing code. Right now, you are testing for the duplicates error but the automatic error handling is doing TOO, and BEFORE you
Best regards
Signaler
0
0
Chris cordes
#4
Posté le 10 octobre 2017 - 17:13
hOnError(BVS_BOSS_LOAD,hErrDuplicates,"SkipDUpes")
... Loop start ...
IF HAdd(BVS_BOSS_LOAD) = False THEN
CONTINUE
END
END
... Loop end ...
hOnError(BVS_BOSS_LOAD,hErrAll)
...
Procedure SkipDupes()
result opEndProcess
HTH,
Chris C
Signaler
0
0
Jose Maldonado
#5
Posté le 18 octobre 2017 - 03:55
Guys,
Thank you for your help!
I solved the problem!!
Signaler
0
0
→ Revenir à WINDEV 2024
WINDEV 2024
WEBDEV 2024
WINDEV Mobile 2024
WINDEV (précédentes versions)
Français
English
Español
Portuguesa
Fermer cette fenêtre
Type de recherche
Uniquement les sujets
Tous les messages
Période de recherche
Date indifférente
Moins d'une heure
Moins de 24 heures
Moins d'une semaine
Moins d'un mois
Moins d'un an
Annuler
Aperçu de votre message
Ajouter une image
Importer une image depuis une URL
Envoyer une image depuis un fichier de votre disque
Déposez ici un fichier ou cliquez sur "Parcourir..."
ou
Annuler
0%
WLangage
SQL
XML, HTML
JAVA, Javascript
Texte