Apollo VCL

EugeneBoss03

Member
Joined
Jun 14, 2008
Messages
5
Reaction score
1
Знатоки, подскажите в чём косяк в ApCommon.pas из Apollo VCL 6.1 Eval?

function InternalBreakRecords(pMem: TMemoryStream;
var BOF: Boolean;
var EoF: Boolean;
var RecNo: Integer;
var RowNo: Integer;
var OrderPosGet: Double;
var ActiveBuffer: PChar;
const RecSize : Integer):Boolean;
var
Buff : Array [0..12] of char;
begin
RowNo := -4;
if (pMem <> nil) and (pMem.Position < pMem.Size) then
begin
pMem.Read( PChar(@buff)^, 1);
buff[1] := #0;
BOF := YNToLogical(buff);
pMem.Read( PChar(@buff)^, 1);
buff[1] := #0;
EOF := YNToLogical(buff);

pMem.Read( PChar(@buff)^, 8);
buff[8] := #0; // Physical RecNo
RecNo := StrToInt('$'+Buff); - несовместимый тип!

pMem.Read( PChar(@buff)^, 8);
buff[8] := #0;
RowNo := StrToInt('$'+Buff); - несовместимый тип!

pMem.Read( PChar(@buff)^, 12);
buff[12] := #0; // OrderGetPos
OrderPosGet := StrToFloat(buff);
pMem.Read( PChar(ActiveBuffer)^, RecSize); // Active Buffer itself
end;
if RowNo = -4
then Result := FALSE
else Result := TRUE;
end;
 
Last edited by a moderator:

nokano

New member
Joined
Nov 24, 2009
Messages
1
Reaction score
0
Age
74
Знатоки, подскажите в чём косяк в
RowNo := StrToInt('$'+Buff); - несовместимый тип!

Должно быть нечто вроде
RowNo := StrToInt(string('$')+Buff);
 

Kolobok-S

New member
Joined
May 27, 2010
Messages
4
Reaction score
0
Ребята помогите пож. может кто знает?
если загнать DBF-файл в TMemoryStream (нужно с ним работать не с файлом а в памяти) можно ли с пом. Apollo вообще обратиться к TMemmoryStream ?
как загнать DBF в "память" - не проблема, и проверял потом, там все в порядке.
нашел в ApolloQuery метод LoadFromStream(<MyMemoryStream>), но при попытке вызова этого метода возникает ошибка.
Можете помочь рабочим примером, как в целом работать с DBF который в TMemoryStream (если не в Apollo то хотя бы каким компонентом это можно сделать)?
 

LeshaRB

Staff member
Premium
Joined
Jun 11, 2007
Messages
319
Reaction score
451
Location
Минск
Accuracer\
DBISAM\
ElevateDB\
kbmMemTable\
kbmMW\
QDac\
SQLMemTable\
TinyDB\
 
Top