Ver Mensaje Individual
  #32 (permalink)  
Antiguo 06/06/2009, 12:48
Avatar de lexus
lexus
 
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 23 años, 3 meses
Puntos: 4
Respuesta: leer un excel exportado desde asp.

hola

gracias por la respuesta.. pero aun salen cosas extranas..

mira este esl el codigo modificado.

Código asp:
Ver original
  1. <%
  2. detalle     = request("detalle")
  3. porfecha    = cdate(request("fecha"))
  4. principal    = "princ"
  5. contratista    = "cont"
  6. periodo        = "perio"
  7. '-------------------------- CONSULTA PARA GUARDAR DATOS -------------------------------------
  8.                         sql2 = ""
  9.                         sql2 = sql2 & " INSERT INTO rm_temp_liquidacion ( "
  10.                         sql2 = sql2 & " id_princ, "
  11.                         sql2 = sql2 & " id_cont, "
  12.                         sql2 = sql2 & " id_rm, "
  13.                         sql2 = sql2 & " id_trab, "
  14.                         sql2 = sql2 & " id_haber, "
  15.                         sql2 = sql2 & " id_descuento, "
  16.                         sql2 = sql2 & " produccion_lt, "
  17.                         sql2 = sql2 & " cuotas_lt, "
  18.                         sql2 = sql2 & " valor_lt, "
  19.                         sql2 = sql2 & " fecha_lt, "
  20.                         sql2 = sql2 & " id_usuario) "
  21.                         sql2 = sql2 & " VALUES ("
  22.                         sql2 = sql2 & " " & principal & ", "
  23.                         sql2 = sql2 & " " & contratista & ", "
  24.                         sql2 = sql2 & " " & periodo & ", "
  25. '-------------------------- CONSULTA PARA GUARDAR DATOS -------------------------------------
  26.  
  27. if 10 = 10 then
  28. on error resume next
  29. filename=server.mappath("documentos/excel_productos.xls")' aqui va la ruta del archivo que quieres cargar
  30. Set fs = CreateObject("Scripting.FileSystemObject")
  31. Set readfile=fs.OpenTextFile(filename,1,False)
  32.     if err <> 0 then
  33.         Response.Write("<hr>"&err.description&"<hr>")
  34.         Response.End()
  35.     end if
  36. linea        = 0
  37. contar      = 1
  38. ver         = 0
  39. guardafila     = ""
  40. filas        = 0
  41. Do while not readfile.atendofstream
  42.     on error resume next
  43.         if err <> 0 then
  44.             Response.Write("ERROR : "&err.description)
  45.                 exit do
  46.         else
  47. '    Text=readfile.skipline 'salta una linea
  48. '    Text=readfile.skip(74)' salta "n" numero de caracteres
  49.     Text = readfile.readline 'lee la linea en donde quedo el cursor
  50.  
  51.  if CLng(InStr(Text, "name=encabezado>")) > 0 then'---->limpia codigo para iniciar
  52.     ver = 1
  53.     Response.Write("<table border=1>")
  54.  end if
  55.  
  56.  if CLng(InStr(Text, "if supportMisalignedColumns]>")) > 0 then'---->limpia codigo para finalizar
  57.     ver = 0
  58.     Response.Write("</table>")
  59.  end if
  60.  
  61. if ver = 1 then
  62.     if CLng(instr(Text,"<tr")) <> 0 then'-------> encuentra el codigo del trabajador
  63.                 inicio_     = CLng(instr(Text,"name="))+5
  64.                 final_      = CLng(instr(Text,">"))
  65.          
  66.                 variable     = MID(Text, inicio_, final_)
  67.                 trabajador    = replace(variable,">","")
  68.                 'Response.Write("<hr>"&linea&".-"&filas&">"&trabajador)&"<br>"&vbCrLf
  69.                  
  70.                     if filas > 0 then
  71.                         sql2 = sql2 & " " & trabajador & ", "
  72.                         if isnumeric(trabajador) then
  73.                             Response.Write(sql2)&"<br>"
  74.                         end if
  75.              
  76.                     end if
  77.                  
  78.                 filas = filas + 1
  79.     else
  80. '----- recuperacion nombre variable ---------------------------------------
  81.         if CLng(instr(Text,"</td>")) <> 0 then'-------> no hay fin en la fila
  82.             if guardafila = "" then'-------> si no hay filas inconclusas continuo sin problemas
  83.                 inicio_     = CLng(instr(Text,"name="))+5
  84.                 final_      = CLng(instr(Text,"</td>"))
  85.          
  86.                 variable     = MID(Text, inicio_, final_)
  87.                 variable    = replace(variable,"</td>","")
  88.                  
  89.                 'Response.Write(linea&"."&filas&".-"&variable)&"<br>"&vbCrLf
  90.          
  91.                 guardafila = ""
  92.             else'-------> hay filas inconclusas pero hay fin asi que busco mi dato
  93.                 guardafila = guardafila&" "&Text
  94.                 inicio_     = CLng(instr(guardafila,"name="))+5
  95.                 final_      = CLng(instr(guardafila,"</td>"))-8
  96.          
  97.                 variable     = MID(guardafila, inicio_, final_)
  98.                 variable    = replace(variable,"</td>","")
  99.                 'Response.Write(linea&"."&filas&".-"&variable)&"<br>"&vbCrLf
  100.                      
  101.                 guardafila = ""
  102.             end if
  103.         else'-------> como no hay fin en la fila guardo la fila para buscar en la fila siguiente su fin
  104.             guardafila = guardafila&" "&Text
  105. '            Response.Write(guardafila)&"<BR>"
  106.         end if
  107. '----- recuperacion nombre variable ---------------------------------------
  108.     end if
  109. end if
  110. if ver = 1 then'---> visualiza codigo
  111. '        Response.Write Text& chr(13)
  112.         'Response.Write(linea)&".-"& Text& chr(13)
  113. end if
  114.  
  115.     linea = linea + 1
  116.         end if
  117. loop
  118. readfile.close
  119. set readfile=nothing
  120. set fs=nothing
  121.  
  122.     end if
  123. %>
  124. <%fin_imprimir%>




