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

📄 partmodify.c

📁 pro C的一个关于零件交易系统的源码
💻 C
📖 第 1 页 / 共 3 页
字号:
		return -1;
	
	sqlerr:
		printf("%70s\n",sqlca.sqlerrm.sqlerrmc);
		/* EXEC SQL WHENEVER SQLERROR CONTINUE; */ 

		/* EXEC SQL ROLLBACK; */ 

{
  struct sqlexd sqlstm;
  sqlstm.sqlvsn = 10;
  sqlstm.arrsiz = 5;
  sqlstm.sqladtp = &sqladt;
  sqlstm.sqltdsp = &sqltds;
  sqlstm.iters = (unsigned int  )1;
  sqlstm.offset = (unsigned int  )287;
  sqlstm.cud = sqlcud0;
  sqlstm.sqlest = (unsigned char  *)&sqlca;
  sqlstm.sqlety = (unsigned short)256;
  sqlstm.occurs = (unsigned int  )0;
  sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
}


		return -1;
	
}/*update_part( ... )*/

void menu_adcicePart_disposal()
{


	char temp;
	fflush(stdin);
	puts("\n\n\n\n\n\t\t推荐零件信息处理\n\n");
	printf("\t1.查看所有推荐零件信息\n");
	printf("\t2.将推荐零件信息转入零件信息表\n");	
	printf("\t....任意键返回上级菜单\n\n");
	
		
		printf("请选择(1 - 2 ,quit with any other key):");
		temp=getchar();
		fflush(stdin);
		


		switch(temp) {
			case '1': 
				menu_query_all_AdvicePart();
				break;
			case '2':
				advicePart_to_part();break;	
			
			default: 
				part_modify_menu();		
			}
}/*menu_adcicePart_disposal()*/	

void menu_query_all_AdvicePart()
{
	char t;
	puts("\n\n\n\n\n\t\t查看所有推荐零件信息\n\n");
	if( query_all_AdvicePart() ){
		printf("WARING:(menu_query_all_AdvicePart)There is no advice part.\t\n\n");
		menu_adcicePart_disposal();
	}else
		printf("以上为新推荐零件信息,要将其加入零件表吗?(N 返回上一级菜单):");
		printf(">");
		fflush(stdin);
		t = getchar();
		if( t=='N' || t=='n')menu_adcicePart_disposal();
		else 	advicePart_to_part();
			
}/*menu_query_all_AdvicePart()*/



