Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > Lazarus, FreePascal, Kylix, etc.
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 27-09-2012
Chandra_ Chandra_ is offline
Miembro
 
Registrado: may 2008
Posts: 50
Poder: 16
Chandra_ Va por buen camino
Sin campos Varchar en el TSQLQery

Hola. Estaba migrando una aplicación Delphi a Lazarus 1.0 y me he encontrado un problemilla que no sé bien cómo solucionar:

Tengo un TSQLQery que enlaza con un procedimiento almacenado de la base de datos. Por lo tanto, tengo que meter a mano los campos que ese TSQLQery tendrá en tiempo de ejecución (los que devolverá un query al PA).

Pues bien, abro el "Editor de campos" del TSQLQery (con un doble click en el componente) --> "Crear nuevo campo", pero en el tipo de campo no hay varchar (sí veo que hay String, por ejemplo).

¿Me dará problemas en el futuro si uso un String en su lugar? ¿Debería de usar otro tipo?

Como podréis imaginar tengo el mismo problema con los campos calculados.

Gracias.

Última edición por Chandra_ fecha: 27-09-2012 a las 20:57:34.
Responder Con Cita
  #2  
Antiguo 27-09-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
¿Y ese TSQLQuery de qué componentes es?, ¿has echado un vistazo a alguna documentación?, ¿lo has probado?,
¿por qué dices que con los camps calculados tendrás el mismo problema si son numéricos?, ¿usas campos calculados de tipo cadena?.

¡Tantas preguntas!
Responder Con Cita
  #3  
Antiguo 27-09-2012
Avatar de mightydragonlor
[mightydragonlor] mightydragonlor is offline
Miembro Premium
 
Registrado: feb 2007
Ubicación: Medellín-Colombia
Posts: 587
Poder: 18
mightydragonlor Va por buen camino
los campos de el TSQLQuery está conformados por tipos de FPC, así que no deberías tener problemas con esto, ya que VARCHAR y CHAR, a la final son simplemente String's, además, no es necesario que los crees, ya que al momento de ejecutar la consulta o el sp, estos mismos se crearán y sólo debes conocer el nombre con que son devueltos para aceder a los mismos con FieldByName, del TSQLQuery.

Saludos.
__________________
mas confundido que Garavito el día del Niño.
Responder Con Cita
  #4  
Antiguo 27-09-2012
Chandra_ Chandra_ is offline
Miembro
 
Registrado: may 2008
Posts: 50
Poder: 16
Chandra_ Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
¿Y ese TSQLQuery de qué componentes es?, ¿has echado un vistazo a alguna documentación?, ¿lo has probado?,
¿por qué dices que con los camps calculados tendrás el mismo problema si son numéricos?, ¿usas campos calculados de tipo cadena?.

¡Tantas preguntas!
Gracias por leerme, Casimiro

Tienes razón, me ha faltado detallar más la pregunta.

Pues bien, el TSQLQery es nativo de Lazarus, de la pestaña SQLdb. Está enlazado a otros componentes (todos nativos Lazarus): un TIBConnection, un SQLTransaction y su correspondiente TDatasource que lo conecta a una TDBGrid (según en esquema que comenté aquí).

En cuanto a si lo he probado, pues confieso que aún no , por eso pregunto, por si alguien ha pasado por ahí y tenía idea de cómo solucionarlo. Como estoy "reconstruyendo" la aplicación en Lazarus, aún no he llegado a la parte en que se usan esos procedimientos almacenados a través de un query. Sería cuestión de crear un entorno de pruebas y poner en práctica el consabido ensayo/error

Y en cuanto a documentación, he buscado un montón en Google, pero sigo sin encontrar nada. El problema añadido con Lazarus es que casi todo lo que sale es para Delphi. Y sí, añado "Lazarus" a la búsqueda, pero eso no evita los miles de entradas en las que en algún punto del texto se establece algún paralelismo con el correlato libre de Delphi.

En lo referente a tu pregunta sobre si uso campos calculados tipo cadena, no, no los uso ahora mismo. Sin embargo, no veo el motivo por el que sea tan raro usarlos: partiendo de una premisa, puedes querer mostrar un valor alfanumérico determinado. De hecho, se me ocurren varias situaciones en mi aplicación en las que, dependiendo de unos factores u otros, quiera presentar al usuario una cadena de texto determinada, a modo de etiqueta de un valor: por ejemplo, distintas unidades de medida convertidas a partir de otras y quiero adjuntar un campo con el nombre de la nueva unidad. Esas "etiquetas" se deciden en fase de ejecución y, por lo tanto, no sé en fase de diseño qué tipo de valor es el del campo anterior en la columna del dbgrid, que también estoy calculando. Puedo querer poner "0,8773" en una celda de una columna del dbgrid y en la siguiente celda, "m/s". No sé, da igual... me estoy enrollando .

Gracias por tu atención.
Responder Con Cita
  #5  
Antiguo 27-09-2012
Chandra_ Chandra_ is offline
Miembro
 
Registrado: may 2008
Posts: 50
Poder: 16
Chandra_ Va por buen camino
Cita:
Empezado por mightydragonlor Ver Mensaje
los campos de el TSQLQuery está conformados por tipos de FPC, así que no deberías tener problemas con esto, ya que VARCHAR y CHAR, a la final son simplemente String's, además, no es necesario que los crees, ya que al momento de ejecutar la consulta o el sp, estos mismos se crearán y sólo debes conocer el nombre con que son devueltos para aceder a los mismos con FieldByName, del TSQLQuery.

Saludos.
Muchas gracias por la respuesta

Pues llevas toda la razón, qué burrada estaba haciendo . Qué forma más absurda de complicarme la vida . De hecho, yo no creo nunca esos campos en los dataset enlazados a querys y siempre he llamado a los campos con FieldByName.

A veces, por la fuerza de la costumbre, uno perpetúa una tontería sin pararse a pensar por qué lo está haciendo: Estaba pegándome de tortas con el editor de campos, que no me dejaba validar si no e metía el tipo y realmente nada de eso es necesario .

Gracias por la aclaración y por "pararme" (qué vergüenza, qué burro soy a veces ).
Responder Con Cita
  #6  
Antiguo 27-09-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
El que tiene boca... se equivoca
Son tantas cosas las que tenemos en la cabeza... bastante hacemos con acordarnos de respirar
Responder Con Cita
  #7  
Antiguo 27-09-2012
Chandra_ Chandra_ is offline
Miembro
 
Registrado: may 2008
Posts: 50
Poder: 16
Chandra_ Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
El que tiene boca... se equivoca
Son tantas cosas las que tenemos en la cabeza... bastante hacemos con acordarnos de respirar
Gracias, Casimiro
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
TClienDataSet Problemas con Campos Blob y Campos Calculados LEVV Conexión con bases de datos 2 11-05-2012 01:25:43
Leer campos en un .txt sépoco Varios 10 19-12-2007 18:39:18
Organizar Campos jocey Impresión 2 06-11-2007 03:05:17
Campos auto_increment............... David J. MySQL 1 19-07-2004 08:01:59
Campos En Sql ebeltete SQL 2 13-05-2003 01:26:50


La franja horaria es GMT +2. Ahora son las 22:21:15.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi