?? casio-dt900-src.txt
字號:
/* 包含頭文件 */
#include "cu_multi.h"
#include "stdio.h"
#include "stdlib.h"
#include "itron.h"
#include "CMNDEF.H"
#include "bios1mac.h"
#include "casio.h"
#define indexfile "b:\\index.txt" /*下載的索引文件*/
#define yardfile "tyard.txt"
#define indexlen 24
#define datafile "b:\\data.txt" /*下載的數據文件*/
#define usingfiletype "filetype.txt" /*記錄正在使用的文件的類型 01 盤庫,02 損益,03 庫存調整,04 貨位調整,05 零售,06 批銷,07 出庫,08 退貨*/
#define pandianfile "pandian.txt" /*盤點上傳的數據文件*/
#define Plen 44 /*上傳盤點數據文件的總長度*/
#define framefile "frame.txt" /*配置文件,存放系統設置的機號信息*/
#define Speedfile "SPEED.TXT" /*通訊速率*/
#define xiaoshoufile "xiaoshou.txt" /*銷售上傳的數據文件*/
#define chukufile "chuku.txt" /*出庫上傳的數據文件*/
#define adjustfile "adjust.txt" /*調整上傳的數據文件*/
#define Xlen 46 /*上傳銷售數據文件的總長度*/
#define Clen 38 /*上傳出庫數據文件的總長度*/
#define Tlen 38 /*上傳調整貨位數據文件的總長度*/
char id[5];
void Display(void);
void Menu(void);
void chaxun(void);
void sjcl(void); /*數據處理*/
void system_set(void);
void pandian(void); /*盤點開始菜單*/
void xiaoshou(void);
void chuku(void);
void adjust(void);
void systerm_work(void);
void CheckSpace(void);
int estimate_file(void);
void tongxun(void);
void goods_yard(void); /* 貨位管理*/
void yard_search(void); /*貨位查詢*/
void yard_adjust(void); /*貨位調整*/
void yard_count(void); /*損益處理*/
void shanchu(void);
void xiazai(int len); /*下載數據選擇菜單*/
void shangzai(int len); /*上傳數據菜單*/
void xiachuan(int len); /*下載盤點數據*/
void storage_mam(void); /*銷售/出庫/退貨*/
void batch_sell(void); /*批銷操作*/
void retail(void); /*零售*/
void out_storage(void); /*出庫*/
void send_back(void); /*退貨*/
int getyardstring(char * yard); /*取得新的貨位*/
int yardselect(char* selectedyard,int i);/*從yardlist中選擇一個yard作為更新的貨位*/
int yard_show(int filetype,char * department);
void shangchuan(char *filename,int len);
void sc_sysj(char *filename);
int count(char *bzbh,char *huowei,char *sign,char *sl,int *desc);
void tongji(void);
void date_time(char *ldate);
void cx_pd(void);
void cx_xs(void);
void cx_ck(void);
void cx_tz(void);
int linage(char *code,int len);
void format_date(char *str,char *retstr);
void sys_menu ( void );
void shebei(void);
void checkbookbar(char *bookbar);
void SetCommBaud(void);
void systerm_read(void);
void account(char *data1,char *data2,char *num,int len);
int status1();
int stat();
/*temp.txt文件在系統的search_inx文件中生成*/
/*------------------
| 功能說明:
| 程序主函數
| 輸入參數:
| 無
| 輸出參數:
| 無
| 返回值:
| 無
|----------------------------------------*/
void ap_start(void)
{
int ret;
SysInit(0);
/*配置文件設置*/
if(Is_file(framefile)!=0) dat_F_Write(framefile,1,0,"11",2);
memset(id,0x00,sizeof(id));
ret=dat_F_Read(framefile,0,id,2);
if(Is_file(Speedfile)!=0) SetCommBaud();
while(1)
{
Display(); /*界面顯示,版本*/
while(1)
{
Menu(); /*主功能界面*/
break;
}
}
}
/*--------------------------------
| void Display(void)
| 界面顯示,版本,當前時間
|---------------------------------*/
void Display(void)
{
char tmp[25],date[12],time[12],sign[5];
int ret;
cls();
Dsp_str("== <a href=http://www.gzxc.cn></a> ==",1,3);
Dsp_str("---------------------",3,0);
Dsp_str("采集數據管理系統",5,2);
memset(date,0x00,sizeof(date));
memset(time,0x00,sizeof(time));
get_date_str(date,time);
memset(tmp,0x00,sizeof(tmp));
memcpy(tmp,date,4);memcpy(tmp+4,"年",2);memcpy(tmp+6,date+4,2);
memcpy(tmp+8,"月",2);memcpy(tmp+10,date+6,2);memcpy(tmp+12,"日",2);
space_str(tmp,14);
Dsp_str(tmp,7,2);
Dsp_str("Ver5.0.0",9,2);
Dsp_str("機號:",9,11);
memset(sign,0x00,sizeof(sign));
ret=dat_F_Read(framefile,0,sign,2);
if(ret!=E_OK)
{
cls();
Dsp_str("系統錯誤!",2,0);
Dsp_str("請格式化后重新安裝",5,0);
Dsp_str("應用程序",8,0);
WAIT
exit(0);
}
Dsp_str(sign,9,16);
WAIT
}
/*--------------------------------
| void Menu(void)
| 系統菜單
|---------------------------------*/
void Menu(void)
{
int ret;
/*char *file_list[5]={"index.txt","data.txt",0};
char pan[5],sulv[5];*/
while(1)
{
cls();
/*Dsp_str("-- 系統功能 --", 1, 0);*/
Dsp_str("1. 盤庫管理",1,0);
Dsp_str("2. 貨位管理",3, 0);
Dsp_str("3. 銷售/出庫/退貨", 5, 0);
Dsp_str("4. 查 詢", 7, 0);
Dsp_str("5. 數據處理", 9, 0);
/*Dsp_str("6. 數據處理", 9, 0);*/
do
{
ret=get_chr(NONE);
}
while(ret!=49 && ret!=50 && ret!=51 && ret!=52&& ret!=53&& ret!=54 && ret!=CLS);
switch (ret)
{
case '1':
/* sys_menu();*/
pandian();
break;
case '2':
/* sys_menu();*/
goods_yard();
break;
case '3':
/* sys_menu();*/
storage_mam();
break;
case '4':
chaxun();
break;
case '5':
sjcl(); /*數據處理*/
break;
case '6':
system_set();
break;
case CLS:
return;
default:
return;
}
}
}
/*----------------盤點開始----------------*/
void pandian(void)
{
char code[20],bzbh[8],huowei[8],reco[120],sign[22],sl[12];
char data[100],hw[10],bz[10],price[10],name[55],num[12];
W pos;
int ret,i;
ret=estimate_file();
if(ret==1) return;
memset(sign,0x00,sizeof(sign));
ret=dat_F_Read(indexfile,0,sign,1);
if(ret!=E_OK) return;
if(strcmp(sign,"P")!=0)
{
warning_sound();
cls();
Dsp_str("下載的不是盤點數據!",2,0);
Dsp_str("請重新下載數據文件!",5,0);
Dsp_str("按任意鍵返回!",8,0);
WAIT
return;
}
while(1)
{
i=get_file_bit(pandianfile)/42;
cls();
Dsp_str("== 盤 點 ==",1,0);
memset(num,0x00,sizeof(num));
sprintf(num,"%-4d",i);
Dsp_str("[ ]",1,15);
Dsp_str(num,1,16);
Dsp_str("部組編號:",3,0);
Dsp_str("ENT確認 CLR返回",9,0);
memset(bzbh,0x00,sizeof(bzbh));
ret=read_s(3,9,0,bzbh,6,NONE);
if(ret==CLS) return;
if(strlen(bzbh)!=6)
{
warning_sound();
Dsp_str("部組編號必須為 6 位!",9,0);
WAIT
continue;
}
ret=isnum(bzbh,strlen(bzbh));
if(ret==1)
{
warning_sound();
Dsp_str("部組編號必須為數字!",9,0);
WAIT
continue;
};
space_str(bzbh,6);
Dsp_str(bzbh,3,9);
while(1)
{
i=get_file_bit(pandianfile)/44;
cls();
Dsp_str("== 盤 點 ==",1,0);
memset(num,0x00,sizeof(num));
sprintf(num,"%-4d",i);
Dsp_str("[ ]",1,15);
Dsp_str(num,1,16);
Dsp_str("部組編號:",3,0);
Dsp_str(bzbh,3,9);
memset(num,0x00,sizeof(num));
account(bzbh," ",num,1);
Dsp_str("[ ]",3,15);
Dsp_str(num,3,16);
Dsp_str("ENT確認 CLR返回",9,0);
Dsp_str("貨位編號:",5,0);
memset(huowei,0x00,sizeof(huowei));
ret=read_s(5,9,0,huowei,6,NONE);
if(ret==CLS) break;
if(strlen(huowei)==0) continue;
space_str(huowei,6);
Dsp_str(huowei,5,9);
if(strlen(huowei)!=6)
{
warning_sound();
Dsp_str("貨位編號必須為 6 位!",9,0);
WAIT
continue;
}
ret=isnum(huowei,strlen(huowei));
if(ret==1)
{
warning_sound();
Dsp_str("貨位編號必須為數字!",9,0);
WAIT
continue;
};
while(1)
{
i=get_file_bit(pandianfile)/42;
cls();
Dsp_str("== 盤 點 ==",1,0);
memset(num,0x00,sizeof(num));
sprintf(num,"%-4d",i);
Dsp_str("[ ]",1,15);
Dsp_str(num,1,16);
Dsp_str("部組編號:",3,0);
Dsp_str(bzbh,3,9);
memset(num,0x00,sizeof(num));
account(bzbh," ",num,1);
Dsp_str("[ ]",3,15);
Dsp_str(num,3,16);
Dsp_str("貨位編號:",5,0);
Dsp_str(huowei,5,9);
memset(num,0x00,sizeof(num));
account(bzbh,huowei,num,2);
Dsp_str("[ ]",5,15);
Dsp_str(num,5,16);
Dsp_str("條碼:",7,0);
Dsp_str("F1修改 ENT確 CLR返",9,0);
memset(code,0x00,sizeof(code));
ret=read_s(7,5,0,code,15,FUN_ALL);
if(ret==CLS) break;
switch(ret)
{
case F1:
{
if((Is_file("systerm.txt")!=0)||(get_file_bit("systerm.txt")<5)) break;
memset(price,0x00,sizeof(price));
memset(name,0x00,sizeof(name));
memset(data,0x00,sizeof(data));
ret=dat_F_Read("systerm.txt",0,data,40);
ret=dat_F_Read("systerm.txt",40,price,8);
if(ret!=E_OK) break;
dat_F_Read("systerm.txt",48,name,40);
memset(bz,0x00,sizeof(bz));
memset(hw,0x00,sizeof(hw));
memset(sl,0x00,sizeof(sl));
memcpy(bz,data+14,6);
memcpy(hw,data+21,6);
memcpy(sl,data+28,4);
cls();
Dsp_str("定價:",1,0);
Dsp_str(price,1,5);
Dsp_str(name,3,0);
Dsp_str("部組:",7,0);
Dsp_str(bz,7,5);
Dsp_str("貨位:",7,10);
Dsp_str(hw,7,15);
Dsp_str("冊數:",9,0);
Dsp_str(sl,9,5);
Dsp_str("F4:刪",9,10);
Dsp_str("F5:改",9,15);
do
{
ret=get_chr(F4|F5);
}
while(ret!=F4&&ret!=F5&&ret!=CLS);
if(ret==CLS) break;
switch(ret)
{
case F4:
warning_sound();
Dsp_str("是否刪除? F4刪 CLR " ,9,0);
do
{
ret=get_chr(F4);
}
while(ret!=F4&&ret!=CLS);
if(ret==CLS) break;
else
{
memset(reco,0x00,sizeof(reco));
ret=search(pandianfile,0,44,0,42,data,reco,&pos);
if(ret!=E_OK) break;
ret=dat_F_Write(pandianfile,0,pos,"******",6);
ret=packfile(pandianfile,Plen,"******",0,6);
if(ret==0)
{
del_file("systerm.txt");
cls();
Dsp_str("數據刪除成功!",2,0);
Dsp_str("按任意鍵繼續!",5,0);
WAIT
break;
}
}
break;
case F5:
Dsp_str(" ",9,0);
Dsp_str("冊數:",9,0);
memset(sl,0x00,sizeof(sl));
ret=read_s(9,5,2,sl,4,NONE);
if(ret==CLS) break;
if(strlen(sl)==0) break;
if(atol(sl)<=0) break;
ret=isnum(sl,strlen(sl));
if(ret==1) break;
space_str(sl,4);
memset(reco,0x00,sizeof(reco));
ret=search(pandianfile,0,44,0,32,data,reco,&pos);
if(ret!=E_OK) break;
ret=dat_F_Write(pandianfile,0,pos+28,sl,4);
ret=dat_F_Write("systerm.txt",0,28,sl,4);
if(ret==E_OK)
{
cls();
Dsp_str("數據修改成功!",2,0);
Dsp_str("按任意鍵繼續!",5,0);
WAIT
}
break;
}/*end switch*/
}
case NONE:
{
if(strlen(code)==0) continue;
checkbookbar(code);
space_str(code,15);
Dsp_str(code,7,5);
del_file("temp.txt");
memset(reco,0x00,sizeof(reco));
ret=search_idx(indexfile,indexlen,0,15,code,reco,&pos);
if(ret==1)
{
warning_sound();
Dsp_str("無此條碼! ",9,0);
Wait(1);
break;
}
if(Is_file("temp.txt")!=0)
{
warning_sound();
Dsp_str("無此條碼!! ",9,0);
Wait(1);
break;
}
ret=status(bzbh,huowei);
if(ret==1) break;
}/*case NONE*/
break;
}/*switch*/
}
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -