Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 09-10-2008
Elite237 Elite237 is offline
Miembro
 
Registrado: jul 2007
Posts: 162
Poder: 19
Elite237 Va por buen camino
Hola neftali, fijate que he querido adaptar el programa que hiciste de ejemplo a mi aplicacion, solo que no consigo hacer que se visulice las preguntas y las opciones, y te comento como esta mi apliacacion: por cada seccion hay preguntas, y esas preguntas tienen sus opciones, y lo que quiero hacer es que al momento de seleccionar el tipo de evaluacion de un combobox, pues aparezca las preguntas y las opciones de cada seccion, no se si me de a entender, he hecho query para traer las preguntas y que aparezcan en cada frame, pero me manda el siguiente error:
Código Delphi [-]
[Error] FMain.pas(93): Incompatible types: 'String' and 'procedure, untyped pointer or untyped parameter'
y quiza es por el codigo que le estoy introduciendo, la verdad no he utilizado frames y no tengo mucha experiencia programando en delphi.Este es el codigo que el estoy introduciendo
Código Delphi [-]
// Asignar textos
    query1.close;
    query1.SQL.clear;
    query1.sql.add('select eval_descripcion,preg_descripcion from tpregunta');
    query1.sql.add('where eval_descripcion = '''+cmbEvaluacion.text+'''');
    Str := Format(Fr.lblPregunta.Caption:=query1.fieldbyname('preg_descripcion').asstring, [IntToStr(i + 1)]);
    Fr.lblPregunta.Caption := Str;
Responder Con Cita
  #2  
Antiguo 09-10-2008
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 28
Delphius Va camino a la fama
Hola Elite237, por ahora el único error que veo es que estás asignando dentro de str = format() una sentencia de asignación (Fr.....Caption := ...)

Eso no está permitido en el lenguaje.
Mueve esa setencia de asignación antes de realizar el format:
Código Delphi [-]
FR......Caption := 
Str := Format (Fr...Caption ,[]);

¿Se entiende?
Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #3  
Antiguo 09-10-2008
Elite237 Elite237 is offline
Miembro
 
Registrado: jul 2007
Posts: 162
Poder: 19
Elite237 Va por buen camino
OK, Gracias Delphius, ya lo hize, pero no me hace nada, quedo como el que hizo neftali. Explicare algo que se me ha olvidado decirles: Por cada evaluacion, tengo una seccion, dentro de cada seccion tengo preguntas y a cada pregunta 3 o mas opciones de respuestas. Lo que me piden es que al momento de elegir el tipo de evaluacion a presentar, me muestre todas las secciones de mi evaluacion junto con sus respectivas preguntas y respuestas. Las claves se las asigno de esta manera. Evaluacion vigilante 3....seccion de la evaluacion 3.1....pregunta de la seccion 3.1.1....opcion de la pregunta....3.1.1.1....y asi sucesivamente, dependiendo de la cantidad de secciones, preguntas y opciones tengan cada evaluacion.Me di a entender?...Entonces yo me imagino y quiero hacer(corrigeme si estoy mal)realizar querys para traer esos datos. Pero ¿como se los asigno a las etiquetas y al radiogroup que usa neftali y que se vaya incrementando y muestre las opciones y las preguntas correctamente???
Responder Con Cita
  #4  
Antiguo 09-10-2008
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 28
Delphius Va camino a la fama
Hola Elite237,
Sería muy oportuno como saber como y que consultas SQL estás lanzando. Si nos expusieras el código empleado podríamos saber de que modo asesorarte.

Por otro lado veo en el código anterior que expones, que en nungún momento lanzas la consulta a ejecutar. Es decir, no veo el Open.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #5  
Antiguo 09-10-2008
Elite237 Elite237 is offline
Miembro
 
Registrado: jul 2007
Posts: 162
Poder: 19
Elite237 Va por buen camino
Ya lo habia checado delphius, gracias. La consulta que quiero hacer primero es la siguiente:
Código Delphi [-]
select eval_clave,secc_eval,secc_nombre where eval_clave=secc_eval
para que me arroje correctamente el nombre de la seccion, y que pertenezca a esa evaluacion. Aqui no hay problema, el problema digo yo es cuando se tenga que checar las preguntas y la opciones correspondan a la seccion y a la evaluacion.
Responder Con Cita
  #6  
Antiguo 10-10-2008
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.441
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Yo haría las cosas por partes, más que nada para ubicar los posibles problemas.
Primero lanza la sentencia SQL y asegúrate de que obtienes los datos corrrectos; Una vez hechoesto, ya los asignarás a los frames.

En cuanto al código:

Código Delphi [-]
// Asignar textos
query1.close;
query1.SQL.clear;
query1.sql.add('select eval_descripcion,preg_descripcion from tpregunta');
query1.sql.add('where eval_descripcion = '''+cmbEvaluacion.text+'''');

// Asegurate de que es correcta
MessageDlg('SQL: ' + query1.sql.Text, mtInformation, [mbOK], 0);
// Abrela (sin no no heremos nada)
query1.Open;
// Encontrado?
if (not (query1.EOF)) then begin
  Str := query1.fieldbyname('preg_descripcion').asstring;
  // Asignalo
  Fr.lblPregunta.Caption := Str;
end;
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #7  
Antiguo 10-10-2008
Elite237 Elite237 is offline
Miembro
 
Registrado: jul 2007
Posts: 162
Poder: 19
Elite237 Va por buen camino
Que tal neftali,ya hize mis querys, pero me manda un error, que es probable que me lo de por la manera en que la ejecuto:
Código Delphi [-]
sql error code=-104 token unknown -line5,char1 select'

este es el codigo que utilizo al momento de dar clic en mi boton y me genere todo el cuestionario:
Código Delphi [-]
procedure TFormMain.btnCrearClick(Sender: TObject);
var
  i:Integer;
  fr:TFramePreg;
  Str:String;
begin
  for i := 0 to (seNumPreguntas.Value - 1) do begin
    // Crear el Frame
    fr := TFramePreg.Create(nil);
    fr.Parent := self.ScrollBox1;
    fr.Top := (i * fr.Height) + 10;
    fr.Align := alTop;
    fr.Name := 'FramePregunta' + IntToStr(i + 1);
    Fr.lblNumPregunta.Caption := IntToStr(i + 1);
    Self.FRespuestas.AddObject(IntToStr(i + 1), fr);
    if odd(i) then begin
      fr.Panel1.Color := clBtnFace;
      Fr.rgRespuestas.Color := clBtnFace;
    end
    else begin
      fr.Panel1.Color := $00E3E8EA;
      Fr.rgRespuestas.Color := $00E3E8EA;
    end;
    // Asignar textos
    //Saca la evaluacion
    query1.close;
    query1.sql.clear;
    query1.sql.add('select eval_descripcion from tevaluacion');
    query1.sql.add('where eval_descripcion = '''+cmbEvaluacion.text+'''');
    TRY
           Query1.open;
        EXCEPT
              messagedlg('Error en consulta:'+#13+QUERY1.SQL.TEXT,mterror,[mbok],0)
        END;
    if (not (query1.Eof))then begin
      str:=query1.fieldbyname('eval_descripcion').asstring;
      fr.lblEvaluacion.caption:=str;
    end;  
    //Saca la seccion
    query1.close;
    query1.SQL.clear;
    query1.sql.add('select eval_clave,secc_eval,secc_nombre from tevaluacion,tsecciones');
    query1.sql.add('where eval_descripcion = '''+cmbEvaluacion.text+'''');
    query1.sql.add('and eval_clave = secc_eval');
    query1.sql.add('order by secc_nombre asc');
    TRY
           Query1.open;
        EXCEPT
              messagedlg('Error en consulta:'+#13+QUERY1.SQL.TEXT,mterror,[mbok],0)
        END;
    if (not (query1.Eof))then begin
      Str:=query1.fieldbyname('secc_nombre').asstring;
      fr.lblSeccion.Caption:=Str;
    end;
    //Saca la pregunta
    query1.Close;
    query1.sql.add('select eval_clave,secc_eval,preg_evaluacion,preg_secc,preg_clave,preg_descripcion from tevaluacion,tsecciones,tpreguntas');
    query1.sql.add('where eval_descripcion = '''+cmbEvaluacion.text+'''');
    query1.sql.add('and eval_clave=preg_evaluacion');
    query1.sql.add('and secc_eval=preg_secc');
    query1.sql.add('order by preg_descripcion asc');
    TRY
           Query1.open;
        EXCEPT
              messagedlg('Error en consulta:'+#13+QUERY1.SQL.TEXT,mterror,[mbok],0)
        END;
    if (not (query1.Eof))then begin
      Str:=query1.fieldbyname('opci_descripcion').asstring;
      Fr.lblPregunta.Caption := Str;
    end;
    // Las respuestas también de la Base de Datos
    //Saca la opcion
    query1.close;
    query1.sql.clear;
    query1.sql.Add('select eval_clave,secc_eval,secc_clave,preg_evaluacion,preg_secc,preg_clave,opci_evaluacion,opci_secc,opci_  pregunta,opci_clave,opci_descripcion from tevaluacion,tsecciones,tpreguntas,topciones');
    query1.sql.add('where eval_descripcion = '''+cmbEvaluacion.text+'''');
    query1.sql.add('and eval_clave=opci_evaluacion');
    query1.sql.add('and secc_eval=opci_secc');
    query1.sql.add('and preg_clave=opci_pregunta');
    query1.sql.add('order by opci_descripcion asc');
    TRY
           Query1.open;
        EXCEPT
              messagedlg('Error en consulta:'+#13+QUERY1.SQL.TEXT,mterror,[mbok],0)
        END;
    Fr.rgRespuestas.Items.add('Opcion1');
    Fr.rgRespuestas.Items.add('Opcion2');
    Fr.rgRespuestas.Items.add('Opcion3');
  end;
 
end;
Ah y quiero preguntarte, como hacer para que se muestre las opciones que tengo en la bd automaticamente, sin que la haga manualmente.Le paso el query en los parentesis??Checa mi radiogroup del final
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Sistema de Evaluacion Psicometrica Elite237 OOP 4 24-09-2008 18:31:58
Intraweb de D2007 es evaluación?? xander Varios 5 24-10-2007 20:04:40
Variante comparado con evaluación completa Al González Providers 2 18-08-2005 04:19:32
Migracion BDE a SQLDIRECT evaluacion ASAPLTDA Conexión con bases de datos 0 27-11-2004 22:08:12


La franja horaria es GMT +2. Ahora son las 07:08:36.


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