Ver Mensaje Individual
  #7  
Antiguo 04-07-2007
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.561
Reputación: 25
egostar Va camino a la fama
Solo para complementar este hilo les dejo el complemento de código que me funcionó como queria.

Al seleccionar el departamento, paso los parametros al SP, calculo el siguiente valor y le doy el formato deseado '000'.

Código Delphi [-]
procedure TFEstructura.DBLookupComboBox6CloseUp(Sender: TObject);
var
  Seccion : string;
  SeccionInt: integer;
begin
  with DMEstructura do begin
     IBSPSecciones.Prepare;
     IBSPSecciones.ParamByName('C_RECTORIA').Value :=  IBRectorias.FieldByName('RECTORIA').Value;
     IBSPSecciones.ParamByName('C_DIVISION').Value := IBDivisiones.FieldByName('DIVISION').Value;
     IBSPSecciones.ParamByName('C_DEPTO').Value := IBDeptos.FieldByName('DEPARTAMENTO').Value;
     IBSPSecciones.ExecProc;
     //Valido si se encontró algún dato en caso contrario inicializo en cero.
     if IBSPSecciones.Params[0].Value <> null then 
        Seccion := IBSPSecciones.Params[0].Value
     else Seccion := '0';
     IBSPSecciones.UnPrepare;
     SeccionInt := StrtoInt(Seccion)+1;
     //Asigno el formato 00x a partir del valor entero.
     IBSecciones.FieldByName('SECCION').Value := Format('%.*d',[3,SeccionInt]);
  end;
  DBMemo4.SetFocus;
end;

No se si lo que hago esta bien o sea lo correcto, pero he visto en varios hilos que es bueno que quien haga el trabajo sea la base de datos, bueno, para eso me imagino existen los SP.

Espero que a alguien le sirva.

Salud OS.
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita