PackagePackagetypeA library you install and call yourself.See every one →What this type is →independently maintainedindependently maintainedoriginPublished by one person or a small company outside SAP. Says nothing about quality; the readings say that.See every one →

RFC_TOOLS

A wrapper class for calling asynchronous RFC function modules in parallel from ABAP, one instance per parallel task.

Calling several systems in parallel with asynchronous RFC otherwise means handling RFC server groups, connection checks and error messages by hand for every call site. This wrapper takes over that standard handling: a caller subclasses a base class for one function module, adds attributes and accessors for its parameters, and implements the call and receive methods, with each parallel task managed by its own instance of the class. The report z_async_example_usage shows the pattern end to end. The maintainer lists an exception class for proper error handling, and support for other RFC types, as next steps.

Facts

Last pushLicenceGPL-3.0

Where it sits

Lives in
Provides
Parallel processingABAPParallel processingcapabilitySplitting one run's work across several work processes so that it finishes sooner, and collecting what each part returned before the run goes on. [Async processing](capability:async-processing) is the neighbouring concern: work deferred past the request with a guarantee that it eventually happens, where parallel processing is throughput inside a run that waits for its results.

Who is behind it

xamafexamafePersonMaintains this
In the atlas: maintains 1, contributes to 1
@xamafe
maintainer

Before choosing this

Signals

ActivityQuietNo published releases; repository quiet for 74 months

It publishes no releases, and its repository has been quiet for at least 24 full months. This may be normal for stable software; check whether its current state still fits your use.

What it declares

Every artifact

Type
Package
Origin
Independently maintained

As a package

Where it runs
does not say
Distributed through
does not say

Connections1

README

quoted from xamafe/RFC_TOOLS under GPL-3.0, read
xamafe/RFC_TOOLS/README.mdOn GitHub

RFC_TOOLS

Hi there, nice to meet you.

As you know it is unpleasant to work with aRFC, not mentioning aRFC with a regular RFC call to fetch data from multiple systems in parallel. After I struggled some time with the approach from the SAP I decided to write a wrapper for developers, which is capable of handling the "standard - stuff", like rfcgroups, check the RFC - connection and errormessages.
The idea is simple: each parallel task is managed by its own instance of the wrapper class.

To use this approach, follow these easy steps:

  1. create a child class from zcl_async__base
  2. choose a function module which should be handled by the class
  3. create Attributes and setter/getter methods for all parameters of the function module
  4. implement call_function with the following conditions:

*STARTING NEW TASK taskname
*CALLING me->receive_data ON END OF TASK
*EXCEPTIONS
system_failure = 1 MESSAGE e_message
communication_failure = 2 MESSAGE e_message
resource_failure = 3
*Make sure if sy-subrc = 3 that e_insufficient_ressources is set to abap_true

  1. implement receive_function

An example can be found within the report z_async_example_usage.
If you call a R3 - RFC connection within the async function module you can call multiple system in parallel.

NEXT STEPS:

  • add async exception class for errors & proper errorhandling
  • add other RFC - Types
GPL-3.0, read
Parallel processing
  1. abapify/promisePromise and async/await implementation for ABAP
  2. ABAPParallelizationServiceFramework for running ABAP work units in parallel tasks
  3. COROUTINES4ABAPCoroutine framework for ABAP with awaitable results
  4. zconcurrency_apiParallel task library for ABAP over the SPTA framework
  5. zthreadThreading library for ABAP modelled on Java's Thread and Runnable

Details

Sources3
dotabapdiscovered herechecked
github.com/xamafe/RFC_TOOLStree, pushes, contributors, CIchecked
README.mdquoted, and what the entry declareschecked

Sources are graph entities: the same page may back several entries, and an unreachable source flags every row that rests on it.

Compatibility and provenance
discovered viadotabap
first seen in the atlas
ecosystem and domainabap, operations-and-runtime
abaplint
issues under its own abaplint configuration173
lines456
statements308
objects11
files22
analysed, master
abaplint version2.120.84
History in the atlas1
  1. First seen.
For your agent
Ref
artifact:xamafe-rfc-tools
JSON
/artifacts/xamafe-rfc-tools.json
MCP
Connecting an agent