delphi怎样与tuxedo联编(200分)

  • 主题发起人 主题发起人 liwei518
  • 开始时间 开始时间
L

liwei518

Unregistered / Unconfirmed
GUEST, unregistred user!
我前端工具用delphi开发工具,中间件用tuxedo,数据库用sybase
请问delphi怎样与tuxedo联编
 
:) 什么是tuxedo?
 
我也有同样的问题,正在考虑Delphi Tuxedo接口
 
关注,朋友,我们是在做一样的东西。
如果有资料请共享一下。谢谢。
 
二位,有什么资料,可以让我也分享吗?
bbzy@163.com
 
用tuxedo代的wtuxws32.dll
 
对于TUXEDO来说,应用是非常灵活的,它的数据传输方式和SOCKET,
DCOM一样,传送字符串,但是怎样把包含业务逻辑的数据正确的传
输并接收这需要你做个函数定义传输规则,一个好的规则使你事半
功倍。下面是我的一个VIEW数据类型服务器端添加数据的例子,
先看看吧。
//////////////////////////
//PersonInfo_View.h
//////////////////////////
struct PersonInfo_View {
char Name[20];
char Address[30];
char Tel[16];
char Email[16];
};
//////////////////////////
// Services PersonInfo
//////////////////////////
#include <stdio.h>
#include "atmi.h"
#include "PersonInfo_View.h"
#include <ctype.h>
EXEC SQL begin
DECLARE SECTION;
char cName[20];
char cAddress[30];
char cTel[16];
char cEmail[16];
int nPersonID;
struct PersonInfo_View *PersonInfoData;
char ConnectDatabase[30];
EXEC SQL END DECLARE SECTION;
EXEC SQL INCLUDE SQLCA.H;
void AddPersonInfo(TPSVCINFO *rqst)
{
PersonInfoData = (struct PersonInfo_View *)rqst->data;
strcpy(cName, PersonInfoData->Name);
strcpy(cAddress, PersonInfoData->Address);
strcpy(cTel, PersonInfoData->Tel);
strcpy(cEmail, PersonInfoData->Email);
fprintf(stderr,"PersonInfoData->Name:%s",cName);
fprintf(stderr,"PersonInfoData->Address:%s",cAddress);
fprintf(stderr,"PersonInfoData->Tel:%s",cTel);
fprintf(stderr,"PersonInfoData->Email:%s",cEmail);
strcat(ConnectDatabase,"tuser/tuser@armydata");
EXEC SQL CONNECT: ConnectDatabase;
EXEC SQL
SELECT MAX(ID) INTO :nPersonID FROM PersonInfo;
if(nPersonID==0)
{
nPersonID = 0;
}
else
{
nPersonID = nPersonID + 1;
}
EXEC SQL
INSERT INTO PersonInfo VALUES (:nPersonID,:cName,:cAddress,:cTel,:cEmail);
if (sqlca.sqlcode<0)
{
tpreturn(TPFAIL,0,NULL,0,0);
}
else
{
tpreturn(TPSUCCESS,0,NULL,0,0);
}
}
//////////////////////////
//client call function
//////////////////////////
int __stdcall AddPersonInfo(char *Name,char *Address,char *Tel, char *Email)
{
long len;
struct PersonInfo_View PersonInfo;
struct PersonInfo_View *sendbuf;

strcpy(PersonInfo.Name,Name);
strcpy(PersonInfo.Address,Address);
strcpy(PersonInfo.Tel,Tel);
strcpy(PersonInfo.Email,Email);
sendbuf = (struct PersonInfo_View *)tpalloc("VIEW", "PersonInfo_View", sizeof(struct PersonInfo_View));
sendbuf = &amp;PersonInfo;
if(sendbuf == (struct PersonInfo_View *)NULL )
{
return -1;
}
if (tpcall("AddPersonInfo", (char *)sendbuf, 0, (char **)&amp;sendbuf, &amp;len, 0 ) == -1 )
{
return -2;
}
else
{
return 0;
}
};
 
有delphi使用FML 的例子吗?
 
是调用动态库吗,delphi可以直接调用吗
 
STRING我用delphi已经测试成功了(而且服务端和客户端不在同一机器上,但VIEW不知道要如何搞,结构要在哪里定义?
 
后退
顶部