Calling RPG program from SAP running on windows platform.
Hi
We want to call a RPG program used for sending and receiving data to SAP System. Our sap system running on windows platform and RPG program run iseries V5R3
How can we do this?
We red the redbook http://www.redbooks.ibm.com/redbooks/pdfs/sg244672.pdf. We thought it only mention about sap and externel system is as/400 and it is not related with our issue but we are not sure.
We are waiting for an urgent suggestion.
Best Regards...
Hi, We also need to call RPG from ABAP via RFC. We have installed the RFC SDK on A/S400 and tried call ABAP RFC from RPG, but still don't know how to make RPG program callable from ABAP
Any advice!
Many thanks
Tim
Similar Messages
-
Hi All,
I'm somwhat new to Java (coming from an AS400 background) and I'm stuck with what I think is a fairly simple problem. But I've been looking at this for so long, I'm probably missing something really simple and I hope someone can help me with this.
I've created a bean that needs to call an RPG program on the AS400. I've looked at code throughout this site to compare and it looks the same. My problem is I'm getting an error when I try to run it.
"com.ibm.db2.jdbc.app.DB2SQLException2: [IBM][JDBC Driver][14012] The index for the parameter is not valid."
Here's my code:
CallableStatement stpCall ;
String sql = "CALL LIB.CHECKLOGIN ( ?, ?, ? )" ;
try {
Connection connection = null;
connection = ivDataSource.getConnection();
stpCall = connection.prepareCall( sql ) ;
stpCall.setString( 1, ivUserID ) ;
stpCall.setString( 2, ivPassword ) ;
stpCall.registerOutParameter( 3, Types.INTEGER ) ;
stpCall.execute() ;
} catch (Exception e) {
System.out.println(e);
I've tried it a couple different ways and still get the same error. So if anybody can let me know what I'm missing or what I'm doing wrong I would greatly appreciate it. Thanks.Thanks jedilowe.
Here's the code I'm trying to run:
CallableStatement stpCall ;
String sql = "CALL CHECKLOGIN ( ?, ?, ? )" ;
Connection connection = null;
connection = ivDataSource.getConnection();
try {
stpCall = connection.prepareCall( sql ) ;
stpCall.setString( 1, ivUserID ) ;
stpCall.setString( 2, ivPassword ) ;
stpCall.registerOutParameter( 3, Types.INTEGER ) ;
stpCall.execute() ;
ivError = stpCall.getString(3) ;
} catch (Exception e) {
e.printStackTrace();
I'm looking through the stderr log now. Most of if looks like a foreign language, but do you have an idea of what to look for? Anything specific? Here's a few lines from the log:
com.ibm.db2.jdbc.app.DB2SQLException2: [IBM][JDBC Driver][14012] The index for the parameter is not valid.
java/lang/Throwable.<init>(Ljava/lang/String;)V+4 (Throwable.java:94)
java/sql/SQLException.<init>(Ljava/lang/String;Ljava/lang/String;I)V+1 (SQLException.java:43)
com/ibm/db2/jdbc/app/DB2SQLException2.<init>(Ljava/lang/String;Ljava/lang/String;I[B)V+1 (DB2SQLException2.java:281)
com/ibm/db2/jdbc/app/DB2SQLException2.generateException(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;Ljava/lang/String;I[B)Lcom/ibm/db2/jdbc/app/DB2SQLException2;+19 (DB2SQLException2.java:260)
com/ibm/db2/jdbc/app/DB2PreparedStatement.beforeSetXXX(I)I+86
Can anyone decifer this mess and based on the code above, tell me what the heck is wrong with the code!!! I've been fighting this for almost a week now. Thanks for all your help. -
Help .. I need to call Exe program from java & run it quickly
Hi...
I have an Exe program ..
when it run in windows ( called by windows ) it takes 300 M.S
but when we called it in java It takes 3000 M.S .. Why..
where is the problem ..
... Help please
Thank u..What are you doing with the input and output streams of the spawned process?
-
Calling Non SAP programe from SAP program
Hi Experts...
Can we cal Non SAP programs Like Windows EXE programs from ABAP programs ?
If yes Then How .....
Regards ...
..AshishHi Ashish ,
Ya we can call a non SAP program from SAP program.
For example we can call a EXE program from the SAP program using the RFC connection created in SM59.
In Sm 59 you can create a TCP/IP connection and give the path of the executable there. -
Error while calling java program from ABAP
Hi Experts,
We are trying for RFC inbound scenario.
We followed the below blog
/people/gregor.wolf3/blog/2004/08/26/setup-and-test-sap-java-connector-outbound-connection
We are working with SAP JCO 3.0.2
We are getting the error : 'STFC_CONNECTION' could not be found in the server repository.
After I run the Java server program if I execute the RFC destination directly from SM 59 it is showing successful messages.
If I stop the java program then this RFC is failing. Based on this we concluded that RFC to Java connection is working fine.
But as mentioned in blog if we call the RFC Destination from ABAP program it is giving the below error,
'STFC_CONNECTION' could not be found in the server repository.
If we test the RFC destination using RFC_TRUSTED_CHECK standard FM we are getting the below error.
'RFCPING' could not be found in the server repository.
We create the RFC destination of Type : TCP/IP as exactly mention in the blog.
Please help us in resolving this issue.
Thanks
PrincePabi,
Using the RFC connection,we can establish a link between Java and SAP.
Afterwards,hope we can call Java program from ABAP.
Below is the sample piece of code to establish RFC connection(link) between Java and SAP.
DATA: REQUTEXT LIKE SY-LISEL,
RESPTEXT LIKE SY-LISEL,
ECHOTEXT LIKE SY-LISEL.
DATA: RFCDEST like rfcdes-rfcdest VALUE 'NONE'.
DATA: RFC_MESS(128).
REQUTEXT = 'HELLO WORLD'.
RFCDEST = 'JCOSERVER01'. "corresponds to the destination name defined in the SM59
CALL FUNCTION 'STFC_CONNECTION'
DESTINATION RFCDEST
EXPORTING
REQUTEXT = REQUTEXT
IMPORTING
RESPTEXT = RESPTEXT
ECHOTEXT = ECHOTEXT
EXCEPTIONS
SYSTEM_FAILURE = 1 MESSAGE RFC_MESS
COMMUNICATION_FAILURE = 2 MESSAGE RFC_MESS.
IF SY-SUBRC NE 0.
WRITE: / 'Call STFC_CONNECTION SY-SUBRC = ', SY-SUBRC.
WRITE: / RFC_MESS.
ENDIF.
Regards,
Sree -
How to call java program from ABAP
Hi Experts,
My requirement is to call java programs from ABAP. For that i have set up SAP JCO connection by using this link http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/739. [original link is broken] [original link is broken] [original link is broken] Connection gets sucessfully. After this how to call java program from ABAP as per our requirement. Please help me out.
Also i tried this way also.. but while executing the DOS Command line appear & disappear in few seconds. So couldnt see the JAVA output. Please help me out to call java programs in ABAP..
DATA:command TYPE string VALUE 'D:Javajdk1.6.0_20 injavac',
parameter TYPE string VALUE 'D:java MyFirstProgram'.
CALL METHOD cl_gui_frontend_services=>execute
EXPORTING
application = command
parameter = parameter
OPERATION = 'OPEN'
EXCEPTIONS
cntl_error = 1
error_no_gui = 2
bad_parameter = 3
file_not_found = 4
path_not_found = 5
file_extension_unknown = 6
error_execute_failed = 7
OTHERS = 8.
Thanks.This depends on the version of your Netweaver Java AS. If you are running 7.0, you will have to use the Jco framework. The Jco framework is deprecated since 7.1 though. If you want to build a RFC server in 7.1 or higher, it is adviced that you set it up through JRA.
Implement an RFC server in 7.0:
http://help.sap.com/saphelp_nw04/helpdata/en/6a/82343ecc7f892ee10000000a114084/frameset.htm
Implement an RFC server in 7.1 or higher:
http://help.sap.com/saphelp_nwce72/helpdata/en/43/fd063b1f497063e10000000a1553f6/frameset.htm -
Calling Java program from ABAP
Hi All,
my ABAP program downloads one file to one folder. Then one Java program is running to Encrypt the file.
Now , they want to call the JAVA program in ABAP, so that they can encrypt the file before downloading.
Is it possible to call a Java program from ABAP ? If Yes, please give me the detailed procedure.
Thanks
pabiPabi,
Using the RFC connection,we can establish a link between Java and SAP.
Afterwards,hope we can call Java program from ABAP.
Below is the sample piece of code to establish RFC connection(link) between Java and SAP.
DATA: REQUTEXT LIKE SY-LISEL,
RESPTEXT LIKE SY-LISEL,
ECHOTEXT LIKE SY-LISEL.
DATA: RFCDEST like rfcdes-rfcdest VALUE 'NONE'.
DATA: RFC_MESS(128).
REQUTEXT = 'HELLO WORLD'.
RFCDEST = 'JCOSERVER01'. "corresponds to the destination name defined in the SM59
CALL FUNCTION 'STFC_CONNECTION'
DESTINATION RFCDEST
EXPORTING
REQUTEXT = REQUTEXT
IMPORTING
RESPTEXT = RESPTEXT
ECHOTEXT = ECHOTEXT
EXCEPTIONS
SYSTEM_FAILURE = 1 MESSAGE RFC_MESS
COMMUNICATION_FAILURE = 2 MESSAGE RFC_MESS.
IF SY-SUBRC NE 0.
WRITE: / 'Call STFC_CONNECTION SY-SUBRC = ', SY-SUBRC.
WRITE: / RFC_MESS.
ENDIF.
Regards,
Sree -
Calling another program from the current program
Hi all,
In our requirement we are calling another program from our current program .
In the current program( from which we are calling ) we are giving file name in the selection screen
and when we run the current program we are successfully going to other program but our main requirement is to higlight the file name which we had given earlier .
Note : The called program doesnt have any selection screen.HI
use EXPORT and IMPORT key words for passing data from one program to another program.
as the called program is available in the same session you can use above key words which means you are accessing ABAP MEMORY.
You can also use SET and GET key words which means SAP memory
take F1 help there are examples tooo and detailes explanation abou the same
Regards
Ramchander Rao.K
Edited by: Ramchander Krishnamraju on Dec 24, 2008 7:05 AM -
How to call a subroutine from sap script
hi friends,
Can anybody tell me How to call a subroutine from sap script .
thanks n regards .
Maheshhi..
Calling ABAP Subroutines: PERFORM
You can use the PERFORM command to call an ABAP subroutine (form) from any program, subject to the normal ABAP runtime authorization checking. You can use such calls to subroutines for carrying out calculations, for obtaining data from the database that is needed at display or print time, for formatting data, and so on.
PERFORM commands, like all control commands, are executed when a document is formatted for display or printing. Communication between a subroutine that you call and the document is by way of symbols whose values are set in the subroutine.
The system does not execute the PERFORM command within SAPscript replace modules, such as TEXT_SYMBOL_REPLACE or TEXT_INCLUDE_REPLACE. The replace modules can only replace symbol values or resolve include texts, but not interpret SAPscript control commands.
Syntax in a form window:
/: PERFORM <form> IN PROGRAM <prog>
/: USING &INVAR1&
/: USING &INVAR2&
/: CHANGING &OUTVAR1&
/: CHANGING &OUTVAR2&
/: ENDPERFORM
INVAR1 and INVAR2 are variable symbols and may be of any of the four SAPscript symbol types.
OUTVAR1 and OUTVAR2 are local text symbols and must therefore be character strings.
The ABAP subroutine called via the command line stated above must be defined in the ABAP report prog as follows:
FORM <form> TABLES IN_TAB STRUCTURE ITCSY
OUT_TAB STRUCTURE ITCSY.
ENDFORM.
The values of the SAPscript symbols passed with /: USING... are now stored in the internal table IN_TAB . Note that the system passes the values as character string to the subroutine, since the field Feld VALUE in structure ITCSY has the domain TDSYMVALUE (CHAR 80). See the example below on how to access the variables.
The internal table OUT_TAB contains names and values of the CHANGING parameters in the PERFORM statement. These parameters are local text symbols, that is, character fields. See the example below on how to return the variables within the subroutine.
From within a SAPscript form, a subroutine GET_BARCODE in the ABAP program QCJPERFO is called. Then the simple barcode contained there (First page, Next page, Last page) is printed as local variable symbol.
Definition in the SAPscript form:
/: PERFORM GET_BARCODE IN PROGRAM QCJPERFO
/: USING &PAGE&
/: USING &NEXTPAGE&
/: CHANGING &BARCODE&
/: ENDPERFORM
/ &BARCODE&
Coding of the calling ABAP program:
REPORT QCJPERFO.
FORM GET_BARCODE TABLES IN_PAR STUCTURE ITCSY
OUT_PAR STRUCTURE ITCSY.
DATA: PAGNUM LIKE SY-TABIX, "page number
NEXTPAGE LIKE SY-TABIX. "number of next page
READ TABLE IN_PAR WITH KEY PAGE.
CHECK SY-SUBRC = 0.
PAGNUM = IN_PAR-VALUE.
READ TABLE IN_PAR WITH KEY NEXTPAGE.
CHECK SY-SUBRC = 0.
NEXTPAGE = IN_PAR-VALUE.
READ TABLE OUT_PAR WITH KEY BARCODE.
CHECK SY-SUBRC = 0.
IF PAGNUM = 1.
OUT_PAR-VALUE = |. "First page
ELSE.
OUT_PAR-VALUE = ||. "Next page
ENDIF.
IF NEXTPAGE = 0.
OUT_PAR-VALUE+2 = L. "Flag: last page
ENDIF.
MODIFY OUT_PAR INDEX SY-TABIX.
ENDFORM.
regards,
veeresh -
How to call a program from FM which acts as popup?
Hi,
I need to call a program from FM and once the program is called it needs to be opened as a popup. Maybe we need to assign size when we call from FM or do we need to give size in the program it self?
I know i can either use the Submit command or Call Transaction command. But that it self will open a full screen which i dont want. It needs to be of a smaller size.
Any help will be appreciated.
ThanksHi,
Try this,
REPORT ZEX_POPUPSCREEN .
*& POPUP SCREEN
* Table Declaration
TABLES VBAK.
* Start of Selection
START-OF-SELECTION.
SELECT * FROM VBAK.
WRITE / VBAK-VBELN HOTSPOT ON.
ENDSELECT.
* Display the screen
AT LINE-SELECTION.
WINDOW STARTING AT 10 10
ENDING AT 40 25.
WRITE:/ 'VBAK-VBELN, VBAK-KUNNR'.
Regards,
Nikhil. -
Problem regarding calling a program from another program
Hi,
I have a requirement that i need to call a program from another program and in that case the called program should be executed with a value in the selection screen coming from the first program..i.e.
a standard report to view the user Notes for annual leave is RPTARQDBVIEW. Can we create a report to display all the users under a manager as a hyperlink and run the report(RPTARQDBVIEW), with the pernr of the employee selected
Regards,
saumikSubmitting a report using ranges for select-options
* Define range for ltak-tanum
RANGES: r_tanum FOR ltak-tanum.
* Read values from database tabel into the range
* These values are later used for select-options in the report
SELECT * FROM ltak
WHERE lgnum = w_lgnum AND "Warehouse number/complex
vbeln = w_screen1000-io_vbeln. "Transfer order number
MOVE ltak-tanum TO r_tanum-low.
MOVE 'I' TO r_tanum-sign.
MOVE 'EQ' TO r_tanum-option.
APPEND r_tanum.
ENDSELECT.
* Submit report with range
SUBMIT zmm00100 WITH p_tanum IN r_tanum.
or
Submitting a report from ABAP with selection criterias
TYPES: tt_selection TYPE STANDARD TABLE OF rsparams.
DATA: l_iblnr TYPE st_iblnr,
* Define internal table and work area for select-options
l_selection TYPE rsparams,
li_selection TYPE tt_selection.
* Create selectIon table
LOOP AT gi_iblnr INTO l_iblnr.
CLEAR l_selection.
l_selection-selname = 'IM_IBLNR'. "Option name
l_selection-kind = 'S'. "S= select options P=Parameters
l_selection-sign = 'I'. "Sign
l_selection-option = 'EQ'. "Option
l_selection-low = l_iblnr-iblnr. "Value
APPEND l_selection TO li_selection.
ENDLOOP.
* Submit report
SUBMIT rm07idif WITH SELECTION-TABLE li_selection AND RETURN.
Regards,
Prabhudas -
JCO.Server Error while trying to execute a RFC program from SAP
Hi,
We are connecting to an external registered server program from SAP via Web Methods.
The external server program is registered with the SAP Gateway. We have created a TCP/IP RFC destination and are able to connect to the destination successfully via SM59.
An RFC function is created in SAP and is called using the syntax CALL FUNCTION "/NGN/BAPI_STRE_SEARCH_PROCESS" DESTINATION 'PRDB2B'. We have also handled the COMM_FALIURE and SYSTEM_FALIURE exceptions in the function call.
We are monitoring the gateway via SMGW and see a connection log to the RFC destination as below
Number - 10
LUname - dev01
TPName - sapgw00
User - KRAORANE
Status - CONNECTED
Symbolic - PRDB2B
Conversation - 86520353
Prot - REG
SAP return code - 0
CPIC rtn code - 0
The external program returns results as expected.
However sometimes the RFC fails and returns the message JCO.Server could not create server function /NGN/BAPI_STRE_SEARCH_PROCESS.
We are not able to figure what exactly is causing this error. Any help will be highly appreciated.
-KiranHi,
Please see the below links..
JCO.Server Error while trying to execute a RFC program from SAP
Re: JCO.Servcer could not find server function
Re: JCO.Server could not find server function 'SET_SLD_DATA'
/people/kathirvel.balakrishnan2/blog/2005/07/26/remote-enable-your-rfchosttoip-to-return-host-ip-to-jco
Re: interfacing SAP with an existing java applications
http://help.sap.com/saphelp_nw04/helpdata/en/47/80f671ee6e4b41b63c0fe46bd6e4f8/content.htm
http://www.sapgenie.com/faq/jco.htm
Regards
Chilla.. -
Dear All,
How can we call web service from SAP?
Thanks in Advance,
RamanaHI kcr,
pls see this link
http://****************/Tutorials/Others/ValidateEmailID/Webservice.htm
write this program
REPORT zvalidate_email.PARAMETERS: p_mail(100) LOWER CASE. " E-Mail id to be verifiedDATA: http_client TYPE REF TO if_http_client .DATA: w_string TYPE string ,
w_result TYPE string ,
r_str TYPE string .DATA: result_tab TYPE TABLE OF string.START-OF-SELECTION .
CLEAR w_string .
CONCATENATE
'http://www.webservicex.net/ValidateEmail.asmx/IsValidEmail?Email=' p_mail
INTO
w_string . CALL METHOD cl_http_client=>create_by_url
EXPORTING
url = w_string
IMPORTING
client = http_client
EXCEPTIONS
argument_not_found = 1
plugin_not_active = 2
internal_error = 3
OTHERS = 4. CALL METHOD http_client->send
EXCEPTIONS
http_communication_failure = 1
http_invalid_state = 2. CALL METHOD http_client->receive
EXCEPTIONS
http_communication_failure = 1
http_invalid_state = 2
http_processing_failed = 3.
CLEAR w_result .
w_result = http_client->response->get_cdata( ). REFRESH result_tab .
SPLIT w_result AT cl_abap_char_utilities=>cr_lf INTO TABLE result_tab . READ TABLE result_tab INTO r_str INDEX 2.
IF r_str+44(1) = 't'.
WRITE:/ 'Valid email address'.
ELSE.
WRITE:/ 'Invalid email address'.
ENDIF.Output:
thanks
karthik -
CALL WEBI Report from SAP Portal
Hi Experts,
I need to call WEBI report from SAP Portal, is it possible?
The submitted report will be opened in the same window?
Kind Regads.Hi
You can call SAP portal from WebI Report...
insert blank cell in the report / or select the cell whaere do you want to in the report
and then Right click and select hyper link.
Enter the portal address
It will be opened in the same or new window based on your settings.
Target Window : New Window ..then it will open new window. -
How do i stop programs from automatically running when i start up my macbook?
how do i stop programs from automatically running when i start up my macbook?
programs such as.. email and Skype.
When i go to system preferences, then users & groups, then to my name, log in items ....this box is clear, i have unchecked everything, yet things still start up......sometimes these applications will have a setting in the preferences to not open on login of computer. If you see none of that, you can go into:
system preferences> Users & Groups > Select your user>Login Items.
unlock the settings by hitting the lock icon on the bottom left of the window then youll be able to uncheck these things from opening when you log in.
Hope this is helpful or answers the question.
Maybe you are looking for
-
Remote Function Module...
Hi Folks, I have created a RFC using tcode SE37 where in im importing 2 fields from a structure and i want to return the values to a table.... while activating the RFC im getting the Following error "REPORT/PROGRAM statement missing, or program type
-
Lost Administration menu (Gnome)after huge upgrade,
Gnome issue:~ I just found that all items such as Session, Service... under Administration menu have disappeared... I tried to edit the menu but I didn't see any items can be ticked within Administration .Please could anybody help me solved this pro
-
Reference same dimension multiple times in a cube
Hi, I'm creating a cube with Analytic Workspace Manager. The cube needs to reference same dimension more than once. For example, in a movie ticket booking cube, there's a booking date and a show date , both should reference same pre-created TIME dime
-
Recently I cleared cookies, now I can't open games on Yahoo.
I have a Mini Mac, OS X Version 10.9.5 2.5 GHz Intel Core 15 I recently removed by cookies because of a Web popup. Now I can't open AARP games in Yahoo. I think I may have cleared a Plug-in to operate it. I put Adobe Flashplayer back but it still
-
I need help? I was workimg with the clone stamp and it just stop working. I do the Alt + Click and it turn grey but nothing happen. I use the Square Marquee as much as poosible then I went to use the clone stamp and it want work. Please advise. T