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

📄 posoracle.c

📁 一个不错的POS系统
💻 C
📖 第 1 页 / 共 5 页
字号:

	return 0;




  not_found:
	 /* EXEC SQL ROLLBACK; */ {  struct sqlexd sqlstm;  sqlstm.sqlvsn = 10;  sqlstm.arrsiz = 9;  sqlstm.sqladtp = &sqladt;  sqlstm.sqltdsp = &sqltds;  sqlstm.iters = (unsigned int  )1;  sqlstm.offset = (unsigned int  )421;  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;}
     makelog("debug.log","hang not found");
	 return -1;
  sqlerr:
     /* EXEC SQL ROLLBACK; */ {     struct sqlexd sqlstm;     sqlstm.sqlvsn = 10;     sqlstm.arrsiz = 9;     sqlstm.sqladtp = &sqladt;     sqlstm.sqltdsp = &sqltds;     sqlstm.iters = (unsigned int  )1;     sqlstm.offset = (unsigned int  )436;     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;}
     makelog("debug.log","hang err");
     makelog("debug.log",sqlca.sqlerrm.sqlerrmc);
	 return -2;
}

int getHangNum()
{
	char sale_id[19];
	/* EXEC SQL WHENEVER NOT FOUND goto not_found; */ 
	/* EXEC SQL WHENEVER SQLERROR goto sqlerr; */ 
	/* EXEC SQL DECLARE sale_cursor CURSOR FOR
	SELECT sale_id FROM sale_tmp; */ 
	
	/* EXEC SQL OPEN sale_cursor; */ { struct sqlexd sqlstm; sqlstm.sqlvsn = 10; sqlstm.arrsiz = 9; sqlstm.sqladtp = &sqladt; sqlstm.sqltdsp = &sqltds; sqlstm.stmt = sq0019; sqlstm.iters = (unsigned int  )1; sqlstm.offset = (unsigned int  )451; 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); if (sqlca.sqlcode < 0) goto sqlerr;}
	barHang.del(&barHang);
	for (;;)
	{		
		/* EXEC SQL WHENEVER NOT FOUND GOTO not_found; */ 
		/* EXEC SQL WHENEVER SQLERROR GOTO sqlerr; */ 
		/* EXEC SQL FETCH sale_cursor INTO :sale_id; */ {  struct sqlexd sqlstm;  sqlstm.sqlvsn = 10;  sqlstm.arrsiz = 9;  sqlstm.sqladtp = &sqladt;  sqlstm.sqltdsp = &sqltds;  sqlstm.iters = (unsigned int  )1;  sqlstm.offset = (unsigned int  )466;  sqlstm.cud = sqlcud0;  sqlstm.sqlest = (unsigned char  *)&sqlca;  sqlstm.sqlety = (unsigned short)256;  sqlstm.occurs = (unsigned int  )0;  sqlstm.sqhstv[0] = (         void  *)sale_id;  sqlstm.sqhstl[0] = (unsigned int  )19;  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 not_found;  if (sqlca.sqlcode < 0) goto sqlerr;}
		Trim(sale_id);	
		makelog("debug.log","get hand  found");
		barHang.insert_rear(&barHang,(void *)sale_id,sizeof(sale_id));		 
		
	}
	/* EXEC SQL CLOSE sale_cursor; */ { struct sqlexd sqlstm; sqlstm.sqlvsn = 10; sqlstm.arrsiz = 9; sqlstm.sqladtp = &sqladt; sqlstm.sqltdsp = &sqltds; sqlstm.iters = (unsigned int  )1; sqlstm.offset = (unsigned int  )485; 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;}
	
	return 0;
  not_found:
	makelog("debug.log","get hand not found");	
	/* EXEC SQL WHENEVER NOT FOUND CONTINUE; */ 
	/* EXEC SQL CLOSE sale_cursor; */ { struct sqlexd sqlstm; sqlstm.sqlvsn = 10; sqlstm.arrsiz = 9; sqlstm.sqladtp = &sqladt; sqlstm.sqltdsp = &sqltds; sqlstm.iters = (unsigned int  )1; sqlstm.offset = (unsigned int  )500; 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;}
	return -1;
  sqlerr:
	makelog("debug.log",sqlca.sqlerrm.sqlerrmc);
	/* EXEC SQL WHENEVER SQLERROR CONTINUE; */ 
	return -2;

}

