Hola minos.
En primer lugar bienvenido(a) a los foros del clubdelphi. Te recomiendo la lectura de la
guia de estilo de los foros que tiene las reglas básicas de convivencia en este lugar.
Luego, has colocado originalmente este mensaje en el hilo
Longitud máxima para una consulta SQL, donde no tiene que ver con la pregunta original del hilo. De esa cuenta, la he movido abriendo un nuevo hilo.
También te recomiendo que apredas a usar la etiqueta [code] que te puede ser útil para publicar tablas como las que pretendes, pues respeta los espacios en blanco e indentación. También están disponibles las etiquetas [ delphi], [sql] y [php] para publicar trozos de código, pues a demás de la indentación, resalta la sintaxis. Esta vez, yo he heditado tu mensaje para que sea claro.
Por último, y respondiendo a tu inquietud, es algo que podes lograr fácilmente con un par de campos calculados, y el evento OnCalculate del DataSet Asociado, que quedaría algo como:
Código Delphi
[-]
Procedure TablaCalcFields(Dataset : TDataSet);
Begin
if TablaTIPO.AsInteger = 1 Then
TablaA.AsFloat := TablaCANTIDAD.AsFloat
else
TablaB.AsFloat := TablaCANTIDAD.AsFloat;
end;
Hasta luego.