Ver Mensaje Individual
  #28  
Antiguo 10-10-2008
Elite237 Elite237 is offline
Miembro
 
Registrado: jul 2007
Posts: 162
Reputación: 17
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