--所处存储过程 WFR_RULESENGINE_NEW_PKG
/*
*单据审批
*/
PROCEDURE approve(
P_boe_header_id IN NUMBER,--单据头ID
approver IN VARCHAR2, --审批人工号
approve_command IN VARCHAR2, --审批动作
approve_comment IN VARCHAR2, --备注
result OUT VARCHAR2 --处理结果
) IS
employeeId NUMBER := 0;
BEGIN
IF approve_command = 'APPROVE' THEN
approve_approve(P_boe_header_id,approver,approve_comment,result);
ELSIF approve_command = 'REJECT' THEN
--判断单据是否已被审批(审批人是否存在于单据当前处理人视图(单据-当前处理人(WFR_BOE_OPERATOR_V))中).
BEGIN
SELECT bov.employee_id INTO employeeId FROM WFR_BOE_OPERATOR_V bov WHERE bov.authorized_employee_number=approver AND bov.boe_header_id=P_boe_header_id;
EXCEPTION WHEN NO_DATA_FOUND THEN
result := 'HAS_APPROVED';
RETURN;
END;
approve_reject(P_boe_header_id,approver,approve_comment,result);
END IF;
EXCEPTION WHEN OTHERS THEN
ROLLBACK;
result := 'EXCEPTION';
RETURN;
END;
/*
*审批拒绝
*/
PROCEDURE approve_reject()
/*
*审批同意
*/
approve_approve
---走流程预算报错涉及
/EASTEST_GDYD_New/EAS_CJ901_GDYD/com/zte/eas/gdyd/business/contracts/service/BudgetProjectVerfyDS.java
/EASTEST_GDYD_New/CBMS/com/zte/cbm/base/pactinterface/service/PactInterfaceDS.java
--生成静态界面的后台方法在这个文件夹下面:
D:\WorkSpace2\EAS_GDYD\EAS_CJ401_Boe\ProductCode\com\zte\eas\boe\business\common\service\freemarker
BoeManagerDS createHtmlStart
BoeApproveFTLBuilder start 流程审批的界面生成 入口方法
BoeDetailFTLBuilder start 明细页面静态文件生成 入口方法
在后台将信息放在查询出来然后放到界面上
// 发票信息
List<SieInvoiceDistsV> sieInvoiceDistsVs = sieInvoicesMgrDS
.findSieInvoiceDistsVByInvoiceId(invoiceQueryId==null?null:invoiceQueryId+"");
data.put("sieInvoiceDistsVs", sieInvoiceDistsVs);
// 销项发票信息
List<SieInvoiceDistsV> sieInvoiceDistsVGLs = sieInvoicesMgrDS
.findSieInvoiceDistsByGLInvoiceId(invoiceQueryId==null?null:invoiceQueryId+"");
======单据打印界面对应的前后台方法========
FinancePrintModelBase 后台通用的页头页脚
gd_DailyExpendReport.htm 前台的模板html
后台存放页面HTML的表fbp_framemarker_html;
===根据报账单编号查询销项税发票
select h.boe_header_id from sie.sie_boe_headers h where h.boe_num = '21271307240047';
select i.invoice_id ,i.invoice_num from sie.sie_invoices i where i.boe_header_id = 996718;
select * from sie.sie_invoice_dists d where d.invoice_id = 628213;
--静态界面JS是否显示例子
var sieBoeLineDetail = $("a[name='sieBoeLineDetail']");
if(isEntertain == 'Y'){
isEntertain_elem.attr("value","是");
sieBoeLineDetail.show();
}else{
isEntertain_elem.attr("value","否");
sieBoeLineDetail.hide();
}
======缓存服务器地址的配置文件,以后要是后台报错,可以想这个方面考虑
cacheConfig.properties
==================查询审批人的SQL
select * from SIE_BOE_HEADERS_WAIT_APPROVE_NEW_V sieboehead0_
where sieboehead0_.APPROVE_EMPLOYEE_ID = ?
and (sieboehead0_.BOE_NUM like 'SGS-130805-0003');
select * from apps.FBP_EMPLOYEES_VL v where v.EMPLOYEE_ID=50716
select * from sie.Sie_Boe_Trans_Approver a where a.BOE_HEADER_ID=692962
selectApprover.html 选择流程界面
======江苏配置多借多贷
CREATE_ACCOUNT_COMBINATION.sql 这个SQL文件
--判断是从头取还是从行取,返回 header 从头取,返回 line 从行取
CREATE FUNCTION CREATE_ACCOUNT_COMBINATION.get_header_line(billId BIGINT , debitOrCredit varchar(4000))
RETURNS VARCHAR(512)
begin ATOMIC
DECLARE rtCode varchar(512);
DECLARE boeTypeId BIGINT;
DECLARE countAll BIGINT;
SET boeTypeId=(select boe_type_id from sie_boe_headers
where boe_header_id = billId);
SET countAll=(select count(t.debit_credit) from sie_boe_types_accounts as t
where t.value_source in ('NOTICE_LINE', 'OPERATION_TYPE', 'BOE_INPUT')
and t.debit_credit = debitOrCredit and t.boe_type_id = boeTypeId);
if countAll > 0 then
set rtCode = 'line';
else
set rtCode = 'header';
end if;
return rtCode;
end@
只要是属于 'NOTICE_LINE', 'OPERATION_TYPE', 'BOE_INPUT' 这三种则是根据行来生成,多借多贷
对应界面配置 系统管理>系统配置>单据类型维护
贷方帐户组合 ---编辑 会计科目 和 成本中心 中的 值来源配置来的
------通过工具在对应的存储过程点击右键,有一个 execute procedure,然后输入相应的参数就可以执行,重新生成了。
=======修改打印界面的步骤
/EASTEST_GDYD_New/WebContent/apps/boe/gd_td_construction/td_constructionReport.htm
/EASTEST_GDYD_New/EAS_CJ901_GDYD/com/zte/eas/gdyd/business/print/model/CommonPrintModel.java
/EASTEST_GDYD_New/EAS_CJ901_GDYD/gdBillPrint.xml
CommonPrintService getFinancePrintModel解析打印的核心方法
--报账修改服务端
1. 先将src下面的wsdl下面将wsdl.SB_FI_EAS_ImportInvoiceAuthenticationInfoSrv 包下面的文件复制过来
2. 然后把要配置路径写在下面的文件里面 sb-services.properties
3. webContent 下面的wsdl下面将wsdl.SB_FI_EAS_ImportInvoiceAuthenticationInfoSrv 包下面的文件复制过来 同第一步
4. 同时用那个WSDL生成一个客户端,然后将代码弄进去
4. SBWSDLHandler.java CalendarDeserializer CalendarSerializer 看看差不差这个实体类
5. D:\WorkSpace2\EAS_JSBZ_BRANCH\EAS_CJ000_ShareLib\apps\WebContent\wsdl 下载XSD的文件
D:\WorkSpace2\EAS_JSBZ_BRANCH\EAS_CJ000_ShareLib\apps\WebContent\WEB-INF\classes\wsdl 读取wsdl的文件
---打包的路径如下:
easp_jsyd\wsdl 下载XSD的文件
easp_jsyd\WEB-INF\classes\wsdl 读取wsdl的文件
==报账系统事务控制
select lv.* from FBP.FBP_LOOKUP_VALUES lv where lv.lookup_code = 'SYNCH_FBP_IMPORT_TAX_RATE';
--查找那个账户组合对应的错误
select t.EMPLOYEE_ID,t.* from sie.SIE_BOE_HEADERS t where t.BOE_NUM = 'SGS-130825-0023'; -- EMPLOYEE_ID 46182 BOE_HEADER_ID 693404
select tt.CO_CODE,tt.* from APPS.FBP_EMPLOYEES_V tt where tt.EMPLOYEE_ID = 46182; --CO_CODE 2310
select * from sie.SIE_INVOICES ttt where ttt.BOE_HEADER_ID = 693404; --INVOICE_ID 645502 645503
select * from sie.SIE_INVOICE_DISTS t1 where t1.INVOICE_ID in (645502,645503);
相关推荐
工作流中的回退业务实现是流程管理中的一个重要环节,它涉及到流程执行的错误纠正和效率优化。回退,或者说Rollback WorkItem,是指在工作流系统中,参与者主动将已经执行过的任务从待办任务列表中回退,以便某个...
### 华为Mate10系统从EMUI9.0回退至EMUI8.X的详细教程 #### 回退背景及目的 随着智能手机系统的不断更新迭代,用户有时可能会遇到新系统的一些兼容性问题或者功能调整导致用户体验下降的情况。在这种情况下,用户...
【华为手机回退包】是针对华为特定型号设备,如荣耀4X全网通版,用于将设备系统从当前版本恢复到之前稳定版本的工具。这种回退包通常由华为官方提供,旨在解决新版本系统可能存在的问题,或者帮助用户因个人需求退回...
【描述】"华为荣耀3X回退包,适用于荣耀3X移动版使用,珍藏系列" 这句话表明这个回退包是专门针对华为荣耀3X移动版设计的,不适用于其他型号或运营商版本的设备。"珍藏系列"可能意味着这是官方发布的某个特殊版本或...
### 工作流回退模式设计分析 #### 回退的概念与重要性 在现代企业信息化建设中,工作流管理已成为提升工作效率、优化业务流程的关键技术之一。而在工作流的实际应用过程中,不可避免地会遇到需要回退的情况。所谓*...
本示例"Fragment回退栈小例子"将深入讲解如何管理Fragment的回退栈,以及其在实际应用中的工作原理。 首先,我们需要理解什么是回退栈(Back Stack)。在Android系统中,回退栈是一个LIFO(后进先出)的数据结构,...
1. **版本兼容性**:在回退前,要确保知道游戏引擎或平台支持的spine版本范围,以便选择合适的目标版本进行回退。 2. **数据丢失**:版本回退可能会导致某些新特性或优化丢失,因此在转换前备份原始文件是非常重要...
Fragment回退栈是Android开发中的一个重要概念,尤其是在处理复杂用户界面和导航时。在这个案例中,我们将深入探讨Fragment回退栈的工作原理、如何使用以及它在实际应用中的常见实践。 首先,Fragment是Android SDK...
在网页应用中,有时我们需要禁用用户使用退格键(Backspace)进行页面回退,以防止意外的数据丢失或功能误触发。标题提到的“jquery+js两种方式实现的禁止退格键回退”主要涉及JavaScript和jQuery这两种方法来阻止...
根据提供的文件信息,我们可以分析出该实验主要关注的是“回退N重传”(Go-Back-N Retransmission)机制在网络通信中的应用与实现。下面将详细介绍这一知识点及相关背景。 ### 回退N重传机制简介 #### 1. 定义 回...
胡长城(银狐999)在他的文章《工作流回退常用模式分析》中深入探讨了工作流回退的各种模式,这些模式反映了在不同场景下如何有效管理流程的回退。以下是对该文中提到的几种关键回退模式的详细解释: ### 1. 前言 ...
### SVN回退/更新/取消至某个版本命令详解 #### 一、SVN简介 Subversion(简称SVN)是一款开源版本控制系统软件,用于管理文件和目录,以及这些文件目录随时间推进产生的变更。SVN支持多种操作系统,包括Windows、...
这篇名为《10DB回退谐波控制.pdf》的文档是一个IEEE论文,它详细讨论了一种基于自生谐波注入的不对称漏极偏置的Doherty功率放大器(DPA),目的是实现功率放大器在更大回退范围内的高效率运行。Doherty功率放大器以...
1. **使用`git reset`**:这个命令可以将HEAD指针移动到指定的提交,从而回退到那个版本。`git reset --hard`是极具破坏性的操作,因为它会丢弃所有未提交的本地更改。使用`git reset --soft`或`git reset --mixed`...
### 升级回退概要设计详解 #### finwatch接口设计与实现 ##### 第一层设计:功能概述 finwatch接口的核心任务是在系统升级前后确保`back`目录的清理工作得以执行,这一步骤对于保证升级过程的顺利进行以及升级后...
这包括监听和处理手机的物理返回键事件,以及优化内置的导航回退功能。本文将详细介绍如何在Ionic 3中实现这些功能,特别是在处理子页面、弹出框和多层回退操作时。 首先,我们需要理解Ionic 3的导航架构。Ionic...
Fragment回退栈是Android系统管理Fragment的一种机制,它模拟了浏览器的后退功能,用户可以通过点击设备上的返回按钮或者程序逻辑来触发回退操作。下面将详细介绍Android Fragment回退栈的原理、使用方法以及实践中...
在网页开发中,"回退按钮解决方案"是一个重要的议题,特别是在使用Ajax技术时。Ajax(Asynchronous JavaScript and XML)允许我们在不刷新整个页面的情况下更新部分网页内容,这极大地提升了用户体验。然而,它也...
"回退”编码,也称为错误恢复编码或自动纠错编码,是信息理论和通信领域中的一个重要概念,主要用于提高数据传输的可靠性和准确性。在实际应用中,如网络传输、存储系统和编解码器设计中,回退编码扮演着关键角色。...