QA Approval Procedure and Transport Proposals

Objectives

After completing this lesson, you will be able to:
  • Use the QA approval procedure
  • Explain the idea of the transport workflow

TMS Quality Assurance

The TMS Quality Assurance (QA) approval procedure increases the quality and the availability of the production systems by letting you check transport requests in the quality assurance system before importing them to subsequent SAP systems.

When you activate the QA approval procedure, transport requests are only ready to be imported into the delivery systems if all the QA approval steps are processed for the transport request in the QA system and the transport request has been approved. When you configure the QA approval procedure, you determine how many QA approval steps have to be processed for each transport request. If one check for an approval step is not successful, the entire transport request cannot be approved. Therefore, you can only import completely approved transport requests into the delivery systems.

Rejected transport requests are not imported into the delivery systems of the QA system.

Configure the QA Approval Procedure as described in the text of this lesson.

Before you can process transport requests, you should configure the QA approval procedure. For this, ensure that the SAP system landscape and/or transport domain is set up so that there is at least one development system, one quality assurance system, and one production system. The SAP system to be configured as the QA system must have the following attributes:

  • It must be the target of at least one transport route (either a consolidation route or a delivery route).
  • It must be the source of at least one delivery route.

In the SAP system attributes for the chosen SAP system, the Delivery after confirmation option must be set. In the approval procedure, you can define which users must approve so that the transport can be imported into the delivery system (see the figure "Configuring the QA Approval Procedure").

After configuration, the QA worklist is automatically set up. All the transport requests imported into the QA system are included in the QA worklist.

Steps in the QA Approval Procedure

To display the QA worklist, use transaction STMS_QA. The timestamp at the upper-right side of the screen indicates when the QA worklist was last updated. The entry in the upper-left side indicates how many transport requests still need to be processed.

The list displays the transport requests corresponding to the selected approval steps. By default, the transport requests corresponding to all approval steps are shown. To select the approval step whose corresponding transport requests you want to see, choose WorklistSelect Approval Step from the menu. By double-clicking various items in the table listing the transport requests, you obtain further information on those items.

Hint

You could also access the QA worklist using transaction STMS, but, from a security point of view, you might want to allow only administrators to call transaction STMS. Check out the sub-transactions of STMS by searching for entries in table TSTC (using transaction SE16) beginning with STMS*. Here, you can find, for example, STMS_QA.

You should test the transport requests listed in a QA worklist before importing them into the delivery systems.

The QA status Rejected means that one or more approval steps of a transport request have been rejected by a person responsible. A request is approved only if all the approval steps have the status Approved.

In the QA worklist, you can see:

  • The QA status (St)
  • The overall status (GS)
  • The number of steps (Nr)

Transport requests can be imported into the delivery systems only if all of them have received approval according to the various approval steps.

Note

If all the transport requests for one project have been approved, they can be imported into the delivery system even if other projects still have unprocessed or rejected requests in the QA worklist.

Transport requests with the QA status Rejected as well as unprocessed transport requests in the QA worklist will not be imported into the delivery systems.

Hint

The approval or rejection of a single step can be changed, as long as not all approval steps have been performed. As soon as all defined approval steps have been performed, however, it is no longer possible to change the decision.

Note

SAP recommends that you do not reject transport requests containing errors, but correct the error using subsequent transport requests and then approve the affected transport requests as an entire package.

Perform the exercise on the QA approval to take the screenshot.

The meaning of the different icons for the approval status are as follows:

  • Distribution required

    The QA status for this transport request could not be distributed. After correcting errors, you must repeat the distribution.

  • New

    The transport request is new in the QA worklist.

  • In Process

    There are still some approval steps for this transport request that have to be processed.

  • Request rejected

    The transport request was rejected for an individual step or for all steps (depending on the view displayed in the QA worklist).

  • Request approved

    The transport request was approved for an individual step or for all steps (depending on the view displayed in the QA worklist).

From the QA work list screen, you can access the QA history by choosing the menu path GotoQA History.

The QA worklist history (or QA history) shows all the transport requests for a specific period that are no longer displayed in the QA worklist. Transport requests are no longer displayed in the QA worklist when they have been approved or deleted. The default period for the QA history is 30 days but this time period can be changed in the Confirm time interval dialog box.

To determine who was responsible for approving a transport request, choose RequestDisplayQA Status.

Note

The QA history is stored in the database of the QA system (the QAS system). If you perform a database or SAP system copy from PRD to QAS, the history will be lost. To prevent the QA history from being deleted in this way, see SAP Notes 397138 – TMS QA and system copies and 1864549 – STMS QA saving administration data more easily.

The setting of the tp parameter HANDLING_OF_INACTIVE_TRANSPORTS controls how a mass import (or an import of all transport requests belonging to the same CTS project) into a subsequent SAP system should react if inactive transport requests are in the import queue. For this parameter, the following values are possible:

BREAK

The import terminates if the import queue contains at least one inactive transport request. This is the default value for this parameter.

STOP

During the import, the system imports all of the confirmed requests that are in the queue before the first unconfirmed request.

SKIP

During the import the system imports all of the confirmed requests and skips the unconfirmed requests (and the rejected requests). When you use this setting, sequence problems with regard to the involved transport requests may occur. Therefore, this setting is not recommended.

For details, see SAP Note 1372301 – Handling unconfirmed transport requests.

Note

As an alternative: When using single transports strategy you can make use of a virtual "VDE" system and forwarding transport requests by calling program RSTMS_DIST_APPROVED_REQUESTS in the QAS system. For details, see SAP Note 313991 – TMS Quality Assurance and single transport strategy.

Perform QA Approval

Business Example

It is important to import only those transport requests into the productive system that have been tested successfully in the quality assurance system. For the SAP system administrator, it is not easy to find out whether the objects from a transport request have been tested or not. By using the Quality assurance approval procedure, it is not only obvious if the transport request has been tested or not, you can also see who took responsibility for it.

Note

## represents the group number the instructor has assigned to you.

Task 1: Test in the QA System

Perform quality assurance testing after successful imports into the quality assurance system S4Q.

Steps

  1. After a successful import of transport requests, the functionality of the SAP system must be extensively tested. How is this performed?

    1. Quality assurance testing requires that both the desired functions are tested using a sample of "real life" business data and that existing functions are still working even after the import of new changes and additional functions.

      To perform quality assurance testing, there should be a dedicated quality assurance system with a well-defined set of test data, usually a copy of the productive system. Using test scripts that may or may not be automated with a tool such as eCATT (transaction SECATT), business functions must be tested. The results must be compared with desired results. All inconsistencies must be recorded and forwarded back to the developers or to the customizing team to be corrected in the development system.

  2. Verify that the customizing entries that you have transported exist in the quality assurance client 100 of the quality assurance system S4Q.

    1. Log on to the quality assurance system, client 100 with the credentials provided by your instructor.

    2. To verify customizing, use the SAP Reference IMG (transaction SPRO) to see that some of your customizing objects (that you have created in the development system in a previous exercise) exist in the client 100 in the quality assurance system (for example, you may have created a new entry in activity SAP Customizing Implementation GuideABAP PlatformGeneral settingsSet CountriesDefine Countries/Regions (basic view)).

      Hint

      Just looking for the existence of changes is usually not enough. You will have to test the flow of processes as well if working in a real-life scenario. For example, you may want to create a new user company address in transaction SUCOMP which contains "your" country in field Country/Reg. and a suitable time zone.

      For the scope of this class, however, it is OK to just look at them.

  3. Verify that the development objects that you have transported exist in the quality assurance system.

    1. The most recently imported development changes can be tested by verifying that the objects such as the ABAP program ZPGM_##, which you have created in the development system in a previous exercise exist in the quality assurance system.

      Hint

      Again, just looking for the existence of objects is not true quality assurance testing. The object's function needs to be verified. For the scope of this class, however, it is OK to just look at them (for example, using transaction SE38). Of course, you may also try to execute this program with the help of – for example – transaction SA38.

Task 2: Perform the QA Approval Procedure

Perform the QA approval procedure in quality assurance system S4Q. The approval permits the import of the assigned transport requests into the production system S4P.

