Configuration of Parameters in Code for the [1]janice.paganiniI'm not sure I would use this term because outside of this document, it's not typically used in the doc. If you mean Customization Project Editor, it's probably worth the extra word to say that.2023/03/2113:58:26-04:00Customization Project Editor

You can configure a custom set of parameters in code that a customizer can access in the Customization Project Editor. To configure this set of parameters, you implement a dictionary of key–value pairs that represent a set of parameters defined in the code of a graph. The customizer can then access the dictionary keys and use them as parameters to configure various column values on certain pages in the Customization Project Editor that are used to customize a screen.

Applicable Pages and Columns

[2]janice.paganiniConsider starting a new section titled something like "Applicable Pages and Columns"; we typically don't have single-section topics that are this long.2023/03/2114:32:19-04:00The following table lists the pages of the Customization Project Editor for which you can configure these parameters, the columns on each page whose values can be configured by using the dictionary keys, and the location of these columns on the page.

[3]janice.paganiniIs this right?? The Workflows page with this number only lists the workflow. I think that you mean either the Workflow (Diagram View) or Workflow (Tree View) page with the AU201030 ID ... don't you? They both have Field Name and New Value.ysf_l4k_wwb2023/03/1523:16:55-04:00Mehran QadriYes it is correct. The user would select a workflow from the list on this page AU201020. The workflow opens by default in the tree view with screen id AU201030. So, the locations described therein are in the context of tree view of the workflow.3ysf_l4k_wwb32023/03/2015:27:24-04:00janice.paganiniI think that even though the Workflows page is the starting point where all workflows are listed, the Workflow (Tree View) form is where the elements actually appear (and the topic where a reader can get more information about the described elements). So it would make more sense to either just list the Workflow (Tree View) topic and number OR have something like [link to Workflow (Tree View)] for the workflow selected on [AU201020]" ...4ysf_l4k_wwb42023/03/2114:48:41-04:00
Page Column Location
Actions

Parameter Name andValue

The Navigation Parameters tab of the Action Properties dialog box (which opens when Create New Action is clicked on the page toolbar)

Field and New Value

The Field Update tab of the Action Properties dialog box (which opens when Create New Action is clicked on the page toolbar)

Event Handlers

Field and New Value

The Field Update tab of the Event Handler Properties dialog box (which opens when Add New Record is clicked on the page toolbar)

Conditions

Field Name, Value, and Value 2

The table of the Condition Properties dialog box (which opens when Add New Record is clicked on the page toolbar)

Dialog Boxes

Field Name and Default Value

The Dialog Box Fields table of the right pane of the page for a dialog box that has been added

Workflows

Field Name and New Value

[4]janice.paganiniEven as I look at the page, I cannot follow what we are trying to say here. Please rewrite this and the next two locations so that the location is clearly stated. I would like to see this again if time permits; can you let me know on which test site (and for which customization project and screen) I can look a workflow to check the rewritten location?dqw_yrq_wwb2023/03/1523:13:19-04:00Mehran QadriI have re-written the locations. The customization project is called PhoneRepairShop. You can look at the workflow for the screen with id RS301000. To test the locations, navigate to the Customization Project Editor. Go to SCREENS -> RS301000 -> Workflows -> Default Workflow. The test site is: https://training.acumatica.com/2022R2 username: admin password: 251mildNH6dqw_yrq_wwb62023/03/2111:42:23-04:00

The Fields to Update After Transition table of the Transition Properties tab (which opens when a transition has been selected in the States and Transitions pane in the Workflow (Tree View) of the selected workflow)

Field Name and Default Value

The Fields tab of the States Properties tab (which opens when a state is selected in the States and Transitions pane in the Workflow (Tree View) of the selected workflow)

Field Name and New Value

The Fields to Update on Entry tab of the States Properties tab (which opens when a state is selected in the States and Transitions pane in theWorkflow (Tree View) of the selected workflow)

Field Name and New Value

Fields to Update on Exit tab of the States Properties tab (which opens when a state is selected in the States and Transitions pane in theWorkflow (Tree View) of the selected workflow)

Code Example

[5]janice.paganiniConsider starting a new section before this titled something like "Code Example"2023/03/2114:33:03-04:00You can define this dictionary in any graph by using the GetAvailableExpressionParameters() method of the IWorkflowExpressionParserParametersProvider interface. The following code shows an example.

public class ARScheduleMaint : ScheduleMaintBase<ARScheduleMaint, ARScheduleProcess>, 
           IWorkflowExpressionParserParametersProvider
  {
     public Dictionary<string, ExpressionParameterInfo> GetAvailableExpressionParameters()
      {
          return new Dictionary<string, ExpressionParameterInfo>()
	     {
	       {
	         "ScheduleID", new ExpressionParameterInfo()
	           {
	             Value = Schedule_Header.Current?.ScheduleID
		   }
	       }
	     };
      }
  }

In the code above, the GetAvailableExpressionParameters() method has returned a dictionary with a single key–value pair. The key is ScheduleID (written in double quotes), and its corresponding value, which is represented by the Value property of the ExpressionParameterInfo type, has been set to the current value of the ScheduleID DAC field in the cache. You can define as many key–value pairs as you may need in this dictionary to represent other parameters.

To access these dictionary keys in the Customization Project Editor, in the relevant column of the row for the field, the customizer enters the @ symbol, and all available dictionary keys are displayed. The customizer can then select the one that they want to use as a parameter in that particular field.

For example, in the Customization Project Editor, suppose that the customizer is adding a condition on the Conditions page of a screen that corresponds to the graph in which the IWorkflowExpressionParserParametersProvider interface is implemented, as shown in the preceding code example. On the Condition Properties dialog box of the page, the customizer can access the key described in the previous code example by starting to type @ScheduleID in the Field Name, Value, or Value 2 column of the added row. The customizer then selects the key when it appears in the drop-down list of available options.