Hello community,

Is it possible to refresh a dashboard widget in an AccountPageV2 schema, without reloading the whole entity?

Thank you,

Sasori

Like 1

Like

2 comments

HI community,

Any update regarding this question?

Sasori

Hello,

 

We have checked this and unfortunately it is not possible to set this up in the system using basic tools. However, we already registered this idea for our R&D team and such functionality may appear in future releases.

Show all comments

Hi, 

 

I have to read the current user timezone from their profile in Creatio.

I have found the object name - SysUserProfile (Title - User profile)

But i cannot read this object in the business process read element. 

Please help urgently.

 

Like 0

Like

2 comments

Hi Akshit,

Try writing an esq query in script task 

https://community.creatio.com/questions/how-create-or-update-record-usi…

Hello,

 

There is no basic method for reading the time zone in a business process.

I will register the idea for future versions.

Show all comments

Hello.

 

For now

request.$context.LookupPropName = undefined

clear the value, but not triggers any change events on page.

 

How can i clear lookup value on the page with triggering 

crt.HandleViewModelAttributeChangeRequest request?

Like 1

Like

1 comments

Hello,

It looks like the only possible solution for you would be to clear the value inside the business process.

Otherways you just don't trigger the handler.

Show all comments
hello, I would like to know what the error is due to, 
perform a business process in the local environment, 
but I try to import the package in the dev environment, 
it throws the following error with the business processes

An error occurred while generating the source code of the 
"AnalisisCancelacionPolizaLDFTProcess" schema in the 
"CancelacionPolizaLDFT" package. Uid e202d880-264f-4aa5-876d-ad3a59567156: 
Error resolving type specified in JSON 
'System.Collections.Generic.Dictionary`2[[System.Guid, System.Private.CoreLib],
[System.Collections.ObjectModel.Collection `1 
[[System.Guid, System.Private.CoreLib]], System.Private.CoreLib]], 
System.Private.CoreLib'. Path '$type', line 1, position 222.
2023-05-24 19:59:58,541 Newtonsoft.Json.JsonSerializationException: 
Failed to resolve type specified in JSON 
'System.Collections.Generic.Dictionary'2
[[System.Guid, System.Private.CoreLib],[System. Collections. ObjectModel.Collection`1[[System.Guid, System.Private.CoreLib]], 
System.Private.CoreLib]], System.Private.CoreLib'. 
Path '$type', line 1, position 222. ---> 
Newtonsoft.Json.JsonSerializationException: Could not load assembly 
'System.Private.CoreLib'.
Like 0

Like

1 comments

Good day,

 

Typically this error occurs when you are trying to install a package from the .Net Core version of the system to the .Net Framework variation.

 

Please make sure that the environments that you are working on and the target ones are identical in the version in order to ensure the stability of the systems after transferring the customizations.

 

Thank you.

Show all comments

Hi all, 

 

I've long wondered how best to set up the configuration when you have many objects and related schemas, etc. that all depend on each other. Let's say we have "Accounts", "Contacts", "Agents" "Feedback", "Bookings" and so on. 

 

All of these objects have either a dependency based on a lookup of the other, or they have a related list on a page schema. 



I am attempting to try and separate out, but it's not possible without causing dependency issues. I noticed that Creatio's base configuration copes with this by creating many copies of a object, and adding them in packages such as "ContactInAccount". This seems like it would be hard to manage from a user level. 



Would most just add all the objects mentioned above into a single package to decrease complexity? 



Thanks

Harry

Like 0

Like

1 comments

Hello,

 

When setting up the configuration for multiple objects with interdependencies, there are various approaches you can take. Let's consider some strategies to help you manage the complexity effectively:

  1. Analyze interdependencies: Start by analyzing the interdependencies between the objects. Identify which objects depend on each other and how they are related. This will help you understand the relationships and dependencies that exist within your system.

  2. Consider modularization: Instead of including all objects in a single package, you can consider modularizing your configuration. Divide your objects into logical modules based on their functionality or business domains. 

  3. Use shared packages: If you have objects that are commonly used across multiple modules or have shared dependencies, you can create separate packages for these shared objects. This way, you can include these packages in the respective modules that require them. 

  4. Leverage lookup fields and related lists: When configuring the objects, utilize lookup fields and related lists to establish the relationships between them. This allows you to reference and display related records without creating redundant copies of objects.

  5. Test and validate: Regardless of the approach you choose, it's crucial to thoroughly test and validate your configuration to ensure that the interdependencies and relationships are properly maintained. This will help identify any issues or conflicts early on.

