Call to RFC model
I need to call the method execute() of RFC model in my webdynpro inside a task.
Input Parameters of abapi are in the context of webdyinpro that is mapped to BPM context. The problem is that when i run abapi inside wdDoInit() method of webdynpro , the context of webdynpro not yet initialized.
What webdynpro method i must use to run my abapi???
The issue is that the usage of embedded components comes with a few caveats you need to be aware of. E.g. the following:
Using Web Dynpro component usages at runtime, data is set to Web Dynpro context elements at a certain point of time in the Web Dynpro componentu2019s lifecycle. Consequently data processing of data that is set from an outside (loader) Web Dynpro component, for example from the process desk, should be done afterwards. Referring to the hook methods of a Web Dynpro component, this is after the component controlleru2019s wdDoInit() method.
Source: http://help.sap.com/saphelp_nwce711/helpdata/en/48/cae1791e774da5e10000000a421937/frameset.htm
Hence, the WD context has not yet been injected from the outside in the wdDoInit() call.
Similar Messages
-
Why We Call Adpative RFC MODEL?
Hi ,
Why We Call Adaptive RFC MODEL?
What is RFM?Hi Subbarao,
The Adaptive Remote Function Call (Adaptive RFC) is a technology that enables the Web Dynpro application developer to use the business functions encapsulated in Business APIs (BAPIs) even after a structure modification, without having to provide the new data using a second back end or a new structure with subsequent regeneration of the proxies.
This new RFC model shows adaptive behavior. This means that the RFC proxies do not use the original design time structure definition at runtime. Instead, this Web Dynpro model automatically adapts the data of the structure passed in the Java proxy generation to the current data that is, a structure definition in the back-end system that may have been modified
For more info go through this link..
[Adaptive RFC|http://help.sap.com/saphelp_nw70/helpdata/en/6a/11f1f29526944e8580c5e59333d96d/frameset.htm]
Importing RFC's
__http://help.sap.com/saphelp_nw70/helpdata/en/6a/11f1f29526944e8580c5e59333d96d/frameset.htm__
RFM - stands for Remote-enabled Function Modules, amd you can learn more about it from
http://help.sap.com/saphelpnw70/helpdata/en/22/0427c0488911d189490000e829fbbd/frameset.htm_
Difference between BAPI and RFM --
BAPI are RFC enabled function modules. the difference between RFc and BAPI are business objects.
You create business objects and those are then registered in your BOR (Business Object Repository)
which can be accessed outside the SAP system by using some other applications (Non-SAP) such as VB or JAVA.
In this case u only specify the business object and its method from external system
in BAPI there is no direct system call. while RFC are direct system call.
Hope this helps,
Reward Points if helpful,
Regards,
Shailesh Nagar -
Unable to call the RFC from the WD java Program
Hi All,
I have a table and three buttons Create, Edit, Save in the layout.
If no record available in the R3 the the end user will click on create and then he will click on save so that the insert RFC will be called accordingly and the record will be inserted.My table is limited to 5 records only. If i enter all the 5 records and Click on submit the record is inserting in the backend , but if i enter less than 5 records im unable to call the RFC what might be the issue.
My insert RFC takes one Table node and 4 import parameters i'm passing all of the all the mentioned import parameters.
Code:-
View Controller code
// This file has been generated partially by the Web Dynpro Code Generator.
// MODIFY CODE ONLY IN SECTIONS ENCLOSED BY @@begin AND @@end.
// ALL OTHER CHANGES WILL BE LOST IF THE FILE IS REGENERATED.
package com.gmr.ess;
// IMPORTANT NOTE:
// ALL IMPORT STATEMENTS MUST BE PLACED IN THE FOLLOWING SECTION ENCLOSED
// BY @@begin imports AND @@end. FURTHERMORE, THIS SECTION MUST ALWAYS CONTAIN
// AT LEAST ONE IMPORT STATEMENT (E.G. THAT FOR IPrivateAPPView).
// OTHERWISE, USING THE ECLIPSE FUNCTION "Organize Imports" FOLLOWED BY
// A WEB DYNPRO CODE GENERATION (E.G. PROJECT BUILD) WILL RESULT IN THE LOSS
// OF IMPORT STATEMENTS.
//@@begin imports
import java.math.BigDecimal;
import java.util.Date;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Collection;
import java.util.Iterator;
import com.gmr.ess.wdp.IPrivateAPPView;
import com.gmr.pck.Zst_Hr_Nominee;
import com.sap.tc.webdynpro.progmodel.api.IWDMessageManager;
import com.sap.tc.webdynpro.services.sal.um.api.IWDClientUser;
import com.sap.tc.webdynpro.services.sal.um.api.WDClientUser;
//@@end
//@@begin documentation
//@@end
public class APPView
Logging location.
private static final com.sap.tc.logging.Location logger =
com.sap.tc.logging.Location.getLocation(APPView.class);
static
//@@begin id
String id = "$Id$";
//@@end
com.sap.tc.logging.Location.getLocation("ID.com.sap.tc.webdynpro").infoT(id);
Private access to the generated Web Dynpro counterpart
for this controller class. </p>
Use <code>wdThis</code> to gain typed access to the context,
to trigger navigation via outbound plugs, to get and enable/disable
actions, fire declared events, and access used controllers and/or
component usages.
@see com.gmr.ess.wdp.IPrivateAPPView for more details
private final IPrivateAPPView wdThis;
Root node of this controller's context. </p>
Provides typed access not only to the elements of the root node
but also to all nodes in the context (methods node<i>XYZ</i>())
and their currently selected element (methods current<i>XYZ</i>Element()).
It also facilitates the creation of new elements for all nodes
(methods create<i>XYZ</i>Element()). </p>
@see com.gmr.ess.wdp.IPrivateAPPView.IContextNode for more details.
private final IPrivateAPPView.IContextNode wdContext;
A shortcut for <code>wdThis.wdGetAPI()</code>. </p>
Represents the generic API of the generic Web Dynpro counterpart
for this controller. </p>
private final com.sap.tc.webdynpro.progmodel.api.IWDViewController wdControllerAPI;
A shortcut for <code>wdThis.wdGetAPI().getComponent()</code>. </p>
Represents the generic API of the Web Dynpro component this controller
belongs to. Can be used to access the message manager, the window manager,
to add/remove event handlers and so on. </p>
private final com.sap.tc.webdynpro.progmodel.api.IWDComponent wdComponentAPI;
public APPView(IPrivateAPPView wdThis)
this.wdThis = wdThis;
this.wdContext = wdThis.wdGetContext();
this.wdControllerAPI = wdThis.wdGetAPI();
this.wdComponentAPI = wdThis.wdGetAPI().getComponent();
//@@begin javadoc:wdDoInit()
/** Hook method called to initialize controller. */
//@@end
public void wdDoInit()
//@@begin wdDoInit()
try{
IWDMessageManager manager1 = wdComponentAPI.getMessageManager();
IWDClientUser user = WDClientUser.getLoggedInClientUser();
String logUser= user.getSAPUser().getUniqueName();
wdContext.currentContextElement().setUserid(logUser);
wdThis.wdGetAPPController().executeBapi_Employee_Getdata_Input();//Returns the user id for the employee
Collection nomineeList = new ArrayList();
wdThis.wdGetAPPController(). executeZ_Hrfm_Nominee_Disp_Input( );
int nomineeTableSize = wdContext.nodeZ_Hrfm_Nominee_Disp_Input().nodeOutput_Nominee().nodeNominee().size();
for(int i=0;i< nomineeTableSize;i++){
IPrivateAPPView.IDisplay_table_nodeElement ele = wdContext.nodeDisplay_table_node().createDisplay_table_nodeElement();
ele.setAddr(wdContext.nodeZ_Hrfm_Nominee_Disp_Input().nodeOutput_Nominee().nodeNominee().getNomineeElementAt(i).getAddr());
ele.setDob(wdContext.nodeZ_Hrfm_Nominee_Disp_Input().nodeOutput_Nominee().nodeNominee().getNomineeElementAt(i).getDob());
ele.setGuard(wdContext.nodeZ_Hrfm_Nominee_Disp_Input().nodeOutput_Nominee().nodeNominee().getNomineeElementAt(i).getGuard());
ele.setName(wdContext.nodeZ_Hrfm_Nominee_Disp_Input().nodeOutput_Nominee().nodeNominee().getNomineeElementAt(i).getName());
ele.setPerc(wdContext.nodeZ_Hrfm_Nominee_Disp_Input().nodeOutput_Nominee().nodeNominee().getNomineeElementAt(i).getPerc());
ele.setRelat(wdContext.nodeZ_Hrfm_Nominee_Disp_Input().nodeOutput_Nominee().nodeNominee().getNomineeElementAt(i).getRelat());
nomineeList.add(ele);
wdContext.nodeDisplay_table_node().bind(nomineeList);
wdContext.currentContextElement().setEdit_val_attr(true);
if(nomineeTableSize<=0){
wdContext.currentContextElement().setCreateButtonEnable(true);
wdContext.currentContextElement().setEditButtonEnable(false);
else{
wdContext.currentContextElement().setCreateButtonEnable(false);
wdContext.currentContextElement().setEditButtonEnable(true);
catch(Exception e){
wdComponentAPI.getMessageManager().reportException("",true);
//@@end
//@@begin javadoc:wdDoExit()
/** Hook method called to clean up controller. */
//@@end
public void wdDoExit()
//@@begin wdDoExit()
//@@end
//@@begin javadoc:wdDoModifyView
Hook method called to modify a view just before rendering.
This method conceptually belongs to the view itself, not to the
controller (cf. MVC pattern).
It is made static to discourage a way of programming that
routinely stores references to UI elements in instance fields
for access by the view controller's event handlers, and so on.
The Web Dynpro programming model recommends that UI elements can
only be accessed by code executed within the call to this hook method.
@param wdThis Generated private interface of the view's controller, as
provided by Web Dynpro. Provides access to the view controller's
outgoing controller usages, etc.
@param wdContext Generated interface of the view's context, as provided
by Web Dynpro. Provides access to the view's data.
@param view The view's generic API, as provided by Web Dynpro.
Provides access to UI elements.
@param firstTime Indicates whether the hook is called for the first time
during the lifetime of the view.
//@@end
public static void wdDoModifyView(IPrivateAPPView wdThis, IPrivateAPPView.IContextNode wdContext, com.sap.tc.webdynpro.progmodel.api.IWDView view, boolean firstTime)
//@@begin wdDoModifyView
//@@end
//@@begin javadoc:onActionGetData(ServerEvent)
/** Declared validating event handler. */
//@@end
public void onActionGetData(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
//@@begin onActionGetData(ServerEvent)
//$$begin ActionButton(-535519310)
//wdThis.wdGetAPPController().executeZ_Hrfm_Nominee_Disp_Input();
//$$end
//@@end
//@@begin javadoc:onActionEdit(ServerEvent)
/** Declared validating event handler. */
//@@end
public void onActionEdit(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
//@@begin onActionEdit(ServerEvent)
//$$begin ActionButton(-535519310)
displayTablesize=wdContext.nodeDisplay_table_node().size();
if(displayTablesize<5){
for(int i=0;i<size-displayTablesize;i++){
IPrivateAPPView.IDisplay_table_nodeElement ele = wdContext.nodeDisplay_table_node().createDisplay_table_nodeElement();
wdContext. nodeDisplay_table_node().addElement(ele);
operation="MOD";
wdContext.currentContextElement().setTableReadOnly(true);
wdContext.currentZ_Hrfm_Nominee_Ins_Mod_InputElement().setOperation(operation);
//$$end
//@@end
//@@begin javadoc:onActionCreate(ServerEvent)
/** Declared validating event handler. */
//@@end
public void onActionCreate(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
//@@begin onActionCreate(ServerEvent)
int month=0,year=0,day=0;
String month1,day1,year1;
try{
displayTablesize=wdContext.nodeDisplay_table_node().size();
wdContext.currentContextElement().setEdit_val_attr(false);
if(wdContext.nodeDisplay_table_node().isEmpty()){
if(displayTablesize<5){
Calendar cal=Calendar.getInstance();
month=cal.get(Calendar.MONTH)+1;
if(month==1||month==2||month==3||month==4||month==5||month==6||month==7||month==8||month==9){
month1="0"+month;
else{
month1=""+month;
day = cal.get(Calendar.DAY_OF_MONTH);
if(day==1||day==2||day==3||day==4||day==5||day==6||day==7||day==8||day==9){
day1= "0"+day;
else{
day1=""+day;
year = cal.get(Calendar.YEAR);
year1=""+year;
String strFormat=day1"."month1"."year1;
wdContext.currentOutput_NomineeElement().setBegda(strFormat);
wdContext.currentOutput_NomineeElement().setEndda("31.12.9999");
for(int i=0;i<size-displayTablesize;i++){
IPrivateAPPView.IDisplay_table_nodeElement ele = wdContext.nodeDisplay_table_node().createDisplay_table_nodeElement();
wdContext. nodeDisplay_table_node().addElement(ele);
operation="INS";
wdContext.currentZ_Hrfm_Nominee_Ins_Mod_InputElement().setOperation(operation);
wdContext.currentContextElement().setTableReadOnly(true);
catch(NullPointerException npe){
wdComponentAPI.getMessageManager().reportException("No Data Available",true);
//@@end
//@@begin javadoc:onActionSaveData(ServerEvent)
/** Declared validating event handler. */
//@@end
public void onActionSaveData(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
//@@begin onActionSaveData(ServerEvent)
float percentage=0;
float dupePercentage=0;
boolean isTest = false;
Collection DispTList = new ArrayList();
IWDMessageManager manager1 = wdComponentAPI.getMessageManager();
try{
displayTablesize = wdContext.nodeDisplay_table_node().size();
//for(int i=1;i<=displayTablesize;i++){
for(int i=0;i<displayTablesize;i++){
BigDecimal share = wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getPerc();
String name = wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getName();
percentage = share.floatValue();
dupePercentage = dupePercentage + percentage;
if(name!=null && share!=null){
Zst_Hr_Nominee nominee = new Zst_Hr_Nominee();
nominee.setAddr(wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getAddr());
manager1.reportSuccess(wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getAddr());
nominee.setDob(wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getDob());
manager1.reportSuccess(""+wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getDob());
nominee.setGuard(wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getGuard());
manager1.reportSuccess(""+wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getGuard());
nominee.setName(wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getName());
manager1.reportSuccess(""+wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getName());
nominee.setPerc(wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getPerc());
manager1.reportSuccess(""+wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getPerc());
nominee.setRelat(wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getRelat());
manager1.reportSuccess(""+wdContext.nodeDisplay_table_node().getDisplay_table_nodeElementAt(i).getRelat());
DispTList.add(nominee);
wdContext.nodeZ_Hrfm_Nominee_Ins_Mod_Input().nodeNominee_ins().bind(DispTList);
if((dupePercentage)!=100)
wdComponentAPI.getMessageManager().reportException(
"The sum of the share Percentages is not 100. Modify the percentages accordingly",true);
wdContext.nodeZ_Hrfm_Nominee_Ins_Mod_Input().nodeNominee_ins().bind(DispTList);
IWDMessageManager manager = wdComponentAPI.getMessageManager();
String beginDate = wdContext.currentOutput_NomineeElement().getBegda();
manager.reportSuccess(wdContext.currentOutput_NomineeElement().getBegda());
String endDate=wdContext.currentOutput_NomineeElement().getEndda();
manager.reportSuccess(wdContext.currentOutput_NomineeElement().getEndda());
wdContext.currentZ_Hrfm_Nominee_Ins_Mod_InputElement().setBegda(beginDate);
wdContext.currentZ_Hrfm_Nominee_Ins_Mod_InputElement().setEndda(endDate);
wdContext.currentZ_Hrfm_Nominee_Ins_Mod_InputElement().setOperation(operation);
wdComponentAPI.getMessageManager().reportSuccess(operation);
wdThis.wdGetAPPController().executeBapi_Employee_Getdata_Input();
wdThis.wdGetAPPController().executeZ_Hrfm_Nominee_Ins_Mod_Input();
//wdContext.currentContextElement().setTableReadOnly(false);
catch(Exception e){
e.getMessage();
//@@end
The following code section can be used for any Java code that is
not to be visible to other controllers/views or that contains constructs
currently not supported directly by Web Dynpro (such as inner classes or
member variables etc.). </p>
Note: The content of this section is in no way managed/controlled
by the Web Dynpro Designtime or the Web Dynpro Runtime.
//@@begin others
int nomineeTableSize = 0;
int displayTablesize = 0;
String operation= null;
int size=5;
// float dupePercentage=0;
//String mod_op="MOD";
//@@end
content of obsolete user coding area(s) -
//@@begin obsolete:javadoc:onActionSave(ServerEvent)
// /** Declared validating even
Component controller code
// This file has been generated partially by the Web Dynpro Code Generator.
// MODIFY CODE ONLY IN SECTIONS ENCLOSED BY @@begin AND @@end.
// ALL OTHER CHANGES WILL BE LOST IF THE FILE IS REGENERATED.
package com.gmr.ess;
// IMPORTANT NOTE:
// ALL IMPORT STATEMENTS MUST BE PLACED IN THE FOLLOWING SECTION ENCLOSED
// BY @@begin imports AND @@end. FURTHERMORE, THIS SECTION MUST ALWAYS CONTAIN
// AT LEAST ONE IMPORT STATEMENT (E.G. THAT FOR IPrivateAPP).
// OTHERWISE, USING THE ECLIPSE FUNCTION "Organize Imports" FOLLOWED BY
// A WEB DYNPRO CODE GENERATION (E.G. PROJECT BUILD) WILL RESULT IN THE LOSS
// OF IMPORT STATEMENTS.
//@@begin imports
import java.util.Iterator;
import com.gmr.ess.wdp.IPrivateAPP;
import com.gmr.pck.Bapi_Employee_Getdata_Input;
import com.gmr.pck.Bapip0002B;
import com.gmr.pck.Z_Hrfm_Nominee_Disp_Input;
import com.gmr.pck.Z_Hrfm_Nominee_Ins_Mod_Input;
import com.gmr.pck.Zst_Hr_Nominee;
import com.sap.lcr.api.util.SetProfileConnect;
import com.sap.tc.webdynpro.modelimpl.dynamicrfc.WDDynamicRFCExecuteException;
import com.sap.tc.webdynpro.progmodel.api.IWDMessageManager;
//@@end
//@@begin documentation
//@@end
public class APP
Logging location.
private static final com.sap.tc.logging.Location logger =
com.sap.tc.logging.Location.getLocation(APP.class);
static
//@@begin id
String id = "$Id$";
//@@end
com.sap.tc.logging.Location.getLocation("ID.com.sap.tc.webdynpro").infoT(id);
Private access to the generated Web Dynpro counterpart
for this controller class. </p>
Use <code>wdThis</code> to gain typed access to the context,
to trigger navigation via outbound plugs, to get and enable/disable
actions, fire declared events, and access used controllers and/or
component usages.
@see com.gmr.ess.wdp.IPrivateAPP for more details
private final IPrivateAPP wdThis;
Root node of this controller's context. </p>
Provides typed access not only to the elements of the root node
but also to all nodes in the context (methods node<i>XYZ</i>())
and their currently selected element (methods current<i>XYZ</i>Element()).
It also facilitates the creation of new elements for all nodes
(methods create<i>XYZ</i>Element()). </p>
@see com.gmr.ess.wdp.IPrivateAPP.IContextNode for more details.
private final IPrivateAPP.IContextNode wdContext;
A shortcut for <code>wdThis.wdGetAPI()</code>. </p>
Represents the generic API of the generic Web Dynpro counterpart
for this controller. </p>
private final com.sap.tc.webdynpro.progmodel.api.IWDComponent wdControllerAPI;
A shortcut for <code>wdThis.wdGetAPI().getComponent()</code>. </p>
Represents the generic API of the Web Dynpro component this controller
belongs to. Can be used to access the message manager, the window manager,
to add/remove event handlers and so on. </p>
private final com.sap.tc.webdynpro.progmodel.api.IWDComponent wdComponentAPI;
public APP(IPrivateAPP wdThis)
this.wdThis = wdThis;
this.wdContext = wdThis.wdGetContext();
this.wdControllerAPI = wdThis.wdGetAPI();
this.wdComponentAPI = wdThis.wdGetAPI().getComponent();
//@@begin javadoc:wdDoInit()
/** Hook method called to initialize controller. */
//@@end
public void wdDoInit()
//@@begin wdDoInit()
//$$begin Service Controller(1490375209)
// wdContext.nodeZ_Hrfm_Nominee_Ins_Mod_Input().bind(new Z_Hrfm_Nominee_Ins_Mod_Input());
Z_Hrfm_Nominee_Ins_Mod_Input input = new Z_Hrfm_Nominee_Ins_Mod_Input();
input.addNominee(new Zst_Hr_Nominee());
wdContext.nodeZ_Hrfm_Nominee_Ins_Mod_Input().bind(input);
//$$end
//$$begin Service Controller(-932523997)
wdContext.nodeZ_Hrfm_Nominee_Disp_Input().bind(new Z_Hrfm_Nominee_Disp_Input());
//$$end
//$$begin Service Controller(-368783613)
wdContext.nodeBapi_Employee_Getdata_Input().bind(new Bapi_Employee_Getdata_Input());
//$$end
//@@end
//@@begin javadoc:wdDoExit()
/** Hook method called to clean up controller. */
//@@end
public void wdDoExit()
//@@begin wdDoExit()
//@@end
//@@begin javadoc:wdDoPostProcessing()
Hook called to handle data retrieval errors before rendering.
After doModifyView(), the Web Dynpro Framework gets all context data needed
for rendering by validating the contexts (which in turn calls the supply
functions and supplying relation roles). In this hook, the application
should handle the errors which occurred during validation of the contexts.
Using preorder depth-first traversal, this hook is called for all component
controllers starting with the current root component.
Permitted operations:
- Flushing model queue
- Creating messages
- Reading context and model data
Forbidden operations:
- Invalidating model data
- Manipulating the context
- Firing outbound plugs
- Creating components
@param isCurrentRoot true if this is the root of the current request
//@@end
public void wdDoPostProcessing(boolean isCurrentRoot)
//@@begin wdDoPostProcessing()
//@@end
//@@begin javadoc:wdDoBeforeNavigation()
Hook before the navigation phase starts.
This hook allows you to flush the model queue and handle any
errors that occur. Firing outbound plugs is allowed in this hook.
Using preorder depth-first traversal, this hook is called for all component
controllers starting with the current root component.
@param isCurrentRoot true if this is the root of the current request
//@@end
public void wdDoBeforeNavigation(boolean isCurrentRoot)
//@@begin wdDoBeforeNavigation()
//@@end
//@@begin javadoc:wdDoApplicationStateChange()
Hook that informs the application about a state change.
<p>
This hook is called e.g. to tell the application that will be
<ul>
<li>left via a suspend plug and therefore should go into a suspend/sleep
mode with minimal need of resources. errors that occur. Firing
outbound plugs is allowed in this hook.
<li>left due to a timeout and could write it's state to a data base if the
user comes back later on
</ul>
The concrete reason is available via IWDApplicationStateChangeInfo
<p>
<b>Important</b>: This hook is called for the top level component only!
@param stateChangeInfo contains the information about the nature of the state change
@param stateChangeReturn allows the application to ask for a different state change.
The framework is allowed to ignore it considering i.e. the current resources situation.
//@@end
public void wdDoApplicationStateChange(com.sap.tc.webdynpro.progmodel.api.IWDApplicationStateChangeInfo stateChangeInfo, com.sap.tc.webdynpro.progmodel.api.IWDApplicationStateChangeReturn stateChangeReturn)
//@@begin wdDoApplicationStateChange()
//@@end
//@@begin javadoc:executeBapi_Employee_Getdata_Input()
/** Declared method. */
//@@end
public void executeBapi_Employee_Getdata_Input( )
//@@begin executeBapi_Employee_Getdata_Input()
//$$begin Service Controller(1705750894)
IWDMessageManager manager = wdComponentAPI.getMessageManager();
Iterator itrGetData = null;
Bapip0002B out = null;
try
wdContext.currentBapi_Employee_Getdata_InputElement().modelObject().execute();
wdContext.nodeOutput().invalidate();
itrGetData = wdContext.currentOutputElement().modelObject().getPersonal_Data().iterator();
while (itrGetData.hasNext()) {
out = (Bapip0002B) itrGetData.next();
empNo = out.getPerno();
wdContext.currentZ_Hrfm_Nominee_Disp_InputElement().setPernr(empNo);
wdContext.currentZ_Hrfm_Nominee_Ins_Mod_InputElement().setPernr(empNo);
// manager.reportSuccess(empNo);
//wdThis.executeZ_Hrfm_Nominee_Disp_Input();
catch(WDDynamicRFCExecuteException e)
manager.reportException(e.getMessage(), false);
//$$end
//@@end
//@@begin javadoc:executeZ_Hrfm_Nominee_Disp_Input()
/** Declared method. */
//@@end
public void executeZ_Hrfm_Nominee_Disp_Input( )
//@@begin executeZ_Hrfm_Nominee_Disp_Input()
//$$begin Service Controller(-366407911)
IWDMessageManager manager = wdComponentAPI.getMessageManager();
try
wdContext.currentZ_Hrfm_Nominee_Disp_InputElement().modelObject().execute();
wdContext.nodeOutput_Nominee().invalidate();
catch(WDDynamicRFCExecuteException e)
manager.reportException(e.getMessage(), false);
//$$end
//@@end
//@@begin javadoc:executeZ_Hrfm_Nominee_Ins_Mod_Input()
/** Declared method. */
//@@end
public void executeZ_Hrfm_Nominee_Ins_Mod_Input( )
//@@begin executeZ_Hrfm_Nominee_Ins_Mod_Input()
//$$begin Service Controller(1524028406)
IWDMessageManager manager = wdComponentAPI.getMessageManager();
try
wdContext.currentZ_Hrfm_Nominee_Ins_Mod_InputElement().modelObject().execute();
wdContext.nodeOutput_nominee_ins_mod().invalidate();
catch(WDDynamicRFCExecuteException e)
manager.reportException(e.getMessage(), false);
//$$end
//@@end
The following code section can be used for any Java code that is
not to be visible to other controllers/views or that contains constructs
currently not supported directly by Web Dynpro (such as inner classes or
member variables etc.). </p>
Note: The content of this section is in no way managed/controlled
by the Web Dynpro Designtime or the Web Dynpro Runtime.
//@@begin others
String empNo = null;
//@@end
Suman
Edited by: sumankumar kurimilla on Dec 23, 2008 9:26 AMHi,
I have checked from RFC side that is working fine only java app its not working can you tell any thing needs to be changed from my application end.
Please check in Savedata action.
Regards,
Suman
Edited by: sumankumar kurimilla on Dec 23, 2008 11:01 AM -
Execute a RFC-Model in another WD-Project
Hi everybody,
my purpose is to execute a RFC-Model in an other WD-Projekt in order to use the result node.
WD-Project(A) -references-> WD-Project(B)
WD-Project(A) executed the RFC-Model in WD-Project(B) which is only used by WD-Project(A) .
I provide an execute method in Interface Controller in WD-Projekct(B) but if i call it from WD-Project(A) i get no result! in my context node? But if i start the WD-Project(B) as standalone it works properly.
Unitl now i thought that calling a method of another Interface-Controller will start the hole application, in this case WD-Project(B).
What is my mistake?
regards,
SidHi,
Check whether you have defined the usage of project(B) in project(A) correctly. Also check the lifecycle for the controller of project(B).
Check this [Link|http://help.sap.com/saphelp_nw70/helpdata/EN/89/b21640dc88e769e10000000a155106/content.htm]
Hope it helps.
Regards,
Manoj -
Error while importing a Adaptive RFC Model
Experts,
I am trying to import an Adaptive RFC Model. Before importing I need to speciy the connection parameters in the import wizard. I am using the single server method to connect and have specified all the parameters correctly. I have not specified a SAP router as I am using a test system. when I click next on the Model import wizard I get an error.
The trace shows-
[code]ConnectionFailed Exception : com.sap.mw.jco.JCO$Exception: (102) RFC_ERROR_COMMUNICATION: SAP_CMINIT3 : rc=20 > Connect to SAP gateway failed
Connect_PM GWHOST=test833, GWSERV=sapgw00, ASHOST=test833, SYSNR=00
LOCATION CPIC (TCP/IP) on local host
ERROR partner not reached (host 10.3.82.177, service 3300)
TIME Fri Jun 29 08:54:18 2007
RELEASE 640
COMPONENT NI (network interface)
VERSION 37
RC -10
MODULE nixxi_r.cpp
LINE 8715
DETAIL NiPConnect2
SYSTEM CALL SiPeekPendConn
ERRNO 10061
ERRNO TEXT WSAECONNREFUSED: Connection refused
COUN
at com.sap.ide.jcb.core.service.connection.internal.ConnectionManager.connect(ConnectionManager.java:220)
at com.sap.ide.jcb.core.service.connection.internal.ConnectionManager.connectToSingleServer(ConnectionManager.java:206)
at com.sap.ide.jcb.core.wizardpages.SAPLogonPage.internalConnectToServer(SAPLogonPage.java:1769)
at com.sap.ide.jcb.core.wizardpages.SAPLogonPage.access$2300(SAPLogonPage.java:46)
at com.sap.ide.jcb.core.wizardpages.SAPLogonPage$9.run(SAPLogonPage.java:1730)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:98)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:1999)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1733)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.block(ModalContext.java:136)
at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:261)
at org.eclipse.jface.wizard.WizardDialog.run(WizardDialog.java:758)
at com.sap.ide.jcb.core.wizardpages.SAPLogonPage.connectToServer(SAPLogonPage.java:1699)
at com.sap.ide.jcb.core.wizardpages.SAPLogonPage.performFinish(SAPLogonPage.java:1805)
at com.sap.ide.webdynpro.modeleditor.wizards.model.creation.ModelWizard.initializeReimporter(ModelWizard.java:1410)
at com.sap.ide.webdynpro.modeleditor.wizards.model.creation.ModelWizard.performPostSapLogonPageForReimport(ModelWizard.java:1433)
at com.sap.ide.webdynpro.modeleditor.wizards.model.creation.ModelDialog.nextPressed(ModelDialog.java:85)
at org.eclipse.jface.wizard.WizardDialog.buttonPressed(WizardDialog.java:316)
at org.eclipse.jface.dialogs.Dialog$1.widgetSelected(Dialog.java:423)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:89)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:81)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:840)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:2022)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1729)
at org.eclipse.jface.window.Window.runEventLoop(Window.java:583)
at org.eclipse.jface.window.Window.open(Window.java:563)
at com.sap.ide.webdynpro.modeleditor.ModelEditorCallback.reimportModel(ModelEditorCallback.java:218)
at com.sap.ide.webdynpro.service.modeleditor.ModelService.reImportModel(ModelService.java:207)
at com.sap.ide.webdynpro.service.modeleditor.ServiceWithUI.reImportModel(ServiceWithUI.java:120)
at com.sap.ide.webdynpro.tsmodel.application.actions.ReimportModelAction.run(ReimportModelAction.java:11)
at com.sap.ide.webdynpro.projectbrowser.actions.PBReimportModelAction.run(PBReimportModelAction.java:77)
at com.sap.ide.webdynpro.projectbrowser.actions.PBDevelopmentObjectAction.runInternal(PBDevelopmentObjectAction.java:80)
at com.sap.ide.webdynpro.projectbrowser.actions.PBDevelopmentObjectAction.run(PBDevelopmentObjectAction.java:61)
at com.tssap.selena.model.extension.action.SelenaActionCollector$GenericElementActionWrapper.run(SelenaActionCollector.java:224)
at com.tssap.util.ui.menu.MenuFactory$MuSiAction.saveRunAction(MenuFactory.java:1425)
at com.tssap.util.ui.menu.MenuFactory$MuSiAction.run(MenuFactory.java:1407)
at com.tssap.util.ui.menu.MenuFactory$DelegateAction.processInternal(MenuFactory.java:616)
at com.tssap.util.ui.menu.MenuFactory$DelegateAction.access$100(MenuFactory.java:586)
at com.tssap.util.ui.menu.MenuFactory$DelegateAction$BusyProcessWorker.run(MenuFactory.java:716)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69)
at com.tssap.util.ui.menu.MenuFactory$DelegateAction.process(MenuFactory.java:610)
at com.tssap.util.ui.menu.internal.MenuListenerFactory$ProcessAdapter.widgetSelected(MenuListenerFactory.java:172)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:89)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:81)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:840)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:2022)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1729)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1402)
at org.eclipse.ui.internal.Workbench.run(Workbench.java:1385)
at com.tssap.util.startup.WBLauncher.run(WBLauncher.java:79)
at org.eclipse.core.internal.boot.InternalBootLoader.run(InternalBootLoader.java:858)
at org.eclipse.core.boot.BootLoader.run(BootLoader.java:461)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.sap.ide.eclipse.startup.Main.basicRun(Main.java:291)
at com.sap.ide.eclipse.startup.Main.run(Main.java:789)
at com.sap.ide.eclipse.startup.Main.main(Main.java:607)
Caused by: com.sap.mw.jco.JCO$Exception: (102) RFC_ERROR_COMMUNICATION: SAP_CMINIT3 : rc=20 > Connect to SAP gateway failed
Connect_PM GWHOST=test833, GWSERV=sapgw00, ASHOST=test833, SYSNR=00
LOCATION CPIC (TCP/IP) on local host
ERROR partner not reached (host 10.3.82.177, service 3300)
TIME Fri Jun 29 08:54:18 2007
RELEASE 640
COMPONENT NI (network interface)
VERSION 37
RC -10
MODULE nixxi_r.cpp
LINE 8715
DETAIL NiPConnect2
SYSTEM CALL SiPeekPendConn
ERRNO 10061
ERRNO TEXT WSAECONNREFUSED: Connection refused
COUN
at com.sap.mw.jco.rfc.MiddlewareRFC$Client.nativeConnect(Native Method)
at com.sap.mw.jco.rfc.MiddlewareRFC$Client.connect(MiddlewareRFC.java:1125)
at com.sap.mw.jco.JCO$Client.connect(JCO.java:3138)
at com.sap.ide.jcb.core.service.connection.internal.ConnectionManager.connect(ConnectionManager.java:216)[/code]
Can someone tell me problem..
Thanks in advance,
VineethIn service file if entry is not there... give the enty like
<b>sapgw<Inst.No> 33<Inst.No>/tcp
sapgw<Inst.No>s 48<Inst.No>/tcp</b>
where <Inst.No> = System Number of your R/3 system(00 or 01...)
In host file....
ip of the server name of the server.... -
Why we call adaptive RFC in webdynpro java..
Hi,
I want to know why we call adaptive RFC connection in webdynpro java whenever we import new rfc in our java web dynpro project. why name ADAPTIVE RFC is used
if we make any structure changes in the model which we imported in web dynpro project , like adding a new field, or changing the length/datatype of the existing field, then we always have to reimport the model in our webdynpro project so why adaptive name used. wats especial in the word ADAPTIVE RFCHi Rahul,
please read the guide:
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/10465350-b4f5-2910-61ba-a58282b3b6df?quicklink=index&overridelayout=true
Best Regards,
Ervin -
How to set the tables parameter to a BAPI using adaptive RFC model
Hi,
I have a BAPI ZBAPI that has a tables parameter ZPernr of type ZTable with two elements pernr and name.
I used adaptive RFC model and created model classes for the BAPI.
My question how do i set list of pernr and name to the tables parameter in the webdynpro for java.
I have the following methods available
ZBAPI input = new ZBAPI();
1.ZTable table = new ZTable();
table.setPernr(pernr);
table.setname(name);
input.addZPernr(table);
how do i set the table parameter for multiple pernr and name
2.
add all the pernr and name to list and set that list to input in the following way
input.setZPernr(list) and list of typecom.sap.aii.proxy.framework.core. AbstractList
out of two methods mentioned which one is correct.
Please let me know the solution
Thanks
Bala DuvvuriHi Bala,
In your code:
List pernrList = new ArrayList();
pernrList should be declared as the type of class HROBJECT ( The structure name in the model e.g. the node PERFWARN type is Zhrecmfm_002_Perfrat_Warning_Input )
Try this:
HROBJECT pernrList = new HROBJECT();
pernrList.setPernr(pernr);
input.setPernr_List(pernrList);
// call BAPI execute method
If you want to pass list of pernrs, you can pass in alternate way
IPrivate<viewname>.I<nodeame>Node prNode = wdContext.node<node>();
IPrivate<viewname>.I<nodeame>Element prEle;
for (int i = 0; i < table.size(); i++) {
HROBJECT pernrList = new HROBJECT();
pernrList.setPernr(pernr); // Set the pernr from current record
prEle = prNode.create<nodeame>Element(pernrList);
prNode.addElement(prEle);
// call BAPI execute method
Once I execute the BAPI how do i iterate thru second table parameter PERNR_PERFRAT to get pernr and performance rating text
Say your node name is PERNR_PERFRAT
for (int i = 0; i < wdContext.nodePERNR_PERFRAT().size(); i++) {
wdContext.nodePERNR_PERFRAT().getPERNR_PERFRATElementAt(i).getPernr();
wdContext.nodePERNR_PERFRAT().getPERNR_PERFRATElementAt(i).getPerfrat();
Regards,
Siva -
Nullpointer exception in SAP code (RFC model related)
Hi,
Some threads have already been opened on this issue, but none of them give me a solution.
The problem is that a Nullpointerexception is thrown when I create a new Input element (to bind it to the input node of my rfc model).
As you can see in the stack trace, the nullpointerexception is thrown in SAP code.
This happens for all function modules I've created myself (even the simplest ones with no parameters/no code), but for the SAP BAPIs it works???
So this is not an issue related to Javaconnectors/my java code because it works for BAPIs (I'm doing exactly the same).
I've already restarted the J2EE server, recreated the whole application, tested with new applications (to avoid any caching problems) but nothing works.
I've been trying to resolve this issue for several hours without success. It's really frustrating.
Any help appreciated!
Jeroen
java.lang.NullPointerException
at com.sap.tc.webdynpro.modelimpl.dynamicrfc.AiiModelClass.createNewBaseTypeDescriptor(AiiModelClass.java:220)
at com.sap.tc.webdynpro.modelimpl.dynamicrfc.AiiModelClass.descriptor(AiiModelClass.java:186)
at com.eozen.aif.ce5solman.Z_Jver_Create_Infosheet_Input.<init>(Z_Jver_Create_Infosheet_Input.java:51)
at com.eozen.jver.aif.Infosheets.wdDoInit(Infosheets.java:98)
at com.eozen.jver.aif.wdp.InternalInfosheets.wdDoInit(InternalInfosheets.java:181)
at com.sap.tc.webdynpro.progmodel.generation.DelegatingComponent.doInit(DelegatingComponent.java:95)I suddenly realized there is one last option and it works: I managed to sidestep the problem by doing the rfc via an R/3 SAP system that forwards the call to the CRM system. (The CRM 5.0 system is the one causing the nullpointerexception).
Maybe some incompatibilities between J2EE/WDP SP14 & CRM 5.0? -
Regarding: calling a rfc function module for web dynpro for JAVA
Hello all,
I want to call an rfc enabled function module from webdynrpo application.
*and there is one condition that function module should be called not threw bapi.*
Thanks
Edited by: Punit Pawar on Jul 21, 2008 10:38 AMHi
You can call RFC(remote enabled) from R/3 through Models in Webdynpro Java.You need to have JCO destinations.You connection properties of backend System
http://help.sap.com/saphelp_nw04s/helpdata/en/6a/11f1f29526944e8580c5e59333d96d/frameset.htm
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/11c3b051-0401-0010-fe9a-9eabd9c216de
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/b0310cf8-8cdb-2910-4a82-df1f11619f4e
Thanks,
Tulasi Palnati -
Access rfc-model over an scheduled message-driven-bean
Hi there
The problem is, that I've got a WebDynPro Project in which one a RFC-Model exists.
In this project I do also have my singleton-classes which one hold the data of the rfc-model
during the period of their lifetime. I did publish the singleton-pointer/reference in the jndi.
Within the SAP Java Scheduler (there is a tutorial @ sdn) I've created a ejb which
should run for example every hour. This one is of course in an other container (because of that i do use the jndi)
So i run the ejb and get the reference of my singleton over the jndi. Till here every
thing works fine!
Now I do call a method of the singleton (in the ejb) which should open an jco-connection over the existing model and the following error appears:
Couldn't load new data! Problem found:
Unable to access Task Scope in DynamicRFCModelClass. Either run in Engine, or turn Test mode on in WDModelFactory!
I read already something about this test-mode, but it isn't recommended at all to activate this mode!
So the J2EE has the reference but can't access the task scope. I tried to select the task-scope with the ejb, but
i didn't found any solution till now.
Has anybody an idea?
Regards MarcoHi there
The problem is, that I've got a WebDynPro Project in which one a RFC-Model exists.
In this project I do also have my singleton-classes which one hold the data of the rfc-model
during the period of their lifetime. I did publish the singleton-pointer/reference in the jndi.
Within the SAP Java Scheduler (there is a tutorial @ sdn) I've created a ejb which
should run for example every hour. This one is of course in an other container (because of that i do use the jndi)
So i run the ejb and get the reference of my singleton over the jndi. Till here every
thing works fine!
Now I do call a method of the singleton (in the ejb) which should open an jco-connection over the existing model and the following error appears:
Couldn't load new data! Problem found:
Unable to access Task Scope in DynamicRFCModelClass. Either run in Engine, or turn Test mode on in WDModelFactory!
I read already something about this test-mode, but it isn't recommended at all to activate this mode!
So the J2EE has the reference but can't access the task scope. I tried to select the task-scope with the ejb, but
i didn't found any solution till now.
Has anybody an idea?
Regards Marco -
How to call the RFC's from the third party applications or Non SAP applicat
Hi,
For calling RFC's from the wedynpro , SAP has provided the modeling concept.
In the same way, if i want to access or call the RFC 's from the third applications or Non SAP applications what is the procedure and what is the methodoligy.
As per my knowledge, we need to expose those RFC's as webservices . Then we must be able to acces in hetrogeous environment from any third party applications..
Please revert back soon, It is very urgent.
Regards
VijayAyyappa Raj,
Thanks for the reply.
Please let me the detailed information for implementing.
AS you said . I need expose the RFC's as webservice. This point is clear to me.
2) Use tthe JCo to connect and create client proxy.
Can u please elabrate the above point?
If u have any steps created in the document or url to refer. Please forward it to me.
Please forwar the document to this id "vijay00" in yahoo.
AS the sdn is not allowing to give the maill id i have given only the id details in yahoo.
I am new to this procedure.
Regards
Vijay -
Call different RFC Functions depending on variable
Hi,
I have to implement following requirement:
My program generates a report for the user and the user can choose which data he wants to have.
Depending on the user decissions, I have to use different RFC - Functions to get the data.
I have the name of the RFC Function und I want to call the RFC Function with this name dynamically.
For example:
rfcName = "Z_FUNC_1";
rfc = get the object for Z_FUNC_1 somehow. This is my problem
rfc.execute();
Is there any way how to solve this? I know that I can solve this like this, but this is not the flexible way that i want:
if (whichRFC == 1) {
Z_Func_1_input rfc = new Z_Func_input();
rfc.execute();
Any ideas?
Best regards,
PeterDear Peter,
There are how many RFC models are you going to make? In my opinion it would be too tedious and redundant as you have to create diifferent models fo each RFC.
Instead of this you may create a single RFC and in that you can call your required RFC depending on the user selection.
It will simplify your application as well as your task.
Hope it helps!!
Warm Regards
Upendra Agrawal -
One adaptive RFC Model and Multi Backend System.
Hi All,
I am trying to fetch data from multi backend system by using an adaptive RFC model.
It is not tidy to create multi model for a RFC function to fetch data from multi SAP system, because we have dozens of SAP systems.(over 40)
So, I would like to switch to multiple SAP systems with an adaptive RFC model at runtime.
1 model(Same Function) -
> System A
> System B
> System C
Is there any sample or tutorial about this sort of senario?
Thanks in advance.
Message was edited by: JeongEog IM
Message was edited by: JeongEog IMJeongEog,
You may use SAP java Connector for doing that. Refer the following links for the step-by-step approach.
<a href="http://help.sap.com/saphelp_nw2004s/helpdata/en/d2/561106b8b3bc449f890cddfdc8d3e2/content.htm">Example program 1</a>
<a href="http://help.sap.com/saphelp_nw2004s/helpdata/en/f0/eedf3d0eb8af5ee10000000a114084/content.htm">Open Connection</a>
<a href="http://help.sap.com/saphelp_nw2004s/helpdata/en/24/efdf3d0eb8af5ee10000000a114084/content.htm">Calling a Function and Closing a Connection</a>
<a href="http://help.sap.com/saphelp_nw2004s/helpdata/en/6a/14e13d8ee4535ee10000000a114084/content.htm">Example program 2</a>
<a href="http://help.sap.com/saphelp_nw2004s/helpdata/en/bc/eedf3d0eb8af5ee10000000a114084/content.htm">Connection Pool</a>
Bala -
Creating Adaptive RFC model without logon name and pwd?
Hi All,
I have this requirement where when I log on to an application I need to get a mapped user name and pwd from EP and then connect to the R/3 system.
However, you cannot create a Adaptive RFC model without username and password. So i needed to know if this can be done in some other way.
Thanks,
Malitahi
To my understading , you need user and pwd created for your portal and call the RFC or Bapi .
Hope this is possible .
Creating the users and pwd for the portal for your application is possible , but parallelly
calling the RFC with same user name and pwd i hope its not , as you have to deploy the application
which created the userid and pwd , then call the RFC ,
and for more you can provide more information what exactly is your requirement . -
All,
I'm using Sneak preview full java version. When I try to call SAP Function module from webdynpro Java via RFC Model, it's asking me to specify the SAP Server detail logon information.
Can anyone help me what information i should give becos im using Sneak preview Java version...
Thanks..
BMHi Bharathi
If u want to import Adaptive RFC Models from ABAP backend u have two ways for importing the model
1) single server : where u need to specify ABAP system creditials such as Application server name,client,system number for ABAP system available in ur Local Area Network
2) Load Balancing : Here DropDown List is automatically populated with list of ABAP servers which are defined in ur SAP LOGON PAD . Actually NWDS picks up names of these servers from <b>saplogon.ini</b> file which stores all ABAP servers defined in ur SAP LOGON PAD
so if u have entry for the required ABAP backend in ur SAP LOGON PAD then u can go for Load Balancing method in which most of the entries will be automatically populated from saplogon.ini file
If u donot have SAP LOGON PAD or saplogon.ini file doesnot have entry for the ABAP server then u should go for single server mode for Importing RFC models
Hope u Got the difference between the two methods now
Regards
Asif
Maybe you are looking for
-
Install Failing when attempted to Add a new Management Server into SCSM Management Group
Hello Experts I am adding a additional MS into my current SCSM 2012 sp1 MANAGEMENT Group. But its failing with the below error message .One thing is little wiered here is ...that the wizard fails with the message that the UPGARDE FAILED , but I am n
-
Upgrade Oracle iAS 9.0.4.1 JDBC Driver to 9.2.0.8
Hi, I'm using Oracle Application Server 10g R1 (9.0.4.1) for a JDBC application that connects to an Oracle 9.2.0.7 Database. Due to some NLS problems with JDBC connections which are out of the scope of this posting, I need to upgrade the JDBC Driver
-
How to deathorize a computer for iTunes?
I've reached the limit of the number of computers (5) that I can authrorize to play iTunes and am trying to figure out how I can deathroize some of those. Several of the computers on my account are old ones that I don't even have anymore.
-
Question: Removing a TR/Agent
My Mackeeper antivirus software has identified a TR/Agent in my Users/MinMac/Library/Mail/.... I keep deleting it, but it comes back everytime I use Mail. I have deleted all emails from October 1, 2013 on. The first date has been October 14, 2013.
-
Streaming video playlist from iTunes = ATV = TV
I expect this question has been asked, but I could find any specific answers with a search. Does ATV allow video playlist streaming from iTunes to a TV? I would like to confirm that this capability exists before a purchase. Objective is to have my co