Skip to Main Content

Analytics Software

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

FDM - 11.1.2.3.500 - Trying to run a load rule via batch

User_BP7C5Dec 5 2019 — edited Dec 6 2019

Hi,

We are trying to run a load rule via batch. We have set the EPM_ORACLE_INSTANCE environment variable.

Here's the batch we are attempting to run.

2019-12-05_8-26-56.png

It looks like it tries to do something then we get this. We are not connecting to any source ERP system so not sure why it would be trying to use ERPi. It's been eons since we have even thought about ERPi. The load rule we are running we can manually execute via the client with no issues. This is our first attempt at trying to automate this so please forgive our ignorance. We do this with no issues on PBCS and later versions of FDMEE, but this instance unfortunately is 11.1.2.3.500

Any guidance is appreciated as we are stuck in the mud

pastedImage_0.png

Comments

561093
create or replace function ean_13(P_Str In Varchar2) Return Varchar2 Is
l_Sum Number;
l_Multiple Number;
Begin
For I in 1..12 Loop
If mod(i,2) = 0 Then
l_Multiple := 3;
Else
l_Multiple := 1;
End If;

l_Sum := Nvl(l_Sum, 0) + Substr(P_Str, i, 1) * l_Multiple;
End Loop;
If Floor(l_Sum/10) - Mod(l_Sum, 10) = Substr(P_Str, 13) Then
Return('TRUE');
Else
Return('FALSE');
End If;
End;
/


SQL> select ean_13('2741023456884') from dual;

EAN_13('2741023456884')
-------------------------------------------------------
TRUE

SQL> select ean_13('2741023456881') from dual;

EAN_13('2741023456881')
-------------------------------------------------------
FALSE
547235
Thanks for you prompt response,

why it does not work for the following:
2741012605644
2741012605651
2741000000017
it returns false.
561093
create or replace function ean_13(P_Str In Varchar2) Return Varchar2 Is
l_Sum Number;
l_Multiple Number;
Begin
For I in 1..12 Loop
If mod(i,2) = 0 Then
l_Multiple := 3;
Else
l_Multiple := 1;
End If;

l_Sum := Nvl(l_Sum, 0) + Substr(P_Str, i, 1) * l_Multiple;
End Loop;

If 10 - Mod(l_Sum, 10) = Substr(P_Str, 13) Then
Return('TRUE');
Else
Return('FALSE');
End If;
End;
/


SQL> select ean_13('2741012605644') from dual;

EAN_13('2741012605644')
------------------------------------------------
TRUE


SQL> select ean_13('2741012605651') from dual;

EAN_13('2741012605651')
--------------------------------------------------
TRUE


SQL> select ean_13('2741000000017') from dual;

EAN_13('2741000000017')
------------------------------------------------
TRUE
547235
THANKS BUDDY...YOU SAVED MY DAY
547235
HI CITRUS,

DO YOU HAVE THE OUTPUT PROCEDURE FOR GENERATING TEXT FILE FOR THE AIRMILES PROGRAMME

THANKS.
572471
SQL> with t as (select '2741023456884' str from dual)
  2  --
  3  select decode(substr(10 - mod(sum(substr(str, level, 1) *
  4                             decode(mod(level, 2), 1, 1, 3)),
  5                         10),-1,1),
  6                substr(str, -1, 1),
  7                'TRUE',
  8                'FALSE')
  9    from t
 10  connect by level < length(str)
 11  /

DECODE(SUBSTR(10-MOD(SUM(SUBST
------------------------------
TRUE

SQL> 
547235
thanks volder
1 - 7