返回顶部
首页 > 资讯 > 精选 >不能创建会计分录
  • 381
分享到

不能创建会计分录

2023-06-05 11:06:47 381人浏览 八月长安
摘要

转自:Http://blog.csdn.net/yy5512/article/details/4404772不能创建会计分录   打补丁:6826219和6901404处理原理:然后提交<<创建会计科目>

转自:Http://blog.csdn.net/yy5512/article/details/4404772

不能创建会计分录   
--------------------------------------------------------------------------------
打补丁:6826219和6901404

处理原理:
如果创建会计分录失败,只要把xla_events.event_status_code和xla_events.process_status_code都改成'U',
然后提交<<创建会计科目>>请求或者直接在**界面创建会计分录,
创建会计分录程序不管xla_ae_headers和xla_ae_lines是否有与xla_events相应记录,
都会重新创建xla_ae_headers和xla_ae_lines记录

-----------------------------------------------------------------------------
处理应付**不能创建会计分录例子一:
create table xla_events_bkp
as select * from xla_events
where event_id in (select event_id  from xla_events e
                  where e.application_id = 200
                  and e.event_status_code ='P'
                and not exists ( select 1 from xla_ae_headers h
                                where e.event_id = h.event_id ));
UPDATE xla_events
SET event_status_code = 'U',
  process_status_code = 'U'
WHERE event_id IN (select event_id  from xla_events e
                  where e.application_id = 200
                  and e.event_status_code ='P'
                  and not exists ( select 1 from xla_ae_headers h
                                    where e.event_id = h.event_id ));
运行<<创建会计科目>>请求
-----------------------------------------------------------------------------
处理应付**不能创建会计分录例子二:
**号200803005(已取消) 部分创建会计分录,付款号1102000006 不能创建会计分录
因为先有**再有付款,所以思路
1.先试图创建**的会计分录
SELECT invoice_num,invoice_id,doc_sequence_id,doc_sequence_value FROM ap_invoices_all
WHERE invoice_num = '200803005'

select event_id,ae_header_id,a.* from xla_ae_headers a
WHERE doc_sequence_id = 130
AND doc_sequence_value = '210401983'

SELECT event_id,a.* FROM xla_ae_headers a
WHERE event_id IN (70300,80395)
找到那条xla_ae_headers记录没有创建会计分录的event_id=70300,ae_header_id=57016

DELETE FROM xla_ae_lines
WHERE ae_header_id = 57016

DELETE FROM xla_ae_headers
WHERE ae_header_id = 57016

UPDATE xla_events
SET event_status_code = 'U',
  process_status_code = 'U'
WHERE event_id =  70300
运行<<创建会计科目>>请求
2.再试图创建付款的会计分录
SELECT * FROM xla_ae_headers
WHERE DESCRIPTION LIKE '%1102000006%'
  AND je_cateGory_name = 'Payments'

DELETE xla_ae_lines
WHERE ae_header_id IN (101270,101271)

DELETE xla_ae_headers
WHERE ae_header_id IN (101270,101271)

UPDATE xla_events
SET event_status_code = 'U',
  process_status_code = 'U'
WHERE event_id IN (70302,80394)
运行<<创建会计科目>>请求
-----------------------------------------------------------------------------
处理应付**不能创建会计分录例子三
ET1104应付 **号8000480849/859/862没有创建会计分录的原因是:
该**行1和 **行2 已放弃.

损益行中的帐户无效。如果您已定义损益日记帐行类型,请在日记帐行定义中检查附加至该类型的帐户推导规则。否则,请检查映射至会计属性“汇兑收益帐户”和“汇兑损失帐户”
的来源值。
无法创建帐户,因为 &OWNER 拥有的帐户推导规则 &COMPONENT_NAME 的所有条件均不满足。请更新 &COMPONENT_NAME 的条件,或分配其它帐户推导规则至 &PAD_OWNER 拥有的
应用产品会计定义 &PAD_NAME.
子分类帐会计无法使用 &OWNER 拥有的帐户推导规则 &COMPONENT_NAME 导出会计科目代码组合。请复核帐户推导规则,并确保对于为此事务处理传送的来源值,此规则可以导出
有效的会计科目弹性域组合。

请根据以上错误信息,检查 当**行被放弃时,汇兑损益 相关的帐户推导规则 ,映射至会计属性“汇兑收益帐户”和“汇兑损失帐户”的来源值,

但是顾问没有检查出来设置是否有问题。这也许是oracle的一个bug.

临时处理方法:
直接在表中删除了放弃行的**分配行和**行
CREATE TABLE AP_INVOICE_DISTRIBUTIONS_0427
AS SELECT * FROM AP_INVOICE_DISTRIBUTIONS_all
WHERE invoice_id = 15761 and invoice_line_number IN (1,2) 

SELECT * FROM AP_INVOICE_DISTRIBUTIONS_0427

CREATE TABLE AP_INVOICE_LINES_0427 as
SELECT * FROM AP_INVOICE_LINES_all
WHERE invoice_id = 15761
  AND line_number IN (1,2)
  
SELECT * FROM AP_INVOICE_LINES_0427
  
DELETE FROM AP_INVOICE_DISTRIBUTIONS_all
WHERE invoice_id = 15761 and invoice_line_number IN (1,2) 

DELETE FROM AP_INVOICE_LINES_all
WHERE invoice_id = 15761
  AND line_number IN (1,2)
直接在**界面创建会计分录

最终处理方法:建议用户提tar由oracle官方解决
-----------------------------------------------------------------------------
处理应付**不能创建会计分录例子四:
这张**2008030888.不能创建会计分录的原因是 没有录入**的分配信息
-----------------------------------------------------------------------------
处理应付**不能创建会计分录例子五:
标准**核销预付款**后,部分会计分录不能创建。已入帐显示:部分
措施:
先在**界面上验证相关**,然后在**界面上创建会计分录
-----------------------------------------------------------------------------
处理应付**不能创建会计分录例子六:
骆勇平员工由于EBS bug,再导入费用报表后,产生两个骆勇平供应商,经过删除其中一个供应商和供应商地点后
产生的出来会计分录信息居然还有被删除供应商的ID,供应商地点ID
措施:
找到了xla_ae_lines.party_id(这里找到有些会计分录的创建是根据以前会计分录记录来创建的,比如ref_event_id,ref_ae_header_id)
于是将xla_ae_lines.party_id,xla_ae_lines.party_site_id统统改成了现在的骆勇平供应商ID和供应商地点ID
运行cux_fix_invoice_accounting_pkg.fix_invoices程序,修正数据
运行<<创建会计科目>>请求
----------------------------------------------------------------------------
修正数据的程序包cux_fix_invoice_accounting_pkg:
CREATE OR REPLACE PACKAGE cux_fix_invoice_accounting_pkg IS
  PROCEDURE fix_invoices(p_invoice_id IN NUMBER);
  PROCEDURE fix_payments(p_payment_num IN VARCHAR2);
