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

📄 进销存.zrg

📁 掌机使用Zzbase语言的各种的关于各种电力规约如645
💻 ZRG
📖 第 1 页 / 共 4 页
字号:
   RETURN
ENDPRO

PROCEDURE  进货统计
     CLEAR
     TEMP1=0
     TEMP2=0
     TEMP3=""
     TEMP4=0.00
     TEMP5=0
     @ 1,1 SAY "扫描商品条码..."
     @ 2,4 GET cInput1
     read
     n=lastkey()
     if n=24
        return
     endif
     SELECT D
     GO TOP
     locate for VAL(cInput1)=VAL(商品A_ID) .and. (.not.eof( ))
     SOUND 21,4
     IF eof()
        clear
        @ 1,3 say "没有此商品编号"
        @ 2,3 say "或条码有误!..."
        wait ""
        RETURN
     ELSE
        CURR_REC=recno()
        GO CURR_REC
        TEMP3=商品名称A
        TEMP4=零售单价A
        TEMP5=现库存量A
    ENDIF
  
     IF LEN(cInput1)>=6
        clear
        SELECT A
        @ 0,0 say "正在求和..."
   
        SUM  采购数量,采购金额  TO TEMP1,TEMP2  FOR VAL(商品ID)=VAL(cInput1)
        TEMP4=round(TEMP2/TEMP1,1)
        CLEAR
        @ 0,1 SAY "-- 采购总和统计 --"
        @ 2,0 SAY "商品ID:"
        @ 2,col() SAY cInput1
        @ 3,0 SAY "商品名称:"
        @ 3,col()+1 SAY TEMP3
        @ 4,0 SAY "现库存(参):"
        @ 4,col()+1 SAY TEMP5
        @ 5,0 SAY "采购总量:"
        @ 5,col()+1 SAY  TEMP1
        @ 6,0 SAY "采购总额:"
        @ 6,col()+1 SAY TEMP2
        @ 7,0 SAY "平均进价:"
        @ 7,col()+1 SAY TEMP4
        WAIT""
      ENDIF  
    RETURN
ENDPRO


PROCEDURE  添加记录
     Clear
     DO WHILE .T.
	CLEAR        
	SET INTENSITY ON
	@ 0,1 SAY "-- 选添加记录库 --"    
      	SET INTENSITY OFF
	
	添库菜单[1]="1-添加客户库"
	添库菜单[2]="2-添加雇员库"
			
	添库数组[1]="在客户库尾添加新记录..."
	添库数组[2]="在雇员库尾添加新记录..."
			
	@2,3 MENU 添库菜单,2,2
	@2,2 MENU 添库数组,2
	@5,0 SAY "注:按上下键选择,回车执行"
	READ MENU TO nMenuChoice
	DO CASE
	    CASE nMenuChoice=1
	         SELECT B
	         DO 添加客户
	    CASE nMenuChoice=2
	         SELECT C
	         DO 添加雇员
	    OTHERWISE   
	        EXIT
	ENDCASE
     ENDDO
   RETURN
ENDPRO

PROCEDURE 添加客户
    Clear
    @0,2 Say "-- 添加客户库--"
    @2,0 Say "当前记录号:"+Str(Recno(),5)
    @3,0 Say "新记录序号:"+Str(Reccount()+1,5)
    @4,0 Say "注:按确认键开始添加客户的具体内容..."
    Wait "" To cKey
    If Asc(cKey)=13
       Clear 2
       Append Blank
       @0,0 Say "-- 客 户 库 内 容 --"
       @2,0 Say "客户编号:" Get 客户B_ID 
       @3,0 Say "客户名称:" Get 客户姓名 
       @4,0 Say "职务 :" Get 职务        
       @5,0 Say "地址 :" Get 地址B
       @6,0 Say "电话 :" Get  电话B   
       Read
     *  if len(客户B_ID )=0 .or. len(电话B)=0
     *     clear
     *     @ 2,2 say "输入无效,返回重输!"
     *     wait""
     *  endif   
       replace 客户B_ID with 客户B_ID,客户姓名 with 客户姓名   
       replace 职务 with 职务, 地址B with 地址B, 电话B  with 电话B   
    Else
       XH=0
       clear
       @ 2,0 SAY "现校对客户库新记录"
       @ 3,0 SAY "请输入序号:"
       @ 4,3 GET XH
       READ
       GO XH
       clear
       @0,0 Say "-- 客 户 库 重 写 --"
       @2,0 Say "客户编号:" Get 客户B_ID 
       @3,0 Say "客户名称:" Get 客户姓名 
       @4,0 Say "职务 :" Get 职务        
       @5,0 Say "地址 :" Get 地址B
       @6,0 Say "电话 :" Get  电话B   
       @7,0 say "重要提示!!!"
       @8,0 Say "不修改记录,按退出键!"
       @9,0 Say "若修改必须按确认键!!"
       read
       n=lastkey()
       if n=24
          return
       else
          replace 客户B_ID with 客户B_ID,客户姓名 with 客户姓名   
          replace 职务 with 职务, 地址B with 地址B, 电话B  with 电话B  
       endif
    ENDIF   
   RETURN
ENDPRO

PROCEDURE 添加雇员
    Clear
    @0,2 Say "-- 添加职工库--"
    @2,0 Say "当前记录号:"+Str(Recno(),5)
    @3,0 Say "新记录序号:"+Str(Reccount()+1,5)
    @5,0 Say "注:按确认键开始添加雇员的具体情况..."
    Wait "" To cKey
    If Asc(cKey)=13
       Clear 2
       Append Blank
       @0,0 Say "-- 雇 员 库 内 容--"
       @2,0 Say "职工编号:" Get 雇员C_ID  
       @3,0 Say "职工姓名:" Get 雇员姓名 
       @4,0 Say "身份证:" Get 身份证号         
       @5,0 Say "电话C :" Get 电话C
       @6,0 Say "销售总额:" Get  零售总额    
       Read
   *    if len(雇员C_ID)=0 .or. len(雇员姓名 )=0 .or. len(零售总额)=0
   *       clear
   *       @ 2,2 say "输入无效,返回重输!"
   *       wait""
   *    endif   
       replace 雇员C_ID with 雇员C_ID ,雇员姓名 with 雇员姓名   
       replace 身份证号 with 身份证号, 电话C  with 电话C   
       replace 零售总额 with 零售总额 
    Else
       XH=0
       clear
       @ 2,0 SAY "现校对雇员库新记录"
       @ 3,0 SAY "请输入序号:"
       @ 4,3 GET XH
       READ
       GO XH
       clear
       @0,0 Say "-- 重 写 雇 员 库  --"
       @2,0 Say "职工编号:" Get 雇员C_ID  
       @3,0 Say "职工姓名:" Get 雇员姓名 
       @4,0 Say "身份证:" Get 身份证号         
       @5,0 Say "电话C :" Get 电话C
       @6,0 Say "销售总额:" Get  零售总额    
       @7,0 say "重要提示!!!"
       @8,0 Say "不修改记录,按退出键!"
       @9,0 Say "若修改必须按确认键!!"
       read
       n=lastkey()
       if n=24
          return
       else
          replace 雇员C_ID with 雇员C_ID ,雇员姓名 with 雇员姓名   
          replace 身份证号 with 身份证号, 电话C  with 电话C   
          replace 零售总额 with 零售总额 
       endif
    ENDIF   
   RETURN
ENDPRO


PROCEDURE  综合查询
     CLEAR
     PFSL=0
     PFJE=0.00
     CGSL=0
     CGJE=0.00
     SELECT A
     GO TOP
     @ 1,0 SAY "正在订单库查找4位客户编号..."
     locate all for VAL(客户A_ID)=VAL(KHID)
     SOUND 21,4
     IF eof()
        clear
        @ 1,3 say "已到数据库尾,订单库没有此客户订单!"
        wait ""
        RETURN
     ELSE
        CURR_REC=recno()
        KHID=客户A_ID
        ZGBH=雇员A_ID
        SPID=商品ID  
        PFSL=批发数量
        PFJE=批发金额
        CGSL=采购数量
        CGJE=采购金额
     ENDIF
         clear
         @ 0,1 SAY "-- 综 合 清 单A --"
         @ 1,0 SAY "订单编号:"
         @ 1,col()+1 SAY 定单ID
         @ 2,0 SAY "客户编号:"
         @ 2,col()+1 SAY 客户A_ID
         @ 3,0 SAY "雇员编号:"
         @ 3,col()+1 SAY 雇员A_ID
         @ 4,0 SAY "订单日期:"
         @ 4,col()+1 SAY 日期 
         @ 5,0 SAY "商品编号:"
         @ 6,3 SAY 商品ID
         If PFSL<>0
            @ 7,0 SAY "批发数量:"
            @ 7,col()+1 SAY PFSL
            @ 8,0 SAY "批发金额:"
            @ 8,col()+1 SAY PFJE
         else
            @ 7,0 SAY "采购数量:"
            @ 7,col()+1 SAY CGSL
            @ 8,0 SAY "采购金额:"
            @ 8,col()+1 SAY CGJE
         endif
         wait""
         n=lastkey()
         if n=24
            Do 客户库
            Do 雇员库
            Do A产品库
         endif
         DO WHILE .NOT. EOF()
          CONTINUE
          IF eof()
             clear
             @ 1,1 say "已到数据库尾,按任意键返回!..."
            wait ""
            RETURN
         ENDIF
           CURR_REC=recno()
           KHID=客户A_ID
           ZGBH=雇员A_ID
           SPID=商品ID  
           PFSL=批发数量
           PFJE=批发金额
           CGSL=采购数量
           CGJE=采购金额
            CLEAR
            @ 0,1 SAY "-- 综 合 内 容B --"
            @ 1,0 SAY "订单编号:"
            @ 1,col()+1 SAY 定单ID
            @ 2,0 SAY "客户编号:"
            @ 2,col()+1 SAY 客户A_ID
            @ 3,0 SAY "雇员编号:"
            @ 3,col()+1 SAY 雇员A_ID
            @ 4,0 SAY "订单日期:"
            @ 4,col()+1 SAY 日期 
            @ 5,0 SAY "商品编号:"
            @ 6,3 SAY 商品ID
            If PFSL<>0
               @ 7,0 SAY "批发数量:"
               @ 7,col()+1 SAY PFSL
               @ 8,0 SAY "批发金额:"
               @ 8,col()+1 SAY PFJE
            else
               @ 7,0 SAY "采购数量:"
               @ 7,col()+1 SAY CGSL
               @ 8,0 SAY "采购金额:"
               @ 8,col()+1 SAY CGJE
            endif
            @ 9,0 say "注:可按退出键返回..."
            wait ""
            n=lastkey()
            if n=24
               Do 客户库
               Do 雇员库
               Do A产品库
            endif
            IF CURR_REC=Reccount()
               clear
               @ 1,0 say "已到数据库尾,请按退出键返回!..."
               wait ""
               RETURN
            ENDIF
         ENDDO     
     RETURN
ENDPRO


PROCEDURE  手工录入
  DO WHILE .T.
     BarCode=""
     CLEAR
     @ 2,1 SAY "请输入四位客户编号:"
     @ 4,3 GET BarCode
     READ
   * BarCode=TRIM(BarCode)
     n=lastkey()
     if n=24
        exit
     endif
     DO CASE   
        CASE LEN(BarCode)=3 
            *3位C型ID,查采购员  OK!! 
             ZGBH=BarCode               
             DO 雇员库
        CASE LEN(BarCode)=4 
        **   4位C型客户A_ID  OK!! 
             KHID=BarCode
             DO 综合查询   
        CASE LEN(BarCode)=5  
           * 从5位N型订单ID   OK!
             DO 定单库       
        CASE LEN(BarCode)>=6  
           * 6位以上商品条码  
             SPID=BarCode    
             DO A产品库
        OTHERWISE
	     EXIT     
     ENDCASE
   ENDDO
  RETURN
ENDPRO


