FlowFields should not be editable

Properties
PC0001 Warning Design Code Fix Ignore Obsolete

A FlowField without an explicit Editable = false property defaults to editable. The UI lets users type a value into the field, but the platform discards the input — the value is never validated, stored, or forwarded. Whatever the user enters disappears after the next page refresh.

Set Editable = false on every FlowField.

Example

field(1; "Outstanding Amount"; Decimal) // FlowFields should not be editable [PC0001]
{
    FieldClass = FlowField;
    CalcFormula = sum("Sales Line".Amount);
}

Set the Editable property to false on the field.

field(1; "Outstanding Amount"; Decimal)
{
    FieldClass = FlowField;
    CalcFormula = sum("Sales Line".Amount);
    Editable = false;
}

Exception

There are valid scenarios where a FlowField is intentionally editable — for example, to let the user provide a suggested value that business logic will validate and persist. The platform does not process user input in a FlowField on its own; you must implement the logic that interprets and saves it.

The analyzer recognizes this pattern: if Editable = true has a trailing line comment, the diagnostic is suppressed.

field(1; "Suggested Budget"; Decimal)
{
    FieldClass = FlowField;
    CalcFormula = sum("Budget Entry".Amount);
    Editable = true; // User-submitted overrides handled in codeunit "Budget Management"
}

Alternatively, use a pragma directive to suppress the diagnostic:

#pragma warning disable PC0001
field(1; "Suggested Budget"; Decimal)
{
    FieldClass = FlowField;
    CalcFormula = sum("Budget Entry".Amount);
    Editable = true;
}
#pragma warning restore PC0001

See also