Public Sub TratarAsset(oXMLDocFSGS, oRaiz, accion, Descript, Codigo, importe, CodGeneral)
Dim oFos As FileSystemObject
Dim oFosGes As FileSystemObject
Dim Carpeta As Folder
Dim CarpetaUnidadesGestion As Folder
Dim Archivo As File
Dim ArchivoUniGestion As File
Dim ostream As Scripting.TextStream
Dim ostreamUniGestion As Scripting.TextStream
Dim Carpetabackup As String
Dim saux As String
Dim sauxUniGestion As String
Dim sNombreFichero As String, sFicheroLeer As String, sNombreFicheroGestion As String
Dim sIdFich As String
Dim iIdSecuencial As Double
Dim sFicheroEscribir As String
Dim bHayCambios As Boolean, bHayUnCambio As Boolean
'Dim oXMLDocFSGS As MSXML2.DOMDocument60
Dim oNodoLinea, oNombre, oValor, oNodoUons, oNodoUon, oNodoImps, oNodoImp As MSXML2.IXMLDOMNode
Dim i As Long
'Variables para recoger los datos de unidades de gestion
Dim sCodUnidadGes, sExpedienteGestor, sDescrUnidadGes, sCodArea, sCodZona As String
Dim unidadGestionEncontrada As Boolean
Dim oIdi As CIdioma
Dim oIdiomas As CIdiomas
Dim sDescrCorta As String
On Error GoTo error:
' '<PARTIDAS>
' Set oXMLDocFSGS = New MSXML2.DOMDocument60
'
' Set oRaiz = oXMLDocFSGS.createNode(NODE_ELEMENT, "PARTIDAS", "")
' oXMLDocFSGS.appendChild oRaiz
'<PARTIDA>
Set oNodoLinea = oXMLDocFSGS.createNode(NODE_ELEMENT, "PARTIDA", "")
oRaiz.appendChild oNodoLinea
'<ACCION> Acción que afecta a los datos CHAR(1)</ACCION>
Set oNombre = oXMLDocFSGS.createNode(NODE_ELEMENT, "ACCION", "")
oNodoLinea.appendChild oNombre
Set oValor = oXMLDocFSGS.createNode(NODE_TEXT, "", "")
oValor.nodeValue = accion
oNombre.appendChild oValor
'<PRES0> Identificador del nodo raiz VARCHAR(20)</PRES0>
Set oNombre = oXMLDocFSGS.createNode(NODE_ELEMENT, "PRES0", "")
oNodoLinea.appendChild oNombre
Set oValor = oXMLDocFSGS.createNode(NODE_TEXT, "", "")
oValor.nodeValue = sPres0
oNombre.appendChild oValor
'<PRES1>Identificador del nivel 1 VARCHAR(20)</PRES1>
Set oNombre = oXMLDocFSGS.createNode(NODE_ELEMENT, "PRES1", "")
oNodoLinea.appendChild oNombre
Set oValor = oXMLDocFSGS.createNode(NODE_TEXT, "", "")
oValor.nodeValue = CodGeneral
oNombre.appendChild oValor
If Codigo <> CodGeneral Then
'<PRES2>Identificador del nivel 2 VARCHAR(20)</PRES2>
Set oNombre = oXMLDocFSGS.createNode(NODE_ELEMENT, "PRES2", "")
oNodoLinea.appendChild oNombre
Set oValor = oXMLDocFSGS.createNode(NODE_TEXT, "", "")
oValor.nodeValue = Codigo
oNombre.appendChild oValor
End If
'<USU>Código usuario VARCHAR(20)</USU>
Set oNombre = oXMLDocFSGS.createNode(NODE_ELEMENT, "USU", "")
oNodoLinea.appendChild oNombre
Set oValor = oXMLDocFSGS.createNode(NODE_TEXT, "", "")
oValor.nodeValue = "Integration"
oNombre.appendChild oValor
'<FECACT>Fecha actualización (mm-dd-yyyy hh:mm:ss)</FECACT>
Set oNombre = oXMLDocFSGS.createNode(NODE_ELEMENT, "FECACT", "")
oNodoLinea.appendChild oNombre
Set oValor = oXMLDocFSGS.createNode(NODE_TEXT, "", "")
oValor.nodeValue = Format(Now, "mm-dd-yyyy hh:mm:ss")
oNombre.appendChild oValor
'''pres5_idiomas
If Descript = "code" Then
sDescrCorta = Codigo
Else
sDescrCorta = Descript
End If
If Not IsNull(sDescrCorta) Then
'Carga todos los idiomas de la aplicación:
Set oIdiomas = DevolverIdiomas(m_oConexion, False, True)
For Each oIdi In oIdiomas
'<DEN_XXX> Denominación del nivel en el idioma correspondiente VARCHAR(200)</DEN_XXX>
Set oNombre = oXMLDocFSGS.createNode(NODE_ELEMENT, "DEN_" & UCase(oIdi.Cod), "")
oNodoLinea.appendChild oNombre
Set oValor = oXMLDocFSGS.createNode(NODE_TEXT, "", "")
oValor.nodeValue = sDescrCorta
oNombre.appendChild oValor
Next
Set oIdi = Nothing
Set oIdiomas = Nothing
End If
''pres5_importes
'SI NO ES NI I ni U tengo que hacer esto?
If Not IsNull(FecINI) And Not IsNull(FecFIN) Then
'<IMPORTES>
Set oNodoImps = oXMLDocFSGS.createNode(NODE_ELEMENT, "IMPORTES", "")
oNodoLinea.appendChild oNodoImps
' <IMPORTE>
Set oNodoImp = oXMLDocFSGS.createNode(NODE_ELEMENT, "IMPORTE", "")
oNodoImps.appendChild oNodoImp
' <ACCION_IMPORTE>Acción que afecta a las vigencias e importes CHAR(1)</ACCION_IMPORTE>
Set oNombre = oXMLDocFSGS.createNode(NODE_ELEMENT, "ACCION_IMPORTE", "")
oNodoImp.appendChild oNombre
Set oValor = oXMLDocFSGS.createNode(NODE_TEXT, "", "")
oValor.nodeValue = accion 'I para los nuevos, U para los que ya existen de forma que se actualice PRES5_IMPORTES sobre el registro activo
oNombre.appendChild oValor
' <FEC_INI> Fecha inicio validez (mm-dd-yyyy)</FEC_INI>
Set oNombre = oXMLDocFSGS.createNode(NODE_ELEMENT, "FEC_INI", "")
oNodoImp.appendChild oNombre
Set oValor = oXMLDocFSGS.createNode(NODE_TEXT, "", "")
oValor.nodeValue = FechaINI 'meter la fecha ini calculada
oNombre.appendChild oValor
' <FEC_FIN> Fecha fin validez (mm-dd-yyyy) </FEC_FIN>
Set oNombre = oXMLDocFSGS.createNode(NODE_ELEMENT, "FEC_FIN", "")
oNodoImp.appendChild oNombre
Set oValor = oXMLDocFSGS.createNode(NODE_TEXT, "", "")
oValor.nodeValue = FechaFIN 'meter la fecha fin calculada
oNombre.appendChild oValor
' <MON>
Set oNombre = oXMLDocFSGS.createNode(NODE_ELEMENT, "MON", "")
oNodoImp.appendChild oNombre
Set oValor = oXMLDocFSGS.createNode(NODE_TEXT, "", "")
oValor.nodeValue = strInAMOUNTCURRENCY 'Valor por defecto
oNombre.appendChild oValor
' <PRES>
Set oNombre = oXMLDocFSGS.createNode(NODE_ELEMENT, "PRES", "")
oNodoImp.appendChild oNombre
Set oValor = oXMLDocFSGS.createNode(NODE_TEXT, "", "")
oValor.nodeValue = importe 'dependiendo de si viene del asset meter el de cada asset y si no meter el total
oNombre.appendChild oValor
'</IMPORTES>
End If
''pres5_uons
If accion = "I" Then 'En las modificaciones este dato no cambia
'<UONS>
Set oNodoUons = oXMLDocFSGS.createNode(NODE_ELEMENT, "UONS", "")
oNodoLinea.appendChild oNodoUons
' <UON>
Set oNodoUon = oXMLDocFSGS.createNode(NODE_ELEMENT, "UON", "")
oNodoUons.appendChild oNodoUon
' <ACCION_UON>Acción que afecta a las unidades organizativas relacionadas , CHAR(1)</ACCION_UON>
Set oNombre = oXMLDocFSGS.createNode(NODE_ELEMENT, "ACCION_UON", "")
oNodoUon.appendChild oNombre
Set oValor = oXMLDocFSGS.createNode(NODE_TEXT, "", "")
oValor.nodeValue = accion
oNombre.appendChild oValor
' <UON1> Código nivel UON1 VARCHAR(3)</UON1>
Set oNombre = oXMLDocFSGS.createNode(NODE_ELEMENT, "UON1", "")
oNodoUon.appendChild oNombre
Set oValor = oXMLDocFSGS.createNode(NODE_TEXT, "", "")
oValor.nodeValue = sUON1
oNombre.appendChild oValor
' <UON2> Código nivel UON2 VARCHAR(3)</UON2>
Set oNombre = oXMLDocFSGS.createNode(NODE_ELEMENT, "UON2", "")
oNodoUon.appendChild oNombre
Set oValor = oXMLDocFSGS.createNode(NODE_TEXT, "", "")
oValor.nodeValue = sUON2
oNombre.appendChild oValor
' </UON>
'</UONS>
End If
'</PARTIDA>
' End If
' '</PARTIDAS>
Set ostream = Nothing
Set Archivo = Nothing
Set Carpeta = Nothing
Set oFos = Nothing
Exit Sub
error:
End Sub