Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql Oracle报告(查询和报告触发器)_Sql_Oracle_Plsql_Oraclereports_Oracle Apps - Fatal编程技术网

Sql Oracle报告(查询和报告触发器)

Sql Oracle报告(查询和报告触发器),sql,oracle,plsql,oraclereports,oracle-apps,Sql,Oracle,Plsql,Oraclereports,Oracle Apps,查询是:- 在它的报告触发器中有这个after参数形式 /*格式于2016年5月18日上午10:37:19 QP5 v5.163.1008.3004*/ FUNCTION AfterPForm RETURN BOOLEAN IS LV_DATE_FROM VARCHAR2 (100); LV_DATE_TO VARCHAR2 (100); BEGIN IF :P_BRANCH_CODE IS NOT NULL THEN :ADD_WHERE_

查询是:-

在它的报告触发器中有这个after参数形式

/*格式于2016年5月18日上午10:37:19 QP5 v5.163.1008.3004*/

FUNCTION AfterPForm
   RETURN BOOLEAN
IS
   LV_DATE_FROM   VARCHAR2 (100);
   LV_DATE_TO     VARCHAR2 (100);
BEGIN
   IF :P_BRANCH_CODE IS NOT NULL
   THEN
      :ADD_WHERE_CLAUSE :=
         :ADD_WHERE_CLAUSE || ' AND GCC.SEGMENT10 = :P_BRANCH_CODE ';
   END IF;


   /*        IF :P_DATE_FROM IS NOT NULL AND :P_DATE_TO IS NOT NULL THEN
            :ADD_WHERE_CLAUSE  := :ADD_WHERE_CLAUSE   || ' AND TRUNC(GJH.DEFAULT_EFFECTIVE_DATE) BETWEEN TO_CHAR(TO_DATE(:P_DATE_FROM,''YYYY/MM/DD HH24:MI:SS''),''DD-MON-YYYY'') AND TO_CHAR(TO_DATE(:P_DATE_TO,''YYYY/MM/DD HH24:MI:SS''),''DD-MON-YYYY'') ';
            :ADD_WHERE_CLAUSE1 := :ADD_WHERE_CLAUSE1 || ' and trunc(gjh1.DEFAULT_EFFECTIVE_DATE) < to_char(to_date(:P_DATE_FROM,''YYYY/MM/DD HH24:MI:SS''),''DD-MON-YYYY'') ';
            :ADD_WHERE_CLAUSE3 := :ADD_WHERE_CLAUSE3 || ' and trunc(gjh3.DEFAULT_EFFECTIVE_DATE) < to_char(to_date(:P_DATE_FROM,''YYYY/MM/DD HH24:MI:SS''),''DD-MON-YYYY'') ';
            :ADD_WHERE_CLAUSE4  := :ADD_WHERE_CLAUSE4   || ' AND TRUNC(GJH4.DEFAULT_EFFECTIVE_DATE) BETWEEN TO_CHAR(TO_DATE(:P_DATE_FROM,''YYYY/MM/DD HH24:MI:SS''),''DD-MON-YYYY'') AND TO_CHAR(TO_DATE(:P_DATE_TO,''YYYY/MM/DD HH24:MI:SS''),''DD-MON-YYYY'') ';
       END IF;
       */



   IF :P_SOURCE IS NOT NULL
   THEN
      IF :P_SOURCE = 'ETL'
      THEN
         :ADD_WHERE_CLAUSE :=
            :ADD_WHERE_CLAUSE
            || ' and gjh.JE_SOURCE = ''1'' and gjh.JE_CATEGORY = ''1'' and gjh.REVERSED_JE_HEADER_ID is null and gjh.JE_HEADER_ID not in ( select distinct nvl(a.REVERSED_JE_HEADER_ID,0)from gl_je_headers a where a.JE_HEADER_ID <> gjh.JE_HEADER_ID )';
         :ADD_WHERE_CLAUSE1 :=
            :ADD_WHERE_CLAUSE1
            || ' and gjh1.JE_SOURCE = ''1'' and gjh1.JE_CATEGORY = ''1''and gjh1.REVERSED_JE_HEADER_ID is null and gjh1.JE_HEADER_ID not in ( select distinct nvl(a.REVERSED_JE_HEADER_ID,0)from gl_je_headers a where a.JE_HEADER_ID <> gjh1.JE_HEADER_ID ) ';
         :ADD_WHERE_CLAUSE3 :=
            :ADD_WHERE_CLAUSE3
            || ' and gjh3.JE_SOURCE = ''1'' and gjh3.JE_CATEGORY = ''1''and gjh3.REVERSED_JE_HEADER_ID is null and gjh3.JE_HEADER_ID not in ( select distinct nvl(a.REVERSED_JE_HEADER_ID,0)from gl_je_headers a where a.JE_HEADER_ID <> gjh3.JE_HEADER_ID ) ';
         :ADD_WHERE_CLAUSE4 :=
            :ADD_WHERE_CLAUSE4
            || ' and gjh4.JE_SOURCE = ''1'' and gjh4.JE_CATEGORY = ''1''and gjh4.REVERSED_JE_HEADER_ID is null and gjh4.JE_HEADER_ID not in ( select distinct nvl(a.REVERSED_JE_HEADER_ID,0)from gl_je_headers a where a.JE_HEADER_ID <> gjh4.JE_HEADER_ID ) ';
      ELSIF :P_SOURCE = 'OFSA'
      THEN
         :ADD_WHERE_CLAUSE :=
            :ADD_WHERE_CLAUSE
            || ' and  gjh.JE_SOURCE <> ''1'' and gjh.JE_CATEGORY <> ''1''';
         :ADD_WHERE_CLAUSE1 :=
            :ADD_WHERE_CLAUSE1
            || ' and  gjh1.JE_SOURCE <> ''1'' and gjh1.JE_CATEGORY <> ''1''';
         :ADD_WHERE_CLAUSE3 :=
            :ADD_WHERE_CLAUSE3
            || ' and  gjh3.JE_SOURCE <> ''1'' and gjh3.JE_CATEGORY <> ''1''';
         :ADD_WHERE_CLAUSE3 :=
            :ADD_WHERE_CLAUSE3
            || ' and  gjh3.JE_SOURCE <> ''1'' and gjh3.JE_CATEGORY <> ''1''';
         :ADD_WHERE_CLAUSE4 :=
            :ADD_WHERE_CLAUSE4
            || ' and  gjh4.JE_SOURCE <> ''1'' and gjh4.JE_CATEGORY <> ''1''';
      END IF;
   END IF;


   /*
   IF :P_PERIOD_FROM IS NOT NULL AND :P_PERIOD_TO IS NOT NULL THEN

       SELECT  TO_CHAR(TRUNC(GP.START_DATE),'DD-MON-YYYY')
       INTO    LV_DATE_FROM
       FROM    GL_PERIODS GP
       WHERE   GP.PERIOD_NAME = :P_PERIOD_FROM
       AND         PERIOD_SET_NAME = 'NIB_Calendar';

       SELECT  TO_CHAR(TRUNC(GP.END_DATE),'DD-MON-YYYY')
       INTO    LV_DATE_TO
       FROM    GL_PERIODS GP
       WHERE   GP.PERIOD_NAME = :P_PERIOD_TO
       AND         PERIOD_SET_NAME = 'NIB_Calendar';

       :P_DATE_FROM := LV_DATE_FROM;
       :P_DATE_TO   := LV_DATE_TO;

       :ADD_WHERE_CLAUSE   :=  :ADD_WHERE_CLAUSE  || ' and trunc(gjh.DEFAULT_EFFECTIVE_DATE) between :p_date_from and :p_date_to';
       :ADD_WHERE_CLAUSE1  :=  :ADD_WHERE_CLAUSE1 || ' and trunc(GJH1.DEFAULT_EFFECTIVE_DATE ) <= (SELECT A.START_DATE-1 FROM GL_PERIODS A WHERE A.PERIOD_NAME = GJH.PERIOD_NAME ) ';
       :ADD_WHERE_CLAUSE3  :=  :ADD_WHERE_CLAUSE3 || ' and trunc(GJH3.DEFAULT_EFFECTIVE_DATE ) <= (SELECT A.START_DATE-1 FROM GL_PERIODS A WHERE A.PERIOD_NAME = :P_PERIOD_FROM) ';
       :ADD_WHERE_CLAUSE4  :=  :ADD_WHERE_CLAUSE4 || ' and trunc(gjh4.DEFAULT_EFFECTIVE_DATE) between :p_date_from and :p_date_to';

   END IF;
   */



   RETURN (TRUE);
END;
我想在toad上运行查询

它要求提供add_where_子句参数。有人告诉我应该放什么值吗?有人告诉我,报表触发add_where_子句将出现


提前感谢

写集定义关闭;在函数脚本的顶部,按f5按钮。

在查询的末尾有:

&按GCC.SEGMENT7、GJH.POSTED\u日期添加条款顺序

我想您应该删除并添加WHERE子句,然后执行查询,或者用WHERE子句替换并添加WHERE子句

FUNCTION AfterPForm
   RETURN BOOLEAN
IS
   LV_DATE_FROM   VARCHAR2 (100);
   LV_DATE_TO     VARCHAR2 (100);
BEGIN
   IF :P_BRANCH_CODE IS NOT NULL
   THEN
      :ADD_WHERE_CLAUSE :=
         :ADD_WHERE_CLAUSE || ' AND GCC.SEGMENT10 = :P_BRANCH_CODE ';
   END IF;


   /*        IF :P_DATE_FROM IS NOT NULL AND :P_DATE_TO IS NOT NULL THEN
            :ADD_WHERE_CLAUSE  := :ADD_WHERE_CLAUSE   || ' AND TRUNC(GJH.DEFAULT_EFFECTIVE_DATE) BETWEEN TO_CHAR(TO_DATE(:P_DATE_FROM,''YYYY/MM/DD HH24:MI:SS''),''DD-MON-YYYY'') AND TO_CHAR(TO_DATE(:P_DATE_TO,''YYYY/MM/DD HH24:MI:SS''),''DD-MON-YYYY'') ';
            :ADD_WHERE_CLAUSE1 := :ADD_WHERE_CLAUSE1 || ' and trunc(gjh1.DEFAULT_EFFECTIVE_DATE) < to_char(to_date(:P_DATE_FROM,''YYYY/MM/DD HH24:MI:SS''),''DD-MON-YYYY'') ';
            :ADD_WHERE_CLAUSE3 := :ADD_WHERE_CLAUSE3 || ' and trunc(gjh3.DEFAULT_EFFECTIVE_DATE) < to_char(to_date(:P_DATE_FROM,''YYYY/MM/DD HH24:MI:SS''),''DD-MON-YYYY'') ';
            :ADD_WHERE_CLAUSE4  := :ADD_WHERE_CLAUSE4   || ' AND TRUNC(GJH4.DEFAULT_EFFECTIVE_DATE) BETWEEN TO_CHAR(TO_DATE(:P_DATE_FROM,''YYYY/MM/DD HH24:MI:SS''),''DD-MON-YYYY'') AND TO_CHAR(TO_DATE(:P_DATE_TO,''YYYY/MM/DD HH24:MI:SS''),''DD-MON-YYYY'') ';
       END IF;
       */



   IF :P_SOURCE IS NOT NULL
   THEN
      IF :P_SOURCE = 'ETL'
      THEN
         :ADD_WHERE_CLAUSE :=
            :ADD_WHERE_CLAUSE
            || ' and gjh.JE_SOURCE = ''1'' and gjh.JE_CATEGORY = ''1'' and gjh.REVERSED_JE_HEADER_ID is null and gjh.JE_HEADER_ID not in ( select distinct nvl(a.REVERSED_JE_HEADER_ID,0)from gl_je_headers a where a.JE_HEADER_ID <> gjh.JE_HEADER_ID )';
         :ADD_WHERE_CLAUSE1 :=
            :ADD_WHERE_CLAUSE1
            || ' and gjh1.JE_SOURCE = ''1'' and gjh1.JE_CATEGORY = ''1''and gjh1.REVERSED_JE_HEADER_ID is null and gjh1.JE_HEADER_ID not in ( select distinct nvl(a.REVERSED_JE_HEADER_ID,0)from gl_je_headers a where a.JE_HEADER_ID <> gjh1.JE_HEADER_ID ) ';
         :ADD_WHERE_CLAUSE3 :=
            :ADD_WHERE_CLAUSE3
            || ' and gjh3.JE_SOURCE = ''1'' and gjh3.JE_CATEGORY = ''1''and gjh3.REVERSED_JE_HEADER_ID is null and gjh3.JE_HEADER_ID not in ( select distinct nvl(a.REVERSED_JE_HEADER_ID,0)from gl_je_headers a where a.JE_HEADER_ID <> gjh3.JE_HEADER_ID ) ';
         :ADD_WHERE_CLAUSE4 :=
            :ADD_WHERE_CLAUSE4
            || ' and gjh4.JE_SOURCE = ''1'' and gjh4.JE_CATEGORY = ''1''and gjh4.REVERSED_JE_HEADER_ID is null and gjh4.JE_HEADER_ID not in ( select distinct nvl(a.REVERSED_JE_HEADER_ID,0)from gl_je_headers a where a.JE_HEADER_ID <> gjh4.JE_HEADER_ID ) ';
      ELSIF :P_SOURCE = 'OFSA'
      THEN
         :ADD_WHERE_CLAUSE :=
            :ADD_WHERE_CLAUSE
            || ' and  gjh.JE_SOURCE <> ''1'' and gjh.JE_CATEGORY <> ''1''';
         :ADD_WHERE_CLAUSE1 :=
            :ADD_WHERE_CLAUSE1
            || ' and  gjh1.JE_SOURCE <> ''1'' and gjh1.JE_CATEGORY <> ''1''';
         :ADD_WHERE_CLAUSE3 :=
            :ADD_WHERE_CLAUSE3
            || ' and  gjh3.JE_SOURCE <> ''1'' and gjh3.JE_CATEGORY <> ''1''';
         :ADD_WHERE_CLAUSE3 :=
            :ADD_WHERE_CLAUSE3
            || ' and  gjh3.JE_SOURCE <> ''1'' and gjh3.JE_CATEGORY <> ''1''';
         :ADD_WHERE_CLAUSE4 :=
            :ADD_WHERE_CLAUSE4
            || ' and  gjh4.JE_SOURCE <> ''1'' and gjh4.JE_CATEGORY <> ''1''';
      END IF;
   END IF;


   /*
   IF :P_PERIOD_FROM IS NOT NULL AND :P_PERIOD_TO IS NOT NULL THEN

       SELECT  TO_CHAR(TRUNC(GP.START_DATE),'DD-MON-YYYY')
       INTO    LV_DATE_FROM
       FROM    GL_PERIODS GP
       WHERE   GP.PERIOD_NAME = :P_PERIOD_FROM
       AND         PERIOD_SET_NAME = 'NIB_Calendar';

       SELECT  TO_CHAR(TRUNC(GP.END_DATE),'DD-MON-YYYY')
       INTO    LV_DATE_TO
       FROM    GL_PERIODS GP
       WHERE   GP.PERIOD_NAME = :P_PERIOD_TO
       AND         PERIOD_SET_NAME = 'NIB_Calendar';

       :P_DATE_FROM := LV_DATE_FROM;
       :P_DATE_TO   := LV_DATE_TO;

       :ADD_WHERE_CLAUSE   :=  :ADD_WHERE_CLAUSE  || ' and trunc(gjh.DEFAULT_EFFECTIVE_DATE) between :p_date_from and :p_date_to';
       :ADD_WHERE_CLAUSE1  :=  :ADD_WHERE_CLAUSE1 || ' and trunc(GJH1.DEFAULT_EFFECTIVE_DATE ) <= (SELECT A.START_DATE-1 FROM GL_PERIODS A WHERE A.PERIOD_NAME = GJH.PERIOD_NAME ) ';
       :ADD_WHERE_CLAUSE3  :=  :ADD_WHERE_CLAUSE3 || ' and trunc(GJH3.DEFAULT_EFFECTIVE_DATE ) <= (SELECT A.START_DATE-1 FROM GL_PERIODS A WHERE A.PERIOD_NAME = :P_PERIOD_FROM) ';
       :ADD_WHERE_CLAUSE4  :=  :ADD_WHERE_CLAUSE4 || ' and trunc(gjh4.DEFAULT_EFFECTIVE_DATE) between :p_date_from and :p_date_to';

   END IF;
   */



   RETURN (TRUE);
END;