cancel
Showing results for 
Search instead for 
Did you mean: 

Error while creating RFC form BODS to ECC and Data store creation also

former_member203760
Participant
0 Kudos
703

Hi Experts,

While i am creating RFC form BODS console to ECC i am facing issue like below,

In BODS designer also i am getting issue while transferring table from ECC to BODS data store for ECC, like below,

While checking SAPDS(TCP/IP) RFC in ECC is not working, i am getting error like below,

While creating data store for hana i am getting correctly.

Please help me for this issue.

Thanks in Advance

Jana

Accepted Solutions (0)

Answers (2)

Answers (2)

BKoech
Explorer
0 Kudos

check your sap services file - both BODS server and SAP system

former_member203760
Participant
0 Kudos

Hello Ben,

I have added service also.in etc/drivers/services.

Please help me.

Thanks

Jana

former_member203760
Participant
0 Kudos

Hello Experts,

Now i am able to connect RFC connections in DS console and SAPDS RFC is also working fine like below,

But Still i am facing issue like below,

Please help me any one.

Thanks

Jana

former_member198401
Active Contributor
0 Kudos

Janaradhan,

Ask your BASIS team to install Z_AW_RFC_ABAP_INSTALL_AND_RUN package on the SAP Application Server.

This package allows Data Services to dynamically generate and run programs on an SAP server.

Refer to the below document

http://help.sap.com/businessobject/product_guides/sbods42/en/ds_42_sap_en.pdf

Regards

Arun Sasi

former_member203760
Participant
0 Kudos

Hi Arun,

Thanks you for your response.

I am from Basis team only, please let me know how to install that package in ECC system.

Thanks

Jana

former_member198401
Active Contributor
0 Kudos

Hi Janardhan,

Please refer to the section Installing Functions on the SAP Server in the SAP Supplement guide.

You should use the transport system for installing packages.

Regards

Arun Sasi

former_member203760
Participant
0 Kudos

Hi Arun,

Thank you again.

I have done that transport import before only, when i am importing transport i got error like below,

Please help me for this and what i need to do after this.

Thanks

Jana

former_member198401
Active Contributor
0 Kudos

Hi Janardhan,

I am not a BASIS expert but as I see from the screenshot the error says that the program is not unicode compatible.

You must have an option in RFC Destination Configuration to set the Unicode option. Not sure where exactly is this.

Regards

Arun Sasi

Former Member
0 Kudos

Hi

Can you login SAP and check on the transaction code ST22 and share the Dump details .

Thanks,

AJ.

former_member203760
Participant
0 Kudos

Hi Arun,

Please find the below error in ST22,

Please let me know what is the solution for this.

Thanks

Jana

Former Member
0 Kudos

You gotta share the source code extract part of this dump as well.

Thanks,

Arun.

former_member203760
Participant
0 Kudos

Hi,

Please find the below source code,

ENDIF.

     IF l_scope NE 'E' AND l_ucon_prerequisite_fulfilled = abap_true"PreRequisite is fulfilled

       MESSAGE a259(sr) WITH l_syxform.

     ENDIF.

   ENDIF.

ENDFORM.

*&---------------------------------------------------------------------*

*&      Form  remote_function_call

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

*      -->VALUE      text

*      -->(TYPE)     text

*----------------------------------------------------------------------*

FORM remote_function_call USING VALUE(type).

   DATA rc             TYPE i VALUE 0.

   DATA: l_syxform     TYPE syxform,

         l_syxprog     TYPE syxprog,

         l_cbe         TYPE i,

         l_same_system TYPE c,

         l_ucon_active TYPE sap_bool.

* necessary variables for class based exceptions

   DATA: l_root        TYPE REF TO cx_root.

   DO.

     CALL 'RfcImport' ID 'Type'        FIELD type

                      ID 'SYXForm'     FIELD l_syxform

                      ID 'SYXProg'     FIELD l_syxprog

                      ID 'CLException' FIELD l_cbe

*                     ID 'IpAddr'      FIELD l_ipaddr

*                     ID 'Port'        FIELD l_port

