📄 registerbussiness.pc
字号:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <sqlca.h>
#include <process.h>
extern void bus_Menu();
int delete_agreement(char* tCustomerID,char* tProviderID,char* tPartID);
void registerBussiness()
{
FILE* fp;
EXEC SQL BEGIN DECLARE SECTION;
char CustomerID[10];
char ProviderID[10];
char PartID[10];
char Price[10];
char Quantity[10];
char CustomerSign[4];
char CustSignDate[20];
char ProviderSign[4];
char ProvSignDate[20];
char yes[4]="kon";
EXEC SQL END DECLARE SECTION;
int total_number = 0;
puts("\t\t以下将进行确认交易的操作");
EXEC SQL DECLARE register_bus_cursor CURSOR FOR
SELECT * FROM Agreement;
/*WHERE CustomerSign = :yes; AND ProviderSign = :yes; ID,Name,Color,Weight,Advicer,Intro*/
EXEC SQL OPEN register_bus_cursor;
fp=fopen("1.txt","a+");
fprintf(fp,"\t\t\t成交记录文件\n\n");
fprintf(fp,"%-4s%-10s%-10s%-10s%-10s%-10s%-4s%-20s%-4s%-20s\n","N","CustomerID","ProviderID","PartID","Price","Quantity","CusSign","CSignDate","ProSign","PSignDate");
while(1)
{
EXEC SQL WHENEVER NOT FOUND DO break;
EXEC SQL FETCH register_bus_cursor INTO :CustomerID,:ProviderID,:PartID,:Price,:Quantity,:CustomerSign,:CustSignDate,:ProviderSign,:ProvSignDate;
/*puts("!!goto here!!");*/
/*printf("%s",CustomerSign);
printf("%s",ProviderSign);*/
if(!strcmp(CustomerSign,"yes") && !strcmp(ProviderSign,"yes") ){
++total_number;
printf("\n本项交易已为双方接受:\n");
printf("--- --------- ------------------- ---------------------------- ----------\n");
printf("%-4s%-10s%-10s%-10s%-10s%-10s%-4s%-20s%-4s%-20s\n","N","CustomerID","ProviderID","PartID","Price","Quantity","CusSign","CSignDate","ProSign","PSignDate");
printf("--- --------- ------------------- ---------------------------- ----------\n");
fprintf(fp,"------------------------------------------------------------------------------------------------------\n");
printf("%-4d%-10s%-10s%-10s%-10s%-10s%-4s%-20s%-4s%-20s\n",total_number,CustomerID,ProviderID,PartID,Price,Quantity,CustomerSign,CustSignDate,ProviderSign,ProvSignDate);
fprintf(fp,"%-4d%-10s%-10s%-10s%-10s%-10s%-4s%-20s%-4s%-20s\n",total_number,CustomerID,ProviderID,PartID,Price,Quantity,CustomerSign,CustSignDate,ProviderSign,ProvSignDate);
if( !delete_agreement(CustomerID,ProviderID,PartID) ){
puts("本项交易信息已录入交易记录文件,点击任意键开始下一项");
getchar();
}/*if*/
}/*if*/
}/*while*/
fclose(fp);
EXEC SQL CLOSE register_bus_cursor;
puts("确认交易的操作完毕,任意键返回上级菜单\n");
getchar();
bus_Menu();
}/*registerBussiness()*/
int delete_agreement(char* tCustomerID,char* tProviderID,char* tPartID)
{
EXEC SQL BEGIN DECLARE SECTION;
char CustomerID[10];
char ProviderID[10];
char PartID[10];
EXEC SQL END DECLARE SECTION;
strcpy(CustomerID,tCustomerID);
strcpy(ProviderID,tProviderID);
strcpy(PartID,tPartID);
/*printf("%s\t%s\t%s\n",CustomerID,ProviderID,PartID);*/
EXEC SQL WHENEVER SQLERROR GOTO sqlerr;
EXEC SQL WHENEVER NOT FOUND GOTO notfound;
EXEC SQL DELETE FROM Agreement WHERE CustomerID =:CustomerID AND ProviderID=:ProviderID AND PartID=:PartID;
EXEC SQL COMMIT;
printf("%s,%s,%s dropped.\n",CustomerID,ProviderID,PartID);
return 0;
notfound:
printf("WARING:(delete_agreement)The agreement %s,%s,%s does not exist.\t",CustomerID,ProviderID,PartID);
return -1;
sqlerr:
printf("(delete_agreement)删除不成功!\n");
printf("%70s\n",sqlca.sqlerrm.sqlerrmc);
EXEC SQL WHENEVER SQLERROR CONTINUE;
EXEC SQL ROLLBACK;
return -1;
}/*delete_agreement(...)*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -