分析帆软填报报表点提交的逻辑
1 点提交这里首先会校验数据,校验成功后就去入库数据,这里不分析校验,分析下校验成功后数据是怎么入库的。
2 我们知道当点提交时,发送的请求中的参数为 op=fr_write,cmd=submit_w_report.
在帆软报表中op表示服务,cmd表示服务中的一个动作处理。比如op=fr_write这个服务中定义的动作处理不仅包括submit_w_report,还包括cal_write_cell,read_w_contentappend_w_data,delete_w_data等。这些都在FbtfrGtjocxa类中定义的,submit_w_report.对应的是类FbtfrGjrdamLwiimpXasipp。
3 当我们发起提交请求后,请求会先进到FbtfrGtjocxa的process方法中:
public void process(HttpServletRequest var1, HttpServletResponse var2, String var3, String var4) throws Exception {if (!VT4FR.OnlineWrite.isSupport()) {throw new RegistEditionException(VT4FR.OnlineWrite);} else {ReportSessionIDInfor var5 = (ReportSessionIDInfor)SessionPoolManager.getSessionIDInfor(var4, ReportSessionIDInfor.class);if (var5 == null) {throw new TimeoutDefaultSessionException();