*                     ID 'Snc'         FIELD l_snc

                      ID 'SameSystem'  FIELD l_same_system

                      ID 'UconActive'  FIELD l_ucon_active.

     PERFORM ucon_check USING l_syxform l_same_system l_ucon_active.

     IF l_syxprog = 'JAVA'.

       system-call plugin

                   id 'JAVA' value 'FORW_JAVA'

                   id 'RC'   value rc.

*   if there is no rollout on the JAVA side which

*   rolls both, JAVA and ABAP, we return to the

*   C-Stack and reach this point

*   in case there was an rollout, the ABAP-C stack is lost

*   and we jump direkt to this point

*   here we trigger the rollout on this Abap side with

*   the following statement

       system-call plugin

                   id 'JAVA' value 'ROLL_OUT'

                   id 'RC'   value rc.

     ELSE.

*

* use TRY ... CATCH only in case of class based exceptions (CBE)

*

       IF l_cbe IS NOT INITIAL.

* support of class based exceptions for remote function modules

         TRY.

             CLEAR l_root.

*

* if no class based exception scenario is available after reading RFC data the CATCH clause

* is disabled.

*

             PERFORM (l_syxform) IN PROGRAM (l_syxprog).

           CATCH BEFORE UNWIND cx_root INTO l_root .

             cl_cbe_runtime=>_register_exception( exception_ref = l_root ).

*

* from here after ENDTRY following steps are done in kernel:

* - unweind ABAP stack and perform CLEANUP actions

* - delta management steps

* - transfer the catched exception and the associated error text to the partner

*

         ENDTRY.

*

* in case of class based excpetion trigger ab_rfcnext

*

         IF l_root IS NOT INITIAL.

           cl_cbe_runtime=>_next_rfc_call( ).

         ENDIF.

       ELSE.

         PERFORM (l_syxform) IN PROGRAM (l_syxprog).

       ENDIF.

       RSYN >SCONT sysc 00011111 0.

     ENDIF.

   ENDDO.

ENDFORM.                    "remote_function_call

* RFC *from* sapgui, called from sapmssyd

FORM remote_function_fromsaptemu.

   "do. only *one* call

   CALL 'RfcImport' ID 'Type' FIELD rfctype_saptemu.

   PERFORM (sy-xform) IN PROGRAM (sy-xprog).

   "rsyn >scont sysc 00011111 0. (wenn überhaupt, dann 10 oder 11?)

   "but we leave sapmssyd the normal way.

   "enddo.

ENDFORM.                    "remote_function_fromsaptemu

*&---------------------------------------------------------------------*

*&      Form  remote_function_diastart

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM remote_function_diastart.

   DO.

     CALL 'RfcImport' ID 'Type' FIELD rfctype_rfcdia.

     PERFORM (sy-xform) IN PROGRAM (sy-xprog).

     "Parking position for next request

     RSYN >SCONT sysc 00011111 10.

     "ALternativ : Free mode

     "COMMIT WORK.

     "SYSTEM-CALL FREE MODE 0.

   ENDDO.

ENDFORM.                    "remote_function_diastart

*&---------------------------------------------------------------------*

*&      Form  remote_function_diacall

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM remote_function_diacall.

   sy-xcode = '%_@no@'.

   PERFORM (sy-xform) IN PROGRAM (sy-xprog).

   "Beende Call Dynpro und gehe

   "in Warteposition (Impliziter LEAVE SCREEN)

   RSYN >SCONT sysc 00011111 11.

   "Never reach this point.

ENDFORM.                    "remote_function_diacall

*&---------------------------------------------------------------------*

*&      Form  remote_call_back

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM remote_call_back.

   IF sy-xform <> space.

     PERFORM (sy-xform) IN PROGRAM (sy-xprog).

     "parking position

     RSYN >SCONT sysc 00011111 0.

   ENDIF.

ENDFORM.                    "remote_call_back

*&---------------------------------------------------------------------*

*&      Form  trace

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

*      -->BUF        text

*----------------------------------------------------------------------*

FORM trace USING buf TYPE c.

