Ir al contenido


Foto

ayuda sobre consultas y form


  • Por favor identifícate para responder
10 respuestas en este tema

#1 Aikido

Aikido

    Newbie

  • Miembros
  • Pip
  • 4 mensajes

Escrito 27 octubre 2010 - 05:56

cree una consulta ,usando tres tablas ,que me devuelva varios valores pero no logro que se vean  en un form
Es la siguiente:



delphi
  1. procedure TfrmObSEnv.Button1Click(Sender: TObject);
  2. var
  3.   hcnombre : string;
  4. begin
  5.   with IBQuery1  do
  6.   begin
  7.     Close;
  8.     SQL.Text := ' select hcnombre, hcnro, hcdni, hcapellido, strnro, strfechaacc, strart, obsnrosin, '+
  9.                 ' obsfecha, obsprofesional, obsobservacion, obsfechapc, obsadmin, obsfechaenv ' +
  10.                 ' from historiaclinica , siniestro , observaciones ' +
  11.                 ' where hcnro = strhc ' +
  12.                 ' and strnro = obsnrosin ' +
  13.                 ' and obsfechaenv is Null ' +
  14.                 ' order by hcapellido ' ;
  15.     Open;



Por favor si alguien puede decirme como resolver este problema
Gracias     

Edito: he acomodado un poco el código para que se aprecie mejor.

  • 0

#2 Caral

Caral

    Advanced Member

  • Moderador
  • PipPipPip
  • 4.266 mensajes
  • LocationCosta Rica

Escrito 27 octubre 2010 - 06:04

Hola
La consulta parece que esta bien, la variable no se usa para nada y no sabemos donde quieres presentar la informacion, dices que en el form, pero el form no muestra nada, deberia de ser en un dbgrid u otro.
Saludos
  • 0

#3 Fenareth

Fenareth

    Advanced Member

  • Administrador
  • 3.486 mensajes
  • LocationMexico City

Escrito 27 octubre 2010 - 06:26

Hola amigo Aikido !!!

Bienvenido a DelphiAccess.... (y)

Como te comenta Caral, nos gustaría que fueras un poco más preciso... en qué componente estás tratando de mostrar los datos que te arroja tu sentencia ?  ^o|

Saludox ! :)
  • 0

#4 felipe

felipe

    Advanced Member

  • Administrador
  • 3.283 mensajes
  • LocationColombia

Escrito 27 octubre 2010 - 09:40

Adicional a lo comentado,
¿estos son parámetros?

strhc
obsnrosin


porque de ser así, recuerda anteponer ":" y pasarle sus valores antes de open


Saludos!
  • 0

#5 Aikido

Aikido

    Newbie

  • Miembros
  • Pip
  • 4 mensajes

Escrito 28 octubre 2010 - 08:30

Si perdón, me olvide de poner que tipo es :



delphi
  1. TfrmObSEnv = class(TForm)
  2.     GPBDatosP: TGroupBox;
  3.     lblNyA: TLabel;
  4.     DBNyA: TDBEdit;
  5.     lblHC: TLabel;
  6.     DBHC: TDBEdit;
  7.     lblNSin: TLabel;
  8.     DBNSin: TDBEdit;
  9.     lblART: TLabel;
  10.     DBART: TDBEdit;
  11.     GPBObs: TGroupBox;
  12.     BAnterior: TButton;
  13.     BSiguiente: TButton;
  14.     lblProfesional: TLabel;
  15.     DBMedico: TDBEdit;
  16.     lblFEnvio: TLabel;
  17.     DBFenvio: TDBEdit;
  18.     DBMObser: TDBMemo;
  19.     lblOberM: TLabel;
  20.     lblObserA: TLabel;
  21.     DBMemo1: TDBMemo;
  22.     Label1: TLabel;
  23.     DBFProxC: TDBEdit;
  24.     lblFCons: TLabel;
  25.     DBFC: TDBEdit;
  26.     cmdEstudios: TButton;
  27.     cmdReh: TButton;
  28.     cmdInterconsulta: TButton;
  29.     cmdIngresos: TButton;
  30.     cmdOrtopedia: TButton;
  31.     cmdCirugia: TButton;
  32.     cmdSalir: TButton;
  33.     suiSkinEngine1: TsuiSkinEngine;
  34.     cmdCancelar: TButton;
  35.     IBDSconsultas: TIBDataSet;
  36.     DSConsulta: TDataSource;
  37.     IBDSconsultasHCNOMBRE: TIBStringField;
  38.     IBDSconsultasHCNRO: TIntegerField;
  39.     IBDSconsultasHCDNI: TIBStringField;
  40.     IBDSconsultasHCAPELLIDO: TIBStringField;
  41.     IBDSconsultasSTRNRO: TIBStringField;
  42.     IBDSconsultasSTRFECHAACC: TDateField;
  43.     IBDSconsultasSTRART: TIntegerField;
  44.     IBDSconsultasOBSNROSIN: TIBStringField;
  45.     IBDSconsultasOBSFECHA: TDateField;
  46.     IBDSconsultasOBSPROFESIONAL: TSmallintField;
  47.     IBDSconsultasOBSOBSERVACION: TIBStringField;
  48.     IBDSconsultasOBSFECHAPC: TDateField;
  49.     IBDSconsultasOBSADMIN: TIBStringField;
  50.     IBDSconsultasOBSFECHAENV: TDateField;
  51.     IBQuery1: TIBQuery;
  52.     Button1: TButton;


  • 0