Steps

  1. After transport requests have been imported into the quality assurance system, client 100, the transport requests are placed into the import queues of the subsequent SAP systems. Display the status of your transport requests in the import queue of the subsequent SAP system (such as the pre-production system). Is an import of these transport requests into the subsequent SAP system possible now?

    Note

    The subsequent SAP system of S4Q is, among others, S4P, client 100.

    1. If you have not yet already logged on, log on to client 100 of your quality assurance system S4Q with the credentials provided by your instructor.

    2. Start transaction STMS to access the initial TMS screen. From here, choose the menu path OverviewImports to see the Import Overview of all SAP systems in the transport domain.

    3. Double click the line of the subsequent SAP system (such as the pre-production system S4P). The Import Queues: System <System ID> screen appears. Choose Refresh.

    4. In the Status column, you can see that "your" transport requests that have already been imported into the quality assurance system, client 100 have the status Request must still be approved. These requests cannot be imported into the subsequent system until they are confirmed via the QA approval procedure.

      If no QA approval procedure is defined, transport requests that have been imported into the quality assurance system may technically directly be imported to any delivery system of this quality assurance system, even if they have not been tested.
  2. Perform the Quality Assurance approval procedure. Look at the QA worklist of the quality assurance system. In the role of a developer, approve all of your transport requests. In the role of the department, approve your entire project.

    1. In the quality assurance system, client 100 start the QA worklist (transaction STMS_QA). The QA Worklist: System S4Q screen appears. Refresh the QA worklist.

    2. Imagine, you are here in the role of the transport request owner: select the corresponding approval step by choosing WorklistSelect Approval Step from the menu. Select To be approved by request owner.

    3. Mark your transport requests after they have been tested (feel free to use the Select All button from the application toolbar) and choose the menu path RequestApprove. In the dialog box, enter a Reason and choose Continue to approve.

    4. Now imagine, you are here in the role of the department. Again select the corresponding approval step by choosing WorklistSelect Approval Step. Select To be approved by department. Then select the Project column and choose Filter from the application toolbar. Use the value help to select "your" CTS project name in the resulting screen and confirm the selection. Mark your transport requests after they have been tested for your specified project and choose RequestApprove from the menu. In the dialog box, enter a Reason.

    5. Confirm that after this approval step the status can no longer changed with Continue.

      Note

      Because many users work with the QA approval procedure at the same time now, maybe the SAP system will inform you that the QA Worklist has changed while you were working on it. In this case, just Refresh the QA Worklist and retry your approval.
  3. Display the import queue of a subsequent SAP system.

    1. Start transaction STMS on your quality assurance system and choose OverviewImports from the menu.

    2. From the import overview of all SAP systems in TMS, double-click on the line for a subsequent SAP system (for example, the pre-production system S4P). The import queue appears. Choose Refresh. In the Status column, you can see that the transport requests that have been approved in the quality assurance system now have the status Request waiting to be imported.

      Note

      Compared to the first step of this task, the Status of your transport requests have changed.

Special Transport Workflow

When you use a queue-driven transport strategy, you can use the special transport workflow if transport requests containing corrections are needed urgently, or if transports are required that do not follow the defined transport routes. This process works with a workflow and each step is documented.

Before you can use the special transport workflow, you must configure one client in one SAP system as the so-called Workflow Engine.

The system on which the Workflow Engine is to be configured should have the following criteria, which are listed in order of importance:

  1. High availability
  2. High release
  3. Low or medium system load

Note

These prerequisites are usually met by the productive system.

Perform the configuration steps of the transport workflow as stated in the text of this lesson.

To configure the special transport workflow, do the following:

  1. Log on to the SAP system acting as the transport domain controller.
  2. Start transaction STMS, choose the menu path Overview → Systems and then the menu path GotoTransport Domain.
  3. Choose the Workflow Engine tab.
  4. Switch to change mode. Enter the SAP system, the client, and the target host for your Workflow Engine. Choose Save. Confirm the dialog box to distribute the configuration change.
  5. On the Display TMS Configuration: Domain <domain> screen, choose Set (TMSADM_WF) Password (if it exists) and enter a password for user TMSADM_WF (you may need to choose Execute and then confirm a dialog box). This creates the system user TMSADM_WF in this client.

    Hint

    In the case of an error message that this user cannot be created, follow SAP Note 2191190 – Could not create user TMSADM_WF error configuring workflow.
  6. You may need to log on to every system in the system landscape. After finishing you may get the message that (among others) the RFC destinations TMSADM_WF required for the Workflow Engine in the connected systems have been updated. In addition, the SAP system automatically:
    • Sends the address data of the Workflow Engine to all SAP systems in the transport domain.
    • Performs the workflow related customizing on the Workflow Engine.
  7. Go Back to the Change TMS Configuration: Domain <domain> screen and choose Check Workflow Customizing from the application toolbar.

To use the special transport workflow, you must create a transport proposal. To do this, go to the Transport Organizer (Transaction SE09) and select released requests. Choose Display. Position the cursor on a transport request that you want to transport and choose UtilitiesCreate Transport Proposal from the menu. The Create Transport Proposal dialog box appears. Enter a Short text, the Target system, and (optional) other transport requests. The target system applies to all transport requests that you enter. Then choose Create and Send Proposal.

Note

When a transport proposal is created in the Transport Workflow, you can specify all the systems of the transport landscape as target system. If only the target systems defined directly in the transport routes should be available to the person placing the proposal, see SAP Note 374043 – Use only direct transport rows in Transport Workflow.

Any transport requests that you place in the transport proposal must be released.

When a transport proposal is created, the SAP system assigns a proposal number to this transport proposal, and then places it in the specific TMS worklist for the transport administrator.

If the transport administrator rejects your transport proposal, it reappears in your transport proposal inbox. You can cancel the transport proposal or revise it and send it back to the transport administrator.

