venerdì 17 giugno 2016

gestione contatore numero report - vbs

'

' traferito

Option Explicit

'

'

Dim objA

Set objA = Wscript.Arguments

if objA.count <> 3 Then

Wscript.Echo "Gestione Contatore - serve la directory File!"

Wscript.Quit

End If

'

dim dbcartellaprocedura, archivioinput, archiviooutput, testoinput, testooutput

dbcartellaprocedura = objA(0)

archivioinput = dbcartellaprocedura & objA(1)

archiviooutput = dbcartellaprocedura & objA(2)

'

dim contenutoletto

dim dbcontatore, numeroreport

'

dbcontatore = dbcartellaprocedura & "db-numero-report.txt"

'

'

' - legge o crea il numeratore dei report

call LeggioCreaFileParametri(dbcontatore, 1)

'

if isnumeric(contenutoletto) = true then

numeroreport = contenutoletto + 1

else

numeroreport = 1

end if

'

call SovraScriviFile(dbcontatore, numeroreport)

'

testoinput = leggiparametri(archivioinput)

testooutput = testoinput & " - report numero: " & numeroreport



call SovraScriviFile(archiviooutput, testooutput)

'

' =========================

' === 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 leggiparametri(sFilePathAndName)

dim sFileContents, oFS, oTextStream, esito

Set oFS = CreateObject("Scripting.FileSystemObject")

If oFS.FileExists(sFilePathAndName) = True Then

Set oTextStream = oFS.OpenTextFile(sFilePathAndName,1)

sFileContents = trim(oTextStream.ReadAll)

oTextStream.Close

Set oTextStream = nothing

else

'esito = esito + 1

End if

Set oFS = nothing

'

leggiparametri = sFileContents

'

'

end function

'

' ======================

'

Sub LeggioCreaFileParametri(sFileName, valoredefault)

'

dim objFSO, objFile, strLine

Set objFSO = CreateObject("Scripting.FileSystemObject")

If objFSO.FileExists(sFilename) Then

'esistefile = "si"

Set objFile = objFSO.OpenTextFile(sFileName, 1)

'contenutoletto = objFile.Readall

contenutoletto = objFile.ReadLine

Else

'esistefile = "no"

contenutoletto = valoredefault

Set objFile = objFSO.CreateTextFile(sFileName, TRUE)

objFile.WriteLine(valoredefault)

End If

'

Set objFile = Nothing

Set objFSO = Nothing

'

End sub

'

' ========

'

giovedì 16 giugno 2016

prg esegui programma dopo n giorni - vbs

' trasferito

option explicit

'

dim contenutoletto

'

dim cartelladilavoro, dblog, slog

cartelladilavoro = "C:\azioniprogrammate\modelli\esegui-dopo-n-giorni\"

'

dblog = cartelladilavoro & "db-alla-data.txt"

'

dim fromDate, toDate, differenza

'

call leggitutto(dblog)

toDate = contenutoletto

fromDate = date

differenza = DateDiff("d", toDate, fromDate) ' giorni

'

dim ogniquantigiorni, dbgiorni

dbgiorni = cartelladilavoro & "db-ogni-quanti-giorni.txt"

call leggitutto(dbgiorni)

ogniquantigiorni = clng(contenutoletto)

'

if isnumeric(ogniquantigiorni) = true then

if differenza > ogniquantigiorni then

slog = date

dblog = cartelladilavoro & "db-alla-data.txt"

call SovraScriviFile(dblog, slog)

call eseguiprogramma

end if

end if

'

' =========

'

sub eseguiprogramma()

'

Dim objShell, attesa, azione, programma

Set objShell = Wscript.CreateObject("WScript.Shell")

' ====

dim dbprogramma

dbprogramma = cartelladilavoro & "db-programma-da-eseguire.txt"

call leggitutto(dbprogramma)

'

programma = contenutoletto

azione = programma

attesa = objShell.Run(azione, 1, true)

'



end sub

'

' =========

'

sub leggitutto(pfiledaleggere)

'

dim objFSO, objFile

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

Else

'esistefile = "no"

contenutoletto = ""

End If

Set objFSO = Nothing

'

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

'

' ===================

'