y me sale
algo asi como esto.

INSERT INTO rm_temp_liquidacion ( id_princ, id_cont, id_rm, id_trab, id_haber, id_descuento, produccion_lt, cuotas_lt, valor_lt, fecha_lt, id_usuario) VALUES ( princ, cont, perio, 1,
INSERT INTO rm_temp_liquidacion ( id_princ, id_cont, id_rm, id_trab, id_haber, id_descuento, produccion_lt, cuotas_lt, valor_lt, fecha_lt, id_usuario) VALUES ( princ, cont, perio, 1, 2,
INSERT INTO rm_temp_liquidacion ( id_princ, id_cont, id_rm, id_trab, id_haber, id_descuento, produccion_lt, cuotas_lt, valor_lt, fecha_lt, id_usuario) VALUES ( princ, cont, perio, 1, 2, 3,
INSERT INTO rm_temp_liquidacion ( id_princ, id_cont, id_rm, id_trab, id_haber, id_descuento, produccion_lt, cuotas_lt, valor_lt, fecha_lt, id_usuario) VALUES ( princ, cont, perio, 1, 2, 3, 4,
INSERT INTO rm_temp_liquidacion ( id_princ, id_cont, id_rm, id_trab, id_haber, id_descuento, produccion_lt, cuotas_lt, valor_lt, fecha_lt, id_usuario) VALUES ( princ, cont, perio, 1, 2, 3, 4, 5,
INSERT INTO rm_temp_liquidacion ( id_princ, id_cont, id_rm, id_trab, id_haber, id_descuento, produccion_lt, cuotas_lt, valor_lt, fecha_lt, id_usuario) VALUES ( princ, cont, perio, 1, 2, 3, 4, 5, 6,
INSERT INTO rm_temp_liquidacion ( id_princ, id_cont, id_rm, id_trab, id_haber, id_descuento, produccion_lt, cuotas_lt, valor_lt, fecha_lt, id_usuario) VALUES ( princ, cont, perio, 1, 2, 3, 4, 5, 6, 7,
INSERT INTO rm_temp_liquidacion ( id_princ, id_cont, id_rm, id_trab, id_haber, id_descuento, produccion_lt, cuotas_lt, valor_lt, fecha_lt, id_usuario) VALUES ( princ, cont, perio, 1, 2, 3, 4, 5, 6, 7, 8,
INSERT INTO rm_temp_liquidacion ( id_princ, id_cont, id_rm, id_trab, id_haber, id_descuento, produccion_lt, cuotas_lt, valor_lt, fecha_lt, id_usuario) VALUES ( princ, cont, perio, 1, 2, 3, 4, 5, 6, 7, 8, 9,


cuando lo ejecuto.
pero no se de donde sale ese contador 1,2, 3, 4, 5, etc.. yo necsitaria llenar lo qeu esta en Values con lo que va dentro de las tablas.. sabes como hcer eso?
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com