Show Dialog Box using customization in Creatio Atlas- New UI
Hi Team,
Please provide me with an example for how we can display an Information dialog box after we change the value in a lookup and refresh the page automatically after lookup value change.
Like
Hi Sarika,
Two examples in one: refresh the page in case the account selected in the lookup column on the page has the "167161603" name (the lookup column is a custom one added to the page) and display a popup stating that the page was refreshed:
handlers: /**SCHEMA_HANDLERS*/[ { request: "crt.HandleViewModelAttributeChangeRequest", handler: async (request, next) => { if (request.attributeName === 'LookupAttribute_upoxk3v' && request.value.displayValue == '167161603') { const handlerChain = sdk.HandlerChainService.instance; await handlerChain.process({ type: 'crt.LoadDataRequest', $context: request.$context, config: { loadType: "reload" }, dataSourceName: "PDS" }); Terrasoft.showInformation("Refreshed!", this); return next?.handle(request); } } } ]/**SCHEMA_HANDLERS*/,
LookupAttribute_upoxk3v should be replaced with the attribute name from the attributes property of the viewModelConfig:
viewModelConfig: /**SCHEMA_VIEW_MODEL_CONFIG*/{ "attributes": { "UsrName": { "modelConfig": { "path": "PDS.UsrName" } }, "Id": { "modelConfig": { "path": "PDS.Id" } }, "LookupAttribute_upoxk3v": { "modelConfig": { "path": "PDS.UsrAccount" } } } }/**SCHEMA_VIEW_MODEL_CONFIG*/,
To find out which attribute is needed you need to take a look at the control of the page element in the viewConfigDiff:
{ "operation": "insert", "name": "ComboBox_i6riofn", "values": { "layoutConfig": { "column": 1, "row": 1, "colSpan": 1, "rowSpan": 1 }, "type": "crt.ComboBox", "loading": false, "control": "$LookupAttribute_upoxk3v", "label": "$Resources.Strings.LookupAttribute_upoxk3v", "labelPosition": "auto", "listActions": [], "showValueAsLink": true }, "parentName": "LeftAreaContainer", "propertyName": "items", "index": 0 },
Also don't forget to add "@creatio/sdk" into the dependencies.