* CHECK SY-XPROG = 'SAPLTEST'.

   TABLES tcpic.

   MOVE sy-datum TO tcpic-datum.

   MOVE sy-uzeit TO tcpic-uzeit.

   MOVE count    TO tcpic-counter.

   MOVE sy-subrc TO tcpic-subrc.

   MOVE buf      TO tcpic-buffer.

   ADD 1 TO count.

   MODIFY tcpic.

ENDFORM.                    "trace

* ----------------------------------------------------------------------

* RFC-ABAP/4-Treiber-Ansteuerung

* ----------------------------------------------------------------------

FORM xab_open.

   FIELD-SYMBOLS: <prog>, <dest>, <cntl>, <options>.

   DATA : subrc TYPE i.

   CALL 'AB_GET_C_PARMS' ID 'P1' FIELD <prog>       "Programmname

                         ID 'P2' FIELD <cntl>       "Handle

                         ID 'P3' FIELD <dest>       "Destination

                         ID 'P4' FIELD <options>.   "RFCOPT

   PERFORM rfcdrv_open IN PROGRAM (<prog>) USING <cntl>

                                                 <dest>

                                                 <options>

                                                 subrc.

   CALL 'AB_SET_C_PARMS' ID 'P2' FIELD <cntl>.      "Handle

   syst-subrc = subrc.

ENDFORM.                    "xab_open

*&---------------------------------------------------------------------*

*&      Form  xab_blen

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM xab_blen.

   FIELD-SYMBOLS: <prog>, <buffersize>.

   CALL 'AB_GET_C_PARMS' ID 'P1' FIELD <prog>        "Programmname

                         ID 'P2' FIELD <buffersize>. "Puffergroesse

   PERFORM rfcdrv_blen IN PROGRAM (<prog>) USING <buffersize>.

   CALL 'AB_SET_C_PARMS' ID 'P2' FIELD <buffersize>. "Puffergroesse

   syst-subrc = 0.

ENDFORM.                    "xab_blen

*&---------------------------------------------------------------------*

*&      Form  xab_accept

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM xab_accept.

   FIELD-SYMBOLS: <prog>, <cntl>.

   DATA : subrc TYPE i.

   CALL 'AB_GET_C_PARMS' ID 'P1' FIELD <prog>       "Programmname

                         ID 'P2' FIELD <cntl>.      "Handle

   PERFORM rfcdrv_accept IN PROGRAM (<prog>) USING <cntl>

                                                   subrc.

   CALL 'AB_SET_C_PARMS' ID 'P2' FIELD <cntl>.      "Handle

   syst-subrc = subrc.

ENDFORM.                    "xab_accept

*&---------------------------------------------------------------------*

*&      Form  xab_write

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM xab_write.

   FIELD-SYMBOLS: <prog>, <cntl>, <buffer>.

   DATA : subrc TYPE i.

   CALL 'AB_GET_C_PARMS' ID 'P1' FIELD <prog>       "Programmname

                         ID 'P2' FIELD <cntl>       "Handle

                         ID 'P3' FIELD <buffer>.    "Ausgabepuffer

   PERFORM rfcdrv_write IN PROGRAM (<prog>) USING <cntl>

                                                  <buffer>

                                                  subrc.

   CALL 'AB_SET_C_PARMS' ID 'P2' FIELD <cntl>.      "Handle

   syst-subrc = subrc.

ENDFORM.                    "xab_write

*&---------------------------------------------------------------------*

*&      Form  xab_read

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM xab_read.

   FIELD-SYMBOLS: <prog>, <buffersize>, <buffer>, <cntl>.

   DATA : subrc TYPE i.

   CALL 'AB_GET_C_PARMS' ID 'P1' FIELD <prog>        "Programmname

                         ID 'P2' FIELD <cntl>        "Handle

                         ID 'P3' FIELD <buffer>      "Eingabepuffer

                         ID 'P4' FIELD <buffersize>. "Puffergroesse

   DESCRIBE FIELD <buffer> LENGTH <buffersize> IN BYTE MODE.

   PERFORM rfcdrv_read IN PROGRAM (<prog>) USING <cntl>

                                                 <buffer>

                                                 <buffersize>

                                                 subrc.

   CALL 'AB_SET_C_PARMS' ID 'P2' FIELD <cntl>        "Puffergroesse

                         ID 'P3' FIELD <buffer>      "Puffer

                         ID 'P4' FIELD <buffersize>. "Handle

   syst-subrc = subrc.

