Programación General > Power Builder

 que pasa con la fecha y mi codigo

(1/3) > >>

darksito:
hola bueno se que este tema ya esta demasiado tocado y quisiera saber porque estoo me sucede  :hitcomp:

Bueno es lo que me sucede pondre imagenes asi me dare a entender

base de datos sql 2000
tabla  fecha
tipo datetime

supongamos que ese es mi formulario  un datapick y un boton guadar



en el boton guadar puse esto


--- Código: C++ ---//Declaro variable datetime fechafecha=datetime(dp_1.text) INSERT INTO t_fecha           ( fecha )    VALUES ( :fecha )  ; 
supuestamente deberia guardarme pero no lo hace   :ouch:  

pero si lo guardo como texto normal  si me guarda sin convertira tipo date o datetime  y me ocaciona otro problem
que cuando voy a crear mi consulta en dw  entre dos fechas


ingreso las fechas 20/07/2009 y 30/11/2009 para buscar fechas entre ese rango ya que en mi tabla hay fechas q introduci manualmente 24/09/09 , 23/09/09



no se que pueda suceder ya cambie la configuracion regional y todo lo demas porfavor quisiera q me ayuden

Juanra15:
Hola Darksito, una pregunta, que version de Power Builder usas?

provaste al convertir la fecha a string darle el formato? ej: fecha = String(Today(), "yyyy/mm/dd") si solo vas a pasar la fecha declaralo como DATE (no como DATETIME).

Yo al trabajar con fechas las las guardo en la DB como char(8) con el siguiente formato 20091024 = 23/10/2009, tengo una funcion guardada que convierte al char(8) al formato fecha, asi las busquedas y filtros en la DB me queda mas practico, espero que te sirva de algo.

Saludos  :good:

darksito:
hola man me podrias pasar un ejemplo haci sencillo uff nu sabes cuanto me ayudaria no se antes me guardaba normal ahora no !! estoy algo desauciado y quiero romper mi compu xD gracias

uso la 11.5 y tambien prove en 10.5

F_Tanori:
El formato Estandar Internacional es YYYYMMDD el cual no necesita ningun formateo ni tampoco separadores


La verdad es que no es buena idea almacenar Fechas como texto, pues no se manipulan de la misma manera, no utilizan los mismos espacios, ni tampoco se obtienen los mismos resultados

Puedes convertirlo a Date

--- Código: Visual Basic --- fecha=date(dp_1.text) 
o

a DateTime

--- Código: Visual Basic --- fecha=datetime(dp_1.text,Now()) 
--- Código: Visual Basic --- INSERT INTO t_fecha   ( fecha )   VALUES ( :fecha )  using SQLCA ; if SQLCA.SQLCODE<>0 then    MsgBox (string(fecha),SQLCA.SQLErrText)End if   
Comprueba el error que obtienes

Saludos

darksito:
bueno ahora no me ocurre ningun problema en guardar pero ocurre esto q en mi base de datos se guarda 01/01/1900 y estamos 2009 y eleji diferentes fechas pero aun asi

esta tabla la cree para ver si funcionaba el codigo


que puedo hacer respecto a este problema ya reconfigue el idioma soy de peru

dd/mm/yyyy

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa