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 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137
| 'Option Explicit
Public Sub trackeur() ' fonction permettant de faire le fichier .log
Dim NbLigneTaille As Double
NbLigneTaille = FormPP.txtligne
On Error GoTo glo
Dim util As String ' recup le nom user
Dim nbli As String
Dim rec As track
Dim rec1 As track1
' Charger fichier et mettre à jour le fichier log
Adressecompt = "\\Serveur2\Exploitation\Applications\Config-log\[FL]Automate_listing.log"
On Error GoTo back
If Dir(Adressecompt, vbNormal) = "" Then 'c'est que le fichier n'existe pas
back:
' Test sur les lettres des disque dur si pas D: ou pas de C: on n'enregistre pas.
If Dir("C:\Program Files\Automate_Listing", vbDirectory) <> "" Then
AdresseComptLocal = "C:\Program Files\Automate_listing\[FL]cache_automate_listing.log" ' si sur C:
ElseIf Dir("D:\Program Files\Automate_Listing", vbDirectory) <> "" Then
AdresseComptLocal = "D:\Program Files\Automate_listing\[FL]cache_automate_listing.log" ' si sur D:
Else
Exit Sub
End If
'
If Dir(AdresseComptLocal, vbNormal) = "" Then
Set FSys = CreateObject("Scripting.FileSystemObject")
Set MonFic = FSys.CreateTextFile(AdresseComptLocal)
End If
util = Environ("USERNAME")
nbli = "Nombre de ligne traité " & NbLigneTaille
intfic = FreeFile
Open AdresseComptLocal For Random As intfic Len = Len(rec)
'Fixe les informations du client
With rec
.user = util
.dt = Date
.heure = Time
.nbligne = nbli
.version = FormPP.lblver
.paramsaut = vbCrLf
End With
'Compte le nombre d'enregistrements
intNum = LOF(intfic) / Len(rec)
'Ajoute la donnée
Put intfic, intNum + 1, rec
'intNum + 1, rec
Close intfic
'fin fichier LOG
Else
If Dir(Adressecompt, vbNormal) <> "" Then
Dim ligne
If Dir("C:\Program Files\Automate_Listing", vbDirectory) <> "" Then
AdresseComptLocal = "C:\Program Files\Automate_listing\[FL]cache_automate_listing.log" ' si sur C:
ElseIf Dir("D:\Program Files\Automate_Listing", vbDirectory) <> "" Then
AdresseComptLocal = "D:\Program Files\Automate_listing\[FL]cache_automate_listing.log" ' si sur D:
End If
If Dir(AdresseComptLocal, vbNormal) <> "" Then
intfic = FreeFile()
Open AdresseComptLocal For Input As intfic '
intfic1 = FreeFile()
Open Adressecompt For Random As intfic1 Len = Len(rec1)
While Not EOF(intfic)
Input #intfic, ligne
With rec1
.lignerecup = ligne
.paramsaut = vbCrLf
End With
'Compte le nombre d'enregistrements
intNum = LOF(intfic1) / Len(rec1)
'Ajoute la donnée
Put intfic1, intNum + 1, rec1
'intNum + 1, rec
Wend
Close intfic1
Close intfic
Kill AdresseComptLocal ' si sur C:.
End If 'fin du if de test de fichier
util = Environ("USERNAME")
nbli = "Nombre de ligne traité " & NbLigneTaille
intfic = FreeFile
Open Adressecompt For Random As intfic Len = Len(rec)
'Fixe les informations du client
With rec
.user = util
.dt = Date
.heure = Time
.nbligne = nbli
.version = FormPP.lblver
.paramsaut = vbCrLf
End With
'Compte le nombre d'enregistrements
intNum = LOF(intfic) / Len(rec)
'Ajoute la donnée
Put intfic, intNum + 1, rec
'intNum + 1, rec
Close intfic
End If ' fin du if test de fichier sur serveur
End If
'fin fichier LOG
glo:
End Sub |
Partager