📄
字号:
ENDCASE
CASE ALLTRIM(zza(i,4))='生产成本'.OR.ALLTRIM(zza(i,4))='财务费用'.OR.;
ALLTRIM(zza(i,4))='制造费用'.OR.ALLTRIM(zza(i,4))='管理费用'
&& 当科目为生产成本、财务费用、制造费用、管理费用
IF FILE(zza(i,9)+'.dbf') && 如果文件存在
USE &zza(i,9) && 打开文件
ELSE && 否则
WAIT WINDOW (zza(i,4))+zza(i,9)+'文件不存在' && 提示信息
CLEAR ALL && 释放变量、窗口,关闭表
CANCEL && 终止程序的执行
ENDIF
GOTO BOTTOM && 指针指向末纪录
STORE 余额 TO yu_e && 记下余额
APPEND BLANK && 追加空纪录
REPLACE 日期 WITH riqi,摘要 WITH zza(i,1) && 替换字段
IF zza(i,10)='转帐' && 如果是转账凭证
REPLACE 凭证号 WITH ALLTRIM(STR(bianhao)) && 替换凭证号
ELSE && 否则
REPLACE 凭证号 WITH ALLTRIM(STR(bianhao))+'-1' && 替换凭证号加‘-1’,以示区别
ENDIF
IF zza(i,6)#0 && 如果借方不等于零
FOR j=1 TO cbfyend(i) && 循环,终值为摘要与借方之间的栏目个数
IF cbfyfieldje(i,j)#0.00 && 如果这个栏目金额不等于零
REPLACE (cbfyfield(i,j)) WITH cbfyfieldje(i,j) && 替换字段
ENDIF
&& cbfyfield(i,j)为数组元素,内容为字段名
&& (cbfyfield(i,j))为字段名名表达式
&& 如果感到这点地方不好理解,清参阅二十七章栏目填写相关部分
NEXT
REPLACE 借方 WITH zza(i,6) && 替换借方金额
ENDIF
IF zza(i,7)#0 && 如果贷方不等于零
REPLACE 贷方 WITH zza(i,7) && 替换贷方金额
ENDIF
REPLACE 余额 WITH yu_e+借方-贷方 && 替换余额
BROWSE ;
NOAPPEND NODELETE NOMODIFY IN SCREEN WIDTH 100 ;
TITLE zza(i,9)+' '+zza(i,4)+' '+zza(i,5) && 浏览
USE && 关闭表
CASE ALLTRIM(zza(i,4))='应付福利费' && 当科目为应付福利费
IF FILE(zza(i,9)+'.dbf') && 如果文件存在
USE &zza(i,9) && 打开文件
ELSE && 否则
WAIT WINDOW (zza(i,4))+zza(i,9)+'文件不存在' && 提示信息
CLEAR ALL && 释放变量、窗口,关闭表
CANCEL && 终止程序的执行
ENDIF
GOTO BOTTOM && 指针指向末纪录
STORE 余额 TO yu_e && 记下余额
APPEND BLANK && 追加空纪录
REPLACE 日期 WITH riqi,摘要 WITH zza(i,1) && 替换字段
IF zza(i,10)='转帐' && 如果是转账凭证
REPLACE 凭证号 WITH ALLTRIM(STR(bianhao)) && 替换凭证号
ELSE && 否则
REPLACE 凭证号 WITH ALLTRIM(STR(bianhao))+'-1' && 替换凭证号加‘-1’,以示区别
ENDIF
IF zza(i,6)#0 && 如果借方不等于零
FOR j=1 TO cbfyend(i) && 循环,终值为摘要与借方之间的栏目个数
IF cbfyfieldje(i,j)#0.00 && 如果这个栏目金额不等于零
REPLACE (cbfyfield(i,j)) WITH cbfyfieldje(i,j) && 替换字段
ENDIF
NEXT
&& cbfyfield(i,j)为数组元素,内容为字段名
&& (cbfyfield(i,j))为字段名名表达式
&& 如果感到这点地方不好理解,清参阅二十七章栏目填写相关部分
REPLACE 借方 WITH zza(i,6) && 替换借方金额
ENDIF
IF zza(i,7)#0 && 如果贷方不等于零
REPLACE 贷方 WITH zza(i,7) && 替换贷方金额
ENDIF
REPLACE 余额 WITH yu_e-借方+贷方 && 替换余额
BROWSE ;
NOAPPEND NODELETE NOMODIFY IN SCREEN WIDTH 100 TITLE;
zza(i,9)+' '+zza(i,4)+' '+zza(i,5) && 浏览
USE && 关闭表
CASE ALLTRIM(zza(i,4))='主营业务收入' && 当科目为主营业务收入
IF FILE(zza(i,9)+'.dbf') && 如果文件存在
USE &zza(i,9) && 打开文件
ELSE && 否则
WAIT WINDOW (zza(i,4))+zza(i,9)+'文件不存在' && 提示信息
CLEAR ALL && 释放变量、窗口,关闭表
CANCEL && 终止程序的执行
ENDIF
GOTO BOTTOM && 指针指向末纪录
STORE 余额 TO yu_e && 记下余额
APPEND BLANK && 追加空纪录
REPLACE 日期 WITH riqi,摘要 WITH zza(i,1) && 替换字段
IF zza(i,10)='转帐' && 如果是转账凭证
REPLACE 凭证号 WITH ALLTRIM(STR(bianhao)) && 替换凭证号
ELSE && 否则
REPLACE 凭证号 WITH ALLTRIM(STR(bianhao))+'-1' && 替换凭证号加‘-1’,以示区别
ENDIF
IF zza(i,6)#0 && 如果借方不等于零
REPLACE 借方 WITH zza(i,6) && 替换借方金额
ENDIF
IF zza(i,7)#0 && 如果贷方不等于零
FOR j=1 TO cbfyend(i) && 循环,终值为借方与贷方之间的栏目个数
IF cbfyfieldje(i,j)#0 && 如果这个栏目金额不等于零
REPLACE (cbfyfield(i,j)) WITH cbfyfieldje(i,j) && 替换字段
ENDIF
&& cbfyfield(i,j)为数组元素,内容为字段名
&& (cbfyfield(i,j))为字段名名表达式
&& 这点地方可能不好理解,清参阅27章栏目填写主营业务收入部分
NEXT && 下一个栏目
REPLACE 贷方 WITH zza(i,7) && 替换贷方金额
ENDIF
REPLACE 余额 WITH yu_e-借方+贷方 && 替换余额
BROWSE ;
NOAPPEND NODELETE NOMODIFY IN SCREEN WIDTH 100 TITLE ;
zza(i,9)+' '+zza(i,4)+' '+zza(i,5) && 浏览
USE && 关闭表
CASE ALLTRIM(zza(i,4))=='固定资产' && 当科目为固定资产
IF FILE(zza(i,9)+'.dbf') && 如果文件存在
USE &zza(i,9) && 打开文件
ELSE && 否则
WAIT WINDOW (zza(i,4))+zza(i,9)+'文件不存在' && 提示信息
CLEAR ALL && 释放变量、窗口,关闭表
CANCEL && 终止程序的执行
ENDIF
STORE 0.00 TO yyje_y,lye_y,ldje_y,jz_y && 初始化变量
GOTO BOTTOM && 指针指向末纪录
STORE 日期 TO rq_y && 记下日期
IF rq_y={ . . } && 如果日期为空
STORE the_end TO rq_y && 给变量赋值
ENDIF
STORE 原值余额 TO yyje_y && 记下原值余额 &&&&
STORE 累折余额 TO lye_y && 记下累计折旧余额
STORE 累折贷方 TO ldje_y && 记下累计折旧贷方
STORE 净值 TO jz_y && 记下净值
APPEND BLANK && 追加空纪录
REPLACE 日期 WITH riqi && 替换日期
REPLACE 凭证号 WITH ALLTRIM(STR(bianhao)),摘要 WITH zza(i,1) && 替换字段
IF zza(i,6)<>0 && 如果借方金额不等于零
REPLACE 原值借方 WITH zza(i,6) && 替换原值借方
ELSE && 否则
REPLACE 原值贷方 WITH zza(i,7) && 替换原值贷方
ENDIF
REPLACE 原值余额 WITH yyje_y+zza(i,6)-zza(i,7) && 替换原值余额
REPLACE 累折余额 WITH lye_y && 替换累计折旧余额
REPLACE 净值 WITH yyje_y-lye_y+zza(i,6)-zza(i,7) && 替换净值
IF 原值余额=0 && 如果原值余额等于零,这种情况往往发生在设备中期被卖掉的时候
WAIT WINDOW '累计折旧余额:'+STR(lye_y,10,2) TIMEOUT 2 && 提示信息
REPLACE 净值 WITH 0.00 && 替换净值为零
REPLACE 累折借方 WITH lye_y && 累计折旧借方用累计折旧余额替换
REPLACE 累折余额 WITH lye_y+累折贷方-累折借方 && 替换字段
ENDIF
BROWSE ;
NOAPPEND NODELETE NOMODIFY IN SCREEN WIDTH 100 TITLE ;
zza(i,9)+' '+zza(i,4)+' '+zza(i,5) && 浏览
USE && 关闭表
OTHERWISE && 其他科目(使用普通帐页的大多数科目)
IF USED('ZK85') && 如果表已打开
SELECT ZK85 && 激活工作区
ELSE && 否则
SELECT 3 && 激活工作区
USE 科目总控!zk85 && 打开表‘ZK85’(总控85,内含85个科目)
ENDIF
LOCATE FOR 会计科目名=zza(i,4) && 根据科目名称定位
STORE 余额方向 TO yefx && 记下余额方向
USE && 关闭表
IF FILE(zza(i,9)+'.dbf') && 如果文件存在
USE &zza(i,9) && 打开文件
ELSE && 否则
WAIT WINDOW (zza(i,4))+zza(i,9)+'文件不存在' && 提示信息
CLEAR ALL && 释放变量、窗口,关闭表
CANCEL && 终止程序的执行
ENDIF
GOTO BOTTOM && 指针指向末纪录
STORE 余额 TO yu_e && 记下余额 &&
APPEND BLANK && 追加空纪录
REPLACE 日期 WITH riqi,摘要 WITH zza(i,1) && 替换字段 &&***
IF zza(i,10)='转帐' && 如果是转账凭证
REPLACE 凭证号 WITH ALLTRIM(STR(bianhao)) && 替换凭证号
ELSE && 否则
REPLACE 凭证号 WITH ALLTRIM(STR(bianhao))+'-1' && 替换凭证号加‘-1’,以示区别
ENDIF
IF zza(i,6)<>0 && 如果借方金额不等于零
REPLACE 借方 WITH zza(i,6) && 替换借方金额
ELSE && 否则
REPLACE 贷方 WITH zza(i,7) && 替换贷方金额
ENDIF
IF yefx='借' && 如果余额方向为借
REPLACE 余额 WITH yu_e+zza(i,6)-zza(i,7) && 余额加借减贷
REPLACE 借或贷 WITH '借' && 替换字段
ELSE && 否则
REPLACE 余额 WITH yu_e-zza(i,6)+zza(i,7) && 余额减借加贷
REPLACE 借或贷 WITH '贷' && 替换字段
ENDIF
IF 余额=0 && 如果余额为零
REPLACE 借或贷 WITH ' ' && 替换为空
ENDIF
BROWSE ;
NOAPPEND NODELETE NOMODIFY IN SCREEN WIDTH 100 TITLE;
zza(i,9)+' '+zza(i,4)+' '+zza(i,5) && 浏览
USE && 关闭表
ENDCASE && 情况分支结束
NEXT && 下一个FOR循环
RETURN && 返回主程序
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -