Hello!
I registered taminox.ocx on my Windows 2000 Pro. I use tamino 3.1.1.1 to store my xml document. I want to get my data from tamino using delphi [c++builder]. I have been looking through documentation, however sdk is only in c++, java, javascript. The more important thing is that I could not rewrite c++ code into my delphi application. These are codes in c++:
1) m_cTaminoX.setCsDatabaseURL(“http://localhost/tamino/mydb/Telephone”);
[ object TAMINOX not include function setCsDatabaseURL !!]
2) CDOM SPDOMNodeList(lpDOMNodeList)
[ I don’t know how I should rewrite it in delphi (object pascal language)]
3) CDOM SPDOCDoc(lpDOMDocWork)
[ I don’t know how I should rewrite it in delphi (object pascal language)]
These above lines come from sample sdk support:
C:\Program Files\Software AG\Tamino\Tamino 3.1.1.1\SDK\ActiveX\sampleTaminoDeleteByQuery
Any help will be VERY appreciated. Thanks a lot!!
Best Regards from POLAND
Dariusz Baumann
PS.
Here is TaminoXLIB.pas (automat generated by delphi)
–
unit TAMINOXLib_TLB;
// ************************************************************************ //
// WARNING
// -------
// The types declared in this file were generated from data read from a
// Type Library. If this type library is explicitly or indirectly (via
// another type library referring to this type library) re-imported, or the
// ‘Refresh’ command of the Type Library Editor activated while editing the
// Type Library, the contents of this file will be regenerated and all
// manual modifications will be lost.
// ************************************************************************ //
// PASTLWTR : $Revision: 1.88 $
// File generated on 2002-05-15 13:36:16 from Type Library described below.
// ************************************************************************ //
// Type Lib: C:\Program Files\Software AG\Tamino\Tamino 3.1.1.1\SDK\ActiveX\TaminoX.ocx (1)
// IID\LCID: {662A7593-6B76-11D3-8AC7-00500466D86F}\0
// Helpfile:
// DepndLst:
// (1) v2.0 stdole, (C:\WINNT\System32\stdole2.tlb)
// (2) v4.0 StdVCL, (C:\WINNT\System32\STDVCL40.DLL)
// ************************************************************************ //
{$TYPEDADDRESS OFF} // Unit must be compiled without type-checked pointers.
interface
uses Windows, ActiveX, Classes, Graphics, OleServer, OleCtrls, StdVCL;
// *********************************************************************//
// GUIDS declared in the TypeLibrary. Following prefixes are used:
// Type Libraries : LIBID_xxxx
// CoClasses : CLASS_xxxx
// DISPInterfaces : DIID_xxxx
// Non-DISP interfaces: IID_xxxx
// *********************************************************************//
const
// TypeLibrary Major and minor versions
TAMINOXLibMajorVersion = 1;
TAMINOXLibMinorVersion = 0;
LIBID_TAMINOXLib: TGUID = ‘{662A7593-6B76-11D3-8AC7-00500466D86F}’;
DIID__DTaminoX: TGUID = ‘{662A7594-6B76-11D3-8AC7-00500466D86F}’;
DIID__DTaminoXEvents: TGUID = ‘{662A7595-6B76-11D3-8AC7-00500466D86F}’;
CLASS_TaminoX: TGUID = ‘{E723849E-6B4D-11D3-8AC6-00500466D86F}’;
// *********************************************************************//
// Declaration of Enumerations defined in Type Library
// *********************************************************************//
// Constants for enum IsolationTypes
type
IsolationTypes = TOleEnum;
const
InoIsolationDefault = $00000001;
InoUnprotected = $00000002;
InoShared = $00000003;
InoProtected = $00000004;
// Constants for enum LockWaitTypes
type
LockWaitTypes = TOleEnum;
const
InoLockWaitDefault = $00000001;
InoLockWaitYes = $00000002;
InoLockWaitNo = $00000003;
// Constants for enum XMLHttpTypes
type
XMLHttpTypes = TOleEnum;
const
XMLHttpOriginal = $00000000;
XMLHttpMSXML2 = $00000001;
XMLHttpMSXML2Server = $00000002;
type
// *********************************************************************//
// Forward declaration of types defined in TypeLibrary
// *********************************************************************//
_DTaminoX = dispinterface;
_DTaminoXEvents = dispinterface;
// *********************************************************************//
// Declaration of CoClasses defined in Type Library
// (NOTE: Here we map each CoClass to its Default Interface)
// *********************************************************************//
TaminoX = _DTaminoX;
// *********************************************************************//
// Declaration of structures, unions and aliases.
// ********************************************************************//
POleVariant1 = ^OleVariant; {}
// *********************************************************************//
// DispIntf: _DTaminoX
// Flags: (4112) Hidden Dispatchable
// GUID: {662A7594-6B76-11D3-8AC7-00500466D86F}
// *********************************************************************//
_DTaminoX = dispinterface
[‘{662A7594-6B76-11D3-8AC7-00500466D86F}’]
property lPagesize: Integer dispid 1;
property csPassword: WideString dispid 2;
property csDatabaseURL: WideString dispid 3;
property csXMLHeader: WideString dispid 4;
property Encoding: WideString dispid 7;
property csSecurePath: WideString dispid 5;
property csUserName: WideString dispid 6;
property AcceptCharset: WideString dispid 8;
property AcceptLanguage: WideString dispid 9;
property ContentType: WideString dispid 10;
property SessionID: WideString dispid 11;
property SessionKey: WideString dispid 12;
function GetResult(const lpDOMDocument: IDispatch): IDispatch; dispid 13;
function ReturnNodes(const lpDOMDocument: IDispatch): IDispatch; dispid 14;
function Insert(const lpDOMNode: IDispatch): IDispatch; dispid 15;
function GetFirst(const lpDOMDocument: IDispatch): IDispatch; dispid 16;
function GetPrev(const lpDOMDocument: IDispatch): IDispatch; dispid 17;
function GetNext(const lpDOMDocument: IDispatch): IDispatch; dispid 18;
function GetLast(const lpDOMDocument: IDispatch): IDispatch; dispid 19;
function GetErrorStatus(var ErrorText: OleVariant): Integer; dispid 20;
function EndSession: IDispatch; dispid 21;
function Commit: IDispatch; dispid 22;
function Rollback: IDispatch; dispid 23;
function InoDelete(const lpDOMElement: IDispatch): IDispatch; dispid 24;
function PutDocument(const lpszReURL: WideString; const lpDOMNode: IDispatch): IDispatch; dispid 25;
function Process(const lpDOMNode: IDispatch; const lpszProcURL: WideString): IDispatch; dispid 26;
function InoAppendChild(const lpszRelURL: WideString; const lpszXPath: WideString;
const lpDOMNode: IDispatch): IDispatch; dispid 27;
function InoInsertBefore(const lpszRelURL: WideString; const lpszXPath: WideString;
const lpDOMNode: IDispatch): IDispatch; dispid 28;
function InoReplaceChild(const lpszRelURL: WideString; const lpszXPath: WideString;
const lpDOMNode: IDispatch): IDispatch; dispid 29;
function InoRemoveChild(const lpszRelURL: WideString; const lpszXPath: WideString): IDispatch; dispid 30;
function DeleteDocument(const lpszReURL: WideString): IDispatch; dispid 31;
function DoQuery(const lpszXQLQuery: WideString): IDispatch; dispid 32;
function GetDocument(const lpszReURL: WideString): IDispatch; dispid 33;
function Head(const lpszReURL: WideString): IDispatch; dispid 34;
function RefreshResult: IDispatch; dispid 35;
function Undefine(const theString: WideString): IDispatch; dispid 36;
function Define(const lpDOMDocument: IDispatch): IDispatch; dispid 37;
function Echo: IDispatch; dispid 38;
function Ping: IDispatch; dispid 39;
function Initialize: Integer; dispid 40;
function IsFirst(const lpDOMDocument: IDispatch): Integer; dispid 41;
function IsNext(const lpDOMDocument: IDispatch): Integer; dispid 42;
function IsLast(const lpDOMDocument: IDispatch): Integer; dispid 43;
function IsPrevious(const lpDOMDocument: IDispatch): Integer; dispid 44;
function GetTotalCount(const lpDOMDocument: IDispatch): Integer; dispid 45;
function GetCollection(const lpDOMX: IDispatch): OleVariant; dispid 46;
function GetDocType(const lpDOMX: IDispatch): OleVariant; dispid 47;
function GetInoId(const lpDOMX: IDispatch): OleVariant; dispid 48;
function GetLocation(const lpDOMDocument: IDispatch): WideString; dispid 49;
function StartSession(InoIsolation: IsolationTypes; InoLockWait: LockWaitTypes): IDispatch; dispid 50;
function DoQueryWithOffset(const lpszXQLQuery: WideString; loffset: Integer): IDispatch; dispid 51;
function GetDateLastModified: WideString; dispid 52;
function GetAllResponseHeaders: WideString; dispid 53;
function GetVersion: WideString; dispid 54;
procedure AddErrorStatusText(const lpszUserErrorText: WideString); dispid 55;
function DeleteByQuery(const lpszQuery: WideString; const lpszCollection: WideString;
const lpszDocType: WideString): IDispatch; dispid 56;
function SetRequestHeader(Value: OleVariant): Integer; dispid 57;
function InSession: Integer; dispid 58;
function UseServerHTTP(index: Integer): Integer; dispid 59;
end;
// *********************************************************************//
// DispIntf: _DTaminoXEvents
// Flags: (4096) Dispatchable
// GUID: {662A7595-6B76-11D3-8AC7-00500466D86F}
// *********************************************************************//
_DTaminoXEvents = dispinterface
[‘{662A7595-6B76-11D3-8AC7-00500466D86F}’]
end;
// *********************************************************************//
// OLE Control Proxy class declaration
// Control Name : TTaminoX
// Help String : Tamino DOM Control
// Default Interface: _DTaminoX
// Def. Intf. DISP? : Yes
// Event Interface: _DTaminoXEvents
// TypeFlags : (34) CanCreate Control
// *********************************************************************//
TTaminoX = class(TOleControl)
private
FIntf: _DTaminoX;
function GetControlInterface: _DTaminoX;
protected
procedure CreateControl;
procedure InitControlData; override;
public
function GetResult(const lpDOMDocument: IDispatch): IDispatch;
function ReturnNodes(const lpDOMDocument: IDispatch): IDispatch;
function Insert(const lpDOMNode: IDispatch): IDispatch;
function GetFirst(const lpDOMDocument: IDispatch): IDispatch;
function GetPrev(const lpDOMDocument: IDispatch): IDispatch;
function GetNext(const lpDOMDocument: IDispatch): IDispatch;
function GetLast(const lpDOMDocument: IDispatch): IDispatch;
function GetErrorStatus(var ErrorText: OleVariant): Integer;
function EndSession: IDispatch;
function Commit: IDispatch;
function Rollback: IDispatch;
function InoDelete(const lpDOMElement: IDispatch): IDispatch;
function PutDocument(const lpszReURL: WideString; const lpDOMNode: IDispatch): IDispatch;
function Process(const lpDOMNode: IDispatch; const lpszProcURL: WideString): IDispatch;
function InoAppendChild(const lpszRelURL: WideString; const lpszXPath: WideString;
const lpDOMNode: IDispatch): IDispatch;
function InoInsertBefore(const lpszRelURL: WideString; const lpszXPath: WideString;
const lpDOMNode: IDispatch): IDispatch;
function InoReplaceChild(const lpszRelURL: WideString; const lpszXPath: WideString;
const lpDOMNode: IDispatch): IDispatch;
function InoRemoveChild(const lpszRelURL: WideString; const lpszXPath: WideString): IDispatch;
function DeleteDocument(const lpszReURL: WideString): IDispatch;
function DoQuery(const lpszXQLQuery: WideString): IDispatch;
function GetDocument(const lpszReURL: WideString): IDispatch;
function Head(const lpszReURL: WideString): IDispatch;
function RefreshResult: IDispatch;
function Undefine(const theString: WideString): IDispatch;
function Define(const lpDOMDocument: IDispatch): IDispatch;
function Echo: IDispatch;
function Ping: IDispatch;
function Initialize: Integer;
function IsFirst(const lpDOMDocument: IDispatch): Integer;
function IsNext(const lpDOMDocument: IDispatch): Integer;
function IsLast(const lpDOMDocument: IDispatch): Integer;
function IsPrevious(const lpDOMDocument: IDispatch): Integer;
function GetTotalCount(const lpDOMDocument: IDispatch): Integer;
function GetCollection(const lpDOMX: IDispatch): OleVariant;
function GetDocType(const lpDOMX: IDispatch): OleVariant;
function GetInoId(const lpDOMX: IDispatch): OleVariant;
function GetLocation(const lpDOMDocument: IDispatch): WideString;
function StartSession(InoIsolation: IsolationTypes; InoLockWait: LockWaitTypes): IDispatch;
function DoQueryWithOffset(const lpszXQLQuery: WideString; loffset: Integer): IDispatch;
function GetDateLastModified: WideString;
function GetAllResponseHeaders: WideString;
function GetVersion: WideString;
procedure AddErrorStatusText(const lpszUserErrorText: WideString);
function DeleteByQuery(const lpszQuery: WideString; const lpszCollection: WideString;
const lpszDocType: WideString): IDispatch;
function SetRequestHeader(Value: OleVariant): Integer;
function InSession: Integer;
function UseServerHTTP(index: Integer): Integer;
property ControlInterface: _DTaminoX read GetControlInterface;
property DefaultInterface: _DTaminoX read GetControlInterface;
published
property lPagesize: Integer index 1 read GetIntegerProp write SetIntegerProp stored False;
property csPassword: WideString index 2 read GetWideStringProp write SetWideStringProp stored False;
property csDatabaseURL: WideString index 3 read GetWideStringProp write SetWideStringProp stored False;
property csXMLHeader: WideString index 4 read GetWideStringProp write SetWideStringProp stored False;
property Encoding: WideString index 7 read GetWideStringProp write SetWideStringProp stored False;
property csSecurePath: WideString index 5 read GetWideStringProp write SetWideStringProp stored False;
property csUserName: WideString index 6 read GetWideStringProp write SetWideStringProp stored False;
property AcceptCharset: WideString index 8 read GetWideStringProp write SetWideStringProp stored False;
property AcceptLanguage: WideString index 9 read GetWideStringProp write SetWideStringProp stored False;
property ContentType: WideString index 10 read GetWideStringProp write SetWideStringProp stored False;
property SessionID: WideString index 11 read GetWideStringProp write SetWideStringProp stored False;
property SessionKey: WideString index 12 read GetWideStringProp write SetWideStringProp stored False;
end;
procedure Register;
implementation
uses ComObj;
procedure TTaminoX.InitControlData;
const
CControlData: TControlData2 = (
ClassID: ‘{E723849E-6B4D-11D3-8AC6-00500466D86F}’;
EventIID: ‘’;
EventCount: 0;
EventDispIDs: nil;
LicenseKey: nil (HR:$80004005);
Flags: $00000000;
Version: 401);
begin
ControlData := @CControlData;
end;
procedure TTaminoX.CreateControl;
procedure DoCreate;
begin
FIntf := IUnknown(OleObject) as _DTaminoX;
end;
begin
if FIntf = nil then DoCreate;
end;
function TTaminoX.GetControlInterface: _DTaminoX;
begin
CreateControl;
Result := FIntf;
end;
function TTaminoX.GetResult(const lpDOMDocument: IDispatch): IDispatch;
begin
Result := DefaultInterface.GetResult(lpDOMDocument);
end;
function TTaminoX.ReturnNodes(const lpDOMDocument: IDispatch): IDispatch;
begin
Result := DefaultInterface.ReturnNodes(lpDOMDocument);
end;
function TTaminoX.Insert(const lpDOMNode: IDispatch): IDispatch;
begin
Result := DefaultInterface.Insert(lpDOMNode);
end;
function TTaminoX.GetFirst(const lpDOMDocument: IDispatch): IDispatch;
begin
Result := DefaultInterface.GetFirst(lpDOMDocument);
end;
function TTaminoX.GetPrev(const lpDOMDocument: IDispatch): IDispatch;
begin
Result := DefaultInterface.GetPrev(lpDOMDocument);
end;
function TTaminoX.GetNext(const lpDOMDocument: IDispatch): IDispatch;
begin
Result := DefaultInterface.GetNext(lpDOMDocument);
end;
function TTaminoX.GetLast(const lpDOMDocument: IDispatch): IDispatch;
begin
Result := DefaultInterface.GetLast(lpDOMDocument);
end;
function TTaminoX.GetErrorStatus(var ErrorText: OleVariant): Integer;
begin
Result := DefaultInterface.GetErrorStatus(ErrorText);
end;
function TTaminoX.EndSession: IDispatch;
begin
Result := DefaultInterface.EndSession;
end;
function TTaminoX.Commit: IDispatch;
begin
Result := DefaultInterface.Commit;
end;
function TTaminoX.Rollback: IDispatch;
begin
Result := DefaultInterface.Rollback;
end;
function TTaminoX.InoDelete(const lpDOMElement: IDispatch): IDispatch;
begin
Result := DefaultInterface.InoDelete(lpDOMElement);
end;
function TTaminoX.PutDocument(const lpszReURL: WideString; const lpDOMNode: IDispatch): IDispatch;
begin
Result := DefaultInterface.PutDocument(lpszReURL, lpDOMNode);
end;
function TTaminoX.Process(const lpDOMNode: IDispatch; const lpszProcURL: WideString): IDispatch;
begin
Result := DefaultInterface.Process(lpDOMNode, lpszProcURL);
end;
function TTaminoX.InoAppendChild(const lpszRelURL: WideString; const lpszXPath: WideString;
const lpDOMNode: IDispatch): IDispatch;
begin
Result := DefaultInterface.InoAppendChild(lpszRelURL, lpszXPath, lpDOMNode);
end;
function TTaminoX.InoInsertBefore(const lpszRelURL: WideString; const lpszXPath: WideString;
const lpDOMNode: IDispatch): IDispatch;
begin
Result := DefaultInterface.InoInsertBefore(lpszRelURL, lpszXPath, lpDOMNode);
end;
function TTaminoX.InoReplaceChild(const lpszRelURL: WideString; const lpszXPath: WideString;
const lpDOMNode: IDispatch): IDispatch;
begin
Result := DefaultInterface.InoReplaceChild(lpszRelURL, lpszXPath, lpDOMNode);
end;
function TTaminoX.InoRemoveChild(const lpszRelURL: WideString; const lpszXPath: WideString): IDispatch;
begin
Result := DefaultInterface.InoRemoveChild(lpszRelURL, lpszXPath);
end;
function TTaminoX.DeleteDocument(const lpszReURL: WideString): IDispatch;
begin
Result := DefaultInterface.DeleteDocument(lpszReURL);
end;
function TTaminoX.DoQuery(const lpszXQLQuery: WideString): IDispatch;
begin
Result := DefaultInterface.DoQuery(lpszXQLQuery);
end;
function TTaminoX.GetDocument(const lpszReURL: WideString): IDispatch;
begin
Result := DefaultInterface.GetDocument(lpszReURL);
end;
function TTaminoX.Head(const lpszReURL: WideString): IDispatch;
begin
Result := DefaultInterface.Head(lpszReURL);
end;
function TTaminoX.RefreshResult: IDispatch;
begin
Result := DefaultInterface.RefreshResult;
end;
function TTaminoX.Undefine(const theString: WideString): IDispatch;
begin
Result := DefaultInterface.Undefine(theString);
end;
function TTaminoX.Define(const lpDOMDocument: IDispatch): IDispatch;
begin
Result := DefaultInterface.Define(lpDOMDocument);
end;
function TTaminoX.Echo: IDispatch;
begin
Result := DefaultInterface.Echo;
end;
function TTaminoX.Ping: IDispatch;
begin
Result := DefaultInterface.Ping;
end;
function TTaminoX.Initialize: Integer;
begin
Result := DefaultInterface.Initialize;
end;
function TTaminoX.IsFirst(const lpDOMDocument: IDispatch): Integer;
begin
Result := DefaultInterface.IsFirst(lpDOMDocument);
end;
function TTaminoX.IsNext(const lpDOMDocument: IDispatch): Integer;
begin
Result := DefaultInterface.IsNext(lpDOMDocument);
end;
function TTaminoX.IsLast(const lpDOMDocument: IDispatch): Integer;
begin
Result := DefaultInterface.IsLast(lpDOMDocument);
end;
function TTaminoX.IsPrevious(const lpDOMDocument: IDispatch): Integer;
begin
Result := DefaultInterface.IsPrevious(lpDOMDocument);
end;
function TTaminoX.GetTotalCount(const lpDOMDocument: IDispatch): Integer;
begin
Result := DefaultInterface.GetTotalCount(lpDOMDocument);
end;
function TTaminoX.GetCollection(const lpDOMX: IDispatch): OleVariant;
begin
Result := DefaultInterface.GetCollection(lpDOMX);
end;
function TTaminoX.GetDocType(const lpDOMX: IDispatch): OleVariant;
begin
Result := DefaultInterface.GetDocType(lpDOMX);
end;
function TTaminoX.GetInoId(const lpDOMX: IDispatch): OleVariant;
begin
Result := DefaultInterface.GetInoId(lpDOMX);
end;
function TTaminoX.GetLocation(const lpDOMDocument: IDispatch): WideString;
begin
Result := DefaultInterface.GetLocation(lpDOMDocument);
end;
function TTaminoX.StartSession(InoIsolation: IsolationTypes; InoLockWait: LockWaitTypes): IDispatch;
begin
Result := DefaultInterface.StartSession(InoIsolation, InoLockWait);
end;
function TTaminoX.DoQueryWithOffset(const lpszXQLQuery: WideString; loffset: Integer): IDispatch;
begin
Result := DefaultInterface.DoQueryWithOffset(lpszXQLQuery, loffset);
end;
function TTaminoX.GetDateLastModified: WideString;
begin
Result := DefaultInterface.GetDateLastModified;
end;
function TTaminoX.GetAllResponseHeaders: WideString;
begin
Result := DefaultInterface.GetAllResponseHeaders;
end;
function TTaminoX.GetVersion: WideString;
begin
Result := DefaultInterface.GetVersion;
end;
procedure TTaminoX.AddErrorStatusText(const lpszUserErrorText: WideString);
begin
DefaultInterface.AddErrorStatusText(lpszUserErrorText);
end;
function TTaminoX.DeleteByQuery(const lpszQuery: WideString; const lpszCollection: WideString;
const lpszDocType: WideString): IDispatch;
begin
Result := DefaultInterface.DeleteByQuery(lpszQuery, lpszCollection, lpszDocType);
end;
function TTaminoX.SetRequestHeader(Value: OleVariant): Integer;
begin
Result := DefaultInterface.SetRequestHeader(Value);
end;
function TTaminoX.InSession: Integer;
begin
Result := DefaultInterface.InSession;
end;
function TTaminoX.UseServerHTTP(index: Integer): Integer;
begin
Result := DefaultInterface.UseServerHTTP(index);
end;
procedure Register;
begin
RegisterComponents(‘ActiveX’,[TTaminoX]);
end;
end.
–
#webMethods#webMethods-Tamino-XML-Server-APIs#API-Management