CREATETABLE [ac] (
[ACID] varchar(50) notnullCONSTRAINT [PK_ACID] PRIMARYKEY, --科目代码,唯一,主键
[ACTitle] varchar(250) notnull, --科目名称
[PTitle] varchar(250) notnull, --上一级科目的科目名称,本字段起到缓存的作用
[BalanceType] INTEGERnotnull, --余额方向 1 借方 -1 贷方
[isQty] INTEGERnull, --是否核算数量
[isFCur] INTEGERnull, --是否核算外币
[isdept] INTEGERnull, --是否核算部门
[isStaff] INTEGERnull, --是否核算员工
[isPrj] INTEGERnull, --是否核算项目
[isCompany] INTEGERnull, --是否核算往来
[isPO] INTEGERnull, --是否核算订单
[isGoods] INTEGERnull, --是否核算货品
[isStorage] INTEGERnull,--是否核算仓库
[Unit] varchar(20) null,--单位(如公斤,当核算数量时用)
[FCur] varchar(30) null,--外币币别,当核算外币时候用
[NotAdjust] INTEGERnull,--外币不调汇
[BookType] INTEGERnull,--登帐方式
[IsPrint] INTEGERnull,--是否打印
[SpecialType] INTEGERnull,--特殊类型代码,参考本节后面说明部分
[isSys] INTEGERnull, --是否系统字段
[S1] varchar(50) null, --累计折旧科目对应的资产科目,适用于有多种需要折旧的资产一级科目情况
[S2] varchar(100) null, --助记码
[S3] varchar(200) null, --以下为系统预留字段
[D1] datetime NULL,
[D2] datetime NULL,
[I1] INTEGERnull,
[I2] INTEGERnull,
[I3] INTEGERnull,
[C1] money NULL,
[C2] money NULL,
[C3] money NULL
);
说明:
1). 本表的第一条记录是 科目代码为空字符串、科目名称为空字符串的,该记录为系统自动添加,是必须的,请务必不要删除此记录
2). 4Fang的ac表结构和其他财务软件的ac表对比起来是比较特殊的,该表没有字段记录某个科目是否有子科目,也没有在数据结构中维护某个科目是否一定有父节点。这些关系的维护都通过代码编程实现的。如果你通过程序来添加科目,请务必注意您要自己维护这些关系。
3).SpecialType 特殊类型的科目,定义如下:
SpecialType = 0 默认值
SpecialType = 2 现金
SpecialType = 3 银行存款
SpecialType = 1 固定资产
SpecialType = -1 累计折旧
SpecialType = 4 应收帐款
SpecialType = 5 应付帐款
SpecialType = 6 本年利润 结余
SpecialType = 7 其他货币资金
一般而言,这些特殊类型代码在一个科目表中是系统预先定义,请不要随意更改,增加子科目的时候必须注意这个值和上级科目维持一致。
系统要取得一些特殊科目的时候都是根据这个代码来取得,而不是通过科目代码或者科目名称。即使科目名称修改了,科目的特殊属性也不会更改。
4).isSys表示的系统科目是必须的,请不要是删除和修改属性,除非你有足够的把握和理由。
5).科目的级别长度结构在 mysetting 中 有一条VName为ACStru 的记录定义
6).科目名称多级链接符号一般为→符号,这个符号在mysetting 里面的VName为AccType里面定义。
在javascript 的Const 里面定义为Const.accarrow
在SC里面定义为A_
7).mysetting中的VName为ACGroup的记录定义了 科目的按资产、负债、权益、成本、损益等的分类名称