unit MesFonctions;
interface
uses windows;
type
Ptransaction = ^ttransaction_log; // Pointeur sur ma transaction
ttransaction_log = record // ma transaction
id : cardinal;
reserved_1 : byte;
index: byte;
year : word;
month: byte;
day: byte;
hour: byte;
min: byte;
sec: byte;
trans_code: byte;
flag_port: byte;
trans_log_data_1: byte;
trans_log_data_2: byte;
trans_log_data_3: byte;
reserved_2: byte;
status: byte;
end;
function renvoie_id : integer;
procedure RAZ_Transaction;
procedure Ferme_connection;
implementation
function Open_PC_Comm(com : integer):integer; stdcall ;external 'madll.DLL';
function Set_PC_Baud_Rate(baud_rate : integer):integer; stdcall ;external 'madll.DLL';
function Set_Net_ID(net_id : integer;async:integer):integer;stdcall ;external 'madll.DLL';
function Close_PC_Comm: integer; stdcall ;external 'madll.DLL';
function Erase_Transaction_Log (option:integer; async : integer):integer;stdcall;external 'madll.DLL';
function Read_Transaction_Log (option:integer;updateFlag:integer;maxEntries:integer; log : PTransaction):integer;stdcall;external 'madll.DLL';
function renvoie_id : integer;
var Transaction_Log_Struct,Transaction_Log_Struct2 : Ttransaction_log;
i,j,k,resultat: integer; id : cardinal;
begin
resultat := Open_PC_Comm(6);
resultat := Set_PC_Baud_Rate(57600);
resultat := Set_Net_ID(1,0);
resultat := Read_Transaction_Log (1,1,1, @Transaction_Log_Struct2);
resultat := Read_Transaction_Log (1,1,1, @Transaction_Log_Struct);
id := 0;
if resultat = 1 then
id :=Transaction_Log_Struct.id ;
renvoie_id := integer(id);
end;
procedure RAZ_Transaction;
var
Transaction_Log_Struct : Ttransaction_log;
resultat : integer;
begin
resultat := Erase_Transaction_Log (0,0);
resultat := Read_Transaction_Log (1,1,1, @Transaction_Log_Struct);
end;
procedure Ferme_Connection;
var resultat : integer;
begin
resultat := Close_PC_Comm;
end;
end.
Partager