#6 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.419 mensajes
  • LocationRepública Dominicana

Escrito 28 octubre 2010 - 08:42

Pues por lo que veo quieres mostrar los datos en TDBEDit, debes recordar que a cada TDBEdit debes asignarle las propiedades DataSource/Dataset y FieldName.

Saludos.
  • 0

#7 Aikido

Aikido

    Newbie

  • Miembros
  • Pip
  • 4 mensajes

Escrito 29 octubre 2010 - 08:03

Ya me muestra los datos pero hay un dato que necesito modificar pero me dice dataset read only . Como podria resolverlo?
Gracias por su tiempo
  • 0

#8 eduarcol

eduarcol

    Advanced Member

  • Administrador
  • 4.483 mensajes
  • LocationVenezuela

Escrito 30 octubre 2010 - 07:32

Hola,

No vas a poder debido a que es una consulta compleja, lo ideal seria utilizar un TIbDataset, llenando sus propiedades Update, Insert, Refresh y Select

Intentalo cualquier cosa preguntas.  :)
  • 0

#9 felipe

felipe

    Advanced Member

  • Administrador
  • 3.283 mensajes
  • LocationColombia

Escrito 30 octubre 2010 - 08:08

Los Query solo trabajan en una dirección, esa consulta no es modificable, tendrías que hacer esa edición con otro método, quizá otro Query.


Saludos!
  • 0

#10 Aikido

Aikido

    Newbie

  • Miembros
  • Pip
  • 4 mensajes

Escrito 03 noviembre 2010 - 08:29

hola estube probando . ahora me sale el siguiente error :
Dynamic SQL ErrorSQL error code = -104Token unknown - line 5, char -1from.
para la siguiente consulta , pero no logro ver donde esta el problema porque si corro la consulta en IBExpert funciona perfecto pero en el TIBdataset me sale ese error.



sql
  1. SELECT historiaclinica.hcnombre, historiaclinica.hcnro, historiaclinica.hcdni, historiaclinica.hcapellido, siniestro.strnro, siniestro.strfechaacc, siniestro.strart,  observaciones.obsnrosin, observaciones.obsfecha, observaciones.obsprofesional, observaciones.obsobservacion, observaciones.obsfechapc, observaciones.obsadmin,observaciones.obsfechaenv 
  2. FROM (historiaclinica INNER JOIN siniestro ON historiaclinica.hcnro=siniestro.strhc) INNER JOIN observaciones ON siniestro.strnro = observaciones.obsnrosin
  3. WHERE observaciones.obsfechaenv IS NULL
  4. ORDER BY historiaclinica.hcapellido;



Gracias
  • 0

#11 eduarcol

eduarcol

    Advanced Member

  • Administrador
  • 4.483 mensajes
  • LocationVenezuela

Escrito 04 noviembre 2010 - 06:53

Estas seguro que esa es la consulta que esta en el componente que ejecuta el Query?

Con cual componente trabajas??
  • 0




IP.Board spam blocked by CleanTalk.