ENDFORM.                    "xab_read

*&---------------------------------------------------------------------*

*&      Form  xab_wflush

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM xab_wflush.

   FIELD-SYMBOLS: <prog>, <cntl>.

   DATA : subrc TYPE i.

   CALL 'AB_GET_C_PARMS' ID 'P1' FIELD <prog>        "Programmname

                         ID 'P2' FIELD <cntl>.       "Handle

   PERFORM rfcdrv_wflush IN PROGRAM (<prog>) USING <cntl>

                                                   subrc

                         IF FOUND.

   CALL 'AB_SET_C_PARMS' ID 'P2' FIELD <cntl>.      "Handle

   syst-subrc = subrc.

ENDFORM.                    "xab_wflush

*&---------------------------------------------------------------------*

*&      Form  xab_rflush

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM xab_rflush.

   FIELD-SYMBOLS: <prog>, <cntl>.

   DATA : subrc TYPE i.

   CALL 'AB_GET_C_PARMS' ID 'P1' FIELD <prog>        "Programmname

                         ID 'P2' FIELD <cntl>.       "Handle

   PERFORM rfcdrv_rflush IN PROGRAM (<prog>) USING <cntl>

                                                   subrc

                         IF FOUND.

   CALL 'AB_SET_C_PARMS' ID 'P2' FIELD <cntl>.      "Handle

   syst-subrc = subrc.

ENDFORM.                    "xab_rflush

*&---------------------------------------------------------------------*

*&      Form  xab_run_driver

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

*      -->PROG          text

*      -->IF_FOUND      text

*      -->NEW_FUNCTION  text

*----------------------------------------------------------------------*

FORM xab_run_driver USING prog         TYPE c

                           if_found     TYPE i

                           new_function TYPE c.

   DATA : program LIKE syst-repid.

   program = prog.

   IF new_function = space.

     CALL 'RfcImport' ID 'Push' FIELD rfctype_abap4_exit

                      ID 'Info' FIELD program.

   ELSE.

     CALL 'RfcImport' ID 'Push' FIELD rfctype_abap4_exit

                      ID 'Info' FIELD program

                      ID 'Function' FIELD new_function.

   ENDIF.

   IF if_found = 0.

     PERFORM (sy-xform) IN PROGRAM (sy-xprog).

   ELSE.

     PERFORM (sy-xform) IN PROGRAM (sy-xprog) IF FOUND.

   ENDIF.

ENDFORM.                    "xab_run_driver

*&---------------------------------------------------------------------*

*&      Form  remote_function_callback

*&---------------------------------------------------------------------*

FORM remote_function_callback.

   DATA: l_syxform     TYPE syxform,

         l_syxprog     TYPE syxprog.

* necessary variables for class based exceptions

   DATA: l_root        TYPE REF TO cx_root.

   l_syxform = sy-xform.

   l_syxprog = sy-xprog.

* support of class based exceptions for remote function modules

   TRY.

       CLEAR l_root.

*

* if no class based exception scenario is available after reading RFC data the CATCH clause

* is disabled.

*

       PERFORM (l_syxform) IN PROGRAM (l_syxprog).

     CATCH BEFORE UNWIND cx_root INTO l_root .

       cl_cbe_runtime=>_register_exception( exception_ref = l_root ).

*

* from here after ENDTRY following steps are done in kernel:

* - unweind ABAP stack and perform CLEANUP actions

* - delta management steps

* - transfer the catched exception and the associated error text to the partner

*

   ENDTRY.

ENDFORM.                    "remote_function_callback


Please help me for this.


Thanks

Jana

Former Member
0 Kudos

Jana - If you check on the source code section , a pointer will be there ( Pointing the source code )which shows exactly want went wrong . This piece of code doesnt helps much . Need the screen shot .

Thanks,

Arun.

former_member203760
Participant
0 Kudos

Hi Arun,

Thanks for quick response,

Please let me know which screen shot you need. i am not getting you.

Thanks

Jana

Former Member
0 Kudos

Refer the highlighted one in yellow color , Double click on that and send the screen shot.

Thanks,

AJ.

former_member203760
Participant
0 Kudos

Hi please find the below screen shot,

Thanks

Jana

Former Member
0 Kudos

Can you check your RFC connections are ok ? The error is happening when the system is trying to make an RFC call and also check on the SU53 transaction inorder to verify all the authorization's are ok for the bods user ID associated with this activity .

Thanks,

AJ.

former_member203760
Participant
0 Kudos

Hi AJ,

I have checked RFC and Authorizations also, i do not have any issue with this, Please help me.

Thanks

Jana

Former Member
0 Kudos

Can you check on SU01D transaction , BODS user ID is not locked ?

Thanks,

AJ.

former_member203760
Participant
0 Kudos

Checked not locked.

former_member198401
Active Contributor
0 Kudos

refer SAP note

638357 - Transport between Unicode systems and non-Unicode systems


former_member203760
Participant
0 Kudos

Hi Arun,

I am not able solve the issue with this note.

I am able to connect HANA with this BODS but while ECC with data facing issue, i am ble get data from HANA also without any issues.

Please help me.

Thanks

Jana

former_member198401
Active Contributor
0 Kudos

Janardhan,

Can you please check the unicode setting at the RFC destination. Please see screenshot

former_member203760
Participant
0 Kudos

I have checked RFC is unicode only.

Thanks

Jana

former_member198401
Active Contributor
0 Kudos

What are the settings under the Data store in BODS

what is the Code page set in the datastore.

former_member203760
Participant
0 Kudos

Hi Arun,

Please find the below data store,

Code page means, Please give me your contact info like skype or gmail i will reach you for this issue.

Thanks

Jana

Former Member
0 Kudos

Right clickon your data store  > Edit  > Advanced - > Locale. There you can find the code page settings.

Thanks,

AJ.

former_member203760
Participant
0 Kudos

Hello arun,

please find the below code page details,

Please give me solution. give me any contact info. so that i will reach you.

Thanks

Jana

former_member198401
Active Contributor
0 Kudos

Hi Janardhan,

Could you please change the option execute in Background(Batch) to Yes, language to English and codepage to ascii.

Also I see that you are using RFC data transfer method.

Please make sure execute in backgoround is set to yes when you are using RFC method.

RFC transport method - Enterprise Information Management - SCN Wiki

Regards

Arun Sasi

former_member203760
Participant
0 Kudos

Hello Arun,

I have changed as per your suggestion, but still i am facing same issue, in code page i got only us-ascii value i have given that, like below,

Please help me. i have structed here.Pleasegive me your contact id or no so that i will explain evarything.

Thanks in advance.

Jana

former_member198401
Active Contributor
0 Kudos

Hi Janardhan,

We have tried everything we could do to resolve the error but still i feel that the issue is related to some BASIS component which is missing.

Could you please create a high severity ticket with the SAP Support Team under the Basis component

They will get back to you and you can explain them the issue. They will analyze your system configuration and suggest for any patches if needed.

Regards

Arun Sasi

former_member203760
Participant
0 Kudos

Hi Arun,

Thank you for your support.

Thanks

Jana

former_member198401
Active Contributor
0 Kudos

Janardhan,

I think we are closer to the solution. It seems that you are using a corrupt transport file

please refer to the below scn link

Hope this time you will be able to crack it

http://scn.sap.com/thread/3503562

Regards

Arun Sasi

m.arun.sasi@gmail.com

former_member203760
Participant
0 Kudos

Hi Arun,

Just now i seen same SCN link.but  how i will get correct transport files.If you know please let me know.

Thank you so much for your help.

Jana

former_member198401
Active Contributor
0 Kudos

You can get these transport file from SAP Support team. You need to raise an incident with them for getting those files

Regards

Arun Sasi

former_member203760
Participant
0 Kudos

Hi Arun,

Thank you very much. i will do that one.

Thanks

Jana

former_member198401
Active Contributor
0 Kudos

Hi

Is this issue resolved now...

Arun