DataBaseTables.pas 54 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805
  1. unit DataBaseTables;
  2. { Temp.dat is Empty. All Field Must Define And Add By This Unit.
  3. So, DataBaseTables is The Data Dictionary of Measure's File. }
  4. // 该单元字段应严格按功能分块
  5. interface
  6. type
  7. TScMDBFieldType = (ftString, ftByte, ftSmallint, ftInteger, ftBoolean, ftSingle, ftDouble,
  8. ftCurrency, ftDateTime, ftMemo, ftOLEObject);
  9. TScFieldDef = record
  10. FieldName: string;
  11. FieldType: TScMDBFieldType;
  12. Size: Integer;
  13. NotNull: Boolean;
  14. PrimaryKey: Boolean;
  15. ForceUpdate: Boolean;
  16. end;
  17. PScFieldDef = ^TScFieldDef;
  18. // (FieldName: ; FieldType: ; Size: ; NotNull: ; PrimaryKey: ; ForceUpdate: )
  19. const
  20. {ProjectManagerData}
  21. {项目管理}
  22. SProjectsInfo = 'ProjectsInfo';
  23. tdProjectsInfo: array [0..24] of TScFieldDef =(
  24. (FieldName: 'ID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: True; ForceUpdate: False),
  25. (FieldName: 'ParentID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: False; ForceUpdate: False),
  26. (FieldName: 'NextSiblingID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: False; ForceUpdate: False),
  27. // (项目)名称
  28. (FieldName: 'Name'; FieldType: ftString; Size: 100; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  29. // 类型(0: 分类 1: 标段)
  30. (FieldName: 'Type'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  31. // 0号台账合同总金额
  32. (FieldName: 'DealTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  33. // 本期完成总金额
  34. (FieldName: 'PhaseTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  35. // 截止本期合同计量总金额
  36. (FieldName: 'EndDealTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  37. // 截止本期变更计量总金额(累计数量变更+累计单价变更)
  38. (FieldName: 'EndChangeTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  39. // 截止本期完成总金额
  40. (FieldName: 'EndTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  41. // 截止上期完成总金额
  42. (FieldName: 'PreTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  43. // 本期应付总金额
  44. (FieldName: 'PhasePay'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  45. // 计量(总)期数
  46. (FieldName: 'PhaseCount'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  47. // 审核状态
  48. (FieldName: 'AuditStatus'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  49. // (路径下保存)文件名称
  50. (FieldName: 'FileName'; FieldType: ftString; Size: 100; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  51. // 创建日期
  52. (FieldName: 'CreateDate'; FieldType: ftString; Size: 20; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  53. // 关联网络用的ID。标段和文件夹都有
  54. (FieldName: 'WebID'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  55. // 业主
  56. (FieldName: 'WebOwnerID'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  57. // 编制人(原始作者)
  58. (FieldName: 'WebAuthorID'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  59. // 文件的MD5码
  60. (FieldName: 'WebMD5'; FieldType: ftString; Size: 255; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  61. // 文件下载到本地,该字段填上当前用户的ID,用来标识该文件只属于这个用户。多用户使用同一台电脑时,靠这个字段过滤出自己的文件……
  62. (FieldName: 'WebUserID'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  63. // 网络文件夹层次。本地结点是一张表存放的树结构。但服务器上,三层结点分成三张表存放,传到本地合并后ID会重复。所以加多一个字段进行区分。
  64. (FieldName: 'WebFolderLevel'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  65. // 用QQ传来传去的那个字符串Key码
  66. (FieldName: 'WebKey'; FieldType: ftString; Size: 255; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  67. // 备份文件夹名称
  68. (FieldName: 'BackupFolder'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  69. // 变更令+0号台账合同
  70. (FieldName: 'Deal_BGLTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False)
  71. );
  72. {标段信息}
  73. STenderProperty = 'TenderProperty';
  74. tdTenderProperty: array [0..4] of TScFieldDef =(
  75. (FieldName: 'ID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: True; ForceUpdate: False),
  76. (FieldName: 'ProjectID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: False; ForceUpdate: False),
  77. (FieldName: 'PropID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: False; ForceUpdate: False),
  78. (FieldName: 'PropName'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  79. (FieldName: 'PropValue'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False)
  80. );
  81. {标段备份数据信息}
  82. STenderBackup = 'TenderBackup';
  83. tdTenderBackup: array [0..4] of TScFieldDef =(
  84. (FieldName: 'ID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: True; ForceUpdate: False),
  85. (FieldName: 'ProjectID'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  86. (FieldName: 'Type'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  87. (FieldName: 'FileName'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  88. (FieldName: 'CreateDateTime'; FieldType: ftDateTime; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False)
  89. );
  90. {ProjectData}
  91. {清单数据 -- 台账编辑界面}
  92. SBills = 'Bills';
  93. tdBills: array [0..83] of TScFieldDef =(
  94. (FieldName: 'ID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: True; ForceUpdate: False),
  95. (FieldName: 'ParentID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: False; ForceUpdate: False),
  96. (FieldName: 'NextSiblingID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: False; ForceUpdate: False),
  97. // --------- Begin 报表专用 -------
  98. // 排序
  99. (FieldName: 'SerialNo'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  100. // 是否最底层节点
  101. (FieldName: 'IsLeaf'; FieldType: ftBoolean; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  102. // 最底层项目节父节点ID
  103. (FieldName: 'LeafXmjParentID'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  104. // 项
  105. (FieldName: 'XiangCode'; FieldType: ftString; Size: 10; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  106. // 目
  107. (FieldName: 'MuCode'; FieldType: ftString; Size: 10; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  108. // 节
  109. (FieldName: 'JieCode'; FieldType: ftString; Size: 10; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  110. // 细目
  111. (FieldName: 'XiMuCode'; FieldType: ftString; Size: 30; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  112. // 工程量清单排序编号
  113. (FieldName: 'IndexCode'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  114. // --------- End 报表专用 -------
  115. (FieldName: 'Code'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  116. (FieldName: 'B_Code'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  117. (FieldName: 'Name'; FieldType: ftString; Size: 200; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  118. (FieldName: 'Units'; FieldType: ftstring; Size: 20; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  119. // 合同单价
  120. (FieldName: 'Price'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  121. // 变更单价
  122. (FieldName: 'NewPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  123. // ---------- Begin 0号台账 ----------
  124. // 施工图原设计 -- 数量
  125. (FieldName: 'OrgQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  126. // 施工图原设计 -- 金额
  127. (FieldName: 'OrgTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  128. // 施工图原设计 -- 公式
  129. (FieldName: 'OrgFormula'; FieldType: ftString; Size: 200; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  130. // 设计错漏增减 -- 数量
  131. (FieldName: 'MisQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  132. // 设计错漏增减 -- 金额
  133. (FieldName: 'MisTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  134. // 施工图原设计 -- 公式
  135. (FieldName: 'MisFormula'; FieldType: ftString; Size: 200; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  136. // 其他原因增减 -- 数量
  137. (FieldName: 'OthQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  138. // 其他原因增减 -- 金额
  139. (FieldName: 'OthTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  140. // 施工图原设计 -- 公式
  141. (FieldName: 'OthFormula'; FieldType: ftString; Size: 200; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  142. // 合同 - 数量
  143. (FieldName: 'Quantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  144. // 合同 - 金额
  145. (FieldName: 'TotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  146. // 计算 - 标志
  147. // 0: 数量单价模式/无 1: 金额模式/无 主要作用于计算(数量、单价、金额可否输入不以此为依据)
  148. (FieldName: 'CalcType'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  149. // 合同 - 计算标识
  150. // 0: 无任何公式计算; 1: 数量列有计算式; 2: 金额列有计算式;
  151. // 2015-6-12 作废
  152. (FieldName: 'QtyFlag'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  153. // 合同 - 计算式
  154. // 2015-6-12 作废
  155. (FieldName: 'QtyFormula'; FieldType: ftString; Size: 200; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  156. // ---------- End 0号台账 ----------
  157. // 累计合同计量 - 数量
  158. (FieldName: 'AddDealQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  159. // 累计合同计量 - 金额
  160. (FieldName: 'AddDealTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  161. // 累计数量变更计量 - 数量
  162. (FieldName: 'AddQcQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  163. // 累计数量变更计量 - 金额
  164. (FieldName: 'AddQcTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  165. // 累计单价变更计量 - 变更令
  166. (FieldName: 'AddQcBGLCode'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  167. // 累计单价变更计量 - 变更数量
  168. (FieldName: 'AddQcBGLNum'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  169. // 累计单价变更计量 - 数量
  170. (FieldName: 'AddPcQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  171. // 累计单价变更计量 - 金额
  172. (FieldName: 'AddPcTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  173. // 累计单价变更计量 - 变更令
  174. (FieldName: 'AddPcBGLCode'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  175. // 累计单价变更计量 - 变更数量
  176. (FieldName: 'AddPcBGLNum'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  177. // 累计完成计量 - 数量
  178. (FieldName: 'AddGatherQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  179. // 累计完成计量 - 金额
  180. (FieldName: 'AddGatherTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  181. // 锁定层次结构
  182. (FieldName: 'LockedLevel'; FieldType: ftBoolean; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  183. // 锁定项目节编号、清单编号、名称、单位、清单单价
  184. (FieldName: 'LockedInfo'; FieldType: ftBoolean; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  185. // 锁定变更单价
  186. (FieldName: 'LockedNewPrice'; FieldType: ftBoolean; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  187. // 创建期数
  188. (FieldName: 'CreatePhaseID'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  189. // 是否为变更清单
  190. (FieldName: 'IsMeasureAdd'; FieldType: ftBoolean; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  191. // 桩号
  192. (FieldName: 'Peg'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  193. // 图(册)号
  194. (FieldName: 'DrawingCode'; FieldType: ftString; Size: 255; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  195. // 备注
  196. (FieldName: 'MemoStr'; FieldType: ftMemo; Size: 60535; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  197. // 相关变更令(变更令处点击应用,则添加)
  198. (FieldName: 'RelaBGL'; FieldType: ftString; Size: 200; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  199. // ---------Begin 概算控制 --------------------- 该部分数据作废
  200. // 初步设计 -- 数量 (Preliminary Design)
  201. (FieldName: 'PDQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  202. // 初步设计 -- 金额
  203. (FieldName: 'PDTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  204. // 施工图设计 -- 数量 (Construction Drawing Design)
  205. (FieldName: 'CDDQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  206. // 施工图设计 -- 金额
  207. (FieldName: 'CDDTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  208. // 0号台账合同 -- 数量 (Ledger Contract)
  209. (FieldName: 'LCQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  210. // 变更 -- 数量 (Change)
  211. (FieldName: 'CQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  212. // 变更 -- 金额
  213. (FieldName: 'CTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  214. // 决算 -- 数量 (Final)
  215. (FieldName: 'FQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  216. // 工程数量调整情况
  217. (FieldName: 'QuantityDiffer'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  218. // 工程费用调整情况
  219. (FieldName: 'TotalPriceDiffer'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  220. // 备注 (Estimate MemoStr)
  221. (FieldName: 'EMemoStr'; FieldType: ftDouble; Size: 200; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  222. // ---------End 概算控制 ---------------------
  223. // 设计数量1
  224. (FieldName: 'DgnQuantity1'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  225. // 设计数量2
  226. (FieldName: 'DgnQuantity2'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  227. // 设计数量1 - 合同
  228. (FieldName: 'DealDgnQuantity1'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  229. // 设计数量2 - 合同
  230. (FieldName: 'DealDgnQuantity2'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  231. // 设计数量1 - 变更
  232. (FieldName: 'CDgnQuantity1'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  233. // 设计数量2 - 变更
  234. (FieldName: 'CDgnQuantity2'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  235. // 书签
  236. (FieldName: 'HasBookMark'; FieldType: ftBoolean; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  237. // 书签批注
  238. (FieldName: 'MarkMemo'; FieldType: ftString; Size: 255; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  239. // 附件
  240. (FieldName: 'HasAttachment'; FieldType: ftBoolean; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  241. // 合同编号
  242. (FieldName: 'DealCode'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  243. // 合同签订单位
  244. (FieldName: 'DealCompany'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  245. // ------------------- Begin 合同属性 -------------------
  246. // 合同类别
  247. (FieldName: 'DealType'; FieldType: ftString; Size: 20; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  248. // 累计应扣款
  249. (FieldName: 'AddCutTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  250. // 累计已付款
  251. (FieldName: 'AddPayTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  252. // ------------------- End 合同属性 -------------------
  253. // 别名
  254. (FieldName: 'Alias'; FieldType: ftString; Size: 100; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  255. // 累计完成率
  256. (FieldName: 'AddCompleteRate'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  257. // 经济指标
  258. (FieldName: 'DgnPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  259. // 累计经济指标
  260. (FieldName: 'AddDgnPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  261. {------------------- Begin reports -----------------------}
  262. // 签约清单数量
  263. (FieldName: 'GclDealQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  264. // 签约清单金额
  265. (FieldName: 'GclDealTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  266. {------------------ End Reports --------------------------}
  267. (FieldName: 'PM_AddTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False)
  268. );
  269. {合同支付}
  270. SDealPayment = 'DealPayment';
  271. tdDealPayment: array [0..19] of TScFieldDef =(
  272. (FieldName: 'ID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: True; ForceUpdate: False),
  273. (FieldName: 'Name'; FieldType: ftString; Size: 200; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  274. // 计算类型
  275. // 0: 一般项
  276. // 1: 本期应付 -- 汇总所有的一般项
  277. // 2: 本期实付 -- 输入项
  278. (FieldName: 'CalcType'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  279. // 是否为扣款项
  280. (FieldName: 'IsMinus'; FieldType: ftBoolean; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  281. // 计算式(仅用于复制数据)
  282. (FieldName: 'Formula'; FieldType: ftString; Size: 100; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  283. // 累计金额
  284. (FieldName: 'TotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  285. // 起扣金额
  286. (FieldName: 'StartedPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  287. // 起扣金额 -- 公式
  288. (FieldName: 'SFormula'; FieldType: ftString; Size: 100; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  289. // 限额
  290. (FieldName: 'RangePrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  291. // 限额 -- 公式
  292. (FieldName: 'RFormula'; FieldType: ftString; Size: 100; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  293. // 计提期限 -- 方式 0:无 1:计量期数 2:计量金额
  294. (FieldName: 'PlanType'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  295. // 计提期限 -- 子方式(计量金额) 0:累计完成计量金额 1: 累计合同计量金额 2: 累计变更计量金额
  296. (FieldName: 'PlanSubType'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  297. // 计提期限 -- 截止限定
  298. (FieldName: 'PlanDeadline'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  299. // 计提期限 -- 截止限定 -- 计算公式
  300. (FieldName: 'PDFormula'; FieldType: ftString; Size: 100; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  301. // 锁定
  302. (FieldName: 'Locked'; FieldType: ftBoolean; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  303. // 创建期数
  304. (FieldName: 'CreatePhaseID'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  305. // 排序字段
  306. (FieldName: 'SerialNo'; FieldType: ftInteger; Size:0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  307. // 预定义
  308. (FieldName: 'PreDefined'; FieldType: ftBoolean; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  309. // 锁定公式
  310. (FieldName: 'LockedFormula'; FieldType: ftBoolean; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  311. // 支付扣款项拼接ID -- 报表专用
  312. (FieldName: 'LinkSerialNo'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False)
  313. );
  314. {变更令}
  315. SBGL = 'BGL';
  316. tdBGL: array [0..11] of TScFieldDef =(
  317. (FieldName: 'ID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: True; ForceUpdate: False),
  318. // 变更令号
  319. (FieldName: 'Code'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  320. // 名称
  321. (FieldName: 'Name'; FieldType: ftString; Size: 100; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  322. // 金额
  323. (FieldName: 'TotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  324. // 变更部位及原因
  325. (FieldName: 'Pos_Reason'; FieldType: ftMemo; Size: 60535; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  326. // 变更工程量说明
  327. (FieldName: 'Direction'; FieldType: ftMemo; Size: 60535; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  328. // 锁定
  329. (FieldName: 'Locked'; FieldType: ftBoolean; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  330. // 变更图号
  331. (FieldName: 'DrawingCode'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  332. // 批准文号
  333. (FieldName: 'ApprovalCode'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  334. // 创建期数
  335. (FieldName: 'CreatePhaseID'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  336. // 已执行
  337. (FieldName: 'ExecutionRate'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  338. // 变更令类型:一般、较大、重大
  339. (FieldName: 'BGLType'; FieldType: ftString; Size: 10; NotNull: False; PrimaryKey: False; ForceUpdate: False)
  340. );
  341. SBGBills = 'BGBills';
  342. tdBGBills: array [0..9] of TScFieldDef =(
  343. (FieldName: 'ID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: True; ForceUpdate: False),
  344. (FieldName: 'BGID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: False; ForceUpdate: False),
  345. // 清单编号
  346. (FieldName: 'B_Code'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  347. // 名称
  348. (FieldName: 'Name'; FieldType: ftString; Size: 200; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  349. // 单位
  350. (FieldName: 'Units'; FieldType: ftString; Size: 20; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  351. // 单价
  352. (FieldName: 'Price'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  353. // 数量
  354. (FieldName: 'Quantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  355. // 金额
  356. (FieldName: 'TotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  357. // 已变更数量
  358. (FieldName: 'UsedQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  359. // 锁定
  360. (FieldName: 'Locked'; FieldType: ftBoolean; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False)
  361. );
  362. {项目属性}
  363. SProjProperties = 'ProjProperties';
  364. tdProjProperties: array [0..2] of TScFieldDef = (
  365. (FieldName: 'ID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: True; ForceUpdate: False),
  366. (FieldName: 'Name'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  367. (FieldName: 'PropValue'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False)
  368. );
  369. {计量参与人}
  370. SStaff = 'Staff';
  371. tdStaff: array [0..6] of TScFieldDef =(
  372. (FieldName: 'PhaseID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: True; ForceUpdate: False),
  373. (FieldName: 'StageID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: True; ForceUpdate: False),
  374. (FieldName: 'Company'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  375. (FieldName: 'Role'; FieldType: ftString; Size: 20; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  376. (FieldName: 'Name'; FieldType: ftString; Size: 20; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  377. (FieldName: 'Locked'; FieldType: ftBoolean; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  378. (FieldName: 'Enable'; FieldType: ftBoolean; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False)
  379. );
  380. {签约合同清单--工程量清单}
  381. SDealBills = 'DealBills';
  382. tdDealBills: array [0..6] of TScFieldDef =(
  383. (FieldName: 'ID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: True; ForceUpdate: False),
  384. (FieldName: 'B_Code'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  385. (FieldName: 'Name'; FieldType: ftString; Size: 200; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  386. (FieldName: 'Units'; FieldType: ftString; Size: 20; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  387. // 签约单价
  388. (FieldName: 'Price'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  389. // 签约合同 -- 数量
  390. (FieldName: 'Quantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  391. // 签约合同 -- 金额
  392. (FieldName: 'TotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False)
  393. );
  394. {调差工料}
  395. SProjectGL = 'ProjectGL';
  396. tdProjectGL: array [0..16] of TScFieldDef =(
  397. (FieldName: 'ID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: True; ForceUpdate: False),
  398. // 工料机编号
  399. (FieldName: 'Code'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  400. // 名称
  401. (FieldName: 'Name'; FieldType: ftString; Size: 200; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  402. // 单位
  403. (FieldName: 'Units'; FieldType: ftString; Size: 20; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  404. // 规格
  405. (FieldName: 'Specs'; FieldType: ftString; Size: 200; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  406. // 基准价
  407. (FieldName: 'BasePrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  408. // 风险幅度
  409. (FieldName: 'RiskRange'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  410. // 锁定期号: 取值范围0~50, 0表示未锁定, 1~50表示在第1~50期锁定
  411. (FieldName: 'LockedPhaseID'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  412. // 创建期号: 取值范围0~50(台账编制, 1期~50期)
  413. (FieldName: 'CreatePhaseID'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  414. {--------------------Begin 当期缓存数据----------------------}
  415. // 信息价
  416. (FieldName: 'InfoPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  417. // 信息价时间
  418. (FieldName: 'InfoDate'; FieldType: ftString; Size: 20; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  419. // 价差
  420. (FieldName: 'DeltaPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  421. // 有效价差
  422. (FieldName: 'ValidDeltaPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  423. // 截止上期 -- 调差数量
  424. (FieldName: 'PM_PreQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  425. // 截止上期 -- 调差金额
  426. (FieldName: 'PM_PreTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  427. // 当前阶段 -- 调差数量
  428. (FieldName: 'PM_Quantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  429. // 当期阶段 -- 调差金额
  430. (FieldName: 'PM_TotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False)
  431. {--------------------End 当期缓存数据----------------------}
  432. );
  433. {调差工料--价格信息及计算}
  434. SGLPrice = 'GLPrice';
  435. tdGLPrice: array [0..39] of TScFieldDef =(
  436. // 工料ID
  437. (FieldName: 'GLID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: True; ForceUpdate: False),
  438. // 期号
  439. (FieldName: 'PhaseID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: True; ForceUpdate: False),
  440. // 信息价
  441. (FieldName: 'InfoPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  442. // 信息价--时间
  443. (FieldName: 'InfoDate'; FieldType: ftString; Size: 20; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  444. // 价差
  445. (FieldName: 'DeltaPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  446. // 有效价差
  447. (FieldName: 'ValidDeltaPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  448. // 截止上期
  449. (FieldName: 'PM_PreQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  450. (FieldName: 'PM_PreTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  451. // 本期 -- 原报
  452. (FieldName: 'PM_Quantity0'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  453. (FieldName: 'PM_TotalPrice0'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  454. // 本期 -- 1审~14审
  455. (FieldName: 'PM_Quantity1'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  456. (FieldName: 'PM_TotalPrice1'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  457. (FieldName: 'PM_Quantity2'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  458. (FieldName: 'PM_TotalPrice2'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  459. (FieldName: 'PM_Quantity3'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  460. (FieldName: 'PM_TotalPrice3'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  461. (FieldName: 'PM_Quantity4'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  462. (FieldName: 'PM_TotalPrice4'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  463. (FieldName: 'PM_Quantity5'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  464. (FieldName: 'PM_TotalPrice5'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  465. (FieldName: 'PM_Quantity6'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  466. (FieldName: 'PM_TotalPrice6'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  467. (FieldName: 'PM_Quantity7'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  468. (FieldName: 'PM_TotalPrice7'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  469. (FieldName: 'PM_Quantity8'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  470. (FieldName: 'PM_TotalPrice8'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  471. (FieldName: 'PM_Quantity9'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  472. (FieldName: 'PM_TotalPrice9'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  473. (FieldName: 'PM_Quantity10'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  474. (FieldName: 'PM_TotalPrice10'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  475. (FieldName: 'PM_Quantity11'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  476. (FieldName: 'PM_TotalPrice11'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  477. (FieldName: 'PM_Quantity12'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  478. (FieldName: 'PM_TotalPrice12'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  479. (FieldName: 'PM_Quantity13'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  480. (FieldName: 'PM_TotalPrice13'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  481. (FieldName: 'PM_Quantity14'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  482. (FieldName: 'PM_TotalPrice14'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  483. // 本期 -- 终审数据(当前文件中最后一人的数据)-- 数据缓存
  484. (FieldName: 'PM_Quantity_F'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  485. (FieldName: 'PM_TotalPrice_F'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False)
  486. );
  487. {清单使用的工料}
  488. SDetailGL = 'DetailGL';
  489. tdDetailGL: array [0..7] of TScFieldDef =(
  490. (FieldName: 'ID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: True; ForceUpdate: False),
  491. // 清单ID
  492. (FieldName: 'BillsID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: False; ForceUpdate: False),
  493. // 工料ID
  494. (FieldName: 'GLID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: False; ForceUpdate: False),
  495. // 工料机编号
  496. (FieldName: 'Code'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  497. // 消耗量
  498. (FieldName: 'Quantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  499. // 创建期号
  500. (FieldName: 'CreatePhaseID'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  501. // 最新一期最新一阶段的清单计量信息 -- 数据缓存
  502. (FieldName: 'LastBillsQuantity'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  503. // 锁定期号
  504. (FieldName: 'LockedPhaseID'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False)
  505. );
  506. {各期总数据 -- 为更新项目管理而储存的缓存数据}
  507. SMainDataList = 'MainDataList';
  508. tdMainDataList: array [0..15] of TScFieldDef =(
  509. // 第几期
  510. (FieldName: 'PhaseID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: True; ForceUpdate: False),
  511. // [本期]合同计量
  512. (FieldName: 'DealTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  513. // [本期]数量变更计量
  514. (FieldName: 'QcTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  515. // [本期]单价变更计量
  516. (FieldName: 'PcTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  517. // [本期]完成
  518. (FieldName: 'GatherTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  519. // [截止本期]合同计量
  520. (FieldName: 'EndDealTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  521. // [截止本期]数量变更计量
  522. (FieldName: 'EndQcTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  523. // [截止本期]单价变更计量
  524. (FieldName: 'EndPcTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  525. // [截止本期]完成
  526. (FieldName: 'EndGatherTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  527. // [截止上期]合同计量
  528. (FieldName: 'PreDealTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  529. // [截止上期]数量变更计量
  530. (FieldName: 'PreQcTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  531. // [截止上期]单价变更计量
  532. (FieldName: 'PrePcTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  533. // [截止上期]完成
  534. (FieldName: 'PreGatherTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  535. // [本期]实付
  536. (FieldName: 'PhasePay'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  537. // [截止本期]实付
  538. (FieldName: 'EndPhasePay'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  539. // [截止上期]实付
  540. (FieldName: 'PrePhasePay'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False)
  541. );
  542. {PhaseData}
  543. // Refer :原报
  544. // Audit1 :1审
  545. // Audit2 :2审
  546. // Audit3 :3审
  547. // ......
  548. SRefer = 'Refer';
  549. SAudit = 'Audit';
  550. tdRefer_Audit: array [0..46] of TScFieldDef = (
  551. (FieldName: 'BillsID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: True; ForceUpdate: False),
  552. //------------------ 本期合同计量 ----------------
  553. // 数量
  554. (FieldName: 'DealQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  555. // 金额
  556. (FieldName: 'DealTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  557. // 计算标识 -- 0: 无任何公式计算; 1: 数量列有计算式; 2: 金额列有计算式;
  558. (FieldName: 'DealFlag'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  559. // 数量公式
  560. (FieldName: 'DealFormula'; FieldType: ftString; Size: 200; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  561. //------------------ 本期数量变更计量 ----------------
  562. // 数量
  563. (FieldName: 'QcQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  564. // 金额
  565. (FieldName: 'QcTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  566. // 计算标识 -- 0: 无任何公式计算; 1: 数量列有计算式; 2: 金额列有计算式;
  567. (FieldName: 'QcFlag'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  568. // 数量公式
  569. (FieldName: 'QcFormula'; FieldType: ftString; Size: 200; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  570. // 变更令
  571. (FieldName: 'QcBGLCode'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  572. // 变更令数量
  573. (FieldName: 'QcBGLNum'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  574. //------------------ 本期单价变更计量 ----------------
  575. // 数量
  576. (FieldName: 'PcQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  577. // 金额
  578. (FieldName: 'PcTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  579. // 计算标识 -- 0: 无任何公式计算; 1: 数量列有计算式; 2: 金额列有计算式;
  580. (FieldName: 'PcFlag'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  581. // 数量公式
  582. (FieldName: 'PcFormula'; FieldType: ftString; Size: 200; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  583. // 变更令
  584. (FieldName: 'PcBGLCode'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  585. // 变更令数量
  586. (FieldName: 'PcBGLNum'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  587. //------------------ 本期完成变更计量 ----------------
  588. // 数量
  589. (FieldName: 'GatherQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  590. // 金额
  591. (FieldName: 'GatherTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  592. //------------------ 截止本期合同计量 ----------------
  593. // 数量
  594. (FieldName: 'EndDealQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  595. // 金额
  596. (FieldName: 'EndDealTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  597. //---------------- 截止本期数量变更计量 ----------------
  598. // 数量
  599. (FieldName: 'EndQcQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  600. // 金额
  601. (FieldName: 'EndQcTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  602. // 变更令
  603. (FieldName: 'EndQcBGLCode'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  604. // 变更令数量
  605. (FieldName: 'EndQcBGLNum'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  606. //---------------- 截止本期单价变更计量 ----------------
  607. // 数量
  608. (FieldName: 'EndPcQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  609. // 金额
  610. (FieldName: 'EndPcTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  611. // 变更令
  612. (FieldName: 'EndPcBGLCode'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  613. // 变更令数量
  614. (FieldName: 'EndPcBGLNum'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  615. //------------------ 截止本期完成计量 ----------------
  616. // 数量
  617. (FieldName: 'EndGatherQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  618. // 金额
  619. (FieldName: 'EndGatherTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  620. //------------------ 截止上期合同计量 ----------------
  621. // 数量
  622. (FieldName: 'PreDealQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  623. // 金额
  624. (FieldName: 'PreDealTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  625. //---------------- 截止上期数量变更计量 ----------------
  626. // 数量
  627. (FieldName: 'PreQcQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  628. // 金额
  629. (FieldName: 'PreQcTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  630. // 变更令
  631. (FieldName: 'PreQcBGLCode'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  632. // 变更令数量
  633. (FieldName: 'PreQcBGLNum'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  634. //---------------- 截止上期单价变更计量 ----------------
  635. // 数量
  636. (FieldName: 'PrePcQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  637. // 金额
  638. (FieldName: 'PrePcTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  639. // 变更令
  640. (FieldName: 'PrePcBGLCode'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  641. // 变更令数量
  642. (FieldName: 'PrePcBGLNum'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  643. //------------------ 截止上期完成计量 ----------------
  644. // 数量
  645. (FieldName: 'PreGatherQuantity'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  646. // 金额
  647. (FieldName: 'PreGatherTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  648. //----------------------------------------------------
  649. // 书签
  650. (FieldName: 'HasBookMark'; FieldType: ftBoolean; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  651. // 附件 暂时不用,用台帐的
  652. // (FieldName: 'HasAttachment'; FieldType: ftBoolean; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  653. // 书签批注
  654. (FieldName: 'MarkMemo'; FieldType: ftString; Size: 255; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  655. // 截止上期材料调差
  656. (FieldName: 'PM_PreTotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  657. // 本期材料调差
  658. (FieldName: 'PM_TotalPrice'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False)
  659. );
  660. // 计量期合同支付
  661. SPhasePay = 'PhasePay';
  662. tdPhasePay: array [0..60] of TScFieldDef =(
  663. // 与DealPayment一一对应
  664. (FieldName: 'ID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: True; ForceUpdate: False),
  665. // 本期金额 0:原报,1..14:1..14审
  666. (FieldName: 'TotalPrice0'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  667. // 本期公式
  668. (FieldName: 'Formula0'; FieldType: ftString; Size: 100; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  669. // 截止本期金额
  670. (FieldName: 'EndTotalPrice0'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  671. // 截止上期金额
  672. (FieldName: 'PreTotalPrice0'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  673. (FieldName: 'TotalPrice1'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  674. (FieldName: 'Formula1'; FieldType: ftString; Size: 100; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  675. (FieldName: 'EndTotalPrice1'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  676. (FieldName: 'PreTotalPrice1'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  677. (FieldName: 'TotalPrice2'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  678. (FieldName: 'Formula2'; FieldType: ftString; Size: 100; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  679. (FieldName: 'EndTotalPrice2'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  680. (FieldName: 'PreTotalPrice2'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  681. (FieldName: 'TotalPrice3'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  682. (FieldName: 'Formula3'; FieldType: ftString; Size: 100; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  683. (FieldName: 'EndTotalPrice3'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  684. (FieldName: 'PreTotalPrice3'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  685. (FieldName: 'TotalPrice4'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  686. (FieldName: 'Formula4'; FieldType: ftString; Size: 100; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  687. (FieldName: 'EndTotalPrice4'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  688. (FieldName: 'PreTotalPrice4'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  689. (FieldName: 'TotalPrice5'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  690. (FieldName: 'Formula5'; FieldType: ftString; Size: 100; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  691. (FieldName: 'EndTotalPrice5'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  692. (FieldName: 'PreTotalPrice5'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  693. (FieldName: 'TotalPrice6'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  694. (FieldName: 'Formula6'; FieldType: ftString; Size: 100; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  695. (FieldName: 'EndTotalPrice6'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  696. (FieldName: 'PreTotalPrice6'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  697. (FieldName: 'TotalPrice7'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  698. (FieldName: 'Formula7'; FieldType: ftString; Size: 100; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  699. (FieldName: 'EndTotalPrice7'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  700. (FieldName: 'PreTotalPrice7'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  701. (FieldName: 'TotalPrice8'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  702. (FieldName: 'Formula8'; FieldType: ftString; Size: 100; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  703. (FieldName: 'EndTotalPrice8'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  704. (FieldName: 'PreTotalPrice8'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  705. (FieldName: 'TotalPrice9'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  706. (FieldName: 'Formula9'; FieldType: ftString; Size: 100; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  707. (FieldName: 'EndTotalPrice9'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  708. (FieldName: 'PreTotalPrice9'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  709. (FieldName: 'TotalPrice10'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  710. (FieldName: 'Formula10'; FieldType: ftString; Size: 100; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  711. (FieldName: 'EndTotalPrice10'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  712. (FieldName: 'PreTotalPrice10'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  713. (FieldName: 'TotalPrice11'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  714. (FieldName: 'Formula11'; FieldType: ftString; Size: 100; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  715. (FieldName: 'EndTotalPrice11'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  716. (FieldName: 'PreTotalPrice11'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  717. (FieldName: 'TotalPrice12'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  718. (FieldName: 'Formula12'; FieldType: ftString; Size: 100; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  719. (FieldName: 'EndTotalPrice12'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  720. (FieldName: 'PreTotalPrice12'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  721. (FieldName: 'TotalPrice13'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  722. (FieldName: 'Formula13'; FieldType: ftString; Size: 100; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  723. (FieldName: 'EndTotalPrice13'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  724. (FieldName: 'PreTotalPrice13'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  725. (FieldName: 'TotalPrice14'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  726. (FieldName: 'Formula14'; FieldType: ftString; Size: 100; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  727. (FieldName: 'EndTotalPrice14'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  728. (FieldName: 'PreTotalPrice14'; FieldType: ftDouble; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False)
  729. );
  730. // 计量期属性表
  731. SPhaseProperty = 'PhaseProperty';
  732. tdPhaseProperty: array [0..2] of TScFieldDef =(
  733. (FieldName: 'ID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: True; ForceUpdate: False),
  734. (FieldName: 'Name'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  735. (FieldName: 'PropValue'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False)
  736. );
  737. // 中间计量表 -- 见文件“计量\需求\变更令\计量支付窗口主界面结构示意.doc”
  738. SZJJL = 'ZJJL';
  739. tdZJJL: array [0..7] of TScFieldDef =(
  740. (FieldName: 'ID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: True; ForceUpdate: False),
  741. // 所属项目节ID -- 仅允许在最底层项目节输入
  742. (FieldName: 'BillsID'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: False; ForceUpdate: False),
  743. // 中间计量表号
  744. (FieldName: 'Code'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  745. // 中间交工证书
  746. (FieldName: 'CertificateCode'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  747. // 所属项目节
  748. (FieldName: 'BillsCode'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  749. // 计算式说明
  750. (FieldName: 'FormulaMemo'; FieldType: ftMemo; Size: 60535; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  751. // 草图
  752. (FieldName: 'RelaFile'; FieldType: ftString; Size: 255; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  753. // Type -- 真的是有病!!!
  754. (FieldName: 'Type'; FieldType: ftInteger; Size: 0; NotNull: False; PrimaryKey: False; ForceUpdate: False)
  755. );
  756. // 报表数据
  757. // 用于特殊的需要跟用户交互的报表,其中的部分数据可以用户自定义
  758. SReportData = 'ReportData';
  759. tdReportData: array [0..5] of TScFieldDef =(
  760. // 通过如下两个分类确定唯一一张报表
  761. // 分类1
  762. (FieldName: 'Flag'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: True; ForceUpdate: False),
  763. // 分类2 -- 在分类1的基础上分类
  764. (FieldName: 'SubFlag'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: True; ForceUpdate: False),
  765. // 顺序 -- 特殊报表中,通常需要存储的数据不止一条
  766. (FieldName: 'SerialNo'; FieldType: ftInteger; Size: 0; NotNull: True; PrimaryKey: True; ForceUpdate: False),
  767. // 其中 Select: 用户选择这张报表时的默认选择,Result保存根据用户的选择存储的数据,使用编号是为了以后扩充
  768. // 具体每张报表中Select与Result的含义,在制作单张报表时特别约定
  769. (FieldName: 'Select1'; FieldType: ftString; Size: 50; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  770. (FieldName: 'Result1'; FieldType: ftString; Size: 255; NotNull: False; PrimaryKey: False; ForceUpdate: False),
  771. (FieldName: 'Result2'; FieldType: ftString; Size: 20; NotNull: False; PrimaryKey: False; ForceUpdate: False)
  772. );
  773. implementation
  774. end.