Como simplificar esse código?

10/12/2015

1

Pessoal, supondo que o select traga mais de uma linha, não consigo com o código abaixo preencher todas as linha e todos os campos de uma só vez, para preencher todos tenho que clicar tantas vezes o número de linhas. Como fazer para preencher todos de uma só vez?

Select * From historicoitens
 WHERE RESULTADO_COLUNA1 IS NULL
    or RESULTADO_COLUNA2 IS NULL
    or RESULTADO_COLUNA3 IS NULL
    or RESULTADO_COLUNA4 IS NULL
    or RESULTADO_COLUNA5 IS NULL
    or RESULTADO_COLUNA6 IS NULL
    or RESULTADO_COLUNA7 IS NULL
    or RESULTADO_COLUNA8 IS NULL
    or RESULTADO_COLUNA9 IS NULL
    or RESULTADO_COLUNA10 IS NULL
    or RESULTADO_COLUNA11 IS NULL
    or RESULTADO_COLUNA12 IS NULL
    or RESULTADO_COLUNA13 IS NULL
    or RESULTADO_COLUNA14 IS NULL
    or RESULTADO_COLUNA15 IS NULL
    or RESULTADO_COLUNA16 IS NULL
    or RESULTADO_COLUNA17 IS NULL
    or RESULTADO_COLUNA18 IS NULL
    or RESULTADO_COLUNA19 IS NULL
    or RESULTADO_COLUNA20 IS NULL



  IBQuery1.Close;
  IBQuery1.Open;

  if IBQuery1.RecordCount > 0 then
    Begin
      IBQuery1.Edit;
       for i := 1 to 20 do
         begin
           if IBQuery1.FieldByName('RESULTADO_COLUNA' + inttostr(i)).AsString = '' then
              IBQuery1.FieldByName('RESULTADO_COLUNA' + inttostr(i)).AsString := '---';
          end;

       for i := 1 to 20 do
         begin
           if IBQuery1.FieldByName('CARGA_HORARIA_COL' + inttostr(i)).AsString = '' then
              IBQuery1.FieldByName('CARGA_HORARIA_COL' + inttostr(i)).AsString := '---';
         end;
      IBQuery1.Post;
      IBQuery1.Close;
      IBQuery1.Open;
Responder