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

📄 +

📁 visualfoxpro企业会计电算化实例
💻
📖 第 1 页 / 共 2 页
字号:
			IF USED('mx')=.T.                                && 如果文件已打开
				SELECT mx                                   && 激活已打开文件的工作区
			ELSE                                             && 否则
				SELECT 0                                    && 激活工作区
				USE &zka(h,4)                           && 打开文件,明细库名(联系表)
			ENDIF
			COPY TO ARRAY b                                  && 复制到数组
			STORE RECC()-1 TO mrec                           && 明细库记录个数
			                                    && 最末一个记录总是'创建和增添新明细' 
			FOR k=1 TO mrec                                  && k循环
				USE &b(k,2)                                 && 打开表
				IF RECC()=0                                 && 如果没有记录,建账
					APPEND BLANK                           && 追加空记录
              	ELSE                                        && 否则,过账 
					FOR i=1 TO RECC()-1                     && i循环
						GOTO i                             && 移动指针
						DELETE                             && 做删除记号
					NEXT                                    && 下一个i循环
					PACK                                    && 彻底删除
				ENDIF
				REPLACE 日期 WITH GOMONTH(the_end,-1)        && 用上月记账的最末一日
				REPLACE 凭证号 WITH  '  '                    && 替换字段,下同
				REPLACE 摘要 WITH '结转'
				DEFI WINDOW gz FROM 16, 0 TO 26 ,99 TITLE '过帐科目:'+zka(h,2);
				 +'明细名称:'+ALLTRIM(b(k,1))+' 请添写数据到明细库名:'+b(k,2);
				   DOUB MINI FLOAT ZOOM CLOSE                && 定义窗口
				ACTI WINDOW gz                               && 激活窗口
				BROW                                         && 浏览 
				STORE 0 TO mxyzyes,mxlzyes,mxjzs,mjyzyes,mjlzyes,mjjzs &&固定资产各栏合计
				STORE 0 TO yes                               && 余额累加
				IF zka(h,1)='1501'                            && 如果是固定资产及折旧
					REPLACE 净值 WITH 原值余额-累折余额     && 替换字段
					BROW FIELDS 原值余额,累折余额,净值       && 浏览
					mjyzyes=mjyzyes+原值余额                 && 累加,下同
					mjlzyes=mjlzyes+累折余额
					mjjzs=mjjzs+净值
				ELSE
					yes=yes+ 余额
				ENDIF
				COPY TO ARRAY gza                            && 复制到数组
				USE                                          && 关闭表
				IF FILE(b(k,3)+'.dbf')                       && 如果明细的月合计表存在
					USE b(k,3)                              && 打开表
					SET SAFETY OFF                          && 关闭安全提示窗口
					ZAP 					                 && 删除全部记录
					APPEND FROM ARRAY gza                   && 从数组追加记录 
					DEFI WINDOW gz FROM 16, 0 TO 26 ,99 ;
						TITLE " 明细月合计  : "+b(k,1)+'库名:'+b(k,3) ;
						DOUB MINI FLOAT ZOOM CLOSE         && 定义窗口
					ACTI WINDOW gz                          && 激活窗口
					BROW                                    && 浏览
				ELSE                                         && 否则
					COPY  FILE (b(k,2)+'.dbf') TO (b(k,3)+'.dbf')
 && 将明细表复制成月合计表
					DEFI WINDOW gz FROM 8, 0 TO 18 ,199 ;
						TITLE " 月合计: "+zka(h,2)+b(k,1) +b(k,3) ;
					    DOUB MINI FLOAT ZOOM CLOSE          && 定义窗口
					ACTI WINDOW gz                          && 激活窗口
					BROW                                    && 浏览 
				ENDIF
			NEXT
* 处理月合计表
			IF zka(h,1)='1501'                                 && 如果是固定资产及折旧
				USE yhj1501                                   && 打开固定资产月合计表
				REPLACE 净值     WITH mjjzs                  && 替换字段,下同
				REPLACE 原值余额 WITH mjyzyes                
				REPLACE 累折余额 WITH mjlzyes
				BROW                                         && 浏览
				USE                                          && 关闭表
			ELSE                                              && 否则,处理其他月合计
				IF FILE(zka(h,6)+'.dbf')                     && 如果月合计表存在
					USE zka(h,6)                            && 打开月合计表
					SET SAFETY OFF                          && 关闭安全提示窗口
					ZAP                                     && 删除记录
					APPEND BLANK                            && 追加空记录  
					REPLACE 日期 WITH GOMONTH(the_end,-1)   && 替换字段,下同
					REPLACE 凭证号 WITH '  '
					REPLACE 摘要 WITH '上年结转'
					REPLACE 余额 WITH yes
					DEFI WINDOW gz FROM 8, 0 TO 18 ,100 ;
					    TITLE  " 月合计 总页 : "+zka(h,2)+'库名:'+zka(h,6) ;
					    DOUB MINI FLOAT ZOOM CLOSE           && 定义窗口
					ACTI WINDOW gz                           && 激活窗口
					BROW                                     && 浏览
					USE                                      && 关闭表  
				ELSE                                          && 否则
					COPY  FILE (zka(h,3)+'.dbf') TO (zka(h,6)+'.dbf') 
&& 从科目库名复制文件
					DEFI WINDOW gz FROM 8, 0 TO 18 ,100 ;
						TITLE  " 月合计: "+zka(h,2)+zka(h,6) +' 总页 ' ;
						DOUB MINI FLOAT ZOOM CLOSE           && 定义窗口 
					ACTI WINDOW gz                           && 激活窗口
					USE &zka(h,6)                            && 打开月合计表
					DELETE ALL                               && 全部做删除标记
					PACK                                     && 删除之
					APPEND BLANK                             && 追加空记录
					REPLACE 日期 WITH GOMONTH(the_end,-1)    && 替换字段,下同
					REPLACE 凭证号 WITH '  '
					REPLACE 摘要 WITH '上年结转'
					REPLACE 余额 WITH yes
					BROW                                     && 浏览
					USE                                      && 关闭表
				ENDIF
			ENDIF	
		ENDIF
		DEAC WINDOW  gz                                        && 消隐窗口
	ENDIF

	@ 8,5 GET s DEFA 1 FUNC '*ht 继续;出口' SIZE 2,4,4          && 命令按钮
	READ                                                        && 激活对象
	CLEAR                                                       && 清窗口
	IF s=2                                                      && 如果选择了出口 
		EXIT                                                   && 跳出DO循环 
	ENDIF
ENDDO                                                            && 下一个DO循环
SET SAFETY ON 					                            && 打开安全提示窗口
CLEAR ALL                                                        && 释放变量、窗口,关闭表
RETURN                                                           && 主程序结束

PROC rk                                                          && 键控过程
	IF READKEY()=270                                          && 如果按了Ctrl+End 结束程序
		CLOSE ALL                                               && 释放变量、窗口,关闭表
		CANCEL                                                  && 停止当前程序的执行
	ENDIF
	RETURN                                                       && 返回调用程序

⌨️ 快捷键说明

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