Originariamente inviato da mosquito70
Riesumo questa vecchia discussione, per chiedervi:
1. Come identificare i segnaposto un un documento preimpostato rft
Non so se per "segnaposto" si intende qualcosa di specifico e particolare, comunque io ho creato una pagina asp che mi prende dati da una tabella e li scrive in un file rtf in cui ho predisposto i vari campi.
Il file rtf è un modulo con dei campi fissi, in cui c'è scritto, ad esempio:
Nominativo: [nominativo]
Indirizzo: [indirizzo]
le parentesi quadre con relativa dicitura le ho scritte io, in modo da avere i miei "segnaposto"
questo file-modello rtf ce l'ho in una determinata cartella
il codice in asp che va a scrivere i dati nel file è questo:
codice:
'Per leggere il documento utilizzo FSO
percorso = Left(Request.ServerVariables("PATH_INFO"),len(Request.ServerVariables("PATH_INFO"))-10)
percorso = percorso & "modello_rtf/"
'cerco i file rtf già compilati tramite script e li elimino perchè non mi interessa avere lo storico, così in "percorso" mi rimane solo il modello rtf
Set fso=Server.CreateObject("scripting.FileSystemObject")
Set f = fso.getFolder(Server.MapPath(percorso))
Set files = f.files
for each file in files
If Right(file.name, 13) = "compilato.rtf" Then
nome_file = percorso & file.name
Set objFile = fso.GetFile(Server.MapPath(nome_file))
objFile.Delete True
End If
next
Set fso = CreateObject("Scripting.FileSystemObject")
' questo e' il documento di base che contiene i tag
dir_completa = percorso & "stampa_cens_modello.rtf"
Set f = fso.OpenTextFile(Server.MapPath(dir_completa), 1)
'Leggo tutto il contenuto del documento
Documento = f.ReadAll
documento2 = documento
'chiudo subito
f.Close
Set f = Nothing
nome_file_output = Replace(Now(),"/","-") & "_stampa_cens_compilato.rtf"
dir_completa = percorso & nome_file_output
Set f = fso.OpenTextFile(Server.MapPath(dir_completa), 2, True) 'apro il file di output
ultimo_id = Trim(Request("id"))
strSQL = "SELECT * FROM tabella WHERE ID = " & CInt(ultimo_id)
set rsAsset = Db_Conn.Execute(strSQL)
If not rsAsset.BOF or not rsAsset.EOF Then
Documento = Replace(Documento, "[data]", Now())
Documento = Replace(Documento, "[nominativo]", rsAsset("nominativo"))
Documento = Replace(Documento, "[indirizzo]", rsAsset("indirizzo"))
...
...
...
End If
' FINE LOOP DI LETTURA FILE GUIDA
f.Write Documento
f.Close
Set f = Nothing
Set fso = Nothing
Response.Redirect dir_doc & nome_file_output
End If
Db_Conn.Close
Set Db_Conn = Nothing