2010-06-11 5 views
0

J'ai un problème avec le code suivant collé ci-dessous, le problème semble provenir de l'OpenAsTextStream ce poursuit d'une autre question:erreur ASP 424 Objet requis

Set str_text_stream = obj_file.OpenAsTextStream(ForReading, TristateUseDefault) 
response.Write "<table>" 
int_j = 0 
int_x = 0 
Err.number = 0 
Do While Not str_text_stream.AtEndOfStream 

str_po_insert_sql = "INSERT into tbl_purchase_orders (purchase_order_number, purchase_order_vendor_number, purchase_order_vendor_name) " 
str_po_insert_sql = str_po_insert_sql & " VALUES (" 

str_line = str_text_stream.readline 
    arr_line = Split(str_line, """,""", -1) 
    if Ubound(arr_line) <> 2 then 
     Response.write "<tr><td>The line " & str_line & " could not be imported.</td></tr>" 
     int_x = 1 
    else 
     int_y = Instr(arr_line(2), """,") - 1 
     str_field_0 = Replace(arr_line(0), """", "") 
     str_field_0 = Replace(str_field_0, "'", "''") 
     str_field_1 = Replace(arr_line(1), "'", "''") 
     str_field_2 = Left(arr_line(2), int_y) 
     str_field_2 = Replace(str_field_2, "'", "''") 
     str_po_insert_sql = str_po_insert_sql & "'" & str_field_0 & "', '" & arr_line(1) & "', '" & str_field_2 & "')" 
     rs_po_insert.Open str_po_insert_sql, dbConnection, 3 
     if Err.number <> 0 then 
      Response.write "<tr><td>The line " & str_po_insert_sql & " was imported.</td></tr>" 
     end if 
     Err.number = 0 
     int_j = int_j + 1 
    end if 

loop 

données de tests import:

"4501366934","800002","Clancy Docwra Ltd",04/05/2010 00:00:00 
"4501366935","800004","Clancy Docwra Ltd",04/05/2010 00:00:00 
"4501366936","800004","Clancy Docwra Ltd",04/05/2010 00:00:00 
+0

Etes-vous sûr que obj_file a une valeur? – patmortech

+0

Pouvez-vous également définir ce que vous entendez par "poursuit d'un autre message", publier comme dans HTTP POST? –

+0

oui le fichier qu'il lit a une valeur. J'ai vérifié le chemin du fichier et le contenu du fichier. – jhowe

Répondre

1

Cette erreur a été causée par

str_file_path = Server.MapPath("/COBRA/upload/PJI3.txt") 

Server.MapPath 

était-ne fonctionne plus en raison d'un Modification de la structure du fichier IIS. Curieusement, aucune erreur n'était lancée même si l'openstream ne lisait aucune donnée. Ça m'a pris beaucoup de temps pour le trouver!

+0

C'est un bon indice pour vérifier tout ce que 'MapPath' cède et aussi sa documentation sur https://msdn.microsoft.com/fr-fr/library/ms524632%28v=vs.90%29.aspx – dakab