Show all comments
Question

Hi, 

 

we have a new requirement of the customer like when we perform the import from excel, the customer wants to change the screens while performing the import process. as shown in the picture. 

 

 

File attachments
Like 0

Like

1 comments

Hello,

 

unfortunately, because of the fact that the mechanism behind the import process is quite difficult to customize as it has some core dependencies, there is no possibility to create those changes you are talking about at the moment.

 

Regards,

Gleb.

Show all comments

Hi,

I've created a custom FreedomUI page for AccountAddress object. I'd like to implement some kind of automation for two lookup fields: Country and Region. It consists of two parts:

1. When I choose a region from list, the country should be set to region's country. For example, if I choose Texas region, I expect that country will be set to United States

2. When I choose a country, regions lookup should display only these regions, which are connected with selected country.

I haven't any problem with implementation of the first part. But the second part doesn't work I expected. I use handler for crt.LoadDataRequest to append a filter parameter when loading regions list. The problem is that this handler runs only once, at first list load. It doesn't execute when I change country, although I trigger such request from other handler (crt.HandleViewModelAttributeChangeRequest). Here is the crucial of my code:

{
	request: 'crt.LoadDataRequest',
	handler: async (request, next) => {
        if (request.dataSourceName === 'Region_List_DS') {
	        const predefinedFilter = await request.$context.Region_filter;
	        request.parameters.push({
		        type: "filter",
		        value: predefinedFilter
	        });
        }
 
		return await next?.handle(request);
	}
},
{
	request: 'crt.HandleViewModelAttributeChangeRequest',
	handler: async (request, next) => {
        if (request.attributeName === 'EvCountry' && request.value?.value != null && (request.oldValue?.value == null || request.value.value !== request.oldValue.value)) {
			const countryId = request.value?.value;
            request.$context.EvRegion_filter = {
				"items": {
					"1954b2e1-ea91-4014-b785-cda17020595c": {
						"items": {
							"CustomFilters": {
								"items": {
									"customFilterCountry_Region_1664cb4d-2690-48d6-bcdf-0c8075824efa": {
										"filterType": 1,
										"comparisonType": 3,
										"isEnabled": true,
										"trimDateTimeParameterToDate": false,
										"leftExpression": {
											"expressionType": 0,
											"columnPath": "Country"
										},
										"rightExpression": {
											"expressionType": 2,
											"parameter": {
												"dataValueType": 10,
												"value": countryId
											}
										}
									}
								},
								"logicalOperation": 0,
								"isEnabled": true,
								"filterType": 6
							}
						},
						"logicalOperation": 0,
						"isEnabled": true,
						"filterType": 6
					}
				},
				"logicalOperation": 0,
				"isEnabled": true,
				"filterType": 6
			};
 
			const handlerChain = sdk.HandlerChainService.instance;
			const result = await handlerChain.process({
				type: "crt.LoadDataRequest",
				$context: request.$context,
				config: {
					loadType: "load"
				},
				dataSourceName: "EvRegion_List_DS",
			});
		}
 
		return next?.handle(request);
	}
}

The problem is that my trigger (handlerChain.process call) doesn't run crt.LoadDataRequest, and result variable contains full, unfiltered list of regions.

Like 1

Like

5 comments

Hello,

 

Thank you for the code and description!

 

We've verified the issue and discussed it with our core R&D team: in 8.0.9 there will be a possibility to add filtration business rules using wizard capabilities in Freedom UI. Please wait until this version is released and use this rule type to create dynamic filtration in Freedom UI interface.

Oleg Drobina,

as filtration business rules do not cover all cases of filtration, when can we wait for trigger fix?

We have tested in 8.0.9 and have the same issue as described



Thank you!

Vladimir

Vladimir Sokolov,

 

indeed filtration rules (along with static filtering business rules) don't cover all cases, but most of them. As for the list loading and the LoadDataRequest - in 8.1.0 there will be new "filterAttributes" attribute added for each list of each data source with the boolean "loadOnChange" property that will allow dynamic setup of filters in the lists (including combobox). It will look like this:

"filterAttributes": [
					{
						"loadOnChange": true,
						"name": "AccountItems_FILTER_BY_ACTIVE_ROWS"
					}

where AccountItems_FILTER_BY_ACTIVE_ROWS will be the filter itself. So in 8.1.0 all filtration cases should be covered by this functionality.

Hello,

 

Glad to inform you that in 8.1.1 we've added the possibility to use custom filters in page schema handlers when working with SDK. So you can upgrade your apps and you will be able to use custom filtration on the page.

Hi Oleg,

 

Do you have the code / Procedure to do this in 8.1.1 ?

Show all comments

Hello Community, 

I have a business case where I wanted to load the records to the editable detail on click of a Save Button (We have a custom code written to insert the records to detail). 

I have added a page filter so that the detail should contain only the records where reference Id in detail is current page Id

Currently the records gets loaded when I refresh the entire form page. 

But I wanted to load the detail without refreshing entire page. 

I also tried to reload the detail from code, it didn't worked. 

my page filter is designed such that detail referencecoulmnId = current form page Id

When I reopen the page everything looks good.

Any suggestions is really helpful

 

Thanks

Gargeyi

 

 

Like 0

Like

1 comments

Hello,

 

Please check if the logic you created works when you click the Refresh button from the addon https://marketplace.creatio.com/app/reload-data-button-creatio right after clicking the Save button.

If it does, you can analyze the logic of the Refresh button from the addon and add it to your logic.

Unfortunately, we do not have ready examples of the implementation of this logic.

 

Best regards,

Yuliya

Show all comments

Hello,

I need to redirect a user to an Account edit page under certain conditions, after an activity is completed via the activity mini page. For this I used the OnSaved() event as indicated in the sample code, but I get the error below. How do I resolve this?

onSaved: function() {
	this.callParent(arguments);
	this.sandbox.publish("PushHistoryState", {hash: "CardModuleV2/AccountPageV2/edit/" + "f71a7d76-8ac6-46cb-ab7a-a8dae49471b4"});
},

core-base.js:704 user: Supervisor/7f3b869f-34f3-4f20-ab4d-7480a5fdf647

 file: http://localhost:50081/0/core/hash/ng-core/src/polyfills-es5.js?hash=cd…

 line: 1

 column: 83823

 message: Uncaught Terrasoft.UnsupportedTypeException: Message PushHistoryState is not defined in MiniPageModule (ViewModule_MiniPageListener_MiniPage_ActivityMiniPage) module 

 date: Tue May 23 2023 18:15:14 GMT-0500 (Central Daylight Time)

 stack: undefined

 

 

Like 0

Like

1 comments

Hello,

 

Try sending a custom sandbox message to MainHeaderSchema for example and call NetworkUtilities.openEntityPage (see it's usage in the basic code) upon receiveing this custom message. This should also open the edit page of account.

Show all comments
Question

Hi,

 

I would like to create a button in the Freedom UI to generate a word document (printable), but there is no such an action for the button.

What is the way to create a printable in the new UI?

 

Thank you in advance!

Like 3

Like

12 comments

Hello Kiss,

 

We have checked this issue with the R&D team and unfortunately, there is not printables functionality in Freedom UI yet, but it is already planned to implement it in future releases.

Hi Bogdan,

Thank you for your quick reply! Do you have any information on when this functionality is expected?

Hi Bogdan,

Is there any news on when this functionality will be available?

Wow, did not notice this missing, quite an important functionality, hope it's ready very soon !

This is so important! And also, bring back the PDF functionality!

Robert Pordes writes:

This is so important! And also, bring back the PDF functionality!

OMG , yes please !!!

Hi all,

 

An update: the solution to generate a document in Freedom UI is to use the Process File element in a Business Process.

Hi Comunity

Any news on this?

How to manualy triger generating a printable so that the user can see it, and not via business process?

 

Cheers,

Luis

Add comment

Hi Luis Tinoco Azevedo,

 

I am not sure if this is what you mean, but you can create a button that calls the business process. This way, as a result, you can have let's say a 'PRINT' button, which generates a document.

 

Did it help?

 

Best regards,

Csilla

Luis Tinoco Azevedo,

I saw on the road map it is slated to come Q4 2023 - I assume that means 8.1.1?

Ryan

Csilla Kiss,

 

can you please show me an example of such a process?

noyzada,

Here you can find a description about it (under 'Generate reports in a business process'):

[Process file] process element | Creatio Academy

 

Show all comments