cancel
Showing results for 
Search instead for 
Did you mean: 

ABAP Dataflow in BODS Production

former_member198401
Active Contributor
0 Kudos

Hi All

I have created an ABAP dataflow which will easily access tables KONP and KONH tables from SAP ECC, but now I am receiving the below error.


RFC CallReceive error <Function /BODS/JOB_RUN: RFC_ABAP_EXCEPTION-(Exception_Key: ABAP_PROGRAM_DOES_NOT_EXIST, No appropriate

entry found in table ADRT)[SAP NWRFC 720][SAP Partner 702 ][PE1][ECC_APP_SERVER][BODS_RFC_PE1][4103]

I am using the option ABAP Execution option as Execute Preloaded and Shared Directory as Data Transfer method. I also used the RFC Data transfer method but the same error.

Please help!!

Regards

Arun Sasi

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

First upload your generated program in SAP ECC.

In local object library , Right click on your ABAP program and click generate ABAP code.

Tick upload generated programs and click ok. Then try to run your jobs.

former_member198401
Active Contributor
0 Kudos

Thanks a lot Shailesh!! I was trying to find the Generate ABAP Code option but was not able to find...Finally was able to find in ABAP Dataflows(Righ Click>Generate ABAP Code)

So will I have to ask BASIS team to upload the ABAP programs to SAP ECC server and then try executing the job. After uploading the ABAP program do I need to check if they are present in SE38 transaction.

Regards

Arun Sasi

former_member198401
Active Contributor
0 Kudos

Hi Shailesh,

Our SAP ECC Application Server is on Linux so I cant check the option Upload generated programs when I generate the ABAP Code. I guess we will have to copy the ABAP files under the /tmp folder on the SAP ECC Application Server.

Regards

Arun Sasi

Former Member
0 Kudos

Hi Arun,

In this case first run your job by selecting ABAP execution option as "Generate and Execute" and then go to "C:\ProgramData\SAP BusinessObjects\Data Services\workspace" (Your Generated ABAP directory ) and locate your program code file. Now send this code to your Basis team and ask them to create program in SAP ECC.

Answers (2)

Answers (2)

former_member187605
Active Contributor

Always use Generate and Execute in DEV! That will work fine without any additional operations.

Only involve the Basis team to transport the generated ABAP code to TST, QA, PRD (because you won't get the authorisation to generate code in those tiers).

former_member198401
Active Contributor
0 Kudos

Thanks Dirk!!

former_member198401
Active Contributor
0 Kudos

Just checked the definition of Execute Preloaded in SAP Supplement Guide

Execute Preloaded

Communication between Data Services and SAP is handled by the Data Services RFC function modules, which must have been pre-installed on SAP.

This option is generally used only in the test and production stages of an application project. When you select Execute Preloaded, Data Services doesn't generate ABAP to run the job. It simply calls an ABAP program name on the SAP application server. This program was created when you ran the job in Generate and Execute mode. Load the previously generated ABAP program into SAP, rename it as desired, and from the Options tab of the data flow Properties window, enter its name in the ABAP program name box.

I think we are on the right path..

Regards

Arun Sasi

former_member187605
Active Contributor
0 Kudos

Warning! General advice: always check the official documentation first!

It seems like the majority of questions in this space can easily be answered by referring to the right section in the DS documentation guides

former_member198401
Active Contributor
0 Kudos

Yeah Dirk!!

But sometimes the errors are not predictable and cannot be understood...So better to ask Experts advice

Former Member
0 Kudos

Hi Arun/Dirik,

When we execute the job with 'Generate and Execute' option, we are able to extract the data.

But then am tried executing with 'Execute Preloaded' option, we got an error that Program doesn't exist.


This option is generally used only in the test and production stages of an application project. When you select Execute Preloaded, Data Services doesn't generate ABAP to run the job. It simply calls an ABAP program name on the SAP application server. This program was created when you ran the job in Generate and Execute mode.

According to Technical Manual, it means in Generate and Execute mode the program should be created in SAP side right ?


Apart from that, i was following Local Object Library -> Abap Data flow right click -> 'Generate  Abap Code -> Upload Generated Programs'


When am doing this, am able to upload the program only in Execute Preloaded mode only.

But couldn't able to upload the programs when Data store setting is 'Generate and Execute'.


So is everything i mentioned is correct or not ?


former_member198401
Active Contributor
0 Kudos

Yes Rajesh. This is correct

Regards

Arun Sasi

Former Member
0 Kudos

Thank you Arun for the confirmation.

mageshwaran_subramanian
Active Contributor
0 Kudos

Did you check if the latest version of the ABAP programs exist in SAP (se38)?

former_member198401
Active Contributor
0 Kudos

Thanks for your help Magesh!!

Could you please let me know which ABAP program do I need to check in SE38.

Let me explain you about the two ABAP Data flows which I have created for extracting KONP and KONH table. I am not extracting the full table as these are huge tables, therefore I am filtering with KSCHL='ZPLP'. I am then joining the two ABAP data flows(simple INNER join) to produce output to

a SQL Server table.

As far as I know the job should create two different ABAP program files on the SAP ECC Application Server under the /tmp directory.

Below is the configuration of SAP Application Datastore pointing to SAP ECC

Let me know if you need any more help!!

Regards

Arun Sasi