PROCEDURE  条码类型说明  
     DO WHILE .T.
	CLEAR
	@ 0,2 SAY "-- 条 码 类 型 --"    
	
	码型菜单[1]="1-CODE39 条码"
	码型菜单[2]="2-UPC 条码"
	码型菜单[3]="3-CodaBar条码"
	码型菜单[4]="4-九三条码"
	码型菜单[5]="5-EAN 条码"
	码型菜单[6]="6-交插二五条码"
	
	码型数组[1]="三九条码对字母和数字进行编码,常用于运输,仓储,图书馆,医疗卫生等领域"
	码型数组[2]="美国统一代码委员会制定的一种代码"
	码型数组[3]="是一种条空均表示信息的非连续型条码"
	码型数组[4]="与CODE39兼容,但密度较高;误码率较低"
	码型数组[5]="欧洲物品编码协会制定的一种条码"
	码型数组[6]="邮电和仓储常使用,条与空均表示信息;非定长条码"
	
	@1,3 MENU 码型菜单,6,6
	@1,2 MENU 码型数组,6
	@8,0 SAY "注:按上下键选择,按帮助-注释"
	READ MENU TO nMenuChoice
	DO CASE
	   CASE nMenuChoice=1
	        条码类型=1
                TYPE="CODE39"
                DO 显示条码
	   CASE nMenuChoice=2
	        条码类型=2
                TYPE="UPC"
                DO 显示条码
	   CASE nMenuChoice=3
	        条码类型=3
                TYPE="CodeBar"
                DO 显示条码
	   CASE nMenuChoice=4
	        条码类型=4
                TYPE="九三条码"
	        Do 显示条码
	   CASE nMenuChoice=5
	        条码类型=5
                TYPE="EAN"
	        Do 显示条码  
	   CASE nMenuChoice=6      
	        条码类型=6
                TYPE="交插二五码"
                DO 显示条码
	   OTHERWISE
	       EXIT
	ENDCASE
     ENDDO
   RETURN
ENDPRO

PROCEDURE 关机
          CLEAR
          @ 1,4 SAY "敬 请 使 用"
          @ 2,6 SAY "TP_800C "
          @ 3,3 SAY "商品进销存电脑"
          @ 4,2 SAY "机器号: "+SERIES()
          @ 6,1 SAY "谢谢使用我公司产品!"
          @ 8,4 SAY "请按确认键,"
          @ 9,4 SAY "返回系统菜单!!"
          @ 10,22
          WAIT ""
     RETURN
ENDPRO

PROCEDURE 开机
          CLEAR
          @ 1,2 SAY "振 中 信 通 公 司"
          @ 3,6 SAY "(TP_800C)"
          @ 4,1 SAY "机 器 号: "+SERIES()
          @ 6,5 SAY "欢 迎 使 用"
          @ 7,3 SAY "商品进销存电脑"
          @ 6,21
          WAIT ""
          n=lastkey()
          if n=24
             CLEAR
             @1,0 SAY "请输入收款员编号:"
             @2,5 GET SKYH    
             READ
             n=WRITESYSVAR(50,SKYH)    
          endif
          sSysVar=READSYSVAR(50)
          if n=48
             n=DELETESYSVAR(51)
             n=DELETESYSVAR(52)
             n=DELETESYSVAR(53)
             n=DELETESYSVAR(54)
             n=DELETESYSVAR(85)
          endif           
          clear
          @ 0,1 say "-- 系 统 信 息 --"
          @ 2,0 say "日期:" 
          @ 2,col()+1 say Date()
          @ 3,0 say "时间:"
          @ 3,col()+1 say time()
          @ 4,0 Say "您的编号是:"
          @ 4,col()+1 say val(sSysVar)
          wait""
     RETURN
ENDPRO

PROCEDURE 初始化
          DO 开机
          SET DOWNTIME TO 3400
          IF EXECCOUNT()=1
             SELECT D
             GO TOP
             条码标志="CCD"
             TYPE="CODE39"
             IF 条码标志="CCD"
                INITSIO 1
             ELSE
                条码标志="COM"
            ENDIF
          ENDIF    
     RETURN
ENDPRO

START
  DO 初始化
  DO WHILE .T.
     CLEAR
     主菜单[1] ="1-条码操作入口"
     主菜单[2] ="2-条码类型说明"
     主菜单[3] ="3-关机操作"
     伴随数组[1]="该项操作包括:商品的零售;采购和批发的相应操作..."
     伴随数组[2]="常用条码简介,包括:UPC码;EAN码;CODE-39码..."
     伴随数组[3]="关机操作"
  *  SET INTENSITY ON
     @ 0,0 SAY "-- 商品进销存微机 --"
  *  SET INTENSITY OFF
     @ 2,3 MENU 主菜单,3,3
     @ 2,3 MENU 伴随数组,3
     @ 7,0 SAY "注:请按上下键选择,再按确认键执行操作;亦可按帮助..."
     READ MENU TO nMenuChoice
        DO CASE
	    CASE nMenuChoice=1
                 DO 条码演示
            CASE nMenuChoice=2
                 DO 条码类型说明   
            CASE nMenuChoice=3
                 DO 关机
                EXIT
        ENDCASE     
  ENDDO
ENDSTART

⌨️ 快捷键说明

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