这可能并不像它应该的那么复杂,但是 Business Objects 在类型的使用方式上与 SQL Developer 相比似乎非常非常严格。这是有问题的声明的一部分:
ship_date between '01' || '-' || w_current_ora_month || '-' || to_char(to_date(w_last_day, 'DD-MON-RR HH:MI:SS AM'), 'yy') and to_char(to_date(w_last_day, 'DD-MON-RR HH:MI:SS AM'))
w_current_ora_month VARCHAR2(3) 通过以下方式填充:
SELECT to_char(sysdate, 'MON')
INTO w_current_ora_month
FROM dual;
w.last_day DATE 通过以下方式填写:
SELECT trunc(LAST_DAY('01' || '-' || w_current_ora_month || '-' || to_char(w_year)))
into w_last_day
from dual
从 Business Objects 中提取时,为什么会收到 Not Valid Month 错误?我已经发现业务对象对类型非常严格,所以我想知道我是否在这里做错了什么。所有这些在 SQL 开发人员中都可以正常工作,但我不得不一遍又一遍地调整这个语句,以尝试在 Business Objects 使用它时让它工作。