int query_all_AdvicePart()
{
	/* EXEC SQL BEGIN DECLARE SECTION; */ 
 
	char ID[10];
	char Name[30];
	char Color[10];
	char  Weight[10];
	char Advicer[10];  /*推荐方ID*/
	char Intro[100];	
	/* EXEC SQL END DECLARE SECTION; */ 

	
	int total_number = 0;
	
	/* EXEC SQL DECLARE advicePart_cursor CURSOR FOR SELECT * FROM PartAdvice; */ 
  /*ID,Name,Color,Weight,Advicer,Intro*/
   	/* EXEC SQL OPEN advicePart_cursor; */ 

{
    struct sqlexd sqlstm;
    sqlstm.sqlvsn = 10;
    sqlstm.arrsiz = 5;
    sqlstm.sqladtp = &sqladt;
    sqlstm.sqltdsp = &sqltds;
    sqlstm.stmt = sq0012;
    sqlstm.iters = (unsigned int  )1;
    sqlstm.offset = (unsigned int  )302;
    sqlstm.selerr = (unsigned short)1;
    sqlstm.cud = sqlcud0;
    sqlstm.sqlest = (unsigned char  *)&sqlca;
    sqlstm.sqlety = (unsigned short)256;
    sqlstm.occurs = (unsigned int  )0;
    sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
}



   	while(1)
   	{

   		/* EXEC SQL WHENEVER NOT FOUND DO break; */ 
   		
   		/* EXEC SQL FETCH advicePart_cursor INTO :ID,:Name,:Color,:Weight,:Intro,:Advicer; */ 

{
     struct sqlexd sqlstm;
     sqlstm.sqlvsn = 10;
     sqlstm.arrsiz = 6;
     sqlstm.sqladtp = &sqladt;
     sqlstm.sqltdsp = &sqltds;
     sqlstm.iters = (unsigned int  )1;
     sqlstm.offset = (unsigned int  )317;
     sqlstm.selerr = (unsigned short)1;
     sqlstm.cud = sqlcud0;
     sqlstm.sqlest = (unsigned char  *)&sqlca;
     sqlstm.sqlety = (unsigned short)256;
     sqlstm.occurs = (unsigned int  )0;
     sqlstm.sqhstv[0] = (         void  *)ID;
     sqlstm.sqhstl[0] = (unsigned int  )10;
     sqlstm.sqhsts[0] = (         int  )0;
     sqlstm.sqindv[0] = (         void  *)0;
     sqlstm.sqinds[0] = (         int  )0;
     sqlstm.sqharm[0] = (unsigned int  )0;
     sqlstm.sqadto[0] = (unsigned short )0;
     sqlstm.sqtdso[0] = (unsigned short )0;
     sqlstm.sqhstv[1] = (         void  *)Name;
     sqlstm.sqhstl[1] = (unsigned int  )30;
     sqlstm.sqhsts[1] = (         int  )0;
     sqlstm.sqindv[1] = (         void  *)0;
     sqlstm.sqinds[1] = (         int  )0;
     sqlstm.sqharm[1] = (unsigned int  )0;
     sqlstm.sqadto[1] = (unsigned short )0;
     sqlstm.sqtdso[1] = (unsigned short )0;
     sqlstm.sqhstv[2] = (         void  *)Color;
     sqlstm.sqhstl[2] = (unsigned int  )10;
     sqlstm.sqhsts[2] = (         int  )0;
     sqlstm.sqindv[2] = (         void  *)0;
     sqlstm.sqinds[2] = (         int  )0;
     sqlstm.sqharm[2] = (unsigned int  )0;
     sqlstm.sqadto[2] = (unsigned short )0;
     sqlstm.sqtdso[2] = (unsigned short )0;
     sqlstm.sqhstv[3] = (         void  *)Weight;
     sqlstm.sqhstl[3] = (unsigned int  )10;
     sqlstm.sqhsts[3] = (         int  )0;
     sqlstm.sqindv[3] = (         void  *)0;
     sqlstm.sqinds[3] = (         int  )0;
     sqlstm.sqharm[3] = (unsigned int  )0;
     sqlstm.sqadto[3] = (unsigned short )0;
     sqlstm.sqtdso[3] = (unsigned short )0;
     sqlstm.sqhstv[4] = (         void  *)Intro;
     sqlstm.sqhstl[4] = (unsigned int  )100;
     sqlstm.sqhsts[4] = (         int  )0;
     sqlstm.sqindv[4] = (         void  *)0;
     sqlstm.sqinds[4] = (         int  )0;
     sqlstm.sqharm[4] = (unsigned int  )0;
     sqlstm.sqadto[4] = (unsigned short )0;
     sqlstm.sqtdso[4] = (unsigned short )0;
     sqlstm.sqhstv[5] = (         void  *)Advicer;
     sqlstm.sqhstl[5] = (unsigned int  )10;
     sqlstm.sqhsts[5] = (         int  )0;
     sqlstm.sqindv[5] = (         void  *)0;
     sqlstm.sqinds[5] = (         int  )0;
     sqlstm.sqharm[5] = (unsigned int  )0;
     sqlstm.sqadto[5] = (unsigned short )0;
     sqlstm.sqtdso[5] = (unsigned short )0;
     sqlstm.sqphsv = sqlstm.sqhstv;
     sqlstm.sqphsl = sqlstm.sqhstl;
     sqlstm.sqphss = sqlstm.sqhsts;
     sqlstm.sqpind = sqlstm.sqindv;
     sqlstm.sqpins = sqlstm.sqinds;
     sqlstm.sqparm = sqlstm.sqharm;
     sqlstm.sqparc = sqlstm.sqharc;
     sqlstm.sqpadto = sqlstm.sqadto;
     sqlstm.sqptdso = sqlstm.sqtdso;
     sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
     if (sqlca.sqlcode == 1403) break;
}


    		++total_number;
    		if( total_number == 1 )
    		{
    			printf("\n相应的信息如下:");
			printf("\n\n--- --------- ------------------- ---------------------------- ----------\n");
			printf("%-4s%-10s%-20s%-10s%-8s%-10s\n","N","ID","Name","Color","Weight","Advicer");
    			printf("--- --------- ------------------- ---------------------------- ----------\n");
    		}/*if*/
   		printf("%-4d%-10s%-20s%-30s%-16s\n",total_number,ID,Name,Color,Weight,Advicer);
   		printf("--- --------- ------------------- ---------------------------- ----------\n");
 		printf("%-50s\n","Intro");
    		printf("-------------------------------------------------------------------------\n");
   		printf("%-50s\n",Intro);
   		printf("-------------------------------------------------------------------------\n");
   		printf("--- --------- ------------------- ---------------------------- ----------\n");
   	}/*while*/
   	/* EXEC SQL CLOSE advicePart_cursor; */ 

{
    struct sqlexd sqlstm;
    sqlstm.sqlvsn = 10;
    sqlstm.arrsiz = 6;
    sqlstm.sqladtp = &sqladt;
    sqlstm.sqltdsp = &sqltds;
    sqlstm.iters = (unsigned int  )1;
    sqlstm.offset = (unsigned int  )356;
    sqlstm.cud = sqlcud0;
    sqlstm.sqlest = (unsigned char  *)&sqlca;
    sqlstm.sqlety = (unsigned short)256;
    sqlstm.occurs = (unsigned int  )0;
    sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
}


	if(!total_number)
   	{	
   		printf("WARING:(query_all_AdvicePart)There is no advice part.\t\n\n");
   		return -1;
   	}else
		return 0;	/*success*/	
	

}/*query_all_AdvcePart()*/