END;
/
CREATE OR REPLACE PACKAGE BODY cux_fix_invoice_accounting_pkg IS
  PROCEDURE fix_invoices(p_invoice_id IN NUMBER) IS
    CURSOR cur_invoice(i_cur_invoice_id IN NUMBER) IS
      SELECT doc_sequence_id,doc_sequence_value FROM ap_invoices_all
        WHERE invoice_id = i_cur_invoice_id;
    CURSOR cur_xla_ae_headers(i_cur_doc_sequence_id IN NUMBER,i_cur_doc_sequence_value IN NUMBER) IS
      SELECT event_id,ae_header_id from xla_ae_headers
       WHERE doc_sequence_id = i_cur_doc_sequence_id
         AND doc_sequence_value = i_cur_doc_sequence_value;
  BEGIN
    FOR rec_invoice IN cur_invoice(p_invoice_id) LOOP
      FOR rec_xla_ae_headers IN cur_xla_ae_headers(rec_invoice.doc_sequence_id,rec_invoice.doc_sequence_value) LOOP
        INSERT  INTO xla_ae_lines080421
          SELECT * FROM xla_ae_lines
            WHERE ae_header_id = rec_xla_ae_headers.ae_header_id;
        INSERT INTO xla_ae_headers080421
          SELECT * FROM xla_ae_headers
          WHERE ae_header_id = rec_xla_ae_headers.ae_header_id;
        DELETE xla_ae_lines
          WHERE ae_header_id = rec_xla_ae_headers.ae_header_id;
        DELETE xla_ae_headers
          WHERE ae_header_id = rec_xla_ae_headers.ae_header_id;
      END LOOP;
    END LOOP;
    
    UPDATE xla_events
    SET event_status_code = 'U',process_status_code = 'U'
    WHERE event_id IN (SELECT event_id  FROM xla_events e
                         WHERE e.application_id = 200
                           AND e.event_status_code ='P'
                           AND NOT EXISTS (SELECT 1 FROM xla_ae_headers h
                                             WHERE e.event_id = h.event_id ));
    COMMIT;
  END;
  
  PROCEDURE fix_payments(p_payment_num IN VARCHAR2) IS
    CURSOR cur_xla_ae_headers(i_cur_payment_num IN NUMBER) IS
      SELECT event_id,ae_header_id from xla_ae_headers
       WHERE description LIKE '%'||i_cur_payment_num||'%'
         AND je_category_name = 'Payments';
  BEGIN
    FOR rec_xla_ae_headers IN cur_xla_ae_headers(p_payment_num) LOOP
      INSERT  INTO xla_ae_lines080421
        SELECT * FROM xla_ae_lines
          WHERE ae_header_id = rec_xla_ae_headers.ae_header_id;
      INSERT INTO xla_ae_headers080421
        SELECT * FROM xla_ae_headers
        WHERE ae_header_id = rec_xla_ae_headers.ae_header_id;
      DELETE xla_ae_lines
        WHERE ae_header_id = rec_xla_ae_headers.ae_header_id;
      DELETE xla_ae_headers
        WHERE ae_header_id = rec_xla_ae_headers.ae_header_id;
    END LOOP;
    
    UPDATE xla_events
    SET event_status_code = 'U',process_status_code = 'U'
    WHERE event_id IN (SELECT event_id  FROM xla_events e
                         WHERE e.application_id = 200
                           AND e.event_status_code ='P'
                           AND NOT EXISTS (SELECT 1 FROM xla_ae_headers h
                                             WHERE e.event_id = h.event_id ));
    COMMIT;
  END;
END;
/
--=============================================================================
处理应收事务处理不能创建会计分录例子:
贷项通知单11040000002921不能创建会计分录

通过界面找到贷项通知单11040000002921对应的原始**11040000002801,
发现11040000002801没有创建会计分录,在界面上将11040000002801创建会计分录成功。

贷项通知单11040000002921按完成按钮后,发现不能保存,做跟踪约束值,
发现跟踪文件的最后几句
*******************************************************************************

SELECT AE.EVENT_ID , AE.EVENT_DATE , AE.EVENT_STATUS_CODE, AE.EVENT_TYPE_CODE 
FROM
XLA_EVENTS AE, XLA_TRANSACTION_ENTITIES_UPG XT, RA_CUSTOMER_TRX_ALL TRX 
  WHERE TRX.CUSTOMER_TRX_ID = :B3 AND NVL(XT.SOURCE_ID_INT_1,-99) = 
  TRX.CUSTOMER_TRX_ID AND XT.ENTITY_CODE = 'TRANSACTIONS' AND XT.LEDGER_ID = 
  TRX.SET_OF_BOOKS_ID AND XT.ENTITY_ID = AE.ENTITY_ID AND XT.APPLICATION_ID = 
  222 AND AE.APPLICATION_ID = 222 AND NVL(AE.EVENT_DATE, TO_DATE('01-01-1900',
  'DD-MM-YYYY')) = :B2 AND AE.EVENT_STATUS_CODE <> 'P' AND :B1 = 
  AE.EVENT_TYPE_CODE 


