Skip to main content
Solved

Modify process step


Forum|alt.badge.img+14

In previous releases you could modify the type of process step (always, successful, not successful) by double click the arrow in the process flow and change the type. This is not possible anymore (2025.1). I could not find something related to this in the release docs. Is this a known issue or is there a reason for?

Best answer by Mark Jongeling

Hey Andre, this was a bug which was fixed in the 2025.2 release:

 

View original
Did this topic help you find an answer to your question?

6 replies

Mark Jongeling
Administrator
Forum|alt.badge.img+23
  • Administrator
  • 3959 replies
  • Answer
  • July 15, 2025

Hey Andre, this was a bug which was fixed in the 2025.2 release:

 


Forum|alt.badge.img+14
  • Author
  • Captain
  • 116 replies
  • July 15, 2025

Great! Is there also a fix available? 


Mark Jongeling
Administrator
Forum|alt.badge.img+23

Yyou can reallow editing by changing the Layout procedure of the process_step table. This Alter statement works for the 2025.1 SF version:

alter procedure [dbo].[lay_process_step]
(
   @layout_mode tinyint, -- 0 = add, 1 = update, 2 = navigate
   @import_mode tinyint, -- 0 = regular, 1 = import row, 2 = export, 3 = import

   @add_button_type    tinyint output, -- 0 = enabled, 1 = disabled, 2 = hidden.
   @update_button_type tinyint output,
   @delete_button_type tinyint output,

   @model_id                       "model_id",
   @branch_id                      "branch_id",
   @process_flow_id                "process_flow_id",
   @process_step_id                "process_step_id",
   @last_process_action_id         "process_action_id",
   @last_process_action_successful "process_action_successful",
   @order_no                       "order_no",
   @abs_order_no                   "abs_order_no",
   @next_process_action_id         "process_action_id",
   @process_order_input            "no_yes",
   @process_order_output           "no_yes",
   @alias_process_step_id          "alias_process_step_id",
   @process_step_description       "process_step_description",
   @insert_user                    "tsf_user",
   @insert_date_time               "date_time",
   @update_user                    "tsf_user",
   @update_date_time               "date_time",
   @generated_by_control_proc_id   "control_proc_id",

   @model_id_type                       tinyint output, -- 0 = editable, 1 = read only, 2 = hidden inside form, 3 = hidden outside form.
   @branch_id_type                      tinyint output,
   @process_flow_id_type                tinyint output,
   @process_step_id_type                tinyint output,
   @last_process_action_id_type         tinyint output,
   @last_process_action_successful_type tinyint output,
   @order_no_type                       tinyint output,
   @abs_order_no_type                   tinyint output,
   @next_process_action_id_type         tinyint output,
   @process_order_input_type            tinyint output,
   @process_order_output_type           tinyint output,
   @alias_process_step_id_type          tinyint output,
   @process_step_description_type       tinyint output,
   @insert_user_type                    tinyint output,
   @insert_date_time_type               tinyint output,
   @update_user_type                    tinyint output,
   @update_date_time_type               tinyint output,
   @generated_by_control_proc_id_type   tinyint output,

   @model_id_mand                       tinyint output, -- 0 = optional, 1 = mandatory.
   @branch_id_mand                      tinyint output,
   @process_flow_id_mand                tinyint output,
   @process_step_id_mand                tinyint output,
   @last_process_action_id_mand         tinyint output,
   @last_process_action_successful_mand tinyint output,
   @order_no_mand                       tinyint output,
   @abs_order_no_mand                   tinyint output,
   @next_process_action_id_mand         tinyint output,
   @process_order_input_mand            tinyint output,
   @process_order_output_mand           tinyint output,
   @alias_process_step_id_mand          tinyint output,
   @process_step_description_mand       tinyint output,
   @insert_user_mand                    tinyint output,
   @insert_date_time_mand               tinyint output,
   @update_user_mand                    tinyint output,
   @update_date_time_mand               tinyint output,
   @generated_by_control_proc_id_mand   tinyint output
)

