none
Publicacion de aplicacion RRS feed

  • Pregunta

  • buenas Noches:

    Disculpen las molestas,  tengo una aplicación web que fue desarrollada en asp.net con framework 2.0 ya tiene 2 años funcionando pero recientemente a la hora de realizar las consultas genera un error de invalid month 

    y de igual manera al intentar generar un reporte me genera este error: [ERROR]: Error en la generación del reporte: Tipo [System.Exception] Mensaje [{GeneraReporte} Error. Tipo:[System.Runtime.InteropServices.COMException] Msg:Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to the following error: 80080005.]

    ya estuve rastreando el motivo del por que salen esos errores y es debido al formato de fecha ya que yo la utilizo dd/mm/yyyy  y los datos vienen de forma mm/dd/yyyy es por ello que salen los errores.

    mi pregunta es como cambiar el formato de fecha ya que en el servidor las opciones de lenguaje y configuración regional esta de manera correcta dd/mm/yyyy

    o es una confiuracion de IIS o se quedo un temporal con el formato de fecha mm/dd/yyyy

    por que no se movió nada de configuración el servidor de producción y las adecuaciones que se hicieron no fueron con referencia a las fechas

    alquien sabe que pudiera esta pasando.

    de antemano muchas gracias por su apoyo.

    saludos y gracias


    lunes, 13 de julio de 2015 23:06

Respuestas

  • Hola CORALIOSOFT,

    Gracias por consultar en los foros. Voy a cerrar el thread, debido a falta de información. Recuerda que si aún no solucionas tu problema, siempre puedes desmarcarlo y proporcionarnos más detalles.

    Saludos,

    Karen.

    _________________


    Por favor, recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema.

    Es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde.

    Microsoft ofrece este servicio de forma gratuita, con la finalidad de ayudar a los usuarios y la ampliación de la base de datos de conocimientos relacionados con los productos y tecnologías de Microsoft. Este contenido es proporcionado "tal cual" y no implica ninguna responsabilidad de parte de Microsoft.

    lunes, 20 de julio de 2015 21:59
    Moderador

Todas las respuestas

  • si necesitas establecer una cultura especifca para una aplicación web, debes establecer el tag globalization en tu web.config

    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos

    lunes, 13 de julio de 2015 23:41
    Moderador
  • Hola:

    de echo el archivo de configuracion tiene :

     <globalization culture="es-MX" uiCulture="es-MX" requestEncoding="utf-8" responseEncoding="utf-8"/>

    sin embargo pareciera que  no lo tuviera.

    saludos y gracias 

    martes, 14 de julio de 2015 0:39
  • hola

    pero ese error de COM que mencionas no tiene nada que ver con el formato de la fecha

    sino que se relaciona con la habilitacion de DCOM en el servidor web

    sabes si al generarse el error estas acediando a algun componente COM como ser las librerias de office ?

     

    Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to the following error: 80040154

    valida lo que se comenta en los links

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    martes, 14 de julio de 2015 1:05
  • buen dia.

    El error COM si tiene que ver con el formato de  fecha ya que cuando el código pasa por esta instrucción:

       xlHoja.Cells(1, 2) = renglon(CStr(ArrCamposDespliegue(contador)))

    Es cuando arroja la excepción que mostré anteriormente.

    [ERROR]: Error en la generación del reporte: Tipo [System.Exception] Mensaje [{GeneraReporte} Error. Tipo:[System.Runtime.InteropServices.COMException] Msg:Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to the following error: 80080005.]

    saludos y gracias

    martes, 14 de julio de 2015 15:55
  • ahh ok no es un error de instancia sino de asignacion

    podrias aplicar formato en la fecha, aunque no se que funcionalida cumple ese renglon() que defines

    Dim fecha As String = Convert.ToDateTime(ArrCamposDespliegue(contador))
    
    xlHoja.Cells(1, 2) = fecha.ToString("dd/MM/yyyy")


    igual creo que esto tambien se deba a la version de office instalada en el servidor, habras instalado una version en español ?

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    martes, 14 de julio de 2015 16:11
  • ok... Es error de las interop.office que no son mas que clases wrapper de las clases COM wue usan el office

    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos

    martes, 14 de julio de 2015 16:14
    Moderador
  • si pones un punto de ruptura aqui.

    xlHoja.Cells(1, 2) = renglon(CStr(ArrCamposDespliegue(contador)))

    qué valor tiene contador?

    ArrCamposDespliegue está relleno? Y el ArrCamposDespliegue(contador) posee datos?

    qué devuelve el método renglon()?


    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos

    martes, 14 de julio de 2015 16:16
    Moderador
  • hola;

    reglon = datarow

    ArrCamposDespliegue = el nombre las columnas del datarow(renglon)

    contador= numero de columna a extraer la información

    xlHoja.Cells(1, 2) = renglon(CStr(ArrCamposDespliegue(contador)))

    qué valor tiene contador?

    0

    ArrCamposDespliegue está relleno?

    si

    Y el ArrCamposDespliegue(contador) posee datos?

    si

    qué devuelve el método renglon()?

    No es un metodo, es un datarow que devuelve lo que exista en esa columna, puede ser un texto, o  una fecha y es en las fecha donde me esta marcando el error

    saludos y gracias

    martes, 14 de julio de 2015 17:11
  • hola:

    como mencione anteriormente es una aplicacion que ya tiene tiempo funcionando entonces en muchas paginas web tiene esa instrucción, y esa instruccion no solo lee columnas de tipo de fecha si no tambien de tipo string.

    con esta opcion tendria que verificar primero si es una fecha, para poder aplicarle el formato.

    en el servidor de aplicación esta instalado el office en version español

    saludo y gracias por su apoyo

    martes, 14 de julio de 2015 17:15
  • Dim fecha As DateTime
    
    DateTime.TryParse(renglon(CStr(ArrCamposDespliegue(contador))),fecha)
    xlHoja.Cells(1, 2) = fecha

    prueba a hacer un TryParse de la "supuesta" fecha


    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos

    martes, 14 de julio de 2015 17:21
    Moderador
  • Buenas tardes:

    Muchas gracias, esa parte ya quedo solucionada el problema que aun tengo es:

     error de invalid month 

    se presenta cuando ejecuto una consulta, y lo raro es que aveces si genera la consulta y aveces me genera ese error. como si se cambia de cultura de manera aleatoria.

    saludos

    martes, 14 de julio de 2015 21:20
  • Con qué datos te falla? Por ejemplo con esta fecha 13/12/2015... Si la,cultura establece formato dd/mm/yyyy entonces Funcionará, si no...fallará ya que no puede haber mes 13


    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos

    martes, 14 de julio de 2015 21:22
    Moderador
  • activa lo siguiente en tu Visual Studio para que la ejecución de la depuración se detenga en el momento en que se lance una excepción.

    menú depurar / excepciones/ activa Common Language Runtime. Así puedes ver la linea que provoca la excepción


    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos

    martes, 14 de julio de 2015 21:24
    Moderador
  • es correcto:

    la cultura la tengo como culture="es-MX" uiCulture="es-MX"

    pero en ocasiones funciona funciona mi consulta y en ocasiones me genera el error de invalid month, como si cambiara la cultura de manera aleatoria.

    saludos

    martes, 14 de julio de 2015 21:47
  • hola

    intenta justo cuando vayas a trabjar con las librerias de office poner la linea

    Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("es-MX");


    puede que las librerias esten tomando la config del thread y al ser un ambiente web no la asigne correctamente, igual es raro, pero no se pierde nada con probar

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    martes, 14 de julio de 2015 23:12
  • es correcto:

    la cultura la tengo como culture="es-MX" uiCulture="es-MX"

    pero en ocasiones funciona funciona mi consulta y en ocasiones me genera el error de invalid month, como si cambiara la cultura de manera aleatoria.

    saludos

    pero sigo insistiendo en que nos digas si a veces funciona y otras no con los mismos datos.


    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos


    miércoles, 15 de julio de 2015 3:11
    Moderador
  • hola  de nuevo a todos :

    Es correcto Sergio con mismos datos, en ocasiones funciona y en ocasiones no funciona como si se cambiara la cultura de manera dinámica.

    Aun cuando ya intente lo que menciono Leandro.

    saludos y gracias por su apoyo y colaboración.

    miércoles, 15 de julio de 2015 15:51
  • Hola, sobre qué base de datos estas trabajando? Oracle no?

    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos

    miércoles, 15 de julio de 2015 15:57
    Moderador
  • hola:

    esta desarrollado en Vb con visual studio 2005

    esta con la base de datos Oracle.

    publicado en un windows server 2003

    miércoles, 15 de julio de 2015 17:30
  • puedes poner la consulta sobre la cual obtienes datos? También qué valor es el que tiene renglon() cuando salta la excepción? Si haces lo que te comenté del menú depurar la ejecución se detiene en ese momento y puedes ver el contenido de las variables

    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos

    miércoles, 15 de julio de 2015 18:48
    Moderador
  • Hola CORALIOSOFT,

    Gracias por consultar en los foros. Voy a cerrar el thread, debido a falta de información. Recuerda que si aún no solucionas tu problema, siempre puedes desmarcarlo y proporcionarnos más detalles.

    Saludos,

    Karen.

    _________________


    Por favor, recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema.

    Es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde.

    Microsoft ofrece este servicio de forma gratuita, con la finalidad de ayudar a los usuarios y la ampliación de la base de datos de conocimientos relacionados con los productos y tecnologías de Microsoft. Este contenido es proporcionado "tal cual" y no implica ninguna responsabilidad de parte de Microsoft.

    lunes, 20 de julio de 2015 21:59
    Moderador