How To Fix FDT_EXPRESSIONS558 - Change of input table &1 by rule at position &2 may cause runtime errors


FDT_EXPRESSIONS558 - Overview

  • Message type: E = Error

  • Message class: FDT_EXPRESSIONS - Formula & Derivation Tool: Expressions

  • Message number: 558

  • Message text: Change of input table &1 by rule at position &2 may cause runtime errors

  • Show details Hide details
  • What causes this issue?

    In the current expression or rule, the system has determined a loop
    expression with loop mode 'Foreach Entry'. This loop expression is
    designed to iterate over the rows of table &v1&, thereby trying to
    insert or delete entire table rows. This is a modeling decision for
    which code generation is not possible because the resulting source code
    would not pass the built-in syntax checks.

    System Response

    The object cannot be activated.

    How to fix this error?

    The constellation of a loop iterating over a table and at the same time
    deleting or inserting rows is not necessarily an error. However, it may
    be considered as a questionable approach that can easily lead to
    unexpected problems, for example to an infinite loop.
    To solve the problem, you may choose one of the following approaches:
    Rather than using a loop expression, you may use a procedure call
    expression associated with a class method. The method would contain the
    loop mechanism, the table modifications, plus the checks needed to
    ensure that the method can always terminate in a well-defined way.
    You could create a copy of the table in question, assign this table copy
    as a temporary variable to a ruleset, modify the table content as
    required and finally copy the modified content back to the original
    table.
    If the use case you have in mind occurs frequently in your business, it
    may be worth considering the definition of a custom expression type that
    can handle all the requirements you may have. However, this approach
    will certainly require the highest design time efforts.

    Procedure for System Administrators

    The system issues an error message and will not allow you to continue with this transaction until the error is resolved.


    Error message extract from SAP system. Copyright SAP SE.


Smart SAP Assistant

  • What is the cause and solution for SAP error message FDT_EXPRESSIONS558 - Change of input table &1 by rule at position &2 may cause runtime errors ?
    The SAP error message FDT_EXPRESSIONS558 indicates that there is a potential issue with a rule in the context of the Flexible Data Import (FDI) framework. This error typically arises when a rule attempts to modify an input table in a way that could lead to runtime errors, particularly when the rule is applied at a specific position in the processing sequence.
    
    Cause: The error is caused by the following scenarios: Modification of Input Tables: The rule is trying to change an input table (e.g., adding, removing, or altering fields) at a position where such changes could lead to inconsistencies or unexpected behavior during runtime. Incorrect Rule Logic: The logic defined in the rule may not be compatible with the structure or expected behavior of the input data. Data Dependencies: There may be dependencies between different rules or data elements that are not being respected, leading to potential conflicts.
    Solution: To resolve this error, consider the following steps: Review

    Already have an account? Login here!




Instant HelpGet instant SAP help. Sign up for our Free Essentials Plan.


Related SAP Error Messages

Click the links below to see the following related messages:

Click on this link to search all SAP messages.


Rating
ERPlingo simplifies finding the accurate answers to SAP message errors. I now use every week. A must have tool for anyone working with SAP! Highly recommended!
Rate 1
Kent Bettisworth
Executive SAP Consultant