void advicePart_to_part()
{
	
	/* EXEC SQL BEGIN DECLARE SECTION; */ 
 
	char ID[10];
	char Name[30];
	char Color[10];
	char  Weight[10];
	char Advicer[10];  /*推荐方ID*/
	char Intro[100];	
	/* EXEC SQL END DECLARE SECTION; */ 

	int t;
	float fWeight;
	int total_number = 0;
	puts("\t以下操作将会把零件推荐表内的信息转入零件表\n");
	/* EXEC SQL DECLARE advice_to_Part_cursor CURSOR FOR SELECT * FROM PartAdvice; */ 
  /*ID,Name,Color,Weight,Advicer,Intro*/
   	/* EXEC SQL OPEN advice_to_Part_cursor; */ 

{
    struct sqlexd sqlstm;
    sqlstm.sqlvsn = 10;
    sqlstm.arrsiz = 6;
    sqlstm.sqladtp = &sqladt;
    sqlstm.sqltdsp = &sqltds;
    sqlstm.stmt = sq0013;
    sqlstm.iters = (unsigned int  )1;
    sqlstm.offset = (unsigned int  )371;
    sqlstm.selerr = (unsigned short)1;
    sqlstm.cud = sqlcud0;
    sqlstm.sqlest = (unsigned char  *)&sqlca;
    sqlstm.sqlety = (unsigned short)256;
    sqlstm.occurs = (unsigned int  )0;
    sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
}



   	while(1)
   	{

   		/* EXEC SQL WHENEVER NOT FOUND DO break; */ 
   		
   		/* EXEC SQL FETCH advice_to_Part_cursor INTO :ID,:Name,:Color,:Weight,:Intro,:Advicer; */ 

{
     struct sqlexd sqlstm;
     sqlstm.sqlvsn = 10;
     sqlstm.arrsiz = 6;
     sqlstm.sqladtp = &sqladt;
     sqlstm.sqltdsp = &sqltds;
     sqlstm.iters = (unsigned int  )1;
     sqlstm.offset = (unsigned int  )386;
     sqlstm.selerr = (unsigned short)1;
     sqlstm.cud = sqlcud0;
     sqlstm.sqlest = (unsigned char  *)&sqlca;
     sqlstm.sqlety = (unsigned short)256;
     sqlstm.occurs = (unsigned int  )0;
     sqlstm.sqhstv[0] = (         void  *)ID;
     sqlstm.sqhstl[0] = (unsigned int  )10;
     sqlstm.sqhsts[0] = (         int  )0;
     sqlstm.sqindv[0] = (         void  *)0;
     sqlstm.sqinds[0] = (         int  )0;
     sqlstm.sqharm[0] = (unsigned int  )0;
     sqlstm.sqadto[0] = (unsigned short )0;
     sqlstm.sqtdso[0] = (unsigned short )0;
     sqlstm.sqhstv[1] = (         void  *)Name;
     sqlstm.sqhstl[1] = (unsigned int  )30;
     sqlstm.sqhsts[1] = (         int  )0;
     sqlstm.sqindv[1] = (         void  *)0;
     sqlstm.sqinds[1] = (         int  )0;
     sqlstm.sqharm[1] = (unsigned int  )0;
     sqlstm.sqadto[1] = (unsigned short )0;
     sqlstm.sqtdso[1] = (unsigned short )0;
     sqlstm.sqhstv[2] = (         void  *)Color;
     sqlstm.sqhstl[2] = (unsigned int  )10;
     sqlstm.sqhsts[2] = (         int  )0;
     sqlstm.sqindv[2] = (         void  *)0;
     sqlstm.sqinds[2] = (         int  )0;
     sqlstm.sqharm[2] = (unsigned int  )0;
     sqlstm.sqadto[2] = (unsigned short )0;
     sqlstm.sqtdso[2] = (unsigned short )0;
     sqlstm.sqhstv[3] = (         void  *)Weight;
     sqlstm.sqhstl[3] = (unsigned int  )10;
     sqlstm.sqhsts[3] = (         int  )0;
     sqlstm.sqindv[3] = (         void  *)0;
     sqlstm.sqinds[3] = (         int  )0;
     sqlstm.sqharm[3] = (unsigned int  )0;
     sqlstm.sqadto[3] = (unsigned short )0;
     sqlstm.sqtdso[3] = (unsigned short )0;
     sqlstm.sqhstv[4] = (         void  *)Intro;
     sqlstm.sqhstl[4] = (unsigned int  )100;
     sqlstm.sqhsts[4] = (         int  )0;
     sqlstm.sqindv[4] = (         void  *)0;
     sqlstm.sqinds[4] = (         int  )0;
     sqlstm.sqharm[4] = (unsigned int  )0;
     sqlstm.sqadto[4] = (unsigned short )0;
     sqlstm.sqtdso[4] = (unsigned short )0;
     sqlstm.sqhstv[5] = (         void  *)Advicer;
     sqlstm.sqhstl[5] = (unsigned int  )10;
     sqlstm.sqhsts[5] = (         int  )0;
     sqlstm.sqindv[5] = (         void  *)0;
     sqlstm.sqinds[5] = (         int  )0;
     sqlstm.sqharm[5] = (unsigned int  )0;
     sqlstm.sqadto[5] = (unsigned short )0;
     sqlstm.sqtdso[5] = (unsigned short )0;
     sqlstm.sqphsv = sqlstm.sqhstv;
     sqlstm.sqphsl = sqlstm.sqhstl;
     sqlstm.sqphss = sqlstm.sqhsts;
     sqlstm.sqpind = sqlstm.sqindv;
     sqlstm.sqpins = sqlstm.sqinds;
     sqlstm.sqparm = sqlstm.sqharm;
     sqlstm.sqparc = sqlstm.sqharc;
     sqlstm.sqpadto = sqlstm.sqadto;
     sqlstm.sqptdso = sqlstm.sqtdso;
     sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
     if (sqlca.sqlcode == 1403) break;
}


    		++total_number;
  
    		printf("\n本条零件推荐信息为:\n");
		printf("\n\n--- --------- ------------------- ---------------------------- ----------\n");
		printf("%-4s%-10s%-20s%-10s%-8s%-10s\n","N","ID","Name","Color","Weight","Advicer");
    		printf("--- --------- ------------------- ---------------------------- ----------\n");
    			
   		printf("%-4d%-10s%-20s%-30s%-16s\n",total_number,ID,Name,Color,Weight,Advicer);
   		printf("--- --------- ------------------- ---------------------------- ----------\n");
 		printf("%-50s\n","Intro");
    		printf("-------------------------------------------------------------------------\n");
   		printf("%-50s\n",Intro);
   		printf("-------------------------------------------------------------------------\n");
   		fWeight =(float)atof(Weight);
   		printf("确认要将其转入零件表吗?(y/n)>");
   		fflush(stdin);
   		t = getchar();
   		if( t == 'n' ||t == 'N' ) {
   			puts("本条信息未转入,删除,处理下条信息\n");
   			delete_advicePart(ID);	
   		}else{   			
   			insert_part(ID,Name,Color,fWeight,Intro);
   			puts("本条信息已转入,删除");
   			delete_advicePart(ID);
   		}/*else*/
   	}/*while*/
   	/* EXEC SQL CLOSE advice_to_Part_cursor; */ 

{
    struct sqlexd sqlstm;
    sqlstm.sqlvsn = 10;
    sqlstm.arrsiz = 6;
    sqlstm.sqladtp = &sqladt;
    sqlstm.sqltdsp = &sqltds;
    sqlstm.iters = (unsigned int  )1;
    sqlstm.offset = (unsigned int  )425;
    sqlstm.cud = sqlcud0;
    sqlstm.sqlest = (unsigned char  *)&sqlca;
    sqlstm.sqlety = (unsigned short)256;
    sqlstm.occurs = (unsigned int  )0;
    sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
}


	if( !total_number )   		
   		printf("WARING:(dvicePart_to_part)There is no advice part.\t\n\n");   		
	else	puts("转入结束\n");	/*success*/	
	menu_adcicePart_disposal();
}/*advicePart_to_part()*/

int delete_advicePart(char* tID)
{
	/* EXEC SQL BEGIN DECLARE SECTION; */ 

	char seekID[10];
	/* EXEC SQL END DECLARE SECTION; */ 

		
	strcpy(seekID,tID);
	/* EXEC SQL WHENEVER SQLERROR GOTO sqlerr; */ 

	/* EXEC SQL WHENEVER NOT FOUND GOTO notfound; */ 

	/* EXEC SQL DELETE FROM PartAdvice WHERE ID=:seekID; */ 

{
 struct sqlexd sqlstm;
 sqlstm.sqlvsn = 10;
 sqlstm.arrsiz = 6;
 sqlstm.sqladtp = &sqladt;
 sqlstm.sqltdsp = &sqltds;
 sqlstm.stmt = "delete  from PartAdvice  where ID=:b0";
 sqlstm.iters = (unsigned int  )1;
 sqlstm.offset = (unsigned int  )440;
 sqlstm.cud = sqlcud0;
 sqlstm.sqlest = (unsigned char  *)&sqlca;
 sqlstm.sqlety = (unsigned short)256;
 sqlstm.occurs = (unsigned int  )0;
 sqlstm.sqhstv[0] = (         void  *)seekID;
 sqlstm.sqhstl[0] = (unsigned int  )10;
 sqlstm.sqhsts[0] = (         int  )0;
 sqlstm.sqindv[0] = (         void  *)0;
 sqlstm.sqinds[0] = (         int  )0;
 sqlstm.sqharm[0] = (unsigned int  )0;
 sqlstm.sqadto[0] = (unsigned short )0;
 sqlstm.sqtdso[0] = (unsigned short )0;
 sqlstm.sqphsv = sqlstm.sqhstv;
 sqlstm.sqphsl = sqlstm.sqhstl;
 sqlstm.sqphss = sqlstm.sqhsts;
 sqlstm.sqpind = sqlstm.sqindv;
 sqlstm.sqpins = sqlstm.sqinds;
 sqlstm.sqparm = sqlstm.sqharm;
 sqlstm.sqparc = sqlstm.sqharc;
 sqlstm.sqpadto = sqlstm.sqadto;
 sqlstm.sqptdso = sqlstm.sqtdso;
 sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
 if (sqlca.sqlcode == 1403) goto notfound;
 if (sqlca.sqlcode < 0) goto sqlerr;
}


	/* EXEC SQL COMMIT; */ 

{
 struct sqlexd sqlstm;
 sqlstm.sqlvsn = 10;
 sqlstm.arrsiz = 6;
 sqlstm.sqladtp = &sqladt;
 sqlstm.sqltdsp = &sqltds;
 sqlstm.iters = (unsigned int  )1;
 sqlstm.offset = (unsigned int  )459;
 sqlstm.cud = sqlcud0;
 sqlstm.sqlest = (unsigned char  *)&sqlca;
 sqlstm.sqlety = (unsigned short)256;
 sqlstm.occurs = (unsigned int  )0;
 sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
 if (sqlca.sqlcode < 0) goto sqlerr;
}


	printf("%s dropped.\n",seekID);
	return 0;
	
	notfound:
		printf("WARING:(delete_part)Part %s does not exist.\t",seekID);
		return -1;
	
	sqlerr:
		printf("%70s\n",sqlca.sqlerrm.sqlerrmc);
		/* EXEC SQL WHENEVER SQLERROR CONTINUE; */ 

		/* EXEC SQL ROLLBACK; */ 

{
  struct sqlexd sqlstm;
  sqlstm.sqlvsn = 10;
  sqlstm.arrsiz = 6;
  sqlstm.sqladtp = &sqladt;
  sqlstm.sqltdsp = &sqltds;
  sqlstm.iters = (unsigned int  )1;
  sqlstm.offset = (unsigned int  )474;
  sqlstm.cud = sqlcud0;
  sqlstm.sqlest = (unsigned char  *)&sqlca;
  sqlstm.sqlety = (unsigned short)256;
  sqlstm.occurs = (unsigned int  )0;
  sqlcxt((void **)0, &sqlctx, &sqlstm, &sqlfpn);
}


		return -1;
}/*delete_advicePart(...)*/

⌨️ 快捷键说明

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