Queues are used to control and check the sequence of operations.
For example, you can specify that delta queues are not activated until all the initial Data transfers have been completed.
If a business object is changed twice, the sequence of the changes must be preserved and forwarded. Queues are used for these tasks.
The names of queues for data transfers from an R/3 backend to the CRM Server are made up as follows:
R3A (from R/3 backend to CRM)
- I for the initial data transfer / for CDB Object Synchronizations
- D for the delta data transfer
- U for loading into the R/3 backend (upload)
- R for Requirements
_<OBJECT> Name or part of object name, or the name of the higher-level independent object
<KEY> Only delta queues are subdivided by keys.
Queues exist as inbound and outbound queues in various components.
Initial Load
Type of Queue |
Name of queue |
Outbound queue in the R/3 backend |
R3AI_<OBJECT> |
Inbound queue on the CRM Server |
R3AI_<OBJECT> |
Delta data transfer
Type of Queue |
Name of queue |
Outbound queue in the R/3 backend |
R3AD_<OBJECT> With dependent objects the object of the highest hierarchy level is always specified – usually Customer. |
Inbound queue on the CRM Server |
R3AD_<OBJECT> |
Loading into the R/3 backend
Type of Queue |
Name of queue |
Outbound queue on the CRM Server |
R3AU_<OBJECT>_<KEY> With dependent objects the object of the highest hierarchy level is always specified – usually Customer. |
Requirements
Type of Queue |
Name of queue |
Outbound queue in the R/3 backend |
R3AR_<OBJECT> |
Inbound queue on the CRM Server |
R3AR_<OBJECT> |
Queue names are defined in tables in the R/3 backend and on the CRM Server.
Table CRMQNAMES is used for defining queue names. The table contents are predefined and should not be changed without first consulting SAP.
Fields of Table CRMQNAMES
Field name |
Description |
CONSUMER |
Application |
OBJNAME |
Name of object |
SORT_ORDER |
Sort sequence |
BAPISTRUCT |
Structure name in which the key field can be found. |
QOBJPART |
Here the part of the object name relevant for the formulation of the queue name is specified. This entry is optional. If there is no entry, the name of the queue is taken from table CRMOBJECT, field MAINOBJ. |
BAPIFLD |
Field name for the instance definition. |
BAPIOFFSET |
This field is automatically filled when it is first called. |
BAPIFLDLEN |
This field is automatically filled when it is first called. |
FTCHTABLE |
Used if the field is not contained in the BAPI structure. |
FTCHRELFLD |
Table field that corresponds to field BAPIFLD in table FTCHTABLE. |
FTCHFLD |
Automatic fill when first called. |
FLDOFFSET |
Automatic fill when first called. |
LENGTH |
Length of key |
INACTIVE |
Inactive indicator |
Queues on the CRM Server are defined in table SMOFQFIND (for example, from CRM to CDB or from CRM to external systems).
Fields of Table SMOFQFIND
TR_GNAME |
BDoc Type |
SORT_ORDER |
Sort sequence |
TR_SNAME |
Segment name |
PREFIX |
Prefix |
OBJPART |
Object name part |
SEGM_FIELD |
Segment field |
FTCHTABLE |
Used if the field is not contained in the segment structure. |
FTCHRELFLD |
Table field that corresponds to field SEGM_FIELD in table FTCHTABLE. |
FTCHFLD |
Fetch field name |
FLDOFFSET |
Offset value for fetch field name |
LENGTH |
Offset length of fetch field name |
MASS_QUEUE |
Name of queue for mass data |
INIT_QUEUE |
Name of initial queue |
There are two types of queues:
Initial queues:
The central name part of the
initial queue is contained in field INIT_QUEUE. In the initial case a prefix
(CRI_) and a suffix (depends on target, for example, CDB) are
automatically added to the entry in SMOFQFIND-INIT_QUEUE.
Example: the initial queue for the BDoc type BUPA_MAIN is
CRI_BUPA_INITCDB.
Delta queues:
In delta transfers fields PREFIX,
OBJPART and a key part form are taken from table SMOFQFIND.
Example: For BDoc type BUPA_MAIN the delta queue name CRMBUPA<nnnn> is
used from CRM to CDB, whereby CRM is entered in field PREFIX, BUPA is the
object name from OBJPART, <nnnn> is the 10 digit partner number from
segment CRMW_BUPA_HEAD and the segment field is BPARTNER.
Specific names for individual objects can be found in table CRMQFIND in the CRM Server (via table maintenance).
You have to check queues in both the R/3 backend and in the CRM Server using the standard display functions for queues:
Outbound queue:
Choose Architecture and Technology ® Middleware ® Monitoring ® Queues ® Display RFC Outbound Queues.
Inbound queue:
Choose Architecture and Technology ® Middleware ® Monitoring ® Queues ® Display RFC Inbound Queues.
There is further information in the detail view (for example, generic starting, error messages). You can go to further detail views by double-clicking.