Autor Tema: formato fecha Firebird  (Leído 3722 veces)

0 Usuarios y 1 Visitante están viendo este tema.

aedEric

  • Megabyte
  • ***
  • Mensajes: 211
  • Reputación: +20/-0
    • Ver Perfil
formato fecha Firebird
« en: Abril 03, 2014, 09:55:46 pm »
Hola  tengo una duda acabo de emigrar de access a firebird gracias a tutoriales de YVAN (saludos) en su foro,
1.- ya logre algunas cosas pero al tratar de realizar una consultas por fechas me salta error
Código: [Seleccionar]
Dim RS As New ADODB.Recordset
Set RS = dB.Execute("select * from BAUTISMO where FECHAB >= #" & CAMPO1 & "# AND FECHAB <= #" & CAMPO2 & "#")
Set DataGrid1.DataSource = RS

2.-ahora una pregunta  mas no le di formato a la fecha por que tambien me marca error , como puedo darle formato de fecha a mi datagrid ya que me carga en este formato (mm-dd-yyyy)

3.- hay alguna manera de agregar la fecha en firegrid en este formato (dd-mm-yyyy)

de antemano agradecere su ayuda saludos a todos los foristas
No he fracasado. He encontrado 10000 soluciones que no funcionan.

YAcosta

  • Moderador Global
  • Exabyte
  • *****
  • Mensajes: 2853
  • Reputación: +160/-38
  • Daddy de Qüentas y QüeryFull
    • Ver Perfil
    • Personal
Re:formato fecha Firebird
« Respuesta #1 en: Abril 03, 2014, 10:28:42 pm »
Primero, MIL DISCULPAS por no responderte en mi foro, la verdad entro poco y acabo de hacerlo a raiz de lo que publicaste aquí, voy a configurar en mi foro para que me envie emails. Vamos a tu tema:

Respondiendo la 1:
No uses execute para los Select. Si usas Execute no es necesario hacer un Set RS y por tanto no es necesario declararlo. Usa Execute para cuando quieras modificar la BD.
Supongo que CAMPO1 es algun control (supongo que un label, textbox o dtPicker)
Cambia esto:
Código: (VB) [Seleccionar]
Dim RS As New ADODB.Recordset
Set RS = dB.Execute("select * from BAUTISMO where FECHAB >= #" & CAMPO1 & "# AND FECHAB <= #" & CAMPO2 & "#")
Set DataGrid1.DataSource = RS

Por esto:
Código: (VB) [Seleccionar]
Dim rs As New ADODB.Recordset
sql = "select * from BAUTISMO where FECHAB >= '" & CAMPO1 & "' AND FECHAB <= '" & CAMPO2 & "'"
rs.Open sql, dB, 1, 1
Set DataGrid1.DataSource = RS

o esto:
Código: (VB) [Seleccionar]
Dim rs As New ADODB.Recordset
sql = "select * from BAUTISMO where FECHAB BETWEEN '" & CAMPO1 & "' AND '" & CAMPO2 & "'"
rs.Open sql, dB, 1, 1
Set DataGrid1.DataSource = RS

(abajo aclaro sobre CAMPO1 y CAMPO2)

Respondiendo la 2:
No uso el datagrid y quiza halla algo que checar alli, en todo caso revisa tu configuracion regional (aunque lo dudo).

Respondiendo la 3:
Supongo que te refieres a agregar Firebird (no a Firegrid, la confusion es que pueda que te refieras al Datagrid)
Guarda en la BD con este formato: YYYY/MM/DD, y recuperalo con el que te convenga. Ese formato no encierra ambigüedad.
Por ende, en la respuesta 1, tu CAMPO1 debe tener ese formato, sino cambialo asi:
CAMPO1 = Format(CAMPO1, "YYYY/MM/DD")
Y te olvidas de incompatibilidades.

Saludos

EDITO: No vayas a confundirte, los parámetros que envíes desde algún control son los que tu nombras CAMPO1 y CAMPO2, quizá allí esta también la confusión porque puede que tu te refieras a campos de la tabla, no lo creo pero bueno esa confusión tengo porque no usas prefijos en tu variable y asi poder intuir desde que control envias el dato.
« última modificación: Abril 03, 2014, 10:36:47 pm por YAcosta »
Me encuentras en YAcosta.com

aedEric

  • Megabyte
  • ***
  • Mensajes: 211
  • Reputación: +20/-0
    • Ver Perfil
Re:formato fecha Firebird
« Respuesta #2 en: Abril 04, 2014, 04:01:04 pm »
hola Yvan  muchas gracias resuelto con éxito  ;D saludos a todos los foristas desde méxico
No he fracasado. He encontrado 10000 soluciones que no funcionan.

lucius

  • Gigabyte
  • ****
  • Mensajes: 263
  • Reputación: +6/-5
    • Ver Perfil
Re:formato fecha Firebird
« Respuesta #3 en: Abril 06, 2014, 01:51:16 pm »
El formato para datagrid es:
Datagrid1.Columns(1).NumberFormat = "dd/yyyy/mm"

aedEric

  • Megabyte
  • ***
  • Mensajes: 211
  • Reputación: +20/-0
    • Ver Perfil
Re:formato fecha Firebird
« Respuesta #4 en: Abril 07, 2014, 02:43:30 pm »
  ;D gracias Lucius por tu respuesta ya lo habia resuelto saludos
No he fracasado. He encontrado 10000 soluciones que no funcionan.