某客户项目上,由于客户的业务实体有百多个,财务和IT想开发一个程序批量打开所有会计期间,减少打开会计期间的工作量。 经过查看打开会计期间相关程序代码和官方提供相关API,开发并发请求实现批量打开会计期间。本
文章主要介绍批量打开各个会计期间的核心代码:
一、打开GL总账会计期间:
调用请求“期间 - 打开期间”打开GL总账会计期间,核心代码如下:
DECLARE
Ln_Sob_Id NUMBER;
Lv_Period_Name VARCHAR2(30);
Ln_Count NUMBER;
Ln_Request_Id NUMBER;
Ln_Ledger_Rec Gl_Ledgers%ROWTYPE;
Ln_Application_Id NUMBER := 101;
BEGIN
--职责初始化
Fnd_Global.Apps_Initialize(User_Id => 0, Resp_Id => 50722, Resp_Appl_Id => 222);
--验证总账期间是否打开
SELECT COUNT(1)
INTO Ln_Count
FROM Gl_Period_Statuses Gps
WHERE Gps.Application_Id = Ln_Application_Id --GL
AND Gps.Set_Of_Books_Id = Ln_Sob_Id --账套ID
AND Gps.Period_Name = Lv_Period_Name
AND Gps.Closing_Status = 'O';
IF (Ln_Count > 0) THEN
Dbms_Output.Put_Line('会计期间【' || Lv_Perio