用友时空B/S表单外挂(接口)程序操作说明文档

用友时空B/S表单外挂(接口)程序

一、B/S表单接口需求

众所周知,用友时空KSOA支持B/S架构。且移动商务、在线门店,都是完全基于B/S架构的。

B/S架构的优越性在于没有本地客户端和本地数据,实施部署简单且后续维护简单。而劣势则在于与第三方接口很麻烦,特别是需要在本地进行对接时。

例如,POS收款软件,往往需要与医保系统对接,与银联系统对接,这些本地接口,都要求数据实时与第三方系统进行交互,如果是需要中转到远程的总部的服务器才能对接,则往往容易出现网络错误或者数据不及时等。

我们把这种需求总结为:从B/S表单截取数据保存到本地,或者向B/S表单插入数据。

只要外挂程序能解决以上2个需求,那么就可以根据各接口的需要,随心所欲进行数据的对接或转换。

原型:

1、由于时空KSOA提交订单商品数据的页面,是由数据库内置的JS模板进行解析的,也就是说每次打开该页面,都会由数据库重新生成,那么就需要在该数据库的JS模板内嵌入一个拦截器。

拦截器很简单,只是在数据提交处设置一个__bc(a,b), a是订单号,b是点击提交后包含商品数据的SQL插入语句。

2、在设置完拦截器之后,需要在一个全局位置对这个拦截器进行定义,目前项目中利用到的一个全局JS文档是位于“域名/bill/js/toolbar.js”,然后在这个toolbar.js里植入一段JS代码,这段代码起到对拦截器的定义的作用,并使之生效。当然还需要植入一个完成的Tajax,

3、接口“http://127.0.0.1:8877/a”的说明:

在线门店只用到了这一个接口,由于是需要利用本机环境,所以在外挂启动后,开始监听127.0.0.1:8877的请求,当有a接口有请求过来时马上处理,这个接口也只有两个参数,一个是g一个是h,g是一串包含订单商品数据的SQL插入语句,h是订单号,接口在外挂中定义,会自动处理这个接口的请求。

二、外挂程序应用实例:

某广州医药连锁公司在使用用友时空KSOA版本的管理软件,需要与广州市医保对接(苏州创智的医保接口程序)。

需要按医保接口的规范在POS销售时提示v_his_medi与V_HIS_FYMX_TEMP_MZ 两个视图(一个是检索所有商品资料,一个是检索本次收款的商品明细)。该医药连锁公司在KSOA系统中启用了两套POS收款方式,一种是可离线操作的MTPOS收款,一种是在线门店的POS收款。为此,对应不同的收款方式医保接口需要做不同的调整:

A:MTPOS收款系统:在前台门店的电脑是有数据库的,与安装的医保接口程序是同一台电脑,只需要在MTPOS的数据库中建立对应的两个视图,再配置医保接口程序进行读取就可以实现。

B:在线门店的POS收款系统:是B/S架构,在本地没有数据库。需要开发一个外挂程序,来从B/S收款表单中截取到本次的收款数据并保存到本地,同时从总部服务器获取所有商品资料保存到本地,再提供给医保接口检索。因此,需要安装一个POS明细数据提取软件,软件需要安装SQL SERVER 数据库,并能同步生成商品资料与当前POS销售的商品明细,生成医保接口程序需要的两个视图。医保接口程序配置在这个数据库上就可以实现数据读取。

三、外挂程序工作原理:

1、程序包括一个数据库,分别有spkfk 与 tmp_pos_mxls两张表,并建立医保接口视图。

2、程序需要手动更新SPKFK表,更新的内容根据C盘根目录下的【pz2.txt】文档中的时间进行更新,商品更新时间大于该文档内时间的商品才会进行更新,如果要重新下载所有商品,则将该文档内的时间进行清空即可。

3、在线门店POS销售时(用类IE浏览器),点F12结算时,能触发外挂的事件,将当前界面上的商品明细,插入到tmp_pos_mxls表。

四、操作说明:

1、创建数据库:

执行《数据库建表程序.sql》

     2、在总部服务器IIS搭建webservice供门店远程连接

Webservice搭建说明:

(1)、将webserive文件搭建在服务器的IIS上

(2)、设置此webservice的端口

(3)、将此端口对外进行开放(4)、打开web.config进行数据库连接配置,保存即可。

3、将程序中备注文件夹内的三个文件按说明放到C盘的根目录下:

     4、界面说明

打开目录下的xm.exe,显示以上窗口

界面①:

填写本地连接的数据库连接