After the transport administrator has approved your transport proposal, the import of the corresponding transport requests will be started and the transport proposal will reappear in your transport proposal inbox. Check that the transport requests are being imported correctly into the target system or systems, and confirm the transport proposal.

Perform the exercise on transport workflows to take the screen shot.

To approve or reject a transport proposal, start transaction STMS in the system / client specified as Workflow Engine. To display the TMS worklist (see the figure "Transport Proposal Worklist"), choose the menu path Overview → Worklist. Double-click the transport proposal you want to process. Check if the transport requests, the list of target systems, and the import times and import options for the transport proposal are correct. You can display the object list of the transport requests by choosing Display Requests. Switch to change mode if you want to make changes to the transport requests, transport targets, import times, or import options.

You can create a message for a developer by choosing the Create Attachment icon.

To process the transport proposal, choose the respective icon to approve or reject the transport proposal.

  • If you approve the transport proposal, the import into the specified SAP systems will start automatically. The transport proposal is placed in the developer's transport proposal inbox and the developer finally confirms it.
  • If the transport proposal is rejected, it will be placed in the developer's transport proposal inbox for modification.

More Information

For more information on the transport workflow, see the online documentation for SAP S/4HANA (Product Assistance), area Enterprise TechnologyABAP PlatformAdministrating the ABAP PlatformAdministration Concepts and ToolsSolution Life Cycle ManagementSoftware LogisticsChange and Transport SystemTransport Management System (BC-CTS-TMS)Transport Workflow (Administration) and area Enterprise TechnologyABAP PlatformAdministrating the ABAP PlatformAdministration Concepts and ToolsSolution Life Cycle ManagementSoftware LogisticsChange and Transport SystemTransport Management System (BC-CTS-TMS)Configuring TMSConfiguring the Transport Workflow.

Create Transport Proposals

Business Example

The special transport workflow can be used to accommodate transports. It can be used in situations where it may be necessary to transport an urgent correction directly into the production system bypassing the configured transport route. You might also use it for importing into the quality assurance system, although regular imports are not scheduled at the moment.

Task 1: Transport Proposals

Create transport proposals for a transport request.

Steps

  1. In your role as a developer, create a transport proposal in the development system S4D. The target system should be the pre-production system S4P, client 100, time of import should be immediately.

    Note

    Prerequisites: the Workflow Engine has been configured by the instructor.

    1. Log on to the development client (client 100 of system S4D) with the credentials provided by your instructor.

    2. Start the Transport Organizer (transaction SE09).

    3. Use the right side of the Transport Organizer to create a transport proposal. For this, select the Transport Proposals tab. Some new icons appear. Choose Create transport proposal. In the subsequent screen, enter a short text for your transport proposal. You may also create additional attachments for longer explanations.

    4. In the Requests for Import field, use the value help to select a transport request that you have created and released earlier in this class. Select the target system to be S4P and the target client to be 100.

      Hint

      In the Time field, you can specify a given date and time for the import to be performed, otherwise, it will be done as soon as your transport proposal is accepted. In the Import Options field, you could add some unconditional modes, which are not needed here.

    5. Choose Create and Send Proposal to save and send your transport proposal. Keep this session open.

  2. In your role as a transport administrator, check all transport proposals. For this, on the Workflow Engine (S4D system, client 100) call the TMS worklist from the initial TMS screen. Mark your transport proposal from the previous step and reject it.

    1. In the S4D system, client 100, in a separate session (GUI window) use transaction STMS to access the initial TMS screen. Choose OverviewWorklist from the menu to display the TMS worklist.

      Hint

      If the Workflow Engine is not located on the SAP system you are logged on to, a logon is performed on the SAP system containing the Workflow Engine.
    2. Mark the line with your transport proposal and select Execute. On the following dialog box, Approve Transport Proposal, choose Reject to reject the proposal.

  3. As a developer, monitor the status of your transport proposal from the transport proposal inbox of the Transport Organizer. Find the rejected transport proposal and accept the rejection of the transport proposal.

    1. From the initial screen of the Transport Organizer (transaction SE09) in the development system S4D, client 100, on the Transport Proposals tab, choose Inbox to display information on your transport proposals. You will see that your transport proposal has the status Ready.

    2. Double-click your transport proposal. From this screen, you can either Withdraw or Save and Send Back your transport proposal.

    3. Choose Withdraw (and confirm a dialog box).

      Note

      As an alternative, you can send the transport proposal again, instead of accepting the rejection. Then you could, in your role as a transport administrator, want to approve this second try (by choosing Approve and Start Import). In this case, after confirming a dialog box, you need to enter credentials for the target system that has been specified in the transport proposal.

Log in to track your progress & complete quizzes