1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82
| sFichier est une chaîne
sChemin est une chaîne
nbritem est un entier
// Ouvre le sélecteur de fichiers
sChemin = fSélecteur("", "", "Sélectionnez un fichier.....", "Tous les fichiers (*.*)" + TAB + "*.*", "*.*")
dAtemodification est une Date = fDate(sChemin)
sFichier = ExtraitChaîne(sChemin,rangDernier,"\",DepuisDébut)
XMLTermine("Exemple")
SI HLitRecherche(fichier,nom,sFichier,hIdentique) = Vrai ALORS
SI dAtemodification = fichier.datedemodifcation ALORS
MonDoc = fChargeTexte(sChemin)
// Création du document
XMLDocument("Exemple", MonDoc)
REQ_select_file.IDfichier = fichier.IDfichier
TableAffiche(FEN_main.TABLEH_chargement,taRéExecuteRequete)
FEN_main.JAUGE_SansNom1 = FEN_main.JAUGE_SansNom1..BorneMax
RETOUR
FIN
SINON
MonDoc = fChargeTexte(sChemin)
// Création du document
XMLDocument("Exemple", MonDoc)
GOTO chargement
FIN
chargement:
//ajout fichier
fichier.chemin = sChemin
fichier.datedemodifcation = dAtemodification
fichier.nom = sFichier
HAjoute (fichier)
// Texte de la requête : Recherche de la balise Index
RequêteXPATH est une chaîne = "count(/CCDoc/Geometries/Geometry/Datas/Insert)"
SI ErreurDétectée = Vrai ALORS
Erreur("Le fichier n'est pas au format XML.")
RETOUR
FIN
b est un booléen
b = XMLExécuteXPath("Exemple", RequêteXPATH)
nbritem = XMLRésultat("Exemple")
// Est-ce une requête de calcul ?
SI b = Vrai ET XMLEnDehors("Exemple") = Vrai ALORS
// Voilà le résultat du calcul
Trace("XMLRésultat=" + XMLRésultat("Exemple"))
FIN
i est un entier = 1
REQ_select_file.ParamID = 0
TableAffiche(FEN_main.TABLEH_chargement,taRéExecuteRequete)
MultitâcheRepeint(FEN_main)
FEN_main.JAUGE_SansNom1..BorneMax = nbritem
ChronoDébut(1)
POUR i = 1 _A_ nbritem
soit t = TâcheParallèleExécute(ajoute_data,(i,fichier.IDfichier),tpoCopieComplèteContexteHFSQL)
FEN_main.JAUGE_SansNom1 = i
MultitâcheRepeint(FEN_main)
FIN
ChronoFin(1)
HExécuteRequête(REQ_delete_NRD,hRequêteDéfaut)
// trace ("temps : " + ChronoValeur(1)/1000)
ToastAffiche("traitement terminé",toastLong,cvMilieu,chCentre,BleuPastel)
REQ_select_file.ParamID = fichier.IDfichier
TableAffiche(FEN_main.TABLEH_chargement,taRéExecuteRequete) |
Partager