RFC to execute a program
Hi everyone.
Does anyone know if there's a ready made RFC function for executing an ABAP program.
I need to run a program on a remote system with parameters from my local system.
Any ideas?
Thanks, Nachshon.
Also, perhaps, you can write an RFC enabled function that accepts a program name to run and a table of structure RSPARAMS. Then the function can execute the program via:
SUBMIT rep WITH SELECTION-TABLE seltab
This way you can run any program remotely through this one function. Other parameters could be used to set standard program execution options. See the help documentation for SUBMIT.
The down side is that there could be security concerns with this solution. That should be considered before trying this.
Hope this helps.
Similar Messages
-
BI Process Chain executing a program in ECC
I want to build a process chain in BI 7.0, which should also be able to execute a program in ECC.
Is it possible.
How do I do that ?
Thanks
MaryIt should be possible: Your process chain should include an ABAP program. This program should call an RFC enabled function module in ECC (custom-built) which should perform the required function in ECC.
There are many links on including ABAP programs in PCs. In the ABAP section you will find information about building RFC function modules.
BR/
Mathew. -
Executing a program on a remote PC
Hello,
I am trying to execute a program on a PC running Windows; I have defined an RFC connection using explicit host, but when I try 'Connection Test', I get
timeout during allocate / CPI-C error CM_RESOURCE_FAILURE_RETRY
Is it possible to do this, and, if so, how ? Thanks in advance for your advice.Hello,
it may not work if the Gateway host and the Gateway service entries are empty.
Let's check now the destination server, please execute the command
"netstat -a" in order to verify that the gateway is listening to the
your port for example: sapgw01 3601.
581509 Reasons for "timeout during allocate"
The problem could also be that setting up the connection takes longer
than the time specified in the timeout parameter. Try increase the
gw/cpic_timeout value and then see if the error persists.
Please check attached note 581509 and 566566 for troubleshooting
Regards
Tibor -
U00BFCan i execute a program remotely?
Hi, ¿can i execute a program remotely whitout to use a function module rfc enabled?
Hi,
look at the below link
http://help.sap.com/saphelp_nw04/helpdata/en/c5/eed63b54e56276e10000000a11402f/content.htm
Regards
Sudheer -
Getting errors when trying to execute CRUD programs
Hi All
I am trying to execute one of the CRUD programs for creating , updatying or deleting data in MDM server and a m getting a few errors .Could anybody advise.
Created on Jun 6, 2007
package com.sap.nw.mdm.rig;
import com.sap.nw.mdm.rig.programs.data.blobs.BLOBDataProgram;
import com.sap.nw.mdm.rig.programs.data.checkout_checkin_rollback.CheckOutCheckInRecordsProgram;
import com.sap.nw.mdm.rig.programs.data.crud.CRUDDataProgram;
import com.sap.nw.mdm.rig.programs.data.crud.bulk.BulkCRUDDataProgram;
import com.sap.nw.mdm.rig.programs.data.keymapping.KeyMappingProgram;
import com.sap.nw.mdm.rig.programs.data.search.SearchProgram;
import com.sap.nw.mdm.rig.programs.data.search.attribute.AttributeSearchProgram;
import com.sap.nw.mdm.rig.programs.data.search.field.FieldSearchProgram;
import com.sap.nw.mdm.rig.programs.data.syndication.SyndicationProgram;
import com.sap.nw.mdm.rig.programs.data.workflow.WorkflowProgram;
import com.sap.mdm.data.RegionProperties;
import com.sap.nw.mdm.rig.repository.Repository;
import com.sap.nw.mdm.rig.server.Server;
This class is the starting point to execute all sample programs.
To see a description of the various programs you can execute, please have a look at the
documentation for the following classes. There are static variables in each of these
classes that point to the various programs that can be executed with a description of
what the program does.
<ul>
<li>{@link com.sap.nw.mdm.rig.programs.data.blobs.BLOBDataProgram}
<li>{@link com.sap.nw.mdm.rig.programs.data.checkout_checkin_rollback.CheckOutCheckInRecordsProgram}
<li>{@link com.sap.nw.mdm.rig.programs.data.crud.CRUDDataProgram}
<li>{@link com.sap.nw.mdm.rig.programs.data.crud.bulk.BulkCRUDDataProgram}
<li>{@link com.sap.nw.mdm.rig.programs.data.keymapping.KeyMappingProgram}
<li>{@link com.sap.nw.mdm.rig.programs.data.search.SearchProgram}
<li>{@link com.sap.nw.mdm.rig.programs.data.search.attribute.AttributeSearchProgram}
<li>{@link com.sap.nw.mdm.rig.programs.data.search.field.FieldSearchProgram}
<li>{@link com.sap.nw.mdm.rig.programs.data.syndication.SyndicationProgram}
<li>{@link com.sap.nw.mdm.rig.programs.data.workflow.WorkflowProgram}
</ul>
@author Richard LeBlanc
public class Application {
private Application() {
Starts the application and executes a program
@param args - not required
static public void main(String[] args) {
System.out.println("876876");
Application app = new Application();
System.out.println("11111");
Program program = null;
System.out.println("22222");
Simply uncomment the line that contains the program you wish to execute and run this class.
Blob Programs
// program = BLOBDataProgram.RETRIEVE_AND_WRITE_IMAGE_TO_FILE;
// program = BLOBDataProgram.RETRIEVE_AND_WRITE_PDF_TO_FILE;
Checkout/Checkin Data Programs
// program = CheckOutCheckInRecordsProgram.CHECK_OUT_NEW_CHECK_IN;
// program = CheckOutCheckInRecordsProgram.CHECK_OUT_NEW_ROLLBACK;
// program = CheckOutCheckInRecordsProgram.CHECK_OUT_EXISTING_CHECK_IN;
// program = CheckOutCheckInRecordsProgram.CHECK_OUT_EXISTING_ROLLBACK;
Create Read Update Delete (CRUD) Data Programs
// program = CRUDDataProgram.CRUD_HIERARCHY_TABLE;
program = CRUDDataProgram.CRUD_MAIN_TABLE;
// program = CRUDDataProgram.CRUD_MAIN_TABLE_WITH_FLAT_AND_HIERARCHY_LOOKUP_FIELDS;
// program = CRUDDataProgram.CRUD_MAIN_TABLE_WITH_QUALIFIED_LOOKUP_FIELD;
// program = CRUDDataProgram.CRUD_MAIN_TABLE_WITH_TAXONOMY_LOOKUP_FIELD;
// program = CRUDDataProgram.CRUD_TAXONOMY_TABLE_WITH_ATTRIBUTES;
System.out.println("333333");
Bulk Create Read Update Delete (CRUD) data programs
(many records at once)
// program = BulkCRUDDataProgram.BULK_CRUD_MAIN_TABLE;
KeyMapping Programs
// program = KeyMappingProgram.RETRIEVE;
Search Programs
// program = SearchProgram.DRILL_DOWN_SEARCH;
// program = SearchProgram.KEYWORD;
// program = SearchProgram.MASK;
// program = SearchProgram.NAMED_SEARCH;
// program = SearchProgram.QUALIFIER;
Attribute Search Programs
// program = AttributeSearchProgram.COUPLED_NUMERIC;
// program = AttributeSearchProgram.NUMERIC;
// program = AttributeSearchProgram.TEXT;
Field Search Programs
// program = FieldSearchProgram.BOOLEAN;
// program = FieldSearchProgram.CURRENCY;
// program = FieldSearchProgram.LITERAL_DATE;
// program = FieldSearchProgram.LOOKUP;
// program = FieldSearchProgram.TEXT;
Syndication Programs
// program = SyndicationProgram.SYNDICATE_PORT;
Workflow Programs
// program = WorkflowProgram.EXECUTE;
//TODO enter MDS name
String mdsName = "172.18.139.200"; //the name of the Master Data Server
String repositoryName = "GDS_1"; //make sure this is the name you use when unarchiving
//the repository otherwise change it to reflect the name
//of your repository
String regionName = "English [US]";
String userName = "Admin"; //there is an admin user with no password in the provided repository
String password = ""; //there is an admin user with no password in the provided repository
System.out.println("67r86587");
app.start(mdsName, repositoryName, regionName, userName, password, program);
Establishes a connection to the given server and logs in to the given repository
with the given logon information and executes the given program
private void start(String serverName, String repositoryName, String regionName,
String user, String password, Program program) {
//Create an instance of the MDS
Server server = Server.getInstance(serverName);
System.out.println("444444");
//Get the list of running repositories from the server
Repository[] repositories = server.getRepositories();
System.out.println("5555");
Repository repository = null;
//Go through the list of repositories and see if any match the
//given repository name
for(int i=0, j=repositories.length; i<j; i++){
System.out.println("666666bbye");
if(repositories<i>.getIdentifier().getName().equals(repositoryName)) {
System.out.println(" hello" +repositoryName);
repository = repositories<i>;
System.out.println(" hi" + repository);
//Get the list of regions for the repository
RegionProperties[] regions = repository.getRegions();
RegionProperties region = null;
//Go through the list of regions and see if any match the given
//repository name
for(int i=0, j=regions.length; i<j; i++){
System.out.println(" hello");
if(regions<i>.getName().equals(regionName)) {
region = regions<i>;
System.out.println(" 99999" +region);
//Login to the repository as you would using the Data Manager
//This creates a user and repository session that are available using
//repository.getSession()
repository.login(region, user, password);
//execute the program from the list above
program.execute(repository);
System.out.println(" finally");
//destroy the session (destroys the repository and user sessions)
repository.getSession().destroy();
//close the connection to the MDS
repository.getServer().closeConnection();
I am getting the following errors:
Exception in thread "main" java.lang.IllegalArgumentException: Table with Code 'Products' does not exist in the repository 'GDS_1'
at com.sap.mdm.internal.schema.RepositorySchemaImpl.getTableSchema(RepositorySchemaImpl.java:136)
at com.sap.nw.mdm.rig.programs.data.crud.CRUDMainTableRecordProgram.execute(CRUDMainTableRecordProgram.java:33)
at com.sap.nw.mdm.rig.Application.start(Application.java:211)
at com.sap.nw.mdm.rig.Application.main(Application.java:157)Hi Stephen,
I assume that a super admin user does not get these error messages, right? If so, this behaviour might come due to missing permissions on PCD objects for the user rubinmd. Please apply note 792370 which explains how to set end user permission on the pcd folder com.sap.ip.collaboration/Rooms
Kind regards,
Roland -
How can i execute java program in JSP ?
att
thankstry to use:
Runtime.getRuntime().exec("command line");
where "command line" is your command to execute your program. -
Error in executing ABAP program. Error occurred when creating dataset
hi,
when I use LKM SAP ERP to Oracle (SQLLDR) to extract data from SAP ERP server. I execute my interface, and it's stop at extract data step.
This is message:
java.lang.RuntimeException: Error occured in open tool execute method...Error in executing ABAP program...Error in executing ABAP program...Error occurred when creating dataset/abc/ZODI_13001_6001_GLOBAL.txt
I tried others path name, tried slash or backslash. This is content in code tab
OdiSAPAbapExecute "-UPLOAD=1" "-EXECUTE=1" "-EXECUTEBASE_RKM=0" "-ZRFC_RUN_INSTALL=1" "-ABAP_PROGRAM_NAME=ZODI_13001_6001" "-HOST=10.86.87.24" "-USER=sv_hoa" "-PASSWORD=<@=snpRef.getInfo("SRC_PASS") @>" "-SAP_CLIENT=800" "-SAP_LANGUAGE=EN" "-SAP_SYSTEM_NUMBER=02" "-SAP_FUNCTION_GROUP_NAME=ZODI_FGR_13001" "-CONNECTION_POOL_NAME=SAP_ODI_ERP_POOL_10.86.87.24" "-CONNECTION_POOL_SIZE=10" "-FILE_DELIMITER=<@=""+(char)8@>" "-FILE_NAME=ZODI_13001_6001_GLOBAL.txt" "-FTP_HOST=10.86.82.108" "-FTP_USER=anh" "-FTP_PASSWORD=<@=sFtpPassword@>" "-FTP_PASSIVE_MODE=1" "-FTP_TRANSFER_TIMEOUT=100000" "-ODI_VARIABLE_NAMES=" "-ODI_VARIABLE_VALUES=" "-USER_ABAP_PARAMETER_NAMES=IV_DELIMITER,CHAR3;IV_FILENAME,CHAR255;IV_USER,CHAR35;IV_PWD,CHAR35;IV_HOST,CHAR35;IV_HASHVALUE,CHAR35;IV_PATH,CHAR35;IV_MAX_ROW_CNT,SYTABIX;IV_FETCH_BATCH_SIZE,SYTABIX;" "-USER_ABAP_PARAMETER_VALUES=<Value>" "-USER_ABAP_PARAMETER_SEPARATOR=<Value>" "-ABAP_TABLE_PARAMETERS=RETURN,BAPIRETURN;ET_FILE_RETURN,BAPIRET2" "-ABAP_EXPORT_PARAMETERS=ERRORMESSAGE;SY-MSGV1" "-LOG_FILE_NAME=C:\Users\anh\AppData\Local\Temp\SapAbapExecuteOpenTool_13001.log" "-FTP_PATH=/abc/" "-DEV_CLASS=ZODI_DEVCLASS" "-MAX_ROW_COUNT=" "-FETCH_BATCH_SIZE=100000" "-HASH_VALUE_MARKER=HVM" "-ABAP_PROGRAM_BODY=
*Final Type declarations
TYPES : BEGIN OF ty_final,
Y03HOCSINH_HOCSINH_ID TYPE
Y03HOCSINH-HOCSINH_ID,
Y03HOCSINH_MA_HOC_SINH TYPE
Y03HOCSINH-MA_HOC_SINH,
Y03HOCSINH_TEN_HOC_SINH TYPE
Y03HOCSINH-TEN_HOC_SINH,
Y03HOCSINH_GIOI_TINH TYPE
Y03HOCSINH-GIOI_TINH,
Y03HOCSINH_DIA_CHI TYPE
Y03HOCSINH-DIA_CHI,
Y03HOCSINH_GHI_CHU TYPE
Y03HOCSINH-GHI_CHU,
END OF ty_final.
*Final Temp Type Declarations
TYPES : BEGIN OF ty_final_tmp,
Y03HOCSINH_HOCSINH_ID TYPE
Y03HOCSINH-HOCSINH_ID ,
Y03HOCSINH_MA_HOC_SINH TYPE
Y03HOCSINH-MA_HOC_SINH ,
Y03HOCSINH_TEN_HOC_SINH TYPE
Y03HOCSINH-TEN_HOC_SINH ,
Y03HOCSINH_GIOI_TINH TYPE
Y03HOCSINH-GIOI_TINH ,
Y03HOCSINH_DIA_CHI TYPE
Y03HOCSINH-DIA_CHI ,
Y03HOCSINH_GHI_CHU TYPE
Y03HOCSINH-GHI_CHU ,
END OF ty_final_tmp.
*Final Target Type Declarations
TYPES : BEGIN OF ty_final_target,
C0_Y03HOCSINH_HOCSINH_ID TYPE
Y03HOCSINH-HOCSINH_ID,
C1_Y03HOCSINH_MA_HOC_SINH TYPE
Y03HOCSINH-MA_HOC_SINH,
C2_Y03HOCSINH_TEN_HOC_SINH TYPE
Y03HOCSINH-TEN_HOC_SINH,
C3_Y03HOCSINH_GIOI_TINH TYPE
Y03HOCSINH-GIOI_TINH,
C4_Y03HOCSINH_DIA_CHI TYPE
Y03HOCSINH-DIA_CHI,
C5_Y03HOCSINH_GHI_CHU TYPE
Y03HOCSINH-GHI_CHU,
END OF ty_final_target.
* Table type for Y03HOCSINH
TYPES : BEGIN OF ty_Y03HOCSINH,
HOCSINH_ID TYPE
Y03HOCSINH-HOCSINH_ID,
MA_HOC_SINH TYPE
Y03HOCSINH-MA_HOC_SINH,
TEN_HOC_SINH TYPE
Y03HOCSINH-TEN_HOC_SINH,
GIOI_TINH TYPE
Y03HOCSINH-GIOI_TINH,
DIA_CHI TYPE
Y03HOCSINH-DIA_CHI,
GHI_CHU TYPE
Y03HOCSINH-GHI_CHU,
END OF ty_Y03HOCSINH.
TYPES: BEGIN OF gs_text,
line(843) TYPE c,
END OF gs_text.
*Structure Declarations
DATA: wa_final_string TYPE string,
wa_final TYPE ty_final,
wa_final_target TYPE ty_final_target,
wa_Y03HOCSINH TYPE ty_Y03HOCSINH,
*Table Declarations
tt_final TYPE STANDARD TABLE OF ty_final,
tt_Y03HOCSINH TYPE STANDARD TABLE OF ty_Y03HOCSINH,
tt_final_target TYPE STANDARD TABLE
OF ty_final_target,
tt_final_tmp TYPE STANDARD TABLE OF ty_final_tmp,
tt_final_tmp1 TYPE STANDARD TABLE OF ty_final,
gt_result TYPE STANDARD TABLE OF gs_text,
*Variable Declarations
lv_path TYPE string,
lv_flag TYPE char1,
C0_Y03HOCSINH_HOCSINH_ID TYPE
STRING,
C1_Y03HOCSINH_MA_HOC_SINH TYPE
STRING,
C2_Y03HOCSINH_TEN_HOC_SINH TYPE
STRING,
C3_Y03HOCSINH_GIOI_TINH TYPE
STRING,
C4_Y03HOCSINH_DIA_CHI TYPE
STRING,
C5_Y03HOCSINH_GHI_CHU TYPE
STRING,
wa_final_tmp TYPE ty_final_tmp,
lv_file TYPE string,
lv_datum TYPE sy-datum,
lv_date TYPE char10,
wa_result TYPE string,
lv_delimiter type string,
lv_cnt TYPE sytabix,
*-Cursor Declaration
lv_Y03HOCSINH_dbcur TYPE cursor,
lv_tabix_frm TYPE sy-tabix.
lv_delimiter = iv_delimiter.
IF iv_hashvalue = 'HVM'.
*Open/delete output file
CONCATENATE iv_path iv_filename INTO lv_path.
*Check for file existence, if found, delete it
OPEN DATASET lv_path FOR INPUT
IN TEXT MODE
ENCODING DEFAULT.
IF sy-subrc EQ 0.
DELETE DATASET lv_path.
ENDIF.
*Open/create output file
OPEN DATASET lv_path FOR APPENDING
IN TEXT MODE
ENCODING DEFAULT.
IF sy-subrc EQ 0.
*Batch Processing
OPEN CURSOR WITH HOLD lv_Y03HOCSINH_dbcur FOR
SELECT HOCSINH_ID
MA_HOC_SINH
TEN_HOC_SINH
GIOI_TINH
DIA_CHI
GHI_CHU
FROM Y03HOCSINH.
DO.
*Check for the counter, only for first batch
*process new line is required...
lv_cnt = lv_cnt + 1.
REFRESH tt_Y03HOCSINH.
FETCH NEXT CURSOR lv_Y03HOCSINH_dbcur
APPENDING TABLE tt_Y03HOCSINH
PACKAGE SIZE IV_FETCH_BATCH_SIZE.
IF NOT tt_Y03HOCSINH IS INITIAL.
ELSE.
EXIT.
ENDIF.
LOOP AT tt_Y03HOCSINH INTO wa_Y03HOCSINH.
MOVE wa_Y03HOCSINH-HOCSINH_ID
TO wa_final_tmp-Y03HOCSINH_HOCSINH_ID.
MOVE wa_Y03HOCSINH-MA_HOC_SINH
TO wa_final_tmp-Y03HOCSINH_MA_HOC_SINH.
MOVE wa_Y03HOCSINH-TEN_HOC_SINH
TO wa_final_tmp-Y03HOCSINH_TEN_HOC_SINH.
MOVE wa_Y03HOCSINH-GIOI_TINH
TO wa_final_tmp-Y03HOCSINH_GIOI_TINH.
MOVE wa_Y03HOCSINH-DIA_CHI
TO wa_final_tmp-Y03HOCSINH_DIA_CHI.
MOVE wa_Y03HOCSINH-GHI_CHU
TO wa_final_tmp-Y03HOCSINH_GHI_CHU.
APPEND wa_final_tmp TO tt_final_tmp.
ENDLOOP.
free : tt_Y03HOCSINH.
LOOP AT tt_final_tmp INTO wa_final_tmp.
MOVE wa_final_tmp-Y03HOCSINH_HOCSINH_ID
TO wa_final_target-C0_Y03HOCSINH_HOCSINH_ID.
MOVE wa_final_tmp-Y03HOCSINH_MA_HOC_SINH
TO wa_final_target-C1_Y03HOCSINH_MA_HOC_SINH.
MOVE wa_final_tmp-Y03HOCSINH_TEN_HOC_SINH
TO wa_final_target-C2_Y03HOCSINH_TEN_HOC_SINH.
MOVE wa_final_tmp-Y03HOCSINH_GIOI_TINH
TO wa_final_target-C3_Y03HOCSINH_GIOI_TINH.
MOVE wa_final_tmp-Y03HOCSINH_DIA_CHI
TO wa_final_target-C4_Y03HOCSINH_DIA_CHI.
MOVE wa_final_tmp-Y03HOCSINH_GHI_CHU
TO wa_final_target-C5_Y03HOCSINH_GHI_CHU.
Append wa_final_target to tt_final_target.
ENDLOOP.
free : tt_final_tmp.
Clear wa_final_target.
IF NOT iv_max_row_cnt IS INITIAL.
Loop at tt_final_target into
wa_final_target TO iv_max_row_cnt.
MOVE wa_final_target-C0_Y03HOCSINH_HOCSINH_ID
TO C0_Y03HOCSINH_HOCSINH_ID.
MOVE wa_final_target-C1_Y03HOCSINH_MA_HOC_SINH
TO C1_Y03HOCSINH_MA_HOC_SINH.
MOVE wa_final_target-C2_Y03HOCSINH_TEN_HOC_SINH
TO C2_Y03HOCSINH_TEN_HOC_SINH.
MOVE wa_final_target-C3_Y03HOCSINH_GIOI_TINH
TO C3_Y03HOCSINH_GIOI_TINH.
MOVE wa_final_target-C4_Y03HOCSINH_DIA_CHI
TO C4_Y03HOCSINH_DIA_CHI.
MOVE wa_final_target-C5_Y03HOCSINH_GHI_CHU
TO C5_Y03HOCSINH_GHI_CHU.
CONCATENATE
C0_Y03HOCSINH_HOCSINH_ID
C1_Y03HOCSINH_MA_HOC_SINH
C2_Y03HOCSINH_TEN_HOC_SINH
C3_Y03HOCSINH_GIOI_TINH
C4_Y03HOCSINH_DIA_CHI
C5_Y03HOCSINH_GHI_CHU
INTO wa_final_string
SEPARATED BY lv_delimiter.
IF sy-tabix EQ 1 AND lv_cnt EQ 1.
CONCATENATE wa_final_string
lv_delimiter INTO wa_final_string.
ELSE.
CONCATENATE '<@=""+(char)8@>' lv_delimiter wa_final_string
lv_delimiter INTO wa_final_string.
ENDIF.
APPEND wa_final_string TO gt_result.
CLEAR : C0_Y03HOCSINH_HOCSINH_ID,
C1_Y03HOCSINH_MA_HOC_SINH,
C2_Y03HOCSINH_TEN_HOC_SINH,
C3_Y03HOCSINH_GIOI_TINH,
C4_Y03HOCSINH_DIA_CHI,
C5_Y03HOCSINH_GHI_CHU.
ENDLOOP.
ELSE.
Loop at tt_final_target into wa_final_target.
MOVE wa_final_target-C0_Y03HOCSINH_HOCSINH_ID
TO C0_Y03HOCSINH_HOCSINH_ID.
MOVE wa_final_target-C1_Y03HOCSINH_MA_HOC_SINH
TO C1_Y03HOCSINH_MA_HOC_SINH.
MOVE wa_final_target-C2_Y03HOCSINH_TEN_HOC_SINH
TO C2_Y03HOCSINH_TEN_HOC_SINH.
MOVE wa_final_target-C3_Y03HOCSINH_GIOI_TINH
TO C3_Y03HOCSINH_GIOI_TINH.
MOVE wa_final_target-C4_Y03HOCSINH_DIA_CHI
TO C4_Y03HOCSINH_DIA_CHI.
MOVE wa_final_target-C5_Y03HOCSINH_GHI_CHU
TO C5_Y03HOCSINH_GHI_CHU.
CONCATENATE
C0_Y03HOCSINH_HOCSINH_ID
C1_Y03HOCSINH_MA_HOC_SINH
C2_Y03HOCSINH_TEN_HOC_SINH
C3_Y03HOCSINH_GIOI_TINH
C4_Y03HOCSINH_DIA_CHI
C5_Y03HOCSINH_GHI_CHU
INTO wa_final_string
SEPARATED BY lv_delimiter.
IF sy-tabix EQ 1 AND lv_cnt EQ 1.
CONCATENATE wa_final_string
lv_delimiter INTO wa_final_string.
ELSE.
CONCATENATE '<@=""+(char)8@>' lv_delimiter wa_final_string
lv_delimiter INTO wa_final_string.
ENDIF.
APPEND wa_final_string TO gt_result.
CLEAR : C0_Y03HOCSINH_HOCSINH_ID,
C1_Y03HOCSINH_MA_HOC_SINH,
C2_Y03HOCSINH_TEN_HOC_SINH,
C3_Y03HOCSINH_GIOI_TINH,
C4_Y03HOCSINH_DIA_CHI,
C5_Y03HOCSINH_GHI_CHU.
ENDLOOP.
ENDIF.
free : tt_final_target.
IF NOT gt_result IS INITIAL.
CLEAR wa_result.
LOOP AT gt_result INTO wa_result.
TRANSFER wa_result TO lv_path.
ENDLOOP.
ENDIF.
REFRESH gt_result.
*End of main loop for batching
ENDDO.
*Close dataset
CLOSE DATASET lv_path.
CLOSE CURSOR lv_Y03HOCSINH_dbcur.
ELSE.
DATA: lv_mesg TYPE string.
CLEAR et_file_return.
et_file_return-type = 'E'.
CONCATENATE
'Error occurred when creating dataset' lv_path
INTO lv_mesg.
et_file_return-message = lv_mesg.
Append et_file_return.
ENDIF.
ELSE.
CLEAR et_file_return.
et_file_return-type = 'E'.
et_file_return-message =
'Installed ABAP program does not match interface definition'.
APPEND et_file_return.
ENDIF.
Thanks for helpr u able to figure it out..........i got the same error .......can someone help me fix this issue
-
Error while executing the program RIMODAC2.
I am not sure of this program's functionality.
While i execute this program it displays a error message which is displaying a very old Sales Order in the message.
this is the message
Function: /SAPAPO/CIF_SL_DOC_INBOUND
Text: Customer requirement N BM 0100005129 000003 0001:
the number 0100005129 is a Sales order.
Regards,
Kevin.Hi,
It seems that the line raising the exception is:
pstselect=con.prepareStatement(selectQuery,ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
I don't know the odbc bridge so I'm just guessing, but you cant try with:
pstselect=con.prepareStatement(selectQuery);
and see what happens.
I recommend you to use the thin driver, with a single jar you can connect to Oracle without having to configure anything on your machine, just supply a database url, a username and a password.
ciao,
Giovanni
P.S. the code you posted is prone to NullPointerException, if you got an exception you catch it in the the first cathc block, bat after printing the stack trace you are going on even if the variables are null. -
Error while executing the program 'RBDMIDOC'
Hi Experts,
While executing the program RBDMIDOC
I am getting the following errors
One error in Communication data :
1) No data distributed because of conversion errors
Two errors in Data selection and formatting :
1) No ISO code found for the country key NT in the field NATIO
2) Conversion error: infotype 0002, object 01,P,00000033
I am having change pointer entries in BDCP table.
Can anyone please tell me how to resolve these errors....
Thanks in advance...us the program
RHALEINI -
Authorization Error while executing a program
Hi All,
I have developed a program which calls VF02 transaction in background. But while executing it, the program fails with message'No authorization for sales organization XXXX'.
The users who are executing the program does not have access to VF02 and for security reasons the access can not be given to the users.
So my question is whether this error is due to no access to 'VF02' or with the sales organization?
Can we give access to the users according to sales organization rather than giving authorization for VF02 ?
If not then whats the solution to rectify this error without giving VF02 access to users?
Please help.
Thanks,
Sanujit AcharyaHi Sandeep
The OP's question appears to be 'If I give a custom transaction to a user it seems to then call an object unexpectedly that has a sales organisation value because I'm using it to call VF02".
Due to SU24 not being updated for the custom transaction I'm guessing.
A trace would probably assist when working with the functional team to decide what is really needed but I'm a little lost as to what is being asked of either the OP or the security/ABAP teams as this is pretty basic stuff...
@Sanujit
I have developed a program which calls VF02 transaction in background. But while executing it
Have you had this program associated with a custom transaction yet?
Regards
David
Edited by: David Berry on May 28, 2011 5:41 PM (got my sales orders mixed up)
Edited by: David Berry on May 28, 2011 5:47 PM -
Command not found error while executing shell programs in terminal
I have written one sample shell program.
while executing shell program in terminal,it shows COMMAND NOT FOUND error.
How to slove this.Post the "Actual" error. It says more than command not found.
Post your script.
Post the output from:
echo $PATH
Post the output from:
which name_of_command_not_found -
Error while executing FP_TEST_00 program
Hi,
I configured ADS, it was working fine,i'am able to take all the PDF documents from SAP.
But now when i execute FP_TEST_00 program i got an error message that
"ADS: SOAP Runtime Exception: CSoapExceptionFault : SOAP(100102)
Message no. FPRUNX001"
But when i run FP_PDF_TEST_00 program it is giving me the Version information.
I'am unable to find a solution.Please guide me
With Regards,
Pradeep.checkout #944221 in particular:
4. Check the settings for the destination service
To use the destination service on AS Java, settings are required on AS ABAP and AS Java. Therefore, this test contains several steps.
4. 1 In your ABAP system (transaction SA38), call the FP_CHECK_DESTINATION_SERVICE program (available as of NW2004s SPS 08).
a) First of all, execute the program without selecting the option "With Destination Service".
The system processes a test form in the background and displays the size of the generated PDF. It does not use the destination service in the process.
b) Now select the option "With Destination Service" and execute the program again. The system processes the test form, using the destination service.
If the system displays the same message (file size of generated PDF) as it does in a), the configuration of the destination service is correct.
-> Proceed to the next point (5).
If the system issues an error message, the configuration of the destination service is incorrect.
-> Carry out tests 4.2 to 4.4.
4. 2 Check whether the /default_host/sap/bc/fp and /default_host/sap/bc/fpads ICF services are active. (transaction SICF). If this service is not active, activate it. Note: As of NW2004s Support Package Stack 12, when you bundle in distributed systems (in other words, for "non-double-stack installations"), it is optional to use the fpads ICF service
4.3 Check the settings for the ICF service.
a) Enter the following URL in your Web browser:
http://<server>:<port>/sap/bc/fp/form/layout/fp_test_00.xdp
< server> is the AS ABAP, <port> is the HTTP port of the AS ABAP. (you can determine this information using transaction SICF).
b) In the dialog box for the user, enter ADS_AGENT and the relevant password.
If the ICF service settings are correct, the browser displays the layout information of the FP_TEST_00 form in XML format.
-> Proceed with point 4.4.
If the browser displays an error message instead of the XML file, a configuration error occurred.
-> Check whether the user ADS_AGENT exists on the AS ABAP, and if the user has the required authorizations and roles (SAP_BC_FP_ICF).
4.4. Check the settings for the destination service on AS Java
a) Call Visual Administrator and navigate to Services -> Destinations
(detailed instructions are available on the Help Portal at: http://help.sap.com/saphelp_nw2004s/helpdata/en/37/504b8cbc2848a494facfdc09a359b1/frameset.htm ->Adobe Document Services Configuration Guide -> Configuring the Web Service -> Securing Access to the Web Service -> Creating or Changing the Destination Service)
b) Extend the setting in field URLunder Connection Settings to:
http://<server>:<port>/sap/bc/fp/form/layout/fp_test_00.xdp
(The <server> and <port> that are already available refer to the AS ABAP.)
c) Choose 'Save and Test'
d) The system calls the ABAP system that stores the form templates.
If the settings are correct, the system issues the message: "HTTP GET response code 200 Content Type/xml."
-> Proceed with point 5.
If the system issues an error message, the configuration of the destination service is incorrect.
-> Contact your system administrator and ask them to correct the settings for the destination service.
e) Do not forget to change the URL back to http://<server>:<port>. -
Error while Executing th program
Hi Guys,
When i am executing my program I am getting this type of error
" Object ZMMOF3007_INVCE_TO_FACILITIES of class RE and language EN does not exist.
Message no. SF616"
can anybody tell me whsts the solution for this?
Thanks,
Gopi.Hi,
Please try to run that program in se80 in background and check., and check thru own jobs
aRs -
Error in executing the program,what can be the error
Error in executing the program.
What can be the error ,if the error shown is PROGRAM ABC DOE! after entering the values in selection screen?Hi,
Use find to search globally for message in the program.
Check the message that is handled in the program in the selection screen validations.Double click and find out the message.Then you can easily trace why it's happening. -
Hi Abapers,
I had a requirement to convert the smartform 'zpurchase'(customized std. PO form /SMB80/MMPO_ES), into an executable(report) program..so tat the user can execute this program by giving the Po Number in the run time and get the required form print out....
I had written a print program(zpo) for this form, but after executing i got only the layout not the values .... So guide me how to pull the values from tcode ME23N.....
REPORT ZPO.
tables: ekko,pekko,ekpo,ekpa,eket,ekkn,ekek,komk.
*parameters: iv_druvo like druvo.
parameters: iv_ekpo like ekpo-ebeln.
data : fm_name type rs38l_fnam.
data: it_ekpo like standard table of ekpo,
it_ekpa like standard table of ekpa,
it_pekpo like standard table of pekpo,
it_eket like standard table of eket,
it_tkomv like standard table of komv,
it_ekkn like standard table of ekkn,
it_ekek like standard table of ekek,
it_komk like standard table of komk.
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
FORMNAME = 'ZPURCHASE'
* VARIANT = ' '
* DIRECT_CALL = ' '
IMPORTING
FM_NAME = fm_name
* EXCEPTIONS
* NO_FORM = 1
* NO_FUNCTION_MODULE = 2
* OTHERS = 3
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.Code as follows..........
CALL FUNCTION fm_name
EXPORTING
* ARCHIVE_INDEX =
* ARCHIVE_INDEX_TAB =
* ARCHIVE_PARAMETERS =
* CONTROL_PARAMETERS =
* MAIL_APPL_OBJ =
* MAIL_RECIPIENT =
* MAIL_SENDER =
* OUTPUT_OPTIONS =
* USER_SETTINGS = 'X'
IS_EKKO = ekko
IS_PEKKO = pekko
* IS_NAST =
* IV_FROM_MEM =
* IV_DRUVO = druvo
* IMPORTING
* DOCUMENT_OUTPUT_INFO =
* JOB_OUTPUT_INFO =
* JOB_OUTPUT_OPTIONS =
TABLES
IT_EKPO = it_ekpo
IT_EKPA = it_ekpa
IT_PEKPO = it_pekpo
IT_EKET = it_eket
IT_TKOMV = it_tkomv
IT_EKKN = it_ekkn
IT_EKEK = it_ekek
IT_KOMK = it_komk
* EXCEPTIONS
* FORMATTING_ERROR = 1
* INTERNAL_ERROR = 2
* SEND_ERROR = 3
* USER_CANCELED = 4
* OTHERS = 5
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
Maybe you are looking for
-
10G RAC ON 11.2 CLUSTERWARE
Hi, i m trying to make ORACLE RAC 10gr2 on two nodes with openfiler , with ocfs and asm.but i didn't have clusterware 10.2 software to install because oracle has removed software to download, that's why i install clusterware 11.2 . after installation
-
Hi I am running Windows XP on a lab top for a while. Just recently, every time I opened PDF files, I was getting an empty page. So, I installed the latest Adobe Reader. After that I started getting the error message "There was an error processing a p
-
Dynamic header lins in downloaded file.
hello gurus, i have Report. i am using that to download data from standard tables and custom tables. here i maitained fieldtables name as headerlines in downlaod files. that means each file is downloading with fielad lables as like this name age
-
How can I allow both filling in form fields AND inserting/replacing pages in a secure pdf?
-
ReferenceError: Error #1056 - Has anyone come across this error?
ReferenceError: Error #1056: Cannot create property text on spark.components.DataGroup. at mx.binding::Binding/defaultDestFunc()[E:\dev\trunk\frameworks\projects\framework\src\mx\b inding\Binding.as:270] at Function/ht