call     count       cpu    elapsed       disk      query    current        rows
------- ------  -------- ---------- ---------- ---------- ----------  ----------
Parse        1      0.00       0.00          0          0          0           0
Execute      1      0.00       0.00          0          0          0           0
Fetch        1      0.00       0.00          0         11          2           1
------- ------  -------- ---------- ---------- ---------- ----------  ----------
total        3      0.00       0.00          0         11          2           1

Misses in library cache during parse: 0
Optimizer mode: ALL_ROWS
Parsing user id: 44     (recursive depth: 1)
*******************************************************************************

SELECT MESSAGE_TEXT, MESSAGE_NUMBER, TYPE, FND_LOG_SEVERITY, CATEGORY, 
  SEVERITY 
FROM
FND_NEW_MESSAGES M, FND_APPLICATION A WHERE :B3 = M.MESSAGE_NAME AND :B2 = 
  M.LANGUAGE_CODE AND :B1 = A.APPLICATION_SHORT_NAME AND M.APPLICATION_ID = 
  A.APPLICATION_ID


call     count       cpu    elapsed       disk      query    current        rows
------- ------  -------- ---------- ---------- ---------- ----------  ----------
Parse        0      0.00       0.00          0          0          0           0
Execute      1      0.00       0.00          0          0          0           0
Fetch        1      0.00       0.00          0          0          0           0
------- ------  -------- ---------- ---------- ---------- ----------  ----------
total        2      0.00       0.00          0          0          0           0

Misses in library cache during parse: 0
Optimizer mode: ALL_ROWS
Parsing user id: 44     (recursive depth: 1)
********************************************************************************

ROLLBACK TO AR_PAYMENT_SCHEDULE

SELECT AE.EVENT_ID , AE.EVENT_DATE , AE.EVENT_STATUS_CODE, AE.EVENT_TYPE_CODE FROM XLA_EVENTS AE, XLA_TRANSACTION_ENTITIES_UPG XT, RA_CUSTOMER_TRX_ALL TRX WHERE TRX.CUSTOMER_TRX_ID = :B3 AND NVL(XT.SOURCE_ID_INT_1,-99) = TRX.CUSTOMER_TRX_ID AND XT.ENTITY_CODE = 'TRANSACTIONS' AND XT.LEDGER_ID = TRX.SET_OF_BOOKS_ID AND XT.ENTITY_ID = AE.ENTITY_ID AND XT.APPLICATION_ID = 222 AND AE.APPLICATION_ID = 222 AND NVL(AE.EVENT_DATE, TO_DATE('01-01-1900','DD-MM-YYYY')) = :B2 AND AE.EVENT_STATUS_CODE <> 'P' AND :B1 = AE.EVENT_TYPE_CODE 
END OF STMT
PARSE #358:c=0,e=53,p=0,cr=0,cu=0,mis=0,r=0,dep=1,og=1,tim=4237611529714
BINDS #358:
kkscoacd
Bind#0
  oacdty=02 mxl=22(21) mxlc=00 mal=00 scl=00 pre=00
  oacflg=13 fl2=206001 frm=00 csi=00 siz=24 off=0
  kxsbbbfp=110ad52a0  bln=22  avl=04  flg=09
  value=22716
Bind#1
  oacdty=12 mxl=07(07) mxlc=00 mal=00 scl=00 pre=00
  oacflg=13 fl2=206001 frm=00 csi=00 siz=8 off=0
  kxsbbbfp=110ad52d0  bln=07  avl=07  flg=09
  value="5/23/2008 0:0:0"
Bind#2
  oacdty=01 mxl=32(09) mxlc=00 mal=00 scl=00 pre=00
  oacflg=13 fl2=206001 frm=01 csi=871 siz=32 off=0
  kxsbbbfp=110ad4a60  bln=32  avl=09  flg=09
  value="CM_CREATE"
将具体参数值代入sql语句,得到:
SELECT AE.EVENT_ID, AE.EVENT_DATE, AE.EVENT_STATUS_CODE, AE.EVENT_TYPE_CODE
  FROM XLA_EVENTS                   AE,
       XLA_TRANSACTION_ENTITIES_UPG XT,
       RA_CUSTOMER_TRX_ALL          TRX
WHERE TRX.CUSTOMER_TRX_ID = 22716
   AND NVL(XT.SOURCE_ID_INT_1, -99) = TRX.CUSTOMER_TRX_ID
   AND XT.ENTITY_CODE = 'TRANSACTIONS'
   AND XT.LEDGER_ID = TRX.SET_OF_BOOKS_ID
   AND XT.ENTITY_ID = AE.ENTITY_ID
   AND XT.APPLICATION_ID = 222
   AND AE.APPLICATION_ID = 222
   AND NVL(AE.EVENT_DATE, TO_DATE('01-01-1900', 'DD-MM-YYYY')) = to_date('2008-05-23 00:00:00','YYYY-MM-DD HH24:MI:SS')
   AND AE.EVENT_STATUS_CODE <> 'P'
   AND 'CM_CREATE'= AE.EVENT_TYPE_CODE
也就是说在按完成按钮是不应该出现以上SQL语句有值,即XLA_EVENTS.EVENT_STATUS_CODE <> 'P'的记录应该不存在

措施:
1.AE.EVENT_STATUS_CODE,ae.process_status_code暂时都改为'P', 
然后再按完成按钮,这次保存成功。

2.将AE.EVENT_STATUS_CODE,ae.process_status_code都改回'U',
检查 xla_ae_headers,xla_ae_lines是否有数据,
SELECT * FROM xla_ae_headers--no row
WHERE event_id IN (162517,162518)
SELECT * FROM xla_ae_lines--no row
在界面上将11040000002801创建会计分录成功

--结束END--

本文标题: 不能创建会计分录

