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

📄 posoracle.c

📁 一个不错的POS系统
💻 C
📖 第 1 页 / 共 5 页
字号:
  sqlstm.sqharm[0] = (unsigned int  )0;  sqlstm.sqadto[0] = (unsigned short )0;  sqlstm.sqtdso[0] = (unsigned short )0;  sqlstm.sqhstv[1] = (         void  *)bar_code;  sqlstm.sqhstl[1] = (unsigned int  )10;  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.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;}		
		
		/* EXEC SQL SELECT product_name,unit,spec,sale_price,discount INTO :product_name,:unit,:spec,:sale_price,:discount FROM PRODUCT WHERE bar_code=:bar_code; */ {  struct sqlexd sqlstm;  sqlstm.sqlvsn = 10;  sqlstm.arrsiz = 9;  sqlstm.sqladtp = &sqladt;  sqlstm.sqltdsp = &sqltds;  sqlstm.stmt = "select product_name ,unit ,spec ,sale_price ,discount into\ :b0,:b1,:b2,:b3,:b4  from PRODUCT where bar_code=:b5";  sqlstm.iters = (unsigned int  )1;  sqlstm.offset = (unsigned int  )619;  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  *)product_name;  sqlstm.sqhstl[0] = (unsigned int  )32;  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  *)unit;  sqlstm.sqhstl[1] = (unsigned int  )18;  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  *)spec;  sqlstm.sqhstl[2] = (unsigned int  )18;  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_price;  sqlstm.sqhstl[3] = (unsigned int  )sizeof(float);  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  *)&discount;  sqlstm.sqhstl[4] = (unsigned int  )sizeof(float);  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  *)bar_code;  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) goto not_found;  if (sqlca.sqlcode < 0) goto sqlerr;}
		
		Trim(bar_code);
		Trim(product_name);
		Trim(unit);
		Trim(spec);
		strcpy(productinfo->bar_code,bar_code);
		strcpy(productinfo->product_name,product_name);
		strcpy(productinfo->unit,unit);
		strcpy(productinfo->spec,spec);
		
		productinfo->sale_price=sale_price;
		productinfo->num=1;
		productinfo->discount=discount;
		productinfo->salenum=salenum;

		sprintf(tmp,"sale_price=%f",productinfo->sale_price);
		makelog("debug.log",tmp);
		sprintf(tmp,"num=%d",productinfo->num);
		makelog("debug.log",tmp);

		barInfoList.insert_rear(&barInfoList,(void *)productinfo,sizeof(struct barinformation));
			
		 
		
	}
	/* EXEC SQL CLOSE sale_cursor2; */ { struct sqlexd sqlstm; sqlstm.sqlvsn = 10; sqlstm.arrsiz = 9; sqlstm.sqladtp = &sqladt; sqlstm.sqltdsp = &sqltds; sqlstm.iters = (unsigned int  )1; sqlstm.offset = (unsigned int  )658; 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;}	
	/* EXEC SQL COMMIT; */ { struct sqlexd sqlstm; sqlstm.sqlvsn = 10; sqlstm.arrsiz = 9; sqlstm.sqladtp = &sqladt; sqlstm.sqltdsp = &sqltds; sqlstm.iters = (unsigned int  )1; sqlstm.offset = (unsigned int  )673; 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;}
	free(productinfo);
	return 0;


  not_found:
	
	/* EXEC SQL WHENEVER NOT FOUND CONTINUE; */ 
	/* EXEC SQL CLOSE sale_cursor2; */ { struct sqlexd sqlstm; sqlstm.sqlvsn = 10; sqlstm.arrsiz = 9; sqlstm.sqladtp = &sqladt; sqlstm.sqltdsp = &sqltds; sqlstm.iters = (unsigned int  )1; sqlstm.offset = (unsigned int  )688; 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","fetch not found");	
	if(flag==1)
	{
		/* EXEC SQL DELETE FROM SALE_TMP WHERE sale_id=:sale_id; */ {  struct sqlexd sqlstm;  sqlstm.sqlvsn = 10;  sqlstm.arrsiz = 9;  sqlstm.sqladtp = &sqladt;  sqlstm.sqltdsp = &sqltds;  sqlstm.stmt = "delete  from SALE_TMP  where sale_id=:b0";  sqlstm.iters = (unsigned int  )1;  sqlstm.offset = (unsigned int  )703;  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;}
		
		/* EXEC SQL DELETE FROM SALE_DETAIL WHERE sale_id=:sale_id; */ {  struct sqlexd sqlstm;  sqlstm.sqlvsn = 10;  sqlstm.arrsiz = 9;  sqlstm.sqladtp = &sqladt;  sqlstm.sqltdsp = &sqltds;  sqlstm.stmt = "delete  from SALE_DETAIL  where sale_id=:b0";  sqlstm.iters = (unsigned int  )1;  sqlstm.offset = (unsigned int  )722;  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;}
		/* EXEC SQL DELETE FROM SALE WHERE sale_id=:sale_id; */ {  struct sqlexd sqlstm;  sqlstm.sqlvsn = 10;  sqlstm.arrsiz = 9;  sqlstm.sqladtp = &sqladt;  sqlstm.sqltdsp = &sqltds;  sqlstm.stmt = "delete  from SALE  where sale_id=:b0";  sqlstm.iters = (unsigned int  )1;  sqlstm.offset = (unsigned int  )741;  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;}
		/* EXEC SQL COMMIT; */ {  struct sqlexd sqlstm;  sqlstm.sqlvsn = 10;  sqlstm.arrsiz = 9;  sqlstm.sqladtp = &sqladt;  sqlstm.sqltdsp = &sqltds;  sqlstm.iters = (unsigned int  )1;  sqlstm.offset = (unsigned int  )760;  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;}
		free(productinfo);
		/*getHangNum();*/
		makelog("debug.log","fetcheeerrr");
	}
	return -1;
  sqlerr:
	makelog("debug.log",sqlca.sqlerrm.sqlerrmc);
	/* EXEC SQL WHENEVER SQLERROR CONTINUE; */ 
	/* 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  )775; 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 -2;
}

int returnproduct(char * sale_id,char * bar_code,int num)
{
	int salenum,flag=-100,n=-999;
	float sale_price,realsum,salemoney,discount,price=0.0f;
	char systime[40],detail_id[20],trans_id[10],saleid[20],tmp[40]={0};
	memset(systime,0,sizeof(systime));
	memset(detail_id,0,sizeof(detail_id));
	memset(saleid,0,sizeof(saleid));
	get_seq_trans_id();
	get_seq_detail_id();
	getSYSTime(systime);	
	sprintf(detail_id,"%s%04d",systime,g_detail_id);
	sprintf(saleid,"%s%04d",systime,g_trans_id);
	sprintf(trans_id,"%04d",g_trans_id);

	/* EXEC SQL WHENEVER NOT FOUND GOTO not_found; */ 
	/* EXEC SQL WHENEVER SQLERROR GOTO sqlerr; */ 		
	/* EXEC SQL SELECT num,sale_price INTO :salenum,:sale_price FROM sale_detail WHERE bar_code=:bar_code AND sale_id=:sale_id; */ { struct sqlexd sqlstm; sqlstm.sqlvsn = 10; sqlstm.arrsiz = 9; sqlstm.sqladtp = &sqladt; sqlstm.sqltdsp = &sqltds; sqlstm.stmt = "select num ,sale_price into :b0,:b1  from sale_detail where\ (bar_code=:b2 and sale_id=:b3)"; sqlstm.iters = (unsigned int  )1; sqlstm.offset = (unsigned int  )790; 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  *)&salenum; sqlstm.sqhstl[0] = (unsigned int  )sizeof(int); 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  *)&sale_price; sqlstm.sqhstl[1] = (unsigned int  )sizeof(float); 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  *)bar_code; sqlstm.sqhstl[2] = (unsigned int  )0; 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] = (         v

⌨️ 快捷键说明

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