Ciao a Tutti,
ho una pagina index.asp,
con una form avente menu' a tendina (quindi delle Select)
e 28 pulsanti Load File coi quali richiamare piu' files;
c' e' poi un pulsante Save,
che quando uno lo schiaccia fa eseguire la seguente pagina asp a cui passo i valori
sia delle opzioni selezionate dai vari menu' a tendina,
sia i files selezionati coi 28 pulsanti.
Questo e' tutto il codice che funziona abbastanza bene, tranne che nel caso
che spiego sotto ...
<%
Dim objFSO, objFolder, objStartFolder, colFiles, objFile, prefix
Dim c_proj, c_rev
Dim c_att(28), c_file(28), file(28), i
'
c_proj = Request("c_proj")
' il valore di c_proj che viene passato e' un numero, ad es. 2013043
c_rev = Request("c_rev")
' il valore di c_rev che viene passato e' un numero, ad es. 00
For i = 1 to 28
c_att(i) = Request("c_att"&i)
c_file(i) = Request("c_file"&i)
Next
'
' c_att(1) ad es., e' il valore passato dalla scelta di una option di select: puo' essere
' N/A, Error, Attach.
'
' c_file(1) invece raccoglie il path fisico di un file generato dal pulsante Load file
' contenuto nella pagina index.asp '
'
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
objStartFolder = "d:\qscan_docs\"&Left(c_proj, 4)&"\"&c_proj&"\"&c_proj&"_custom"
Set objFolder = objFSO.GetFolder(objStartFolder)
Set colFiles = objFolder.Files
'
'
For i = 1 to 28
'
prefix = c_proj&"_r"&c_rev&"_"&i
If Len(c_file(i))>0 And c_att(i)="Attach." Then
Set file(i)=objFSO.GetFile(c_file(i))
For Each objFile in colFiles
if InStr(1, objFile.Name, prefix, 1) > 0 then objFile.Delete
Next
file(i).Copy "D:\qscan_docs\"&Left(c_proj, 4)&"\"&c_proj&"\"&c_proj&"_custom\"&c_proj&"_r"&c_ rev&"_"&i&"_"&file(i).ShortName, True
Set file(i) = nothing
'
End If
If Not (c_att(i)="Attach.") Then
For Each objFile in colFiles
if InStr(1, objFile.Name, prefix, 1) > 0 then objFile.Delete
Next
End If
'
Next
Set colFiles = Nothing : Set objFolder = Nothing : Set objFSO = Nothing
'
%>
Cosa succede:
- se decido di caricare dei files, benissimo, tutto funziona bene !!
- se decido in un secondo momento di sostituire i files precedentemente caricati,
lo posso fare in quanto scelgo dalla pagina index.asp un nuovo percorso
con il pulsante Load File e dal menu' a tendina l' opzione "Attach.";
in questo modo, come si evince dal codice sopra ,
i files vecchi vengono cancellati e copiati quelli nuovi.
- il problema e' qui':
se dalla pagina index.asp scelgo l' opzione Error, oppure l' opzione N/A, non mi vengono cancellati i files (vedi colore rosso) ; perche' ?? Ci ho sbattuto la capoccia ma non riesco a capire perche' non vengono cancellati ...![]()
Grazie mille in anticipo !!!