as
begin

  -- Do not count affected rows for performance
  SET NOCOUNT ON;

    --control_proc_id:      layout_hide_alias
    --template_id:          layout_hide_alias
    --prog_object_item_id:  hide_alias_process_step_alias_process_step_id
    --template_description: Hide alias fields when the RDBMS type is SQL Server

    -- Hide alias fields when the RDBMS type is SQL Server
    if exists (select 1
               from model
               where model_id = @model_id
                 and rdbms_type = 0) -- SQL Server
    and @alias_process_step_id is null
    begin
        set @alias_process_step_id_type = 3
    end

    --control_proc_id:      layout_process_step_always
    --template_id:          layout_process_step_always
    --prog_object_item_id:  layout_process_step_always
    --template_description: Ensure a process step last-success cannot be modifed when the previous process action was a start or decision node

    -- The success type may not be changed for steps following start- and decision nodes
    if exists (
        select 1
        from process_action p
        where p.model_id = @model_id
          and p.branch_id = @branch_id
          and p.process_flow_id = @process_flow_id
          and p.process_action_id = @last_process_action_id
          and p.process_action_type in (98, 100))
    begin
        set @last_process_action_successful_type = 1
    end

    --control_proc_id:      layout_generated_read_only
    --template_id:          layout_generated_by_control_proc_id_read_only_parent
    --prog_object_item_id:  layout_generated_by_control_proc_id_read_only_parent
    --template_description: Generated records will become read-only

    if @generated_by_control_proc_id is not null
    begin
        set @update_button_type = 1
        set @delete_button_type = 1
    end

    --control_proc_id:      layout_generated_read_only
    --template_id:          layout_generated_read_only_child
    --prog_object_item_id:  layout_generated_read_only_child_ref_process_flow_process_step
    --template_description: Children of generated records will become read-only

    if exists(select 1
              from process_flow
              -- Check if the parent is generated
              where (generated = 1 
                    or generated_by_control_proc_id is not null 
                    )
               and model_id = @model_id
               and branch_id = @branch_id
               and process_flow_id = @process_flow_id
       )
    begin
        set @update_button_type = 1
        set @delete_button_type = 1
        set @add_button_type = 1
    end

end
go

 


Forum|alt.badge.img+14
  • Author
  • Captain
  • 116 replies
  • July 15, 2025

@Mark Jongeling  I need the layout of the task (lay_modify_process_step). 


Mark Jongeling
Administrator
Forum|alt.badge.img+23

Good point, here is the one for the modify task:

alter procedure [dbo].[lay_modify_process_step]
(
   @layout_mode tinyint, -- 0 = add, 1 = update, 2 = navigate
   @import_mode tinyint, -- 0 = regular, 1 = import row, 2 = export, 3 = import

   @confirm_button_type tinyint output, -- 0 = enabled, 1 = disabled, 2 = hidden.
   @cancel_button_type  tinyint output,

   @model_id                       "model_id",
   @branch_id                      "branch_id",
   @process_flow_id                "process_flow_id",
   @process_step_id                "process_step_id",
   @process_step_description       "process_step_description",
   @last_process_action_id         "process_action_id",
   @next_process_action_id         "process_action_id",
   @last_process_action_successful "process_action_successful",
   @order_no                       "order_no",
   @abs_order_no                   "abs_order_no",

   @model_id_type                       tinyint output, -- 0 = editable, 1 = read only, 2 = hidden inside form, 3 = hidden outside form.
   @branch_id_type                      tinyint output,
   @process_flow_id_type                tinyint output,
   @process_step_id_type                tinyint output,
   @process_step_description_type       tinyint output,
   @last_process_action_id_type         tinyint output,
   @next_process_action_id_type         tinyint output,
   @last_process_action_successful_type tinyint output,
   @order_no_type                       tinyint output,
   @abs_order_no_type                   tinyint output,

   @model_id_mand                       tinyint output, -- 0 = optional, 1 = mandatory.
   @branch_id_mand                      tinyint output,
   @process_flow_id_mand                tinyint output,
   @process_step_id_mand                tinyint output,
   @process_step_description_mand       tinyint output,
   @last_process_action_id_mand         tinyint output,
   @next_process_action_id_mand         tinyint output,
   @last_process_action_successful_mand tinyint output,
   @order_no_mand                       tinyint output,
   @abs_order_no_mand                   tinyint output
)

as
begin

  -- Do not count affected rows for performance
  SET NOCOUNT ON;

    --control_proc_id:      layout_process_step_always
    --template_id:          layout_process_step_always
    --prog_object_item_id:  layout_process_step_always
    --template_description: Ensure a process step last-success cannot be modifed when the previous process action was a start or decision node

    -- The success type may not be changed for steps following start- and decision nodes
    if exists (
        select 1
        from process_action p
        where p.model_id = @model_id
          and p.branch_id = @branch_id
          and p.process_flow_id = @process_flow_id
          and p.process_action_id = @last_process_action_id
          and p.process_action_type in (98, 100))
    begin
        set @last_process_action_successful_type = 1
    end

end
GO

 


Forum|alt.badge.img+14
  • Author
  • Captain
  • 116 replies
  • July 15, 2025

Thanks! 


Reply


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings