' trasf
option explicit
'
'
dim cartellaprocedura
cartellaprocedura = "C:\articoli-invia-vendite\"
'
dim dataoggi
dataoggi = date
'
dim dbconfigxml, jarchivio
dbconfigxml = cartellaprocedura & "config-temp.xml"
'
dim dizionario, dizionariochiave, dizionariovalore
set dizionario=CreateObject("Scripting.Dictionary")
dizionario.CompareMode=1
'
call leggixml(dbconfigxml, "parametri")
'
dim dataprima, dalladata, alladata
dataprima = dizionario.Item("data_ultima_scansione")
'
dataprima = DateAdd("d", 1, dataprima)
dalladata = sistemadata(dataprima)
alladata = sistemadata(dataoggi)
'
dim dbiniziali, iniziali, testodacambiare
dbiniziali = cartellaprocedura & "db-iniziali-articolo.txt"
iniziali = fleggitutto(dbiniziali)
'
call scriviconfigxml
'
'
dim campodacambiare
jarchivio = cartellaprocedura & dizionario.Item("file_input")
testodacambiare = fleggitutto(jarchivio)
'
call leggixml(dbconfigxml, "cose_da_cambiare")
'
jarchivio = cartellaprocedura & dizionario.Item("file_output")
call SovraScriviFile(jarchivio, testodacambiare)
'
'
' ====
'
sub leggixml(parchivioxml, ptiponodo)
Dim objDOM, rtResult, nodeList, obj, jnodo
Set objDOM = WScript.CreateObject("MSXML2.DOMDocument")
rtResult = objDOM.load(parchivioxml)
jnodo = "//*/" & ptiponodo & "/*"
If rtResult = True Then
Set nodeList = objDOM.documentElement.selectNodes(jnodo)
For Each obj In nodeList
dizionariochiave = obj.nodeName
dizionariovalore = obj.text
'
if dizionario.Exists(dizionariochiave) = true then
' Response.Write("Key exists!")
else
' Response.Write("Key does not exist!")
dizionario.Add dizionariochiave, dizionariovalore
end if
'
if ptiponodo = "cose_da_cambiare" then
campodacambiare = "<#>" & dizionariochiave & "<#>"
testodacambiare = replace(testodacambiare, campodacambiare, dizionariovalore)
end if
Next
End If
Set objDOM = Nothing
end sub
'
' ====
'
sub scriviconfigxml()
'
dim nomerecord
'
call SovraScriviFile(dbconfigxml, "<root>" & vbcrlf & "</root>")
'
nomerecord = "parametri"
call inseriscidatixml(dbconfigxml, nomerecord, "file_input", "db-stringa-sql-modello.txt")
call inseriscidatixml(dbconfigxml, nomerecord, "file_output", "db-stringa-sql.txt")
call inseriscidatixml(dbconfigxml, nomerecord, "data_ultima_scansione", dataoggi)
'
nomerecord = "cose_da_cambiare"
call inseriscidatixml(dbconfigxml, nomerecord, "dalla_data", dalladata)
call inseriscidatixml(dbconfigxml, nomerecord, "alla_data" , alladata)
call inseriscidatixml(dbconfigxml, nomerecord, "iniziali" , iniziali)
'
'
end sub
'
' ============ sovra scrive file ===================
'
Sub SovraScriviFile(pNomeArchivio, pcosascrivere)
dim fso, rifefile
Set fso=CreateObject("Scripting.FileSystemObject")
Set rifefile = fso.CreateTextFile(pNomeArchivio, TRUE)
rifefile.WriteLine(pcosascrivere)
rifefile.Close
set rifefile = Nothing
End Sub
'
' ================
'
function sistemadata(pdata)
dim jgg, jmm
'
jgg = "00" & day(pdata)
jgg = right(jgg, 2)
jmm = "00" & month(pdata)
jmm = right(jmm, 2)
sistemadata = year(pdata) & "-" & jmm & "-" & jgg
'
'
end function
'
' =====================
'
function fleggitutto(pfiledaleggere)
'
dim objFSO, objFile, contenutoletto
Set objFSO = CreateObject("Scripting.FileSystemObject")
'
If objFSO.FileExists(pfiledaleggere) Then
'esistefile = "si"
Set objFile = objFSO.OpenTextFile(pfiledaleggere, 1)
contenutoletto = objFile.Readall
contenutoletto = replace(contenutoletto, vbcrlf, "")
contenutoletto = replace(contenutoletto, vbcr, "")
contenutoletto = replace(contenutoletto, vblf, "")
objFile.Close
fleggitutto = contenutoletto
Else
'esistefile = "no"
fleggitutto = "x-no-x"
End If
Set objFSO = Nothing
'
end function
'
' =========== lavora file xml ===========
'
sub inseriscidatixml(pfilexml, precord, pnomecampo, pvalore)
'
Dim doc, root, cosainserire, rigainserire
dim livello2, livello3
'
set doc = LoadXmldoc(pfilexml)
set root = Doc.documentElement
'
Set livello2 = doc.documentElement.selectSingleNode("//" & precord)
if livello2 is Nothing then
Set livello2 = doc.createNode("element", precord, "")
end if
'
cosainserire = vbcrlf & "<" & pnomecampo & ">" & pvalore & "</" & pnomecampo & ">" & vbcrlf
set rigainserire = LoadXmlstringa(cosainserire)
set livello3 = rigainserire.documentElement
livello2.appendChild(livello3)
'
root.appendChild(livello2)
'
doc.save (pfilexml)
'
'
end sub
'
' ===== ===========
'
Function LoadXmldoc(path)
'
Set LoadXmldoc = CreateObject("MSXML2.DomDocument.6.0")
LoadXmlDoc.async = False
LoadXmlDoc.load path
If LoadXmlDoc.parseError.errorCode <> 0 Then
WScript.Echo "Error in XML file."
WScript.Echo LoadXmlDoc.parseError.reason
WScript.Quit 1
End If
'
'
End Function
'
' ================
'
Function LoadXmlstringa(path)
'
Set LoadXmlstringa = CreateObject("MSXML2.DomDocument.6.0")
LoadXmlstringa.async = False
LoadXmlstringa.loadXML path
'
'
End Function
'
' ==============
'
'
' ==================================
'
Nessun commento:
Posta un commento