本文链接: https://lsjlt.com/news/242678.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 不能创建会计分录
    转自:http://blog.csdn.net/yy5512/article/details/4404772不能创建会计分录   打补丁:6826219和6901404处理原理:然后提交<<创建会计科目>...
    99+
    2023-06-05
  • 云服务器会计分录
    在云服务器中,数据库、计算资源和网络设备等基础设施都被部署在云服务器上,用户只需要使用相应的API或脚本编程接口与云服务器进行交互,即可快速实现应用程序的部署和运行。这种新型的服务器架构使得用户能够以更加灵活和高效的方式管理和控制自己的业务...
    99+
    2023-10-28
    分录 会计 服务器
  • 阿里云服务器会计分录
    阿里云服务器会计分录: 假设我们有一个名为“AliceMind”的云服务器,该云服务器提供了阿里云的远程访问功能。现在我们要计算我们拥有的阿里云服务器中的所有数据,并在将这些数据提交给阿里云后进行分类汇总。 以下是阿里云服务器中的会计分录...
    99+
    2023-10-26
    阿里 分录 会计
  • 购买云服务器会计分录
    购买云服务器可以分为以下几种情况: 购买虚拟主机:购买虚拟主机是将服务器托管到云平台上,使服务器的性能、功能、稳定性等都得到提高,从而降低成本和运营风险,提高用户体验。 购买云存储服务:购买云存储服务是将客户的数据存储到云平台上,如 D...
    99+
    2023-10-26
    分录 会计 服务器
  • 【MySQL】不允许你不会创建高级联结
    🎬 博客主页:博主链接 🎥 本文由 M malloc 原创,首发于 CSDN🙉 🎄 学习专栏推荐:LeetCode刷题集! 🏅 欢迎点赞 👍...
    99+
    2023-08-17
    mysql sql 数据库
  • Navicat能不能创建数据库
    小编给大家分享一下Navicat能不能创建数据库,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!Navicat 可以创建数据库吗?Navicat当然可以创建数据库。Navicat 提供强大的工具...
    99+
    2024-04-02
  • php fopen()能不能创建文件
    这篇文章主要介绍“php fopen()能不能创建文件”,在日常操作中,相信很多人在php fopen()能不能创建文件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php fopen()能不能创建文件”的疑...
    99+
    2023-06-20
  • root创建目录权限不足,root创建目录权限不足怎么解决
    linux root权限不够 不存在这种情况。Linux 下 root 用户的权限最大,不存在 root 权限不够的情况。 你的问题是否是普通用户执行命令时权限不够,需要 root 权限? 可以使用 sudo + 命令,以 root 用户身...
    99+
    2023-09-06
    linux 运维 服务器
  • java继承中会不会自动创建父类对象
    本篇文章为大家展示了java继承中会不会自动创建父类对象,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1.调用父类构造方法是真的,但是根本没有创建父类对象,只不过是调用父类构造方法来初始化属性。如果...
    99+
    2023-05-31
    java 父类对象 中会
  • Java File类 mkdir 不能创建多层目录的解决
    目录Java File类 mkdir 不能创建多层目录注意mkdirs创建文件失败原因解决Java File类 mkdir 不能创建多层目录 File f = new File(...
    99+
    2024-04-02
  • mysql视图能不能创建索引
    这篇文章主要介绍“mysql视图能不能创建索引”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“mysql视图能不能创建索引”文章能帮助大家解决问题。 ...
    99+
    2024-04-02
  • 网站原创文章为什么会不收录
    这篇文章主要为大家展示了“网站原创文章为什么会不收录”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“网站原创文章为什么会不收录”这篇文章吧。  首先我们要了解百度收录网站的几个条件。  1、网站主...
    99+
    2023-06-10
  • 购买阿里云服务器会计分录
    如果您想购买阿里云服务器,通常可以按照以下步骤进行会计分录: 确认付款方式和费用。您需要选择付款方式并确认收款信息。 选择服务器硬件或软件。您可以选择自行购买服务器,也可以在阿里云官网或者其他在线平台上购买。通常选择自行购买服务器会更可...
    99+
    2023-10-26
    阿里 分录 会计
  • 用JS创建一个录屏功能
    OBS studio很酷,但 JavaScript 更酷,现在,我们用 JavaScript 创建自己的录屏功能。 首先,创建一个HTML文件,包含记录按钮和一个播放标签, 内容如下...
    99+
    2024-04-02
  • git创建不存在的分支
    近年来,git已成为开发者工作中不可或缺的版本控制工具,可是git操作中也有些许难点,比如如何创建不存在的分支。本文将为你详细讲解如何在git中创建不存在的分支,希望能对你有所帮助。Git分支简介在开始学习如何创建不存在的分支之前,首先需要...
    99+
    2023-10-22
  • 购买云服务器会计分录怎么做?
    购买云服务器可以按照以下步骤进行会计分录: 确认所需的服务:需要购买哪些云服务器服务才能满足你的使用需求这些服务提供商是否提供了可用于购买的服务清单,例如IaaS、PaaS、SaaS等是否提供了价格、可用性、服务质量等信息,这些信息可以...
    99+
    2023-10-26
    怎么做 分录 会计
  • 购买云服务器会计分录如何做
    购买云服务器会计分录的做法可以分为以下几步: 确认购买信息,包括服务器型号、数量和价格等。 选择购买渠道。可以通过网上商城、云服务器代理商或者云主机等方式购买云服务器。 选择服务器品牌。不同品牌的服务器在价格、性能、可扩展性等方面可能存...
    99+
    2023-10-26
    如何做 分录 会计
  • java如何实现目录不存在创建目录
    在Java中,可以使用`mkdir()`方法来创建目录。该方法是`File`类的一个方法,需要传入一个文件路径作为参数。如果目录不存...
    99+
    2023-09-22
    java
  • jdbc不能创建表如何解决
    JDBC是Java数据库连接的标准接口,负责连接Java应用程序和数据库。JDBC本身不负责创建表,而是通过执行SQL语句来操作数据...
    99+
    2023-09-28
    jdbc
  • 购买云服务器会计分录如何做账
    购买云服务器时,你可能会遇到以下会计分录: 购买服务器:你需要提供相关的财务信息,例如服务器的成本、价格和日期等,才能进行相应的财务处理。 使用云服务器上的应用程序:你需要为云服务器的应用程序购买相应的许可证,例如使用许可证ID、密钥和...
    99+
    2023-10-26
    如何做 分录 会计
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作