Description
This describes Line steps used in Planned Functions.
You can set Default Value or Help Label etc. based on some conditions.conditionally update a steps properties like Default value or Help label.
See the property name here: Step Configuration Matrix
Dynamically Insert Values
Line steps in Planned functions are define defined in Reference Data. This makes them static to a degree.
Example
In this example, we will make a step more dynamic by changing values on it, using "RegisterExtraInfo".
...
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Reference Data", 'OnGetReferenceData_OnAddRegistrationCollectorConfigurations', '', true, true)]
local procedure OnGetReferenceData_OnAddRegistrationCollectorConfigurations(var _Steps: Record "MOB Steps Element")
begin
// Define a key for the step(s)
_Steps.InitConfigurationKey('CustomPickSteps');
// Create steps and set default values
_Steps.Create_TextStep(35, 'TextStep', 'HeaderText');
_Steps.Create_DateStep(45, 'DateStep', 'HeaderText');
_Steps.Create_InformationStep(55, 'InfoStep', 'HeaderText', 'Label', 'HelpLabel');
end;
Step 2
Include the step in "...OnAddStepsToAnyLine"-event
Use one of these this event:
Filter by label (Content by label) | ||||||
---|---|---|---|---|---|---|
|
...
[EventSubscriber(ObjectType::Codeunit, Codeunit::"MOB WMS Pick", 'OnGetPickOrderLines_OnAddStepsToAnyLine', '', true, true)]
local procedure MyOnGetPickOrderLines_OnAddStepsToAnyLine(_RecRef: RecordRef; var _BaseOrderLineElement: Record "MOB Ns BaseDataModel Element")
var
WarehouseActivityLine: Record "Warehouse Activity Line";
begin
_BaseOrderLineElement.Create_StepsByReferenceDataKey('CustomPickSteps');
if (_RecRef.Number = Database::"Warehouse Activity Line") then begin
_RecRef.SetTable(WarehouseActivityLine);
// Overwrite Step values with information from pick line
_BaseOrderLineElement.SetValue('RegisterExtraInfo', STRSUBSTNO('CustomPickSteps{[InfoStep][helpLabel][Description is: "%1"][DateStep][defaultValue][%2][TextStep][defaultValue][%3]}',
WarehouseActivityLine."Description", // Info step
MobToolbox.Date2TextResponseFormat(20300101D), // Date step
WarehouseActivityLine."Description")); // Text step
end;
end;
- Set value "RegisterExtraInfo".
- Using this syntax
...