CAN ANY HELP ME ON Triggering a Client-Side Event When a Field is Changed on a Page in Creatio in Freedom UI?

Like 0

Like

4 comments

I have an article showing how to do this here: 

https://customerfx.com/article/responding-to-an-event-when-a-field-is-c…

Ryan

@Ryan I have to call a method inside field is changed .I have  used this approach but I am getting issue in this. Can you please help how we can call a function inside field value

 handler: async (request, next) => {

        if (request.attributeName === "BooleanAttribute_ddmdb1n") {

              await cfx.fieldChecked(); // 

        }

        return next?.handle(request);

    }

},

            {

                request: "cfx.fieldChecked",               

                handler: async (request, next) => {

                    const okBtn = {

                        key: "OK",

                        config: {

                            color: "primary",

                            caption: "YES"

                        }

                    };

                    const cancelBtn = {

                        key: "CANCEL",

                        config: {

                            color: "default",

                            caption: "Cancel"

                        }

                    };

                    const result = await request.$context.executeRequest({

                        type: "crt.ShowDialogRequest",

                        $context: request.$context,

                        dialogConfig: {

                            data: {

                                message: "Are you sure you would like to proceed? It will wipe out all the information!!!!",

                                actions: [cancelBtn, okBtn]

                            }

                        }

                    });

                    if (result === "OK") {

          request.$context.StringAttribute_uo3a61k = "";

                    }

You cannot put methods inside a Freedom UI page. Either move the code from cfx.fieldChecked into the change request handler, or you can move it to a module

Ryan

okay got it .Thank you for help

Show all comments

Can anyone knows HOW TO ADD POP CONFIRMATION MESSAGE for selecting Yes or No in Freedom UI

Like 0

Like

2 comments

Is it possible to change the colours/colour progression used for subsequent sections of a donut chart widget? We currently want to define that one value of a boolean on a lookup should be displayed in green, and the other red, but a generalised way of doing this would be very helpful for future reference - e.g. to specify the set and order of colours used in some way. We're currently on 8.1.0.6820 Any help would be greatly appreciated!

Like 1

Like

1 comments

Hello,



Unfortunately, at the moment it is impossible to customize colors in charts. However, a task has already been registered in our R&D team to add the option to customize colors in charts, in future releases. In case you would like to check  what stage this task is at, I am sending you the task number: PR-6359.

Show all comments

Can anyone tell how I can Navigate to a Page by clicking on button in Freedom UI  by using (customcode)

Like 0

Like

3 comments

You can do that with no code using the actions: 

  • Open new record (to open a page in add mode)
  • Open existing record (to open a page in edit mode)
  • Open specific page (to choose a specific page. This could be a section list page, or a specific page for a record if a record has multiple pages defined for it)

If you want to do this in code, these articles will help: 

Ryan

Thank you @Ryan for answering my question ,Do you have exact example where we are Navigating to Page by clicking on button.

Hello,

 

Please note that this can be set up without custom code using basic functionality of Freedom UI components. You can find the instructions on it in this Academy article. And here are the instructions for the Classic UI.

Show all comments

Hi,

 

Has someone figured out how to merge duplicate contacts in the contacts section in freedom UI ? The documentation only shows classic UI contact page https://academy.creatio.com/docs/8.x/creatio-apps/creatio_basics/busine…



Cheers,



Damien

 

Like 7

Like

11 comments

Hello,



Unfortunately, it is not possible to check the deduplication for a contact record while it is being created. You can do it through a mass search for duplicates, which can be launched on the page with rule settings. As a temporary solution, you can display the Contacts section in Classic UI, where you can perform deduplication check on this page.







At the moment this is the only solution. The responsible team is already working on adding this feature in the next releases.



Regards,

Orkhan

Orkhan,



Hope it comes soon, that was a highly appreciated "hygiene" function and highly demanded by our new prospects.



Cheers,



Damien

Hi, Any news about a component to manage duplicate customers or accounts or whatever and be able to merge them into Freedom UI pages?

Thanks, but this didn't solves the problem of existing duplicated contacts/accounts, just to advice when try to add a new one.

 

What I'm asking for is the ability to merge contacts or accounts or whatever like in Classic UI

 

1.- In Classic UI when you list contacts, select some (duplicated) and have an action to merge them

 

2.- Also in Classic UI, when open a contact, for example, if have some duplicated you have the choice to merge them

 

My question is, when this functionality will be enabled in Freedom UI

 

Thanks

 

Julio

Hi,

 

are there any news on this "lost" feature?

 

Thanks,

Robert

Definitely needed in Freedom UI. I hate that I have to add the classic sections to a workplace to have users go there to use the functionality to merge records. 

Ryan

Ditto 1 million times, this is a major missing function from freedom at this point.

Ryan Farley,

Agree

Yes, 

I've only seen information about deduplication on save in recent roadmap update, but not full proper deduplication functionalities, which is one of the crucial functionalities in maintaining a healthy CRM database.

Definitely need this functionality to return. It doesn't make sense how Freedom UI has been out for so long and we're still waiting on such an important feature.

Show all comments

Is it possible to cancel a DCM transition from JS code? I believe it used to be possible in the classic UI, but I can't find any info on achieving it in Freedom UI. Trying to intercept the call with a handler for `crt.EntityStageProgressBarStageChangedHandlerRequest` allows "cancelling" it in a sense, as we can prevent the continuation of the handler chain by not performing the `return await next?.handle(request);` call, similar to how you would omit the `this.callParent(arguments)` when using classic UI, which does prevent the change from happening/further processing, but this leaves the selected stage highlighted instead of visually returning it back to the actually active stage. I'm currently using version 8.1.0

Like 0

Like

1 comments
Best reply

Hello!



In order to cancel a DCM transition you will have to add a handler for the system request crt.SaveRecordRequest, which is executed when you click the Save button on the record editing page.



In this example, we also added crt.HandleViewModelAttributeChangeRequest, which is executed whenever the value of an attribute changes, and an "IsStageChanged" attribute to control the Stage state. This way we check if a Stage attribute (LookupAttribute_ioghn6a) has been changed and prevent it from being saved. You can adjust this code according to your business needs:

 

...
	viewModelConfigDiff: /**SCHEMA_VIEW_MODEL_CONFIG_DIFF*/[
			{
				"operation": "merge",
				"path": [
					"attributes"
				],
				"values": {
					...
					"IsStageChanged":{
						value: false
					}
				}
			},
 
		]/**SCHEMA_VIEW_MODEL_CONFIG_DIFF*/,
 
		handlers: /**SCHEMA_HANDLERS*/[
			{
				request: "crt.SaveRecordRequest",
				handler: async (request, next) => {
 
					if(await request.$context.LookupAttribute_ioghn6a && await request.$context.IsStageChanged){
						request.$context._notifyService.show({message: 'Cannot set status'});
						return false;
					}
 
					const saveResult = await next.handle(request);
					if(saveResult){
						request.$context.IsStageChanged = false;
					}
 
					return saveResult;
				}
			}, 
			{
				request: "crt.HandleViewModelAttributeChangeRequest",
				handler: async (request, next) => {
 
					if (request.attributeName === 'LookupAttribute_ioghn6a' && request.value != request.oldValue && request.oldValue) {
						request.$context.IsStageChanged = true;
					}
					return next?.handle(request);
				},
			}
		]/**SCHEMA_HANDLERS*/,
...

 

Hello!



In order to cancel a DCM transition you will have to add a handler for the system request crt.SaveRecordRequest, which is executed when you click the Save button on the record editing page.



In this example, we also added crt.HandleViewModelAttributeChangeRequest, which is executed whenever the value of an attribute changes, and an "IsStageChanged" attribute to control the Stage state. This way we check if a Stage attribute (LookupAttribute_ioghn6a) has been changed and prevent it from being saved. You can adjust this code according to your business needs:

 

...
	viewModelConfigDiff: /**SCHEMA_VIEW_MODEL_CONFIG_DIFF*/[
			{
				"operation": "merge",
				"path": [
					"attributes"
				],
				"values": {
					...
					"IsStageChanged":{
						value: false
					}
				}
			},
 
		]/**SCHEMA_VIEW_MODEL_CONFIG_DIFF*/,
 
		handlers: /**SCHEMA_HANDLERS*/[
			{
				request: "crt.SaveRecordRequest",
				handler: async (request, next) => {
 
					if(await request.$context.LookupAttribute_ioghn6a && await request.$context.IsStageChanged){
						request.$context._notifyService.show({message: 'Cannot set status'});
						return false;
					}
 
					const saveResult = await next.handle(request);
					if(saveResult){
						request.$context.IsStageChanged = false;
					}
 
					return saveResult;
				}
			}, 
			{
				request: "crt.HandleViewModelAttributeChangeRequest",
				handler: async (request, next) => {
 
					if (request.attributeName === 'LookupAttribute_ioghn6a' && request.value != request.oldValue && request.oldValue) {
						request.$context.IsStageChanged = true;
					}
					return next?.handle(request);
				},
			}
		]/**SCHEMA_HANDLERS*/,
...

 

Show all comments

Hi community,

 

I have this requirement where the client must be able to move one or more records from one detail to another through a business process. Following the steps shown in the image below:

 

1. The user must select one or more records from the "Product on Invoice" detail.

 

2. Next, the user executes the business process using the "Add" button. The process must receive the ids of the selected records.

 

3. Finally, all the selected records should then be added to the "Products in the Correction Invoice".

 

 

How can I achieve this requirement on the new Freedom UI?

 

If you need more information, feel free to ask.

 

Thanks in advance.

 

Best Regards,

Pedro Pinheiro

 

 

Like 2

Like

1 comments

Dear Pedro,

 

To execute this idea, you can do the following:

 

1) You can add the element that depends on user's choice in the "User's Action":

 

 

You can add an "Auto-generated/Pre-configured page" asking the user for an Id for example.

 

2) To achieve this, you can add the action on the button to start the business process in the page designer:

 

 

 

