Привожу пример части программы , что бы разобраться можно было , а также еще одну подпрограмму которая используется:
Для справки моя подпрограмма берет значение длительности в строковом типе , формата " 96 мин" , преобразует его в цифры , вычисляет часы и минуты , и переводит обратно в строковый формат "01:36:00" , подпрограмма вся написана , но не проходит стадию компиляции...
// Удаляет из строки все, что не является цифрой
function CheckNum(s: widestring): widestring;
var
st: widestring;
i: integer;
begin
if pos('€', s) > 0 then
delete(s, 1, 7);
if pos('¥', s) > 0 then
delete(s, 1, 6);
for i := 1 to length(s) do
if (s >= '0') and (s <= '9') then
st := st + s;
result := st;
end;
function CorrectTime ( Tmp : WideString ) : WideString ;
Var
stime , pri : WideString;
prim : Char;
i , tm , hour , min , data : Integer;
raz1 , raz2 , raz3 : Boolean ;
begin
i := 0 ;
tm := 0 ;
hour := 0 ;
min := 0 ;
raz1 := False ;
raz2 := False ;
raz3 := False ;
Tmp := CheckNum (Tmp);
if length(Tmp) = 3 then
begin
raz1 := True ;
raz2 := True ;
raz3 := True ;
end ;
if length(Tmp) = 2 then
begin
raz2 := True ;
raz3 := True ;
end ;
if length(Tmp) = 1 then
begin
raz3 := True ;
end ;
begin
for i := 1 to length(Tmp) do
if raz1 then
begin
prim := Tmp(i) ;
case prim of
`0`: tm := tm + 0 ;
`1`: tm := tm + 1*100 ;