invoiceitem -- 账面数子表(进销存)
(创建时间:2009年09月02日 15:03:00)
Jangogo : 
  1. CREATETABLE [invoiceitem] (  

  2. [id] integer identity(1,1) notnullCONSTRAINT [invoiceitem_pkid] PRIMARYKEY,  --流水号,自动增加

  3. [iid] intnotNULL, --主表(invoice)的id字段关联

  4. [iit] intnotnull,   --步骤号, 步骤1填1,步骤2填2。(注意:步骤1里面如果需要写两次则分别为填1和2,类推步骤2就填3和4,4个步骤的一般发生在调拨单中)

  5. [idx] intnotNULL, --行号、行序号

  6. [ca] intnotnull,  --往来类型

  7. [GoodsID] varchar(50) notnull,--货品代码

  8. [CompanyID] varchar(50) notnull,--核算往来单位代码

  9. [DeptStaffID] varchar(50) notnull,---核算部门员工代码

  10. [PrjID] varchar(50) notnull, --核算项目代码

  11. [StorageID] varchar(50) notnull, --核算仓库代码

  12. [poid] varchar(50) notnull, --核算订单代码

  13. [HGoodsID] varchar(50) notnull,--核算成品的货品代码

  14. [Amounti] money NOTNULL, --"收入"货款

  15. [Amountbi] money NOTNULL, --"收入"货款(本币),一般和Amounti填一样的值

  16. [Amounto] money NOTNULL,  --"发出货款"

  17. [Amountbo] money NOTNULL, --"发出货款"(本币),一般和Amounto填一样的值

  18. [Qtyi] floatnotNULL,  --"收入"数量

  19. [Qtyo] floatnotNULL, --"发出"数量

  20. [Qtyvi] floatnotNULL, ---"收入"数量(虚拟的)

  21. [Qtyvo] floatnotNULL, ---"发出"数量(虚拟的)

  22. [FCur] varchar(30) NOTnull,  --外币币别

  23. [ExRate] floatnotnull,  --汇率,默认填1

  24. [priceStd] floatnotNULL, --标准价格(参考价格)

  25. [priceTax] floatnotNULL,  --含税价

  26. [priceDst] floatnotNULL,  --折扣价

  27. [discount]  floatNOTNULL, --折扣

  28. [totali] money NOTNULL,   --"收入"价税合计

  29. [totalbi] money NOTNULL,  --"收入"价税合计(本币),一般和totali填一样的值

  30. [totalo] money NOTNULL, --"发出"价税合计

  31. [totalbo] money NOTNULL, --"发出"价税合计(本币),一般和totalo填一样的值

  32. [costi] money NOTNULLdefault 0,  --收入成本,不用填

  33. [costo] money NOTNULLdefault 0, --发出成本,不用填

  34. [iscost] intnotnulldefault 1,  --是否要影响库存成本,默认填1

  35. [isfeecost] intnotnulldefault 1,  --费用是否影响成本

  36. [iimemo] varchar(200) NULL,  --行备注

  37. [batchno] varchar(50) notNULL,  --批号,默认填空串

  38. [gPrd] datetime null, --保质期

  39. [taxrate] floatNOTNULL,  --税率

  40. [tax]  money NOTNULL,  --税金

  41. [taxb]  money NOTNULL, --税金(本币),一般和tax填一样的值

  42. [Qtyd]  floatnotNULL,  --退货数量,填0

  43. [rno] varchar(20) null,  --引用单号,不填

  44. [PriceTransfer] floatnull,  --调拨价

  45. [PriceTransferTax] floatnull, --调拨含税价

  46. [TransferTaxRate] floatnull, --调拨税率

  47. [TransferTax] money NULL,  --调拨税款

  48. [TransferTaxb] money NULL, --调拨税款(本币)

  49. [PriceFee] floatnull,  --费用单价

  50. [FeeTaxRate] floatnull,  --费用税率

  51. [FeeTax] money NULL, --费用税金

  52. [FeeTaxb] money NULL, --费用税金(本币)

  53. [Fee] money NOTNULL, --费用金额

  54. [Feeb] money NOTNULL, --费用金额(本币)

  55. [MGoodsID] varchar(50) null,  --材料的货品代码,(一般用于物料转性)

  56. [MUnit] varchar(20) null,   --物料的单位

  57. [MQty] floatnull,  --物料数量

  58. [MPrice] floatnull, --物料单价

  59. [MAmount] floatnull, --物料金额

  60. [MPricec] floatnull,  --材料成本价

  61. [KFeeTaxRate] floatnull, --可抵扣费用税率

  62. [KFeeTax] money NULL,[KFeeTaxb] money NULL, --可抵扣费用税金

  63. [KFee] money NULL,[KFeeb] money NULL,  --可抵扣费用

  64. [BarCode] varchar(30) null,  --条形码

  65. [Unit] varchar(20) null,  --单位,一般是相对于标准单位需要换算,如: 箱(一箱=10包)

  66. [UnitB] varchar(20) null,  --标准单位,如:包 (10包=一箱),对应于货品资料里面的单位

  67. [UnitRate] floatnull, --单位之间的转换率

  68. [relaapp] varchar(20) null, --关联模块

  69. [relaid] varchar(20) null,  --关联ID

  70. [ACID_fee] varchar(50) NOTNULL,  --费用科目代码

  71. [ACID_kfee] varchar(50) NOTNULL, --可抵扣费用科目代码

  72. [lo] intnull,  --成本计算顺序,不要填

  73. [qtyc] floatnulldefault 0,  ---保留,用于先进先出法成本计算

  74. [s1] varchar(50) null,  ---程序员不应该使用S1至6,留给客户自定义使用-

  75. [s2] varchar(50) null, ---程序员不应该使用S1至6,留给客户自定义使用-

  76. [s3] varchar(50) null,    ---程序员不应该使用S1至6,留给客户自定义使用-

  77. [s4] varchar(20) null,   ---程序员不应该使用S1至6,留给客户自定义使用-

  78. [s5] varchar(100) null,   ---程序员不应该使用S1至6,留给客户自定义使用-

  79. [s6] varchar(200) null,   ---程序员不应该使用S1至6,留给客户自定义使用-

  80. [d1] datetime NULL,    ---已使用,(该字段为生产日期)

  81. [d2] datetime NULL,    

  82. [L1] intnull,  

  83. [L2] intnull,  

  84. [L3] intnull,  

  85. [i1] intnull,   ---保留,用于先进先出法成本计算

  86. [i2] intnull,   ---保留, 用于记录当前单据是进还是出(按实际数量), 成本核算业务排序需要

  87. [i3] intnull,    ---保留,用于标识是否需要成本归集

  88. [c1] money NULL,  --非固定比例辅助计量单位的转换率

  89. [c2] money NULL,  --异价调拨的金额(货款)注意:仅限用于打印单据时取数使用,因为打印时数据库无法四舍五入

  90. [c3] money NULL

  91. );  


