Loading InfoSources

The RFC Server runs in a perpetual wait state. Load requests can be initiated by SAP BW or by IBM® InfoSphere® DataStage®. When initiated by SAP BW, the user schedules an InfoPackage to run immediately or at a designated time. When initiated, InfoSphere DataStage asks SAP BW to run the InfoPackage immediately. Once this occurs, the mechanism for loading is the same in either case.

  1. A load request can include the name and possibly parameters of a InfoSphere DataStage job to be run before beginning the data load. If a job name is provided, the RFC Server tries to run the job using the InfoSphere DataStage DSJob command. Job parameters are passed through to DSJob according to the rules specified in the Source System Properties dialog.

    The job is run from the InfoSphere DataStage project specified in the Source System properties using the InfoSphere DataStage logon information stored with the Source System.

    If the job fails, the load is terminated, and an error message is returned to SAP BW. (See the configuration file, which resides in the DSBWConnections folder on the server, for RFC Server status information.)

  2. If the InfoSphere DataStage job completes successfully, or if no job is specified in the request, the RFC Server checks the directory specified for the Source System to locate the data and metadata files for the requested InfoSource.

    If the InfoPackage detects that it has been invoked by a PUSH data load method for a Load stage, or that it has invoked a stage designated as a PULL data load method (directly or indirectly), this step streams the data from the stage directly to SAP BW. PUSH and PULL stages only produce the metadata file for the requested InfoSource. They do not produce the data file.

  3. The RFC Server establishes a user connection for each InfoSource it tries to load. A user connection requires the SAP BW User Name, Password, Language and Client as specified in InfoSphere DataStage. Once logged on to SAP BW as a client, the data loading begins. If logon details are not specified in the metadata file, the logon details that were passed to the RFC Server at the time it was instantiated are used.