在建立报表时建了Period1Formula,编译并无错误
function Period1Formula return VARCHAR2 is
beginDECLARE
l_period_name VARCHAR2(15);
l_period_POD DATE;
l_period_PCD DATE;
l_period_closed VARCHAR2(4);
l_period_PC NUMBER(15);
l_period_FY NUMBER(15);
BEGIN SELECT period_name,
period_counter,
period_open_date,
nvl(period_close_date, sysdate,
decode(period_close_date, null, 'NO', 'YES'),
fiscal_year
INTO l_period_name,
l_period_PC,
l_period_POD,
l_period_PCD,
l_period_closed,
l_period_FY
FROM FA_DEPRN_PERIODS
WHERE book_type_code = :P_FROM_BOOK
AND period_name = :P_PERIOD1; :Period1_PC := l_period_PC;
:Period1_POD := l_period_POD;
:Period1_PCD := l_period_PCD;
:Period_Closed := l_period_closed;
:Period1_FY := l_period_FY;
return(l_period_name);
END;
RETURN NULL; end;但oracle application 运行时错误如下Current NLS_LANG and NLS_NUMERIC_CHARACTERS Environment Variables are :
AMERICAN_AMERICA.ZHS16CGB231280'.,'REP-1401: 'period1formula': Fatal PL/SQL error occurred.
ORA-01403: no data found
function Period1Formula return VARCHAR2 is
beginDECLARE
l_period_name VARCHAR2(15);
l_period_POD DATE;
l_period_PCD DATE;
l_period_closed VARCHAR2(4);
l_period_PC NUMBER(15);
l_period_FY NUMBER(15);
BEGIN SELECT period_name,
period_counter,
period_open_date,
nvl(period_close_date, sysdate,
decode(period_close_date, null, 'NO', 'YES'),
fiscal_year
INTO l_period_name,
l_period_PC,
l_period_POD,
l_period_PCD,
l_period_closed,
l_period_FY
FROM FA_DEPRN_PERIODS
WHERE book_type_code = :P_FROM_BOOK
AND period_name = :P_PERIOD1; :Period1_PC := l_period_PC;
:Period1_POD := l_period_POD;
:Period1_PCD := l_period_PCD;
:Period_Closed := l_period_closed;
:Period1_FY := l_period_FY;
return(l_period_name);
END;
RETURN NULL; end;但oracle application 运行时错误如下Current NLS_LANG and NLS_NUMERIC_CHARACTERS Environment Variables are :
AMERICAN_AMERICA.ZHS16CGB231280'.,'REP-1401: 'period1formula': Fatal PL/SQL error occurred.
ORA-01403: no data found
period_counter,
period_open_date,
nvl(period_close_date, sysdate,
decode(period_close_date, null, 'NO', 'YES'),
fiscal_year
INTO l_period_name,
l_period_PC,
l_period_POD,
l_period_PCD,
l_period_closed,
l_period_FY
FROM FA_DEPRN_PERIODS
WHERE book_type_code = :P_FROM_BOOK
AND period_name = :P_PERIOD1; :Period1_PC := l_period_PC;
:Period1_POD := l_period_POD;
:Period1_PCD := l_period_PCD;
:Period_Closed := l_period_closed;
:Period1_FY := l_period_FY;
return(l_period_name);选择结果无数据,触发ORA-01403: no data found 错误。加上exception部分。
period_counter,
period_open_date,
nvl(period_close_date, sysdate,
decode(period_close_date, null, 'NO', 'YES'),
fiscal_year
INTO l_period_name,
l_period_PC,
l_period_POD,
l_period_PCD,
l_period_closed,
l_period_FY
FROM FA_DEPRN_PERIODS
WHERE book_type_code = :P_FROM_BOOK
AND period_name = :P_PERIOD1; :Period1_PC := l_period_PC;
:Period1_POD := l_period_POD;
:Period1_PCD := l_period_PCD;
:Period_Closed := l_period_closed;
:Period1_FY := l_period_FY;
return(l_period_name);exception
when others then
null;END;
RETURN NULL; end;