📄
字号:
@ 4,4 SAY '新明细帐页细目库名:' GET xxmkm DEFA ' ' SIZE 1,12
READ && 激活对象
INSERT BLANK && 插入空记录
REPLACE 明细名称 WITH xxmmc,明细库名 WITH xxmkm && 替换字段
STORE xxmmc TO mxj1(rec) && 赋值,下同
STORE xxmkm TO mxj(rec,2)
BROW && 浏览
DEFI WINDOW jg FROM 4,1 TO 16,100 TITLE ;
'请输入固定资产明细通项数据 警告:必须输入原值、使用年限和残值,'+;
'否则将无法进行累计折旧!' CLOSE ZOOM MINI FLOAT && 定义窗口
ACTI WINDOW jg && 激活窗口
CHANGE IN jg FIELDS 明细名称,编号,规格,型号,;
原值:v=原值>0:F:e='原值必须大于零',;
使用年限:v=使用年限>0:F:e='使用年限必须大于零',;
残值:v=cf():F,月折旧额:v=F():F && 编辑字段,F强制校验
IF USED('KM15011000') && 如果固定资产科目表已打开
SELECT KM15011000 && 激活科目库名工作区
ELSE && 否则
SELECT 0 && 激活科目库名工作区
USE KM1501000 && 打开固定资产科目表
ENDIF
COPY STRU TO &xxmkm && 复制结构给新细目表明
SELECT 0 && 激活工作区
USE &xxmkm ALIAS xxmkm && 打开表
APPEND BLANK && 追加空记录
REPLACE xxmkm.原值借方 WITH mx.原值,xxmkm.原值余额 WITH mx.原值 && 替换字段
BROW && 浏览
DEAC WINDOW jg && 挂起窗口
USE && 关闭表
* a(rec)=1 && 相当于这个纪录被选中
CASE zka(h,2)='长期待摊费用'
DO CASE && 根据情况判断处理
CASE rec>1 && 当记录个数大于1
GOTO rec-1 && 指针指向末记录的前一个记录
STORE 明细库名 TO xmkm1 && 字段值赋给变量,下同
STORE 月合计库 TO yhjk1
CASE rec<=1 && 当记录个数小于等于
STORE 'mx'+RIGHT(zka(h,3),7) TO xmkm1 && 把科目库名km转换为明细表名mx
STORE 'mj'+RIGHT(zka(h,3),7) TO yhjk1 && km变mj
ENDCASE
STORE LEFT(xmkm1,2)+ALLTRIM(STR(VAL(RIGHT(xmkm1,7))+1,7,0)) TO xxmkm
&& 明细表名顺序号加1,成为新明细表名
STORE LEFT(yhjk1,2)+ALLTRIM(STR(VAL(RIGHT(yhjk1,7))+1,7,0)) TO xyhjk
&& 月合计表名顺序号加1,成为新月合计表名
DEFI WINDOW xmx FROM 4,20 TO 15,90 TITLE ' 新明细添加 ' DOUBLE CLOSE
ACTI WINDOW xmx && 定义并激活窗口
CLEAR && 清窗口
STORE ' ' TO xxmmc && 初始化变量
@ 1,4 SAY '末页明细科目及库名:'+' '+ALLTRIM(明细名称)+' '+明细库名
@ 3,4 SAY '新明细帐页细目名称:' GET xxmmc DEFA ' ' SIZE 1,40
@ 4,4 SAY '新明细帐页细目库名:' GET xxmkm DEFA ' ' SIZE 1,12 DISA
READ && 激活对象
INSERT BLANK && 插入空记录
REPLACE 明细名称 WITH xxmmc,明细库名 WITH xxmkm,月合计库 WITH xyhjk && 替换字段
STORE xxmmc TO mxj1(rec) && 给数组变量赋值,下同
STORE xxmkm TO mxj(rec,2)
DEFI WINDOW jg FROM 4,1 TO 16,100 TITLE ;
'请输入长期待摊费用明细通项数据 警告:必须输入原值,'+;
'否则将无法进行计提摊销!' CLOSE ZOOM MINI FLOAT && 定义窗口
ACTI WINDOW jg && 激活窗口
BROW && 浏览
USE &xmkm1 && 打开名细表名
COPY STRU TO &xxmkm && 赋值表结构,下同
COPY STRU TO &xyhjk
USE &xxmkm && 打开新名细表
APPEND BLANK && 追加空记录
REPLACE 日期 WITH GOMONTH(the_end,-1) && 用上月记帐末日替换字段
REPLACE 摘要 WITH '新建明细' && 替换字段
USE &xyhjk && 打开月合计表
APPEND BLANK && 追加空记录
REPLACE 日期 WITH GOMONTH(the_end,-1) && 用上月记帐末日替换字段
REPLACE 摘要 WITH '新建明细' && 替换字段
USE && 关闭表
a(rec)=1 && 相当于这个纪录被选中
DEAC WINDOW jg
OTHERWISE && 否则(非固定资产和长期待摊费用的其他科目的明细)
DO CASE && 根据情况判断处理
CASE rec>1 && 当记录个数大于1
GOTO rec-1 && 指针指向末记录的前一个记录
STORE 明细库名 TO xmkm1 && 字段值赋给变量,下同
STORE 月合计库 TO yhjk1
CASE rec<=1 && 当记录个数小于等于
STORE 'mx'+RIGHT(zka(h,3),7) TO xmkm1 && 把科目库名km转换为明细表名mx
STORE 'mj'+RIGHT(zka(h,3),7) TO yhjk1 && km变mj
ENDCASE
STORE LEFT(xmkm1,5)+ALLTRIM(STR(VAL(RIGHT(xmkm1,4))+1,4,0)) TO xxmkm
&& 明细表名顺序号加1,成为新明细表名
STORE LEFT(yhjk1,5)+ALLTRIM(STR(VAL(RIGHT(yhjk1,4))+1,4,0)) TO xyhjk
&& 月合计表名顺序号加1,成为新月合计表名
DEFI WINDOW xmx FROM 4,20 TO 15,90 TITLE ' 新明细添加 ' DOUBLE CLOSE
ACTI WINDOW xmx && 定义并激活窗口
CLEAR && 清窗口
STORE ' ' TO xxmmc && 初始化变量
@ 1,4 SAY '末页明细科目及库名:'+' '+ALLTRIM(明细名称)+' '+明细库名
@ 3,4 SAY '新明细帐页细目名称:' GET xxmmc DEFA ' ' SIZE 1,40
@ 4,4 SAY '新明细帐页细目库名:' GET xxmkm DEFA ' ' SIZE 1,12 DISA
READ && 激活对象
INSERT BLANK && 插入空记录
REPLACE 明细名称 WITH xxmmc,明细库名 WITH xxmkm,月合计库 WITH xyhjk && 替换字段
STORE xxmmc TO mxj1(rec) && 给数组变量赋值,下同
STORE xxmkm TO mxj(rec,2)
BROW && 浏览
USE &xmkm1 && 打开名细表名
COPY STRU TO &xxmkm && 赋值表结构,下同
COPY STRU TO &xyhjk
USE &xxmkm && 打开新名细表
APPEND BLANK && 追加空记录
REPLACE 日期 WITH GOMONTH(the_end,-1) && 用上月记帐末日替换字段
REPLACE 摘要 WITH '新建明细' && 替换字段
USE &xyhjk && 打开月合计表
APPEND BLANK && 追加空记录
REPLACE 日期 WITH GOMONTH(the_end,-1) && 用上月记帐末日替换字段
REPLACE 摘要 WITH '新建明细' && 替换字段
USE && 关闭表
a(rec)=1 && 相当于这个纪录被选中
ENDCASE
CLEAR && 清窗口
STORE .F. TO tf && 给逻辑变量赋 .F.
@ 2,20 SAY '继续添加新明细吗? ' && 显示文本
@ 5,15 GET t1 DEFA 1 FUNC '*ht 添加 ; 取消' SIZE 2,4,30 && 命令按钮
READ && 激活对象
CLEAR && 清窗口
IF t1=1 && 如果选择了添加
tf=.T. && 给逻辑变量赋 .T.
rec=rec+1 && 记录个数加 1
IF USED('mx')=.F. && 如果别名mx表为打开
SELECT 0 && 激活工作区
USE &zka(h,4) ALIAS mx && 打开表
ELSE && 否则
SELECT mx && 激活工作区
ENDIF
ELSE && 否则(选择了取消)
DEAC WINDOW xmx && 挂起窗口
EXIT && 跳出DO循环
ENDIF
ENDIF
ENDDO && 下一个DO循环
RETURN && 返回主程序
FUNC cf && 自定义函数,计算残值
REPLACE 残值 WITH 原值*0.03 && 替换字段
RETURN && 返回.T.
FUNC F && 自定义函数,计算月折旧额
REPLACE 月折旧额 WITH (原值-残值)/使用年限/12 && 替换字段
RETURN && 返回.T.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -