Skip to Content
Technical Articles
Author's profile photo Jigang Zhang 张吉刚

about Temporary Storage of FSCM Dispute Management

After googling this topic, I have no idea why they’re so few results related to Temporary Storage of FSCM Dispute Management(FDM). May because it’s rarely been used or has this functionality been abandoned at S/4 HANA?

Here is a list of basic knowledge about this for reference:

1. Temporary Storage Table: FDM_BUFFER

  • The key field ‘RELID’ will be fixed as ‘DM’ for dispute cases;
  • The key field ‘CASE_GUID’ is the same as UDMCASEATTR00-CASE_GUID;
  • The fields ‘NEW_SEQNR’ and ‘OLD_SEQNR’ are the new/old Sequential Number of Processes that could be compared with UDMCASEATTR00-FIN_PROC_SEQNR.

2. FM related to FDM Temporary Storage

  • Create FM: FDM_BUFFER_INSERT
  • Delete FM: FDM_BUFFER_DELETE
  • Notice FM: FDM_BUFFER_NOTIFICATION

3. Program related to FDM Temporary Storage

Once got an SBWP message after performing FI clearing which has a dispute case against it:

  • Postprocessing for Dispute Cases and Promises to Pay Program: FDM_PROCESS_BUFFER

The main FM for this program is: ‘BAPI_DISPUTE_PROCESS’, ‘UDM_DC_CHANGE’. The error message Process step &1: Change not possible, process step &2 missing UDM_MSG(037) comes from routine ‘check_seqnr’ of ‘UDM_DC_CHANGE’.

The major check is:

  • Check whether UDMCASEATTR00-FIN_PROC_SEQNR and I_PROC_SEQNR_OLD(FDM_BUFFER-OLD_SEQNR) are the same. Otherwise, there is a pending process that has to be performed first.

It means whenever there’s one version of Temporary Storage has been created, the latest version of the old Sequence number at FDM_BUFFER should match FIN_PROC_SEQNR for the current dispute case. Otherwise, check why there’s un-processed Temporary Storage or no update of UDMCASEATTR00-FIN_PROC_SEQNR.

I find it’s hard to trace how FDM_BUFFER has been filled through its entry has a timestamp. Please share if you are familiar with how FDM_BUFFER has been filled, thanks!

Assigned Tags

      1 Comment
      You must be Logged on to comment or reply to a post.
      Author's profile photo Jigang Zhang 张吉刚
      Jigang Zhang 张吉刚
      Blog Post Author

      ---Updated 2022/Sep/05---

      I take more time to investigate the error UDM_MSG 037, and this could be one example of the whole story:

      1. Dispute case created for one Invoice;
      2. User clear document for related Invoice; For a typical case, it should be updated directly at dispute case. But in rare cases, for example, if this dispute case is opening during clearing processing, this update entry will be stored to buffer table as can't update cause of dispute case been blocked;
      3. Program 'FDM_PROCESS_BUFFER' should be set as a Background job to deal with those pending updates; if due for some reason those pending updates haven't been synced and new updates coming~ then it'll lead to a mismatch of the sequence number of the dispute case

      Few tips:

      • FDM_DCPROC records the changes from FI
      • FDM_BUFFER records the pending changes from FI, which should be clear after execute FDM_PROCESS_BUFFER
      • Key fields UDMCASEATTR00-FIN_PROC_SEQNR vs FDM_DCPROC-PROC_SEQNR vs FDM_BUFFER-NEW_SQR