Appearance
Delphi Interface
Copy the following interface and save to a file called FlowAPI_Intf_Late.pas.
TIP
The following interface performs late binding on the FlowAPI, therefore it is possible to include within your application without causing errors if the FlowAPI.dll is not present (however an error will still occur if you try to use functions of the API when it is not present). An alternative interface that performs early binding is available at the end of this page.
pascal
unit FlowAPI_Intf_Late;
interface
uses Windows, classes;
Type
TExecuteCallBackEvent = procedure(ActionFID : PChar; Success : boolean) of object;
procedure GetDLLProcedure(const sDLLName, sProcName: string; var dll: THandle; var proc: Pointer);
{Exported Functions}
function Flo_IsLicenseOK : boolean; stdcall;
function Flo_Login(Hostname, Database, Username, Password : PChar) : boolean; stdcall; //must have logged in before
executing actions
function Flo_Logout : boolean; stdcall;
function Flo_AboutAPI(Description : PChar) : boolean; stdcall;
function Flo_ExecuteAction(ActionFID : PChar; CallBackProc : TExecuteCallBackEvent = nil) : boolean; stdcall;
function Flo_ExecuteActionSync(ActionFID : PChar) : boolean; stdcall;
function Flo_ExecuteActionWithParams(ActionFID : PChar; InputParams : PChar; CallBackProc : TExecuteCallBackEvent = nil) :
boolean; stdcall;
function Flo_ExecuteActionSyncWithParams(ActionFID : PChar; InputParams : PChar) : boolean; stdcall;
function Flo_ExecuteActionResultWithParams(ActionFID : PChar; InputParams : PChar; out aResultStream : OleVariant) : boolean;
stdcall;
function Flo_ExecuteSOAPRequestOut(ActionFID : PChar; InputParams : PChar; aXML : PChar) : boolean; stdcall;
function Flo_ExecuteSOAPRequestIn(ActionFID : PChar; aXML : PChar) : boolean; stdcall;
function Flo_ExecuteActionTemplate(TemplatePath : PChar; CallBackProc : TExecuteCallBackEvent = nil) : boolean; stdcall;
function Flo_TestDBCon (aFID : PChar) : boolean; stdcall;
function Flo_SaveDBCon(var aXML, aXML2 : PChar) : boolean; stdcall;
function Flo_SaveFileCon(var aXML, aXML2 : PChar) : boolean; stdcall;
function Flo_SaveDBDef(var aXML, aXML2 : PChar) : boolean; stdcall;
function Flo_SaveFileDef(var aXML, aXML2 : PChar) : boolean; stdcall;
function Flo_SaveReport(var aXML, aXML2 : PChar) : boolean; stdcall;
function Flo_SaveMap(var aXML, aXML2 : PChar) : boolean; stdcall;
function Flo_SaveTransport(var aXML, aXML2 : PChar) : boolean; stdcall;
function Flo_SaveAction(var aXML, aXML2 : PChar) : boolean; stdcall;
function Flo_SaveTradingPartner(var aXML, aXML2 : PChar) : boolean; stdcall;
function Flo_SaveLog(var aXML, aXML2 : PChar) : boolean; stdcall;
function Flo_LoadDBCon(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
function Flo_LoadFileCon(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
function Flo_LoadDBDef(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
function Flo_LoadFileDef(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
function Flo_LoadReport(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
function Flo_LoadMap(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
function Flo_LoadTransport(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
function Flo_LoadAction(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
function Flo_LoadTradingPartner(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
function Flo_LoadLog(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
type
TFlo_IsLicenseOk = function () : boolean; stdcall;
TFlo_Login = function (Hostname, Database, Username, Password : PChar) : boolean; stdcall; //must have logged in before
executing actions
TFlo_Logout = function () : boolean; stdcall;
TFlo_AboutAPI = function (Description : PChar) : boolean; stdcall;
TFlo_ExecuteAction = function (ActionFID : PChar; CallBackProc : TExecuteCallBackEvent = nil) : boolean; stdcall;
TFlo_ExecuteActionSync = function (ActionFID : PChar) : boolean; stdcall;
TFlo_ExecuteActionWithParams = function (ActionFID : PChar; InputParams : PChar; CallBackProc : TExecuteCallBackEvent =
nil) : boolean; stdcall;
TFlo_ExecuteActionSyncWithParams = function (ActionFID : PChar; InputParams : PChar) : boolean; stdcall;
TFlo_ExecuteActionResultWithParams = function(ActionFID : PChar; InputParams : PChar; out aResultStream : OleVariant) :
boolean; stdcall;
TFlo_ExecuteSOAPRequestOut = function (ActionFId : PChar; InputParams : PChar; out aXML : PChar) : boolean; stdcall;
TFlo_ExecuteSOAPRequestIn = function (ActionFId : PChar; var aXML : PChar) : boolean; stdcall;
TFlo_ExecuteActionTemplate = function (TemplatePath : PChar; CallBackProc : TExecuteCallBackEvent = nil) : boolean;
stdcall;
TFlo_TestDBCon = function (aFID : PChar) : boolean; stdcall;
TFlo_SaveDBCon = function (var aXML, aXML2 : PChar) : boolean; stdcall;
TFlo_SaveFileCon = function (var aXML, aXML2 : PChar) : boolean; stdcall;
TFlo_SaveDBDef = function (var aXML, aXML2 : PChar) : boolean; stdcall;
TFlo_SaveFileDef = function (var aXML, aXML2 : PChar) : boolean; stdcall;
TFlo_SaveReport = function (var aXML, aXML2 : PChar) : boolean; stdcall;
TFlo_SaveMap = function (var aXML, aXML2 : PChar) : boolean; stdcall;
TFlo_SaveTransport = function (var aXML, aXML2 : PChar) : boolean; stdcall;
TFlo_SaveAction = function (var aXML, aXML2 : PChar) : boolean; stdcall;
TFlo_SaveTradingPartner = function (var aXML, aXML2 : PChar) : boolean; stdcall;
TFlo_SaveLog = function (var aXML, aXML2 : PChar) : boolean; stdcall;
TFlo_LoadDBCon = function (aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
TFlo_LoadFileCon = function (aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
TFlo_LoadDBDef = function (aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
TFlo_LoadFileDef = function (aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
TFlo_LoadReport = function (aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
TFlo_LoadMap = function (aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
TFlo_LoadTransport = function (aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
TFlo_LoadAction = function (aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
TFlo_LoadTradingPartner = function (aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
TFlo_LoadLog = function (aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
const
sLibName = 'FlowAPI.DLL';
var
FloApiDll: THandle;
implementation
procedure GetDLLProcedure(const sDLLName, sProcName: string; var dll: THandle; var proc: Pointer);
begin
//make sure dll variable has been initialised to 0 before first calling this code
if dll=0 then
begin
dll := LoadLibrary(PChar(sDLLName));
if dll = 0 then
raise Exception.CreateFmt('Could not load the library: %s.', [sDLLName]);
end;
proc := GetProcAddress(dll, PChar(sProcName));
if not Assigned(proc) then
raise Exception.CreateFmt('Could not get the procedure address of %s in %s.', [sProcName, sDLLName]);
end;
function Flo_IsLicenseOk : boolean; stdcall;
var
proc: TFlo_IsLicenseOk;
begin
GetDLLProcedure(sLibName, 'Flo_IsLicenseOk', FloApiDll, @proc);
Result := proc;
end;
function Flo_Login (Hostname, Database, Username, Password : PChar) : boolean; stdcall; //must have logged in before
executing actions
var
proc: TFlo_Login;
begin
GetDLLProcedure(sLibName, 'Flo_Login', FloApiDll, @proc);
Result := proc(Hostname, Database, Username, Password);
end;
function Flo_Logout : boolean; stdcall;
var
proc: TFlo_Logout;
begin
GetDLLProcedure(sLibName, 'Flo_Logout', FloApiDll, @proc);
Result := proc();
end;
function Flo_AboutAPI (Description : PChar) : boolean; stdcall;
var
proc: TFlo_AboutAPI;
begin
GetDLLProcedure(sLibName, 'Flo_AboutAPI', FloApiDll, @proc);
Result := proc(Description);
end;
function Flo_ExecuteAction (ActionFID : PChar; CallBackProc : TExecuteCallBackEvent = nil) : boolean; stdcall;
var
proc: TFlo_ExecuteAction;
begin
GetDLLProcedure(sLibName, 'Flo_ExecuteAction', FloApiDll, @proc);
Result := proc(ActionFID,CallBackProc);
end;
function Flo_ExecuteActionSync (ActionFID : PChar) : boolean; stdcall;
var
proc: TFlo_ExecuteActionSync;
begin
GetDLLProcedure(sLibName, 'Flo_ExecuteActionSync', FloApiDll, @proc);
Result := proc(ActionFID);
end;
function Flo_ExecuteActionWithParams (ActionFID : PChar; InputParams : PChar; CallBackProc : TExecuteCallBackEvent = nil) :
boolean; stdcall;
var
proc: TFlo_ExecuteActionWithParams;
begin
GetDLLProcedure(sLibName, 'Flo_ExecuteActionWithParams', FloApiDll, @proc);
Result := proc(ActionFID,InputParams,CallBackProc);
end;
function Flo_ExecuteActionSyncWithParams (ActionFID : PChar; InputParams : PChar) : boolean; stdcall;
var
proc: TFlo_ExecuteActionSyncWithParams;
begin
GetDLLProcedure(sLibName, 'Flo_ExecuteActionSyncWithParams', FloApiDll, @proc);
Result := proc(ActionFID,InputParams);
end;
function Flo_ExecuteActionResultWithParams (ActionFID : PChar; InputParams : PChar; out aResultStream : OleVariant) :
boolean; stdcall;
var
proc: TFlo_ExecuteActionResultWithParams;
begin
GetDLLProcedure(sLibName, 'Flo_ExecuteActionResultWithParams', FloApiDll, @proc);
Result := proc(ActionFID,InputParams,aResultStream);
end;
function Flo_ExecuteSOAPRequestOut (ActionFID : PChar; InputParams : PChar; aXML : PChar) : boolean; stdcall;
var
proc: TFlo_ExecuteSOAPRequestOut;
begin
GetDLLProcedure(sLibName, 'Flo_ExecuteSOAPRequestOut', FloApiDll, @proc);
Result := proc(ActionFID,InputParams,aXML);
end;
function Flo_ExecuteSOAPRequestIn (ActionFID : PChar; aXML : PChar) : boolean; stdcall;
var
proc: TFlo_ExecuteSOAPRequestIn;
begin
GetDLLProcedure(sLibName, 'Flo_ExecuteSOAPRequestIn', FloApiDll, @proc);
Result := proc(ActionFID,aXML);
end;
function Flo_ExecuteActionTemplate (TemplatePath : PChar; CallBackProc : TExecuteCallBackEvent = nil) : boolean; stdcall;
var
proc: TFlo_ExecuteActionTemplate;
begin
GetDLLProcedure(sLibName, 'Flo_ExecuteActionTemplate', FloApiDll, @proc);
Result := proc(TemplatePath, CallBackProc);
end;
function Flo_TestDBCon(aFID : PChar) : boolean; stdcall;
var
proc: TFlo_TestDBCon;
begin
GetDLLProcedure(sLibName, 'Flo_TestDBCon', FloApiDll, @proc);
Result := proc(aFID);
end;
function Flo_SaveDBCon(var aXML, aXML2 : PChar) : boolean; stdcall;
var
proc: TFlo_SaveDBCon;
begin
GetDLLProcedure(sLibName, 'Flo_SaveDBCon', FloApiDll, @proc);
Result := proc(aXML, aXML2);
end;
function Flo_SaveFileCon(var aXML, aXML2 : PChar) : boolean; stdcall;
var
proc: TFlo_SaveFileCon;
begin
GetDLLProcedure(sLibName, 'Flo_SaveFileCon', FloApiDll, @proc);
Result := proc(aXML, aXML2);
end;
function Flo_SaveDBDef(var aXML, aXML2 : PChar) : boolean; stdcall;
var
proc: TFlo_SaveDBDef;
begin
GetDLLProcedure(sLibName, 'Flo_SaveDBDef', FloApiDll, @proc);
Result := proc(aXML, aXML2);
end;
function Flo_SaveFileDef(var aXML, aXML2 : PChar) : boolean; stdcall;
var
proc: TFlo_SaveFileDef;
begin
GetDLLProcedure(sLibName, 'Flo_SaveFileDef', FloApiDll, @proc);
Result := proc(aXML, aXML2);
end;
function Flo_SaveReport(var aXML, aXML2 : PChar) : boolean; stdcall;
var
proc: TFlo_SaveReport;
begin
GetDLLProcedure(sLibName, 'Flo_SaveReport', FloApiDll, @proc);
Result := proc(aXML, aXML2);
end;
function Flo_SaveMap(var aXML, aXML2 : PChar) : boolean; stdcall;
var
proc: TFlo_SaveMap;
begin
GetDLLProcedure(sLibName, 'Flo_SaveMap', FloApiDll, @proc);
Result := proc(aXML, aXML2);
end;
function Flo_SaveTransport(var aXML, aXML2 : PChar) : boolean; stdcall;
var
proc: TFlo_SaveTransport;
begin
GetDLLProcedure(sLibName, 'Flo_SaveTransport', FloApiDll, @proc);
Result := proc(aXML, aXML2);
end;
function Flo_SaveAction(var aXML, aXML2 : PChar) : boolean; stdcall;
var
proc: TFlo_SaveAction;
begin
GetDLLProcedure(sLibName, 'Flo_SaveAction', FloApiDll, @proc);
Result := proc(aXML, aXML2);
end;
function Flo_SaveTradingPartner(var aXML, aXML2 : PChar) : boolean; stdcall;
var
proc: TFlo_SaveTradingPartner;
begin
GetDLLProcedure(sLibName, 'Flo_SaveTradingPartner', FloApiDll, @proc);
Result := proc(aXML, aXML2);
end;
function Flo_SaveLog(var aXML, aXML2 : PChar) : boolean; stdcall;
var
proc: TFlo_SaveLog;
begin
GetDLLProcedure(sLibName, 'Flo_SaveLog', FloApiDll, @proc);
Result := proc(aXML, aXML2);
end;
function Flo_LoadDBCon(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
var
proc: TFlo_LoadDBCon;
begin
GetDLLProcedure(sLibName, 'Flo_LoadDBCon', FloApiDll, @proc);
Result := proc(aFID, aXML, aXML2);
end;
function Flo_LoadFileCon(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
var
proc: TFlo_LoadFileCon;
begin
GetDLLProcedure(sLibName, 'Flo_LoadFileCon', FloApiDll, @proc);
Result := proc(aFID, aXML, aXML2);
end;
function Flo_LoadDBDef(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
var
proc: TFlo_LoadDBDef;
begin
GetDLLProcedure(sLibName, 'Flo_LoadDBDef', FloApiDll, @proc);
Result := proc(aFID, aXML, aXML2);
end;
function Flo_LoadFileDef(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
var
proc: TFlo_LoadFileDef;
begin
GetDLLProcedure(sLibName, 'Flo_LoadFileDef', FloApiDll, @proc);
Result := proc(aFID, aXML, aXML2);
end;
function Flo_LoadReport(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
var
proc: TFlo_LoadReport;
begin
GetDLLProcedure(sLibName, 'Flo_LoadReport', FloApiDll, @proc);
Result := proc(aFID, aXML, aXML2);
end;
function Flo_LoadMap(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
var
proc: TFlo_LoadMap;
begin
GetDLLProcedure(sLibName, 'Flo_LoadMap', FloApiDll, @proc);
Result := proc(aFID, aXML, aXML2);
end;
function Flo_LoadTransport(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
var
proc: TFlo_LoadTransport;
begin
GetDLLProcedure(sLibName, 'Flo_LoadTransport', FloApiDll, @proc);
Result := proc(aFID, aXML, aXML2);
end;
function Flo_LoadAction(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
var
proc: TFlo_LoadAction;
begin
GetDLLProcedure(sLibName, 'Flo_LoadAction', FloApiDll, @proc);
Result := proc(aFID, aXML, aXML2);
end;
function Flo_LoadTradingPartner(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
var
proc: TFlo_LoadTradingPartner;
begin
GetDLLProcedure(sLibName, 'Flo_LoadTradingPartner', FloApiDll, @proc);
Result := proc(aFID, aXML, aXML2);
end;
function Flo_LoadLog(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
var
proc: TFlo_LoadLog;
begin
GetDLLProcedure(sLibName, 'Flo_LoadLog', FloApiDll, @proc);
Result := proc(aFID, aXML, aXML2);
end;
initialization
FloApiDll := 0;
finalization
if FloApiDll<>0 then
FreeLibrary(FloApiDll);
end.TIP
The following interface performs early binding. You can use this as an alternative to the above late binding interface.
pascal
unit FlowAPI_Intf;
interface
uses Classes;
Type
TExecuteCallBackEvent = procedure(ActionFID : PChar; Success : boolean) of object;
{Exported Functions}
function Flo_IsLicenseOk : boolean; stdcall;
function Flo_Login(Hostname, Database, Username, Password : PChar) : boolean; stdcall; //must have logged in before executing actions
function Flo_Logout : boolean; stdcall;
function Flo_AboutAPI(Description : PChar) : boolean; stdcall;
function Flo_ExecuteAction(ActionFID : PChar; CallBackProc : TExecuteCallBackEvent = nil) : boolean; stdcall;
function Flo_ExecuteActionSync(ActionFID : PChar) : boolean; stdcall;
function Flo_ExecuteActionWithParams(ActionFID : PChar; InputParams : PChar; CallBackProc : TExecuteCallBackEvent = nil) : boolean; stdcall;
function Flo_ExecuteActionSyncWithParams(ActionFID : PChar; InputParams : PChar) : boolean; stdcall;
function Flo_ExecuteActionResultWithParams(ActionFID : PChar; InputParams : PChar; out aResultStream : OleVariant) : boolean; stdcall;
function Flo_ExecuteSOAPRequestOut(ActionFID : PChar; InputParams : PChar; aXML : PChar) : boolean; stdcall;
function Flo_ExecuteSOAPRequestIn(ActionFID : PChar; var aXML : PChar) : boolean; stdcall;
function Flo_ExecuteActionTemplate(TemplatePath : PChar; CallBackProc : TExecuteCallBackEvent = nil) : boolean; stdcall;
function Flo_TestDBCon(aFID : PChar) : boolean; stdcall;
function Flo_SaveDBCon(var aXML, aXML2 : PChar) : boolean; stdcall;
function Flo_SaveFileCon(var aXML, aXML2 : PChar) : boolean; stdcall;
function Flo_SaveDBDef(var aXML, aXML2 : PChar) : boolean; stdcall;
function Flo_SaveFileDef(var aXML, aXML2 : PChar) : boolean; stdcall;
function Flo_SaveReport(var aXML, aXML2 : PChar) : boolean; stdcall;
function Flo_SaveMap(var aXML, aXML2 : PChar) : boolean; stdcall;
function Flo_SaveTransport(var aXML, aXML2 : PChar) : boolean; stdcall;
function Flo_SaveAction(var aXML, aXML2 : PChar) : boolean; stdcall;
function Flo_SaveTradingPartner(var aXML, aXML2 : PChar) : boolean; stdcall;
function Flo_SaveLog(var aXML, aXML2 : PChar) : boolean; stdcall;
function Flo_LoadDBCon(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
function Flo_LoadFileCon(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
function Flo_LoadDBDef(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
function Flo_LoadFileDef(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
function Flo_LoadReport(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
function Flo_LoadMap(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
function Flo_LoadTransport(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
function Flo_LoadAction(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
function Flo_LoadTradingPartner(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
function Flo_LoadLog(aFID : PChar; out aXML, aXML2 : PChar) : Boolean; stdcall;
implementation
const
sLibName = 'FlowAPI.dll';
function Flo_IsLicenseOk; external sLibName name 'Flo_IsLicenseOk';
function Flo_Login; external sLibName name 'Flo_Login';
function Flo_Logout; external sLibName name 'Flo_Logout';
function Flo_AboutAPI; external sLibName name 'Flo_AboutAPI';
function Flo_ExecuteAction; external sLibName name 'Flo_ExecuteAction';
function Flo_ExecuteActionSync; external sLibName name 'Flo_ExecuteActionSync';
function Flo_ExecuteActionWithParams; external sLibName name 'Flo_ExecuteActionWithParams';
function Flo_ExecuteActionSyncWithParams; external sLibName name 'Flo_ExecuteActionSyncWithParams';
function Flo_ExecuteActionResultWithParams; external sLibName name 'Flo_ExecuteActionResultWithParams';
function Flo_ExecuteSOAPRequestOut; external sLibName name 'Flo_ExecuteSOAPRequestOut';
function Flo_ExecuteSOAPRequestIn; external sLibName name 'Flo_ExecuteSOAPRequestIn';
function Flo_ExecuteActionTemplate; external sLibName name 'Flo_ExecuteActionTemplate';
function Flo_TestDBCon; external sLibName name 'Flo_TestDBCon';
function Flo_SaveDBCon; external sLibName name 'Flo_SaveDBCon';
function Flo_SaveFileCon; external sLibName name 'Flo_SaveFileCon';
function Flo_SaveDBDef; external sLibName name 'Flo_SaveDBDef';
function Flo_SaveFileDef; external sLibName name 'Flo_SaveFileDef';
function Flo_SaveReport; external sLibName name 'Flo_SaveReport';
function Flo_SaveMap; external sLibName name 'Flo_SaveMap';
function Flo_SaveTransport; external sLibName name 'Flo_SaveTransport';
function Flo_SaveAction; external sLibName name 'Flo_SaveAction';
function Flo_SaveTradingPartner; external sLibName name 'Flo_SaveTradingPartner';
function Flo_SaveLog; external sLibName name 'Flo_SaveLog';
function Flo_LoadDBCon; external sLibName name 'Flo_LoadDBCon';
function Flo_LoadFileCon; external sLibName name 'Flo_LoadFileCon';
function Flo_LoadDBDef; external sLibName name 'Flo_LoadDBDef';
function Flo_LoadFileDef; external sLibName name 'Flo_LoadFileDef';
function Flo_LoadReport; external sLibName name 'Flo_LoadReport';
function Flo_LoadMap; external sLibName name 'Flo_LoadMap';
function Flo_LoadTransport; external sLibName name 'Flo_LoadTransport';
function Flo_LoadAction; external sLibName name 'Flo_LoadAction';
function Flo_LoadTradingPartner; external sLibName name 'Flo_LoadTradingPartner';
function Flo_LoadLog; external sLibName name 'Flo_LoadLog';
end.