⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 testcli.c

📁 tuxede下面的编程
💻 C
字号:
#include <stdio.h>#include "atmi.h"		/* TUXEDO  Header File */#include  "fml32.h"#include "tbl_fml.h"#if defined(__STDC__) || defined(__cplusplus)main(int argc, char *argv[])#elsemain(argc, argv)int argc;char *argv[];#endif{	int ret;	int i=0;	TPINIT *tpinfo=NULL;	char *passwd=NULL;	FBFR32  *reqfb=NULL;	FBFR32 *rcvbuf=NULL;	long  reqlen=0;		long al_empno=0;	long al_mgr=0;	long al_deptno=0;	char ac_ename[11]="";	char ac_job[10]="";	char ac_hiredate[20]="";	double af_sal=0;	double af_comm=0;	long l_errno=0;	long l_return=0;	long l_row =0;	long len =0;	char c_errtext[256]="";					/* Attach to System/T as a Client Process */	if (tpinit(NULL) == -1) 	{		fprintf(stderr, "Tpinit failed\n");		exit(1);	}	/* allocate the buffer for request */	reqfb = (FBFR32 *)tpalloc("FML32",NULL,1024);	if ( reqfb == (FBFR32 *)NULL)	 {		printf("tpalloc failed\n");		tpterm();		exit(1);	}		if (tpcall("TEST", (char *)reqfb, 0L, (char **)&reqfb, (long *)&reqlen, TPNOTRAN|TPNOBLOCK) < 0 )	{		printf("tpcall failed: tperrno=%ld,tpstrerror=%s\n",tperrno,tpstrerror(tperrno));		tpterm();		tpabort(0);		exit(1);	}			rcvbuf = (FBFR32 *)reqfb;#ifdef _DEBUG_	fprintf(stdout,"begin Fprint32......");	Fprint32(rcvbuf);	fprintf(stdout,"begin Fprint32......");#endif		/*get the row returned*/	len=sizeof(l_row);	if(Fget32(rcvbuf,ROW,0,(char *)&l_row,&len) == -1)	{		printf("Fget32(ROW) fail ferrno=%d,ferrstrtext=%s\n",Ferror32,(char *)Fstrerror32(Ferror32));		tpterm();		exit(1);	}		if(l_row==0)	{		printf("no data found in table EMP\n");		tpterm();		exit(0);		}	for(i=0;i<l_row;i++)	{		len=sizeof(al_empno);		if(Fget32(rcvbuf,EMPNO,i,(char *)&al_empno,&len) == -1)		{			printf("Fget32(EMPNO) fail ferrno=%d,ferrstrtext=%s\n",Ferror32,(char *)Fstrerror32(Ferror32));			tpterm();			exit(1);		}				len = sizeof(ac_ename);		ac_ename[0]='\0';		if(Fget32(rcvbuf,ENAME,i,ac_ename,&len)== -1)		{			printf("Fget32(ENAME) fail ferrno=%d,ferrstrtext=%s\n",Ferror32,(char *)Fstrerror32(Ferror32));			tpterm();			exit(1);		}				len=sizeof(ac_job);		ac_job[0]='\0';		if(Fget32(rcvbuf,JOB,i,ac_job,&len)== -1)		{			printf("Fget32(JOB) fail ferrno=%d,ferrstrtext=%s\n",Ferror32,(char *)Fstrerror32(Ferror32));			tpterm();			exit(1);		}				len = sizeof(al_mgr);		if(Fget32(rcvbuf,MGR,i,(char*)&al_mgr,&len) == -1)		{			printf("Fget32(MGR) fail ferrno=%d,ferrstrtext=%s\n",Ferror32,(char *)Fstrerror32(Ferror32));			tpterm();			exit(1);		}				len=sizeof(ac_hiredate);		ac_hiredate[0]='\0';		if(Fget32(rcvbuf,HIREDATE,i,ac_hiredate,&len) == -1)		{			printf("Fget32(HIREDATE) fail ferrno=%d,ferrstrtext=%s\n",Ferror32,(char *)Fstrerror32(Ferror32));			tpterm();			exit(1);		}				len=sizeof(af_sal);		if(Fget32(rcvbuf,SAL,i,(char *)&af_sal,&len) == -1)		{			printf("Fget32(SAIL) fail ferrno=%d,ferrstrtext=%s\n",Ferror32,(char *)Fstrerror32(Ferror32));			tpterm();			exit(1);		}				len=sizeof(af_comm);		if(Fget32(rcvbuf,COMM,i,(char*)&af_comm,&len) == -1)		{			printf("Fget32(COMM) fail ferrno=%d,ferrstrtext=%s\n",Ferror32,(char *)Fstrerror32(Ferror32));			tpterm();			exit(1);		}				len=sizeof(al_deptno);		if(Fget32(rcvbuf,DEPTNO,i,(char*)&al_deptno,&len) == -1)		{			printf("Fget32(DEPTNO) fail ferrno=%d,ferrstrtext=%s\n",Ferror32,(char *)Fstrerror32(Ferror32));			exit(1);		}		printf("\n%d\t%s\t%s\t%d\t%s\t%f\t%f\t%d\n",al_empno,ac_ename,ac_job,al_mgr,ac_hiredate,af_sal,af_comm,al_deptno);			}	tpfree((char *)reqfb);	tpterm();	return(0);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -