ORA-22813 Custom Aggregation Functions

When I execute the following script

SELECT aggr_func(bki_aggr_input(t.app_date,
                                    t.amount,
                                    t.rate, 
                                    t.term, 
                                    t.OPEN_DATE,
                                    t.STATUS_ID,
                                    t.INF_CONFIRM_DATE,
                                    t.FACT_CLOSE_DATE,
                                    t.PMT_STRING_84M,
                                    t.flag_is_own_contract,
                                    t.OUTSTANDING,
                                    t.CREDIT_LIMIT,
                                    t.TYPE_ID,
                                    t.FINAL_PMT_DATE)) p
  FROM temp_tab t 

      

where aggr_func is a user defined aggregated funciton I am getting ORA-22813 error

Function

CREATE OR REPLACE FUNCTION BKI_AGGR_CALC(input_var IN BKI_AGGR_INPUT)
  RETURN BKI_AGGR_OUTPUT
  PARALLEL_ENABLE
  AGGREGATE USING BKI_AGGR_ROUTINES;

      

and the type specification BKI_AGGR_ROUTINES

is

CREATE OR REPLACE TYPE BKI_AGGR_ROUTINES AS OBJECT
(
  acc_opn_vs_problem NUMBER,
  pat_opened_12      NUMBER,
  pat_del1p_3        NUMBER,
  max_hist_own NUMBER,
  cntOpenAccounts NUMBER,
  cntAllAccounts NUMBER, 
  ratio_open NUMBER,
  patternsArray NUMBER_TWO_DIMENSIONAL_TAB, 
  unionPattern NUMBER_TAB,
  m_nodelinq NUMBER,
  outstanding_to_credit_limit NUMBER,
  sumOutstanding NUMBER,
  sumCreditLimit NUMBER,
  paymentPatArray NUMBER_TWO_DIMENSIONAL_TAB,
  unionPaymentPat NUMBER_TAB,
  sumMonthPayOpn NUMBER, 
  load_to_avgpaym_24 NUMBER,
  reqMonthPay NUMBER, 
  sumOpenStartInCrisis NUMBER, 
  sumAllCredits NUMBER, 
  ratio_crs_not_sum NUMBER,
  ratio_m_up NUMBER,
  cnt NUMBER,
  STATIC FUNCTION ODCIAggregateInitialize(actx IN OUT BKI_AGGR_ROUTINES)
    RETURN NUMBER,
  MEMBER FUNCTION ODCIAggregateIterate(SELF     IN OUT BKI_AGGR_ROUTINES,
                                       inputVar IN BKI_AGGR_INPUT)
    RETURN NUMBER,
  MEMBER FUNCTION ODCIAggregateMerge(SELF IN OUT BKI_AGGR_ROUTINES,
                                     ctx2 IN BKI_AGGR_ROUTINES)
    RETURN NUMBER,

  MEMBER FUNCTION ODCIAggregateTerminate(SELF      IN OUT BKI_AGGR_ROUTINES,
                                         returnVar OUT BKI_AGGR_OUTPUT,
                                         flags     IN NUMBER) RETURN NUMBER
)

      

What could be causing the error? How can I investigate and fix this? Thank.

+3


source to share





All Articles