For the transfer, you can read the data from both objects, then use the modify data element.

 

You can read more about business process capabilities in the following article tree: https://academy.creatio.com/docs/8.x/no-code-customization/category/bus…

 

Have a great day!

Show all comments

Hi , 



By default in freedom, when adding a new task,  the whole list of categories appear, and do not filter on the "task" type. Eg: I see both "call" with type "call" & "task" appear. 

 

 





Thanks, 



Damien

Like 0

Like

1 comments

Dear Damien,

 

Thank you for your question!

 

You can achieve this behaviour by creating the following business rule for the mini page:

 

 

We have also created a task to implement this behaviour out-of-the-box.

 

Thank you for making Creatio better!

 

King regards,

Alina

Show all comments

We need to set the default Home Page for users in Creatio, ideally based on their functional role, but failing that a single default home page for all users would be acceptable. How can this be achieved? We're using Freedom UI and are on version 8.1.0 in our environments.

Like 0

Like

1 comments

Hello, 

 

Unfortunately, such functionality is not yet implemented. There is no oob tool to change the homepage for all the users or specific user roles. 



Such task can be implemented only with a help of SQL queries that will change the HomePageID value for the users in the SysAdminUnit system table. 

 

Best regards,

Anastasiia

Show all comments

Hi All, 

Are we able to change this text to our company brand please?

 

Thanks

Like 1

Like

3 comments

Hello,



Unfortunately, in Freedom UI there is no possibility to customize the logo on the loading screen. 



However, a task has already been registered in our R&D team to consider and implement such a feature in future releases. In case you would like to check what stage this task is at, I am sending you the task number: PR-28347. Please don't hesitate to share this number with us at any time and ask your questions.

FREEDOM UI LOGIN LOGO (CURRENTLY CREATIO- Any Article for this issue

Bala Koteswarareddy,


Hello, 

The request to implement this functionality on Freedom UI has been submitted to our Developer Team. 

Regards,
Orkhan

Show all comments