on 06-18-2015 7:12 AM
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
check your sap services file - both BODS server and SAP system
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
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
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
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
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
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
User | Count |
---|---|
95 | |
11 | |
11 | |
10 | |
9 | |
8 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.