界面②:

填写远程访问的webservice地址

界面③:

点击【开始更新】则会将webservice链接的商品表进行下载到本地的商品表中。

5、使用步骤说明

(1)、打开外挂程序

(2)、打开在线门店的POS收款界面

(3)、进行零售商品录入

(4)、按F12进行收款

(5)、去创智软件处进行医保商品处理

原文地址:https://www.cnblogs.com/jijm123/p/10348307.html

时间: 2024-10-10 07:30:01

用友时空B/S表单外挂(接口)程序操作说明文档的相关文章

form表单post提交浏览器回退时文档过期的解决方式

方式一. 使用springmvc分页时,在JSP页面点击下一页时,如果使用form表单post方式提交的话, 浏览器回退时,会出现文档过期的情况,因为使用post方式提交表单,查询的又是同一个action方法, 所以这时可以在JSP页面上添加如下代码,即可解决过期问题: <%      response.setHeader("Pragma","No-cache");      response.setHeader("Cache-Control&quo

js 在表单提交前进行操作

最近在写页面的时候,需要手动写一些在表单进行提交前的验证操作,正好看到了2种阻止表单提交的方法,可以进行一些逻辑处理 方法一:使用return false 原生js写法: <form id="loginForm" name="loginForm" action="login.aspx" method="post"> <button type="submit" value="Sub

html表单序列化和json操作

<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="Generator" content="EditPlus?"> <meta name="Author" content=""> <meta name="

node-express处理表单的接口

写一个小接口,用postman测试接口是否可行???? import express from 'express' import config from './config' import router from './router' import queryString from 'querystring' const app = express() app.use('/node_modules', express.static(config.node_modules_path)) app.u

通达OA工作流-表单设计

第1章    什么是工作流 1.1    工作流的用途 随着企业管理信息化进程的不断深入,协同应用软件的概念已深入人心,而工作流系统正是协同应用软件的核心.通过应用 IT 技术来规范工作流程.提高工作的执行效率和准确度.使企业运营更加高效.规范.稳健,是工作流系统主要解决的问题. Office Anywhere 内置的工作流系统,适用于各行各业,实现企业各类业务的申请.审批.会签.登记.操作等环节的管理,将协同工作的过程进行详细记录,便于日后审核与查询,并实现业务数据的规范化录入.查询.统计.打

ASP.NET表单

HTML表单 HTML代码标记是Web页的组成元素之一,其中所有的HTML代码都包含在<html>和</html>之间.HTML表单是在Web页中多个<form>与</form>之间定义的控件组,它用于让用户输入数据并提交给Web服务器进行处理. HTML表单 在HTML中,为了能够获取用户提交的信息,需要使用由<form>标记定义的表单,这个标记是一个容器控件,它不显示任何信息,只表示把<form>与</form>中定义

基于Http原理实现Android的图片上传和表单提交

版权声明:本文由张坤  原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/794875001483009140 来源:腾云阁 https://www.qcloud.com/community 现在服务器主要是Web居多,客户端一般通过http上传文件到web服务器,最开始的设想很简单,直接将图片转化为字节流,写入到http的outstream,随后发送出去即可. 但当这种方法出现问题,服务器根据文件名这个表单中的字段来判定

DWZ框架Ajax无刷新表单提交处理流程

DWZ框架Ajax无刷新表单提交处理流程是: 1.       ajax表单提交给服务器 2.       服务器返回一个固定格式json结构 3.       js会调函数根据这个json数据做相应的处理 注意: DWZ框架默认的ajax表单提交都是返回json数据,告诉客户端操作是否成功,成功或失败提示信息,以及成功后的处理方式(刷新某个navTab或关闭某个navTab或navTab页面跳转). 表单提交后服务器操作失败了,客户端接收statusCode和message后给出错误提示,表单

php 表单提交错误后返回数据消失问题的解决方法

本文章向码农们介绍php 表单提交错误后返回数据消失问题的解决方法,感兴趣的码农可以参考一下. 表单提交错误后返回数据消失怎么办呐,今天就来分析解决一下这个问题. 状况概述: 做填写表单信息提交的时候会碰到一个问题就是当用户填写并提交表单后,程序判断不符合要求并返回,返回之后之前填写的表单信息会被清空了的情况.如果填写的信息量少还无所谓,如果填写的信息量比较多,这会直接打击到填写信息的人的良好心情.因此解决表单提交错误返回后填写的内容消失的问题是一个提高用户体验度的迫在眉睫的问题. 对于这种问题