Various Function Modules in Project System (SAP PS)

I faced lots of issues while developing code for PS Module. So as to help ABAP’er as well as Functional I am writing this blog.

Introduction

In this blog post, we are going to learn about various function modules that are helpful for the Project system.

But before going into the list of function modules, please go through the below blog which will help you the understanding of LUW concept, that will give brief idea about how system behaves at database level.

https://blogs.sap.com/2022/05/17/what-is-luw-how-luw-works-different-types-of-luw/

Below BAPI’s are useful for various operations in Project Definition:

  1. Get data for Project Definition: BAPI_BUS2054_GETDATA
  2. Create Project Definition: BAPI_BUS2001_CREATE
  3. Create WBS Element: BAPI_BUS2054_CREATE_MULTI
  4. Set Status of WBS Element: BAPI_BUS2054_SET_STATUS
  5. Change Project Definition: BAPI_PROJECTDEF_UPDATE
  6. Change WBS Element: BAPI_BUS2054_CHANGE_MULTI

But this will not work directly as we are used to with BAPI and Transaction commit.

For the Creation of Project Definition, WBS Element and Status of each WBS element has to flow with the below Sequence.

BAPI_PS_INITIALIZATION
BAPI_BUS2001_CREATE
BAPI_BUS2054_CREATE_MULTI
BAPI_BUS2054_SET_STATUS
BAPI_PS_PRECOMMIT
BAPI_TRANSACTION_COMMIT

BAPI_PS_INITIALIZATION to be used to start initialize processing units and BAPI_PS_PRECOMMIT to be checked so as to avoid dump in case of failure.

Same in the case of update functionality below sequence needs to be followed:

BAPI_PS_INITIALIZATION
BAPI_PROJECTDEF_UPDATE
BAPI_BUS2054_CHANGE_MULTI
BAPI_PS_PRECOMMIT
BAPI_BUS2054_SET_STATUS
BAPI_TRANSACTION_COMMIT

Hope this blog will help others!!! If you find this helpful comment in the blog section.

Please like, share, follow and comment for more such blogpost.