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
| Function Valid()
On Error GoTo Line1
Dim NomRepertBD 'Le nom du répertoire où se trouve la base de données
Dim xmlDoc As New MSXML2.DOMDocument40
Dim xsdCache As New MSXML2.XMLSchemaCache40
Dim myErr
Dim NomFichierXML
Dim Lib As String
Lib = Me.Classe1 & "_" & Me.AnSc & "_" & Me.DateFichier & "_" & Me.Code_centre & Me.Code_antenne
NomRepertBD = ParentDir(Application.CurrentDb.Name)
NomFichierXML = NomRepertBD + "Etnic\STAT" & Lib & ".xml"
xsdCache.Add "", NomRepertBD + "IRIS_14.xsd"
Set xmlDoc.schemas = xsdCache
xmlDoc.validateOnParse = True
xmlDoc.async = False
xmlDoc.Load NomFichierXML
Dim db As DAO.Database
Set db = CurrentDb()
Set myErr = xmlDoc.parseError
If (myErr <> 0) Then
MsgBox ("Le fichier xml comporte au moins une erreur et ne peut être envoyé : " _
& myErr.reason & "Si vous n'arrivez pas à corriger l'erreur, contactez l'informaticien de l'AFAPMS.")
DoCmd.SetWarnings False
db.Execute "DELETE Transmission.* FROM Transmission"
DoCmd.SetWarnings True
db.Close
Exit Function
Else
MsgBox ("Le fichier xml enregistré dans le dossier \Etnic sous le nom" & NomFichierXML & " est conforme " _
& "au schéma défini. Il peut être envoyé.")
DoCmd.SetWarnings False
db.Execute "DELETE Transmission.* FROM Transmission"
DoCmd.SetWarnings True
db.Close
Exit Function
End If
Line1:
MsgBox "Votre installation ne permet pas la vérification du fichier xml qui a été créé. ", vbExclamation
Exit Function
End Function |
Partager