1、 内部资料 项目实施文档winpos=WINPOS 实施要点=一前台库表的列表前台运行的保障.在本地有 DBASE VII 表和他们自身的索引.现在将他们的用意和索引描述如下.1 同时资料的下载也是更新这些表.这些表是为了保障前台正常销售准备的,他的资料和后台采用异步同步的方式处理.同步的功能是在数据资料下载功能里面处理的. 表名 表的描述 索引表名 Bmb.dbf 部门资料表 Bmb.mdxDocdkf.dbf 库房资料表 Docdkf.mdxDocdkt.dbf 收款台资料表 Docdkt.mdxDocdzy.dbf 收款员资料表 Docjsfs.mdxDocjsfs.dbf 结算方式表
2、Docjsfs.mdxKfmxb.dbf 库房商品明细表 Kfmxb.mdxRfzjzday.dbf 结帐日期表Spkfk.dbf 商品明细资料(不对应库房) Spkfk.mdx、Dspcode.mdxTmspb.dbf 条码商品资料(条码和商品的对应关系表)Xsybm.dbf 销售员和部门的对照关系表 Xsybm.mdxZkcard.dbf 折扣卡的资料表 Zkcard.mdx2 本地处理业务用到的表,在交班退出的时候就会在打印完对帐单之后清空这些表.目的就是在下个操作员登录的时候能更准确的操作(这种准确性是在 Totalm.dbf 为空的情况保障的).其他的三张交易表是在网络通畅,数据已经
3、提交的情况下清掉已结帐和已提交的数据.表名 表的描述 索引表名 Posjy.dbf 前台交易主表 Posjy.mdxPosjelx.dbf 前台金额流水表 Posjels.mdxPosmxls.dbf 前台销售明细流水 Posmxls.mdxTotalm.dbf 对帐统计表 Totalm.mdx注意 要保障数据的正确,这里严格要求资料表、业务表、和他们自己的索引都完整。现在针对索引容易损坏从而导致销售对帐单不正确的情况,程序做了以下改进:增加 BACKUP 目录,在此目录下放置的表Posjyls、Posjy、Posmxls、totalm 的初始索引文件。每次程序启动时,系统会自动根据这些文件重
4、建索引。:-:3后台数据库的调整.同时更新原来的数据采集在后台数据库里面做了调整:调整的内容是:Retjels 里面添加了 molingje decimal(15,2) default 0gzcode varchar(12)Posjelx 里面添加了 molingje decimal(15,2) default 0gzcode varchar(12)Posjy 里面添加了 gzcode varchar(12)sp_kfmx 表里面添加了 bghour integer default 0sp_kfmx 表里面添加了 endhour integer default 0增加的库表a增加有关零售送货的
5、库表: LSSHHZ、LSSHMX、SHKDFK、SHDSTATUS、YSHTHHZ、YSHTHMX内部资料 项目实施文档winposb增加销售调拨的库表:Sale_dbhz、Sale_dbmx。:-:增加的视图在 V4 中零售不送货程序与零售送货数据是独立存储在后台库表中,所使用的字段也不都相同。因此需要建立视图使在查询柜组销售时零售不送货数据和零售送货数据均能查到。增加的视图为:Vlsshjs、Vlsshk、Vlsshz、Vxssdcx。增加销售调拨查询视图:V_SalesOrder。二数据库连接1保障后台数据库的连接和数据库的提交,需要设置后台数据库的机器的 IP 地址,机器的名称也可以
6、。还有就是连接等待响应的时间.这里的设置比较的重要,会影响数据提交的性能,所以这里的设置比较的重要,实施人员在这里要根据机器和网络的性能得到一个比较好的参数(连接的等待时间) 。SQL Server 的响应端口在 1433Interbase 的响应端口在 3050DB2 的响应端口在 50000 (这里的端口列表是默认的)这里的参数在系统里面的用意是:判断数据库服务器是否正在运行 。如果是通畅的才提交到数据库服务器。所以这里的连接等待参数不能设置过大(会影响系统运行的整体的效率),但是过小的话,可能不能得到服务器的正常的响应,会导致数据经常提交不了,影响资料同步的实时性。注意:如果使用Inte
7、rBase需在本地设置:1.Win98system目录下的services文件中增加“gds_db 3050/tcp”2.Winntsystem32 目录下的 services 文件中增加“gds_db 3050/tcp”2同时在本地要建立后台数据库 BDE 的设置,这也是保障资料下载到本地和提交到服务器的要素之一。这里同时顺便提到数据库本地的设置,这是保障本地的交易能正常运行的条件.这里的本地就是如图上的前台数据库的设置.这里需要注意的是本地数据库的 BDE 连接的类型标准类型的.具体的参考看图所示。内部资料 项目实施文档winpos三数据收款数据的流向:收款员收款时(具体为打印前笔销售小票
8、后,收款员进行下一笔收款动作前) ,数据首先发往本地的DBF 表中(Posjy、Posmxls、Posjels) ,成功写入后,程序会判断与数据库设置中所指定的数据库的连接是否通畅。如果通畅(即在数据库设置中所指定的响应时间内能与指定的数据库连接)则程序会将数据上传到后台服务器的 Posjy、Posmxls、Posjels(零售送货数据直接存放在对应的零售送货库表中)中。并将本地的已上传到后台数据库的数据标记为“已上传” 。如果不通畅,系统会将该交易记录标记为“未上传” ,等待下一次收款时连接通畅后于下一次的销售记录同时上传。注意 基于 Pos 的数据上传方式,即使在连接通畅的情况下也有可能出
9、现在每天的最后一笔或者几笔收款没有上传到后台数据库中。这就需要收款员手工上传数据。手工上传数据的操作方法是:1 在收款主界面中按上传数据键(F9) 。2 确认目前处于连接状态(画面左下角) ,交班。否则继续重复操作 1,直至连接为止。3 如果进行多次手工上传,连接仍然断开,需要按“ALTF4”强制退出程序(不能交班) ,重新启动收款机,以同样的收款员身份进入收款程序,执行操作 2。4 交班,打印对帐单。四有关对帐单:关于对帐的处理的分情况处理.首先要说明的是交班对帐处理逻辑。首先将当前结算了的单据的交易明细生成按柜组的对帐单,然后按结算明细生成结算对帐单。条件是记帐日期、机器时间和收款员号。在
10、网络通畅情况下,将本地的结算了的明细提交,删除所有提交的记录。在网络不通畅的情况,因为不能成功提交,这样就不能删除本地的记录。针对上面的情况和在实际的业务处理过程中便可能出现下面的情况如果断网的情况下在同一记帐日期和机器时间内多班次使用同一收款员号进行收款。这时每次交班打印出的对帐单都为前几次和本次交易的总和,这样无法与本班次的销售帐吻合。解决方法:严禁在同一记帐日期和机器时间内多班次使用同一收款员号进行收款。五有关记帐日期使用记帐日期功能后在设定的记帐时间到来后,系统自动打印本记帐日期的内该收款员的对帐单,并会询问收款员对帐单打印是否正确。收款员选择“打印正确”,系统清除本日对帐信息。否则系
11、统将不断提示,直到收款员选择“打印正确”为止。如图六有关前台票据打印方案前台票据打印方案存储在前台零售程序所在目录下的“票据头方案.txt”和“票据尾方案.txt”中。系统管理员和实施人员可以直接对其进行编辑修改。注意打印数据字段应使用“【数据字段名】”的方式。内部资料 项目实施文档winpos现生效的数据字段名如下:打印日期、时间、柜组、收银员、收款台、销售总金额、实收金额、找零金额折扣金额。系统管理员和实施人员可以根据具体需要进行相应的删减。 如图七有关流水号流水号用来标识销售小票,必须确保它的唯一性。流水号是由款台编码和表示销售水的数字组成。长度不能超过 11 位(汉字按两位计算) 。在正式运行收款程序前必须将流水号置零。具体操作方法是编辑 PosInit.Ini。找到“RUNTIMEPARA”(如图)将“NewBill”设定为“1” ,删除“CurrLSH”和“BILLLSH=”后的部分表示流水号从 1 开始(也可以设定从特定的值开始如“CurrLSHpos1000111,BILLLSH=111” ) 。八有关日清如果日清后,仍有当天的销售数据上传(网络原因居多) ,这时只需重新运行一次日清程序即可。