壹佰网|ERP100 - 企业信息化知识门户

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1122|回复: 0

[二次开发] 发票验证请求报错MSG-00000,REP-1419,REP-0069,REP-57054

[复制链接]
发表于 2012/3/13 10:28:35 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。如果您注册时有任何问题请联系客服QQ: 83569622  。

您需要 登录 才可以下载或查看,没有帐号?注册

x
客户化的  发票验证请求,运行报错,日志如下:

  +---------------------------------------------------------------------------+
应付帐款: Version : 12.0.0
Copyright (c) 1979, 1999, Oracle Corporation. All rights reserved.
APPRVL module:XXX_发票验证
+---------------------------------------------------------------------------+
当前的系统时间为 XXXXXXX
+---------------------------------------------------------------------------+

+-----------------------------
| 正在启动并发执行程序...
+-----------------------------
变元
------------
p_org_id='81'
p_option='All'
p_sob_id='2021'
p_trace_flag='N'
p_commit_size='1000'
------------
APPLLCSP Environment Variable set to :
Current NLS_LANG and NLS_NUMERIC_CHARACTERS Environment Variables are :
SIMPLIFIED CHINESE_CHINA.UTF8
'.,'
输出口令:
MSG-00000: When Others:User-Defined Exception
REP-1419: 'beforereport': PL/SQL 程序中止。
REP-0069: 内部错误
REP-57054: 已终止进程中的作业:已终止, 错误为:
REP-1419: MSG-00000: When Others:User-Defined Exception
REP-1419: 'beforereport': PL/SQL 程序中止。

Report Builder: Release 10.1.2.2.0 - Production on 1 03 XXXX
Copyright (c) 1982, 2005, Oracle.  All rights reserved.

+---------------------------------------------------------------------------+
FND_FILE 中日志消息开始
+---------------------------------------------------------------------------+
此会计分类代码与所有项目类别代码均不关联。
User-Defined Exception
+---------------------------------------------------------------------------+
FND_FILE 中日志消息结束
+---------------------------------------------------------------------------+
程序 退出时出现状态 1
在为并发请求 11864236 运行 Oracle 报表管理系统时,并发管理器遇到了一个错误。
有关详情,请复查您的并发请求日志和(或)报表输出文件。

+---------------------------------------------------------------------------+
正在执行请求完成选项...

已完成执行请求完成选项。
+---------------------------------------------------------------------------+
已完成并发请求
当前的系统时间为 XXXX
+---------------------------------------------------------------------------+



before report中的部分代码为:

function BeforeReport return boolean is
begin
/* This is the before report trigger for Oracle Payables Release 10 reports  */
DECLARE
  init_failure    EXCEPTION;  
BEGIN
  /* Init AOL - only necessary if AOL user exits are called           */
  /* If this is deleted, also delete SRWEXIT in After Report Trigger! */
  SRW.USER_EXIT('FND SRWINIT');
  IF (_debug_switch in ('y','Y')) THEN
     SRW.MESSAGE('1','After SRWINIT');
  END IF;

  /*Get company name */
  IF (get_company_name != TRUE) THEN
    RAISE init_failure;
  END IF;
  IF (_debug_switch in ('y', 'Y')) THEN
    SRW.MESSAGE('2', 'After Get Company Name');
  END IF;
  
  /* Get NLS messages */
   IF (get_nls_strings != TRUE) THEN
      RAISE init_failure;
   END IF;
   IF (_debug_switch in ('y','Y') )THEN
      SRW.MESSAGE('3','After Get NLS Strings');
   END IF;
   /* Get Operating Unit */
   IF (get_operating_unit != TRUE) THEN
      RAISE init_failure;
   END IF;
   IF (_debug_switch in ('y','Y') )THEN
      SRW.MESSAGE('24','After Get Operating Unit');
   END IF;
    /* Get User Name */
   IF (get_user_name != TRUE) THEN
      RAISE init_failure;
   END IF;
   IF (_debug_switch in ('y','Y') )THEN
      SRW.MESSAGE('24','After Get User Name');
   END IF;

  /* Select invoices for Batch approval and call the online approval
      package for each invoice selected */
  IF (batch_approval != TRUE) THEN -- Call report level PL/SQL function
     RAISE init_failure;
  END IF;
  IF (_debug_switch in ('y','Y')) THEN
     SRW.MESSAGE('30','After Batch Validation');
  END IF;
  
  /* Getting the Batch Name from AP_BATCHES table -Bug 1944393 */
  --
  -- bug 1954691 add IF stmt to execute SELECT when _inv_batch_id IS NOT NULL and
  -- add the EXCEPTION clause
  IF (_inv_batch_id IS NOT NULL)  THEN
    IF (_debug_switch in ('y','Y')) THEN
       SRW.MESSAGE('31','After Batch Validation: Get Batch Name');
    END IF;
    BEGIN
     SELECT batch_name
     INTO   :c_batch_name
     FROM   ap_batches_all
     WHERE  batch_id = _inv_batch_id;

     EXCEPTION
     WHEN NO_DATA_FOUND THEN
         NULL;
    END;
  END IF;
  If (_invoice_id is Not Null)  Then
    IF (_debug_switch in ('y','Y')) THEN
       SRW.MESSAGE('31','After Batch Validation: Get Invoice Num');
    END IF;
   Begin
   Select invoice_num
     into :cp_invoice_number
     from ap_invoices
     where invoice_id = _invoice_id;
   Exception
   When No_data_found Then
   null;
   End;

  End If;

  If (_vendor_id IS NOT NULL) Then
    IF (_debug_switch in ('y','Y')) THEN
       SRW.MESSAGE('31','After Batch Validation: Get Supplier Name');
    END IF;
   Begin
   SELECT vendor_name
     INTO :cp_supplier_name
     FROM po_vendors
    WHERE vendor_id = _vendor_id;
   Exception
   When No_data_found Then
   null;
   End;

  End If;

  /* If the debug switch is turned on, do an SRW.BREAK to show current */
  /* parameter and column assignments.                                 */
  IF (_debug_switch in ('y','Y')) THEN
     SRW.BREAK;
  END IF;


  /* If there have been no exceptions so far, RETURN(TRUE) */
  RETURN (TRUE);
/* Exception Handler Section.  If there is an exception, abort program */
EXCEPTION
   
  WHEN   OTHERS  THEN
    SRW.MESSAGE('0','When Others:'||SQLERRM);
   
    RAISE SRW.PROGRAM_ABORT;
END;
  return (TRUE);
end;


其中 的 batch_APPROVAL调用的是
FUNCTION batch_approval RETURN BOOLEAN
IS
BEGIN
  IF (AP_APPROVAL_PKG.BATCH_APPROVAL
                (p_run_option  => _OPTION,
   p_sob_id               => :P_SOB_ID,
                 p_inv_start_date       => :P_INV_START_DATE,
                 p_inv_end_date         => :P_INV_END_DATE,
                 p_inv_batch_id         => :P_INV_BATCH_ID,
                 p_vendor_id            => :P_VENDOR_ID,
                 p_pay_group            => :P_PAY_GROUP,
                 p_invoice_id           => :P_INVOICE_ID,
                 p_entered_by           => :P_ENTERED_BY,
                 p_debug_switch         => :P_DEBUG_SWITCH,
                 p_conc_request_id      => :P_CONC_REQUEST_ID,
                 p_commit_size          => :P_COMMIT_SIZE,
                 p_org_id               => :P_ORG_ID,
                 p_report_holds_count   => :C_REP_COUNT) <> TRUE) THEN
     RETURN FALSE;
  END IF;
   
  RETURN TRUE;
EXCEPTION
  WHEN OTHERS THEN
    SRW.MESSAGE('101','Error occured in BATCH_APPROVAL()');
    SRW.MESSAGE('102','Error Code : '||SQLCODE);
    SRW.MESSAGE('103','Error Message : '||SQLERRM);
    RETURN FALSE;
END;



请问各位前辈 如何知道问题的原因 和解决方法么?谢谢

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|小黑屋|手机版|壹佰网 ERP100 ( 京ICP备19053597号-2 )

Copyright © 2005-2012 北京海之大网络技术有限责任公司 服务器托管由互联互通
手机:13911575376
网站技术点击发送消息给对方83569622   广告&合作 点击发送消息给对方27675401   点击发送消息给对方634043306   咨询及人才点击发送消息给对方138011526

GMT+8, 2025/11/29 06:04 , Processed in 0.012475 second(s), 14 queries , File On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表