说明:
1.iid、iit、idx 构成一个唯一的“键”,必须注意唯一性,否则不能插入多行记录
2.“收入"和"发出"开头的字段只能按你的单据类型填一种,要么“收入”要么“发出”,不能两种都填,一种填了,另一种就必须填0,例如销售单就填“发出”开头的字段,“收入”开头字段填0

3.要特别注意 Unit 和 UnitB 这两个字段,标准单位的数量必须通过 qty 相关字段 乘以 UnitRate字段获得,做报表的时候要特别小心注意

4.c1 字段和UnitRate类似,要取得非固定比例的辅助计量单位的数量,就必须通过 qty 相关字段 乘以 c1字段获得


单据里面存储的数量是按用户输入的数量和单位进行储存的,要获得各种数量必须依照以下 公式通过字段计算而得:

基本单位收入数量 = Qtyi * UnitRate

基本单位发出数量 = Qtyo * UnitRate

中计量单位收入数量 = 基本单位收入数量 / Goods.UnitMr  = (Qtyi * UnitRate) / Goods.UnitMr

中计量单位发出数量 = 基本单位发出数量 / Goods.UnitMr  = (Qtyo * UnitRate) / Goods.UnitMr

大计量单位收入数量 = 基本单位收入数量 / Goods.UnitBr  = (Qtyi * UnitRate) / Goods.UnitBr

大计量单位发出数量 = 基本单位发出数量 / Goods.UnitBr  = (Qtyo * UnitRate) / Goods.UnitBr

辅助单位收入数量 = Qtyi * c1

辅助单位发出数量 = Qtyo * c1

文档中心
可上传附件
选择
同时转发此条
回复
1楼
Jangogo: 
开发人员千万注意: UnitRate 字段必须填写,而且默认值必须填写1,表生成的sql 设计有缺陷,这个字段没有设置出自动默认值为1
2楼
Jangogo: 
往来类型:
1=销售
2=销售退货
3=采购
4=采购退货
5=外协加工 
6=领料退料
7=其他
8=成品进仓 
9=成品退仓
10=盘存调整
11=借出归还
0=不核算
-1=计划销售
-3=计划采购
-9=费用代料
默认=0