Foros del Web » Programando para Internet » ASPX (.net) »

Globalization

Estas en el tema de Globalization en el foro de ASPX (.net) en Foros del Web. Hola Tengo el siguiente problema : Tengo un servidor windows 2000 server en Ingles en el archivo Web.Config tengo lo siguiente : <globalization requestEncoding="utf-8" culture="es-cl" ...
  #1 (permalink)  
Antiguo 20/10/2005, 07:54
 
Fecha de Ingreso: marzo-2005
Mensajes: 123
Antigüedad: 19 años, 1 mes
Puntos: 1
Globalization

Hola

Tengo el siguiente problema :
Tengo un servidor windows 2000 server en Ingles

en el archivo Web.Config tengo lo siguiente :

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

Pero al ejecutar lo siguiente me manda un error. Esto es porque no encuentra registro que cumplan la condición :

----------------------------------
Dim obj_IVA As ClassIVA
Dim dt_IVA_C As DataTable

dt_IVA_C = obj_IVA.Tabla("SELECT F_INICIO,F_TERMINO,VALOR FROM T_IVA WHERE F_INICIO<='" & Mid(Day(Now()) & "/" & Month(Now()) & "/" & Year(Now()), 1, 10) & "'")

If dt_IVA_C.Rows.Count() <> 0 Then
Session("glo_IVA") = IIf(IsDBNull(dt_IVA_C.Rows(0).Item(2)), "", dt_IVA_C.Rows(0).Item(2)) ' Recupera Valor del campo
End If
-----------------------------------
Esto me funciona bien en Windows 2000 server español
El parametro fecha que le mando esta correcto "dd/mm/yyyy", pero el Oracle me lo toma "mm/dd/yyyy" y es ahi donde no encuentra registro y se cae el programa en la linea "If dt_IVA_C.Rows.Count() <> 0 Then"

Como soluciono este problema?

Gracias
  #2 (permalink)  
Antiguo 20/10/2005, 08:56
Avatar de xknown  
Fecha de Ingreso: diciembre-2004
Ubicación: Cusco - Perú
Mensajes: 2.248
Antigüedad: 19 años, 3 meses
Puntos: 7
Pues pasando la fecha en formato mm/dd/yyyy o configurando Oracle para que entienda el otro formato....; para evitar esos problemas, es bueno trabajar con InvariantCulture:
http://msdn.microsoft.com/library/de...reproperty.asp

Saludos
__________________
Alex Concha
Buayacorp - Programación y Diseño
  #3 (permalink)  
Antiguo 20/10/2005, 09:22
 
Fecha de Ingreso: marzo-2005
Mensajes: 123
Antigüedad: 19 años, 1 mes
Puntos: 1
No entendi mucho

como deberia usar la propiedad InvariantCulture para mi consulta?

Recuerda que la fecha esta bien en el formato "dd/mm/yyyy"

El problema es que Oracle esta buscando en el select con el formato "mm/dd/yyy" y esto porque el sistema operativo esta en ingles, aunque le puse configuracion regional a español.
  #4 (permalink)  
Antiguo 21/10/2005, 12:03
 
Fecha de Ingreso: octubre-2005
Mensajes: 10
Antigüedad: 18 años, 6 meses
Puntos: 0
Hola.

Prueba con lo siguiente:

Cambía de lugar el mes y el día para que te quede la fecha en el formato que la toma Oracle osea mm/dd/yyyy

Esta es la línea que tu tienes:

dt_IVA_C = obj_IVA.Tabla("SELECT F_INICIO,F_TERMINO,VALOR FROM T_IVA WHERE F_INICIO<='" & Mid(Day(Now()) & "/" & Month(Now()) & "/" & Year(Now()), 1, 10) & "'")


Cambíala así:

dt_IVA_C = obj_IVA.Tabla("SELECT F_INICIO,F_TERMINO,VALOR FROM T_IVA WHERE F_INICIO<='" & Mid(Month(Now()) & "/" & Day(Now()) & "/" & Year(Now()), 1, 10) & "'")

Espero te sirva.

Nota:

Este procedimiento deberías cambiarlo para utilizar una consulta parametrizada o un StoreProcedure para mandarle un objeto DateTime y así ahorrarte crear una cadena que contenga la fecha.
  #5 (permalink)  
Antiguo 21/10/2005, 12:19
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Ya lo intentaste así:

Cita:
dt_IVA_C = obj_IVA.Tabla("SELECT F_INICIO,F_TERMINO,VALOR FROM T_IVA WHERE F_INICIO<='" & Now.ToString("MM/dd/yyyy") & "'")
Salu2
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #6 (permalink)  
Antiguo 21/10/2005, 12:35
 
Fecha de Ingreso: marzo-2005
Mensajes: 123
Antigüedad: 19 años, 1 mes
Puntos: 1
el problema es que lo tengo que instalar en 2 servidores windows 2000 uno en ingles y el otro en español, en este ultimo me funciona bien, pero me imagino que tiene que haber algo para que se pueda ejecutar en ambos servidores sin necesidad de tener que duplicar el codigo.
  #7 (permalink)  
Antiguo 21/10/2005, 12:40
 
Fecha de Ingreso: marzo-2005
Mensajes: 123
Antigüedad: 19 años, 1 mes
Puntos: 1
Rootk probe dt_IVA_C = obj_IVA.Tabla("SELECT F_INICIO,F_TERMINO,VALOR FROM T_IVA WHERE F_INICIO<='" & Now.ToString("MM/dd/yyyy") & "'")
y ahora me sale el error en el servidor con s. operativo en español .....

debe haber algun truquillo por ahi....
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:13.