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
| nIDFichier est un entier
sLigne est une chaîne=""
sAux est une chaîne=""
sNumCompteRef est une chaîne=""
sRefLu est une chaîne=""
nPos est un entier
sNomCompte est une chaîne=""
BTN_Importantion_Fichier_Excel..Grisé=Vrai
HCréation(Transaction)
// Ouverture du fichier
nIDFichier = fOuvre(SAI_FIC, foLecture)
SI nIDFichier <> -1 ALORS
//lecture du fichier et chargement des données
sLigne=fLitLigne(nIDFichier)
BOUCLE
SI sLigne=EOT ALORS SORTIR
Message(sLigne)
// repérer le compte en cours de traitement
nPos = Position(sLigne,"Account Number :")
SI nPos>0 ALORS
sRefLu = sLigne[[nPos+16 A ]]
sRefLu = SansEspace(Remplace(sRefLu,";",""))
sNomCompte = SansEspace(sRefLu[[10 A ]])
sRefLu = sRefLu[[1 A 9]]
SI sNumCompteRef<>sRefLu ALORS
sNumCompteRef = sRefLu
// vérification si existe dans la table des comptes
HLitRecherche(Compte,NumCompte,sRefLu)
SI PAS HTrouve(Compte) ALORS
Compte.NumCompte = sNumCompteRef
Compte.NomAccount = sNomCompte
HAjoute(Compte)
FIN
FIN
FIN
// analyse
sAux = ExtraitChaîne(sLigne,1,";")
SI SansEspace(ExtraitChaîne(sLigne,1,";"))<>"" ET Position(sAux,"/")>0 ALORS
Transaction.TransactionDate = Droite(sAux,4)+NumériqueVersChaîne(Val(ExtraitChaîne(sAux,1,"/")),"02d")+NumériqueVersChaîne(Val(ExtraitChaîne(sAux,2,"/")),"02d") //5/13/2015
Transaction.TransactionID = ExtraitChaîne(sLigne,4,";")
Transaction.Ref = ExtraitChaîne(sLigne,8,";")
Transaction.Prod = ExtraitChaîne(sLigne,11,";")
Transaction.TranType = ExtraitChaîne(sLigne,12,";")
Transaction.Orig_Country = ExtraitChaîne(sLigne,14,";")
Transaction.Rec_Country = ExtraitChaîne(sLigne,15,";")
Transaction.Fx_Rate = ExtraitChaîne(sLigne,17,";")
sAux = ExtraitChaîne(sLigne,22,";")
Transaction.Fx_Date = Droite(sAux,4)+NumériqueVersChaîne(Val(ExtraitChaîne(sAux,1,"/")),"02d")+NumériqueVersChaîne(Val(ExtraitChaîne(sAux,2,"/")),"02d") //5/13/2015
Transaction.Fx_Margin = ExtraitChaîne(sLigne,23,";")
Transaction.fx = ExtraitChaîne(sLigne,24,";")
Transaction.Base_Amount = ExtraitChaîne(sLigne,25,";")
Transaction.Fee_Amount = ExtraitChaîne(sLigne,26,";")
Transaction.Commision_Amount = ExtraitChaîne(sLigne,33,";")
Transaction.NumCompte = sNumCompteRef
HAjoute(Transaction)
FIN
//
// au suivant
sLigne=fLitLigne(nIDFichier)
FIN
// Fermeture du fichier
fFerme(nIDFichier)
SINON
Erreur()
FIN
Info("Importation terminée avec succès !!!!")
BTN_Importantion_Fichier_Excel..Grisé=Faux |
Partager