Si lo vas a hacer desde y si usas FireBird, puedes usar la función
PadStr que viene en sus UDFs, pero si lo necesitas hacer desde delphi, puedes tratar de usar la siguiente función:
Código Delphi
[-]
type
TOrientacion = (toLeft, toRight);
function PadString(Cadena :String; Llenar_Con :Char; Cantidad :Integer; Orientacion :TOrientacion) :String;
var
I :Integer;
Temp :String;
begin
if Length(Cadena) >= Cantidad then
begin
SetLength(Cadena, Cantidad);
end
else
begin
for I := 0 to (Cantidad - (Length(Cadena)) -1) do
Temp := Temp + Llenar_Con;
end;
if Orientacion = toRight then
Result := Cadena + Temp
else
Result := Temp + Cadena;
end;
la cual se usa así, para tu primer caso:
Código Delphi
[-]
PadString('13245', '0', 7, toLeft);
Eso colocara 2 ceros o los que sean que se necesiten a la izquierda de 12345 quedando 0012345, para el otro caso tendrás que adecuar la función para que reconozca dicha situación.