int fetch(char * sale_id)
{
	char bar_code[10];
	char product_name[32];
	char unit[18];
	char spec[18];
	char trans_id[5];
	char staff_id[7];
	char sale_date[19];
	char tmp[40]={0};
	float sale_price;
	makelog("debug.log",sale_id);
	int sale_state,flag=-100;		
	float discount; 
	int salenum;
	memset(bar_code,0,sizeof(bar_code));
	memset(product_name,0,sizeof(product_name));
	memset(unit,0,sizeof(unit));
	memset(spec,0,sizeof(spec));
	memset(trans_id,0,sizeof(trans_id));
	memset(staff_id,0,sizeof(staff_id));
	memset(sale_date,0,sizeof(sale_date));
	
	BARINFO productinfo= (struct barinformation *) malloc(sizeof(struct barinformation));
	

	/* EXEC SQL WHENEVER NOT FOUND goto not_found; */ 
	/* EXEC SQL WHENEVER SQLERROR goto sqlerr; */ 
	/* EXEC SQL DECLARE sale_cursor2 CURSOR FOR
	SELECT bar_code,num,sale_price,sale_state FROM sale_detail WHERE sale_id=:sale_id; */ 
	


	/* EXEC SQL SELECT trans_id,staff_id,to_char(sale_date,'yyyymmddhh24miss') INTO :trans_id,:staff_id,:sale_date FROM SALE WHERE sale_id=:sale_id; */ { struct sqlexd sqlstm; sqlstm.sqlvsn = 10; sqlstm.arrsiz = 9; sqlstm.sqladtp = &sqladt; sqlstm.sqltdsp = &sqltds; sqlstm.stmt = "select trans_id ,staff_id ,to_char(sale_date,'yyyymmddhh24m\iss') into :b0,:b1,:b2  from SALE where sale_id=:b3"; sqlstm.iters = (unsigned int  )1; sqlstm.offset = (unsigned int  )515; 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  *)trans_id; sqlstm.sqhstl[0] = (unsigned int  )5; 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  *)staff_id; sqlstm.sqhstl[1] = (unsigned int  )7; 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  *)sale_date; sqlstm.sqhstl[2] = (unsigned int  )19; 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  *)sale_id; sqlstm.sqhstl[3] = (unsigned int  )0; 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.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 not_found; if (sqlca.sqlcode < 0) goto sqlerr;}
	
	Trim(staff_id);
	Trim(sale_date);
	g_trans_id = atoi(trans_id);
	strcpy(g_staff_id,staff_id);
	strcpy(saleInfo->time,sale_date);
	
	/* EXEC SQL OPEN sale_cursor2; */ { struct sqlexd sqlstm; sqlstm.sqlvsn = 10; sqlstm.arrsiz = 9; sqlstm.sqladtp = &sqladt; sqlstm.sqltdsp = &sqltds; sqlstm.stmt = sq0020; sqlstm.iters = (unsigned int  )1; sqlstm.offset = (unsigned int  )546; 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  *)sale_id; sqlstm.sqhstl[0] = (unsigned int  )0; 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 < 0) goto sqlerr;}
	
	for (;;)
	{		
		/* EXEC SQL WHENEVER NOT FOUND GOTO not_found; */ 
		/* EXEC SQL WHENEVER SQLERROR GOTO sqlerr; */ 		
		/* EXEC SQL FETCH sale_cursor2 INTO :bar_code,:salenum,:sale_price,:sale_state; */ {  struct sqlexd sqlstm;  sqlstm.sqlvsn = 10;  sqlstm.arrsiz = 9;  sqlstm.sqladtp = &sqladt;  sqlstm.sqltdsp = &sqltds;  sqlstm.iters = (unsigned int  )1;  sqlstm.offset = (unsigned int  )565;  sqlstm.cud = sqlcud0;  sqlstm.sqlest = (unsigned char  *)&sqlca;  sqlstm.sqlety = (unsigned short)256;  sqlstm.occurs = (unsigned int  )0;  sqlstm.sqhstv[0] = (         void  *)bar_code;  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  *)&salenum;  sqlstm.sqhstl[1] = (unsigned int  )sizeof(int);  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  *)&sale_price;  sqlstm.sqhstl[2] = (unsigned int  )sizeof(float);  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  *)&sale_state;  sqlstm.sqhstl[3] = (unsigned int  )sizeof(int);  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.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 not_found;  if (sqlca.sqlcode < 0) goto sqlerr;}
		flag=1;
		Trim(bar_code);
		/* EXEC SQL UPDATE product SET num=num+:salenum WHERE bar_code=:bar_code; */ {  struct sqlexd sqlstm;  sqlstm.sqlvsn = 10;  sqlstm.arrsiz = 9;  sqlstm.sqladtp = &sqladt;  sqlstm.sqltdsp = &sqltds;  sqlstm.stmt = "update product  set num=(num+:b0) where bar_code=:b1";  sqlstm.iters = (unsigned int  )1;  sqlstm.offset = (unsigned int  )596;  sqlstm.cud = sqlcud0;  sqlstm.sqlest = (unsigned char  *)&sqlca;  sqlstm.sqlety = (unsigned short)256;  sqlstm.occurs = (unsigned int  )0;  sqlstm.sqhstv[0] = (         void  *)&salenum;  sqlstm.sqhstl[0] = (unsigned int  )sizeof(int);  sqlstm.sqhsts[0] = (         int  )0;  sqlstm.sqindv[0] = (         void  *)0;  sqlstm.sqinds[0] = (         int  )0;

⌨️ 快捷键说明

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