Hi,

Is there a way to alter the open record event of a detail row in Freedom so that it runs a particular event that I want? I see some example of HandlerChain, but those are primarily from a button.



Example, instead of opening the edit record page of the product when clicking "Motherboard..." I want to change what it does.

Regards,
Solem A.

Like 0

Like

1 comments
Best reply

Hello,

 

Find the _sendRequest method in the core file like 1964.1a6d8f3494eb48eb.js. This will show that the request sent when clicking the record is "crt.UpdateRecordRequest" (on the screenshot below I've clicked the Account column value for the record in the "Job experience" list on the contact page):

So in case you need to modify the logic you need to add a check for the UpdateRecordRequest and make sure it's called when clicking the needed column value (using the recordId parameter for example).

Hello,

 

Find the _sendRequest method in the core file like 1964.1a6d8f3494eb48eb.js. This will show that the request sent when clicking the record is "crt.UpdateRecordRequest" (on the screenshot below I've clicked the Account column value for the record in the "Job experience" list on the contact page):

So in case you need to modify the logic you need to add a check for the UpdateRecordRequest and make sure it's called when clicking the needed column value (using the recordId parameter for example).

Show all comments

We have a requirement where client would send data as csv file. This file will be later processed via BPM process and record will be loaded into the creatio object. How and where this file can be stored within Creatio Cloud ?  

Please note the file is not an attachment to any record but rather records which is to be loaded in Creatio Database.

Like 0

Like

2 comments

Hello,
 

For product sites that are hosted in the Creatio cloud, AWS S3 buckets are connected by default and are used to store files.
You can also use the option of storing files in the database as well, but please note that this will lead to increased memory consumption at the database level.
When developing functionality that covers file uploads, we recommend using the "API for file management" that is built into Creatio products.
You can find a detailed description and examples of how to use the "API for file management" in an article on Creatio Academy, as well as the File storage options for storing files in Creatio.
 

Thank you.

Serhii Parfentiev,

Before deploying this on Creatio Cloud I need to develop this on my local Creatio set up

How to Validation of S3 Configuration:

"I have configured Amazon S3 as file storage in Creatio local following the 'File storage options ' guide. 
How can I validate that this S3 configuration is working correctly (I don't see anything in log)?
"Any existing API i can use to see how this work

What  Tables and Objects Involved in File Upload:

"Which Creatio tables or objects are involved in file upload and storage when using external storage like Amazon S3? Specifically, what tables store metadata and file details for uploaded files when it is not associated with any entity like Accounts or Contacts?

 Need these to access file from BPM"

Show all comments

I have a local deployment of Creatio that installed without issue (except for this fix, ref. Error logging into local deployment of Creatio | Community Creatio).

 

I can log in fine, however when I try to access the Application hub or Advanced settings pages Creatio freezes while opening the pages.  Everything in the browser console on the opened pages looks OK without any issues.

 

Any clue appreciated,

Like 0

Like

4 comments

Hello,

Please provide us with the screenshots of the browser console when the issue is reproducing.

I am able to configure the log in, timezone, log in timeout, etc., the following screenshot is from attempting to open the Application hub:  

Hello,

The problem seems to be the number of browser tabs (WebSocket connections) open at the same time.
Supposedly, the problem is due to a third-party blockage. Please disable antivirus (if installed), and third-party utilities and restart the server. Check the functionality again.
Also, check that the proxy is turned off (if it is used).

If that doesn't help, then presumably the problem is in the infrastructure. Can you try to deploy the same environment on a different server?

I have disabled all the browser extensions and restarted the server, same result.

 

Note after leaving the page loading for 20 mins the following error appears:

 

 

Show all comments

Hi,


We're currently developing and customizing pre-existing applications in Creatio, and we’ve encountered an issue that we need your assistance with.

For example, when we purchase the Sales module, Creatio comes with an Order Management app and others. We need to customize it by adding new columns and data tables to the Order package. However, we're unsure how to export these additional objects to another environment.


Here’s what we’ve tried:

  1. Using the Application Hub, we were able to install the entire Order Management app with the additional customizations the new objects we added (which are visible in the package) don't appear in the "All Apps" section.
  2. In advanced setting, we noticed that when we add new items to the Order Management app, a folder named "UsrCrtOrderContractMgmtApp" is automatically created, containing all the new elements we’ve added. But we’re unable to migrate this folder to the other environment because the system can’t find the schema ID.


We’re wondering if there’s a proper way to migrate these customizations to another environment, especially when the base module already exists.

Like 1

Like

1 comments

Hi,

You can read about App management and Package management by following links to articles on the Creatio Academy:

    App management
    Packages overview
    Packages transfer 

Thank you!

Show all comments

Hello,

 

We are on the process of implementing SSO and the users testing are getting confused because they are used to enter their credentials on the Creatio Login page (basically clicking on the Single Sign on link is foreign to them.)

Is it possible to have two different login pages? One with the Creatio Login page and another just with the SSO link?

Thanks,
Jose

File attachments
Like 0

Like

1 comments

Hi Jose,

You can achieve this goal by activating SSO auto-redirect for your site. This way, users who enter your site's link will be redirected to the SSO login page. Meanwhile, users who want/need to log in using credentials can use a bypass link to open the regular login page.

To activate this auto-redirect, please contact our support team.

Have a great day!

Show all comments

Hey Community,

I'm looking to access the `onclick` / 'FolderTreeVisibleChanged' handler of the Folders button on Freedom UI list pages. What is the name of the handler method that i can use?


Like 0

Like

3 comments
Best reply

Hello sprity,

If i understood you correctly, you want to control visibility state or togle mode of the folders tree. The handler you provided, well, is responsible for this logic.  

Here is an example of how you can do it:

Toggle mode (open if closed, close if open):

    request: 'crt.FolderTreeVisibleRequest', 
    params: { 
        folderTreeName: "FolderTree_blabla", 
        togglePanel: true 
    } 
}

Explicit visibility mode (always open or always close, regardless of current state):


    request: 'crt.FolderTreeVisibleRequest', 
    params: { 
        folderTreeName: "FolderTree_blabla", 
        visible: true  // or false to close 
    } 
}

As mentioned, this handler also saves the state to the user profile, meaning that when the page is reopened, the folder tree will be in the same state (open or closed) as it was before. If you'd prefer not to save the state in the profile, you can manually update the visibility attribute, like so:

{folder tree name}_visible => FolderTree_blabla_visible

Hope this helps! Let me know if i understood you correctly and if you have any questions let.

Hello sprity,

If i understood you correctly, you want to control visibility state or togle mode of the folders tree. The handler you provided, well, is responsible for this logic.  

Here is an example of how you can do it:

Toggle mode (open if closed, close if open):

    request: 'crt.FolderTreeVisibleRequest', 
    params: { 
        folderTreeName: "FolderTree_blabla", 
        togglePanel: true 
    } 
}

Explicit visibility mode (always open or always close, regardless of current state):


    request: 'crt.FolderTreeVisibleRequest', 
    params: { 
        folderTreeName: "FolderTree_blabla", 
        visible: true  // or false to close 
    } 
}

As mentioned, this handler also saves the state to the user profile, meaning that when the page is reopened, the folder tree will be in the same state (open or closed) as it was before. If you'd prefer not to save the state in the profile, you can manually update the visibility attribute, like so:

{folder tree name}_visible => FolderTree_blabla_visible

Hope this helps! Let me know if i understood you correctly and if you have any questions let.

Yevhenii Grytsiuk,

Thank you for this Yevhenii. One of the more difficult parts of working with Freedom UI is the inability to dig into the out of the box code to see how to change the behavior. This was easy with classic, but for Freedom we have to dig through all the minified code to see if we get lucky finding what we are after. 
Until there's better documentation outlining what all the various requests are to handle, it would be great to have some sort of switch (like the IsDebug setting to enable debug mode) that just dumps all the fired requests to the console (and maybe include what object/component fired the request?) Not sure how reasonable that would be since it's likely quite a bit of stuff would show there, but might make it easier to see the requests that fire when some action is taken.

Ryan

Ryan Farley,

Sounds great to me. I will register your idea so that our r&d team hopefully would implement it.

Show all comments

Hello community,


I have noticed that development on Freedom UI requires more resources for local development.

I develop on a laptop with 16 GB RAM, Intel i7 CPU and SSD hard drive and often have problems with browser memory and package compilation.

What kind of laptop configuration do you use?

 

Like 0

Like

4 comments

Hello,

We recommend that you review the article: https://academy.creatio.com/docs/8.x/setup-and-administration/category/system-requirements
 

Perhaps you have deployed Creatio on your own computer, and that's why you are facing these issues. The system should be deployed on a server, and your computer should act as a client, while the server acts as the backend.
 

Assuming that your computer is being used as a server, such problems are quite understandable, because besides Creatio, it may be running other processes that consume memory. And, as we know, 16 GB of RAM for a laptop is not enough for a stable server. In this case, your laptop should simulate a server with these characteristics.
 

We also recommend that you pay attention to the version of your site, and if it is 8.0.9 +-, we recommend that you update the site to the latest release, as we have also worked out issues with the efficiency of processes in the Creatio application and optimized the application itself.

Malika,

Thank you Malika for your reply.

The suggested article doesn't mention the requirement for RAM.

What do you suggest?

Stefano Bassoli,

Dear Stefano, I worked with an ASUS with similar characteristics you mention and works fine and I had in thos notebook 8 local Creatio instances..., Now working with a ROG I9 & 32GB, but with an I7 gen 10+ and 16GB and SSD disk it must works to install creatio locally and works fine

 

Regards

Thank you Julio, for your sharing.

 

I'm experiencing a problem while I'm working with editor with multiple tabs open on the same dev instance.

My Edge browser is returning insufficient memory error.

I'm using using Rancher as a provider for postgres and redis services

 

Show all comments

Dear colleagues,

 

I'm facing an issue with filtering records in a ListPage. I need to implement a cascading lookup relationship between two Quick Filters:

  1. Quick Filter 1 (QF1): Category
  2. Quick Filter 2 (QF2): Subcategory
  3.  

My goal is to dynamically update the options in QF2 based on the selected value in QF1. For instance, if the user chooses "Category A" in QF1, QF2 should only display the subcategories associated with "Category A.", 

 

If user in QF1 selects Category A & C, in QF2, just see SubCategories associated with "Category A & C"

 

Is this functionality possible?

 

Thank you for your help.

 

Julio Falcón

Like 2

Like

1 comments

Hi,

 

We have consulted with the product owners of this feature, and we are sure that this task can only be achieved using development.

Also, we have created a request for our developers to bring this functionality in future releases.

Thank you for this suggestion; it helps make our product better!

Show all comments

Hi Team,

 

I want to format KPIs  in sending progress and email totals by changing type from white to fully colored. How to go about it? Thanks

Like 0

Like

1 comments

Hi Puneet!

Unfortunately, currently, there is no option to modify these dashboards. 

We have created an idea for our R&D team to implement this functionality in future releases.

Have a great day!

Show all comments

Hello Creatio community

 

I have developed a page using Freedom UI. I want to develop some core functions that i want to call in different Freedom UI screens. For example function calculate as shown below.

 

define("ApplicationFormSection_FormPage", /**SCHEMA_DEPS*/["@creatio-devkit/common"]/**SCHEMA_DEPS*/, function/**SCHEMA_ARGS*/(sdk)/**SCHEMA_ARGS*/ {
	function calculate(value1, value2) {
		return value1 + value2;
	}
	return {
		viewConfigDiff: /**SCHEMA_VIEW_CONFIG_DIFF*/[..]/**SCHEMA_VIEW_CONFIG_DIFF*/,
		viewModelConfigDiff: /**SCHEMA_VIEW_MODEL_CONFIG_DIFF*/[..]/**SCHEMA_VIEW_MODEL_CONFIG_DIFF*/,
		modelConfigDiff: /**SCHEMA_MODEL_CONFIG_DIFF*/[..]/**SCHEMA_MODEL_CONFIG_DIFF*/,
		handlers: /**SCHEMA_HANDLERS*/[
			{
				request: "crt.HandleViewModelAttributeChangeRequest",
				handler: async (request, next) => {
					if (request.attributeName === "Field1" && !request.silent) {
						var sum = calculate(1, 2);
					}
					return next?.handle(request);
				}
			},
		 ]
	}

 

This approach doesn't work because every time i change the screen the function is removed automatically. 

 

Is there a way I can develop some core functions in a different module and call this module inside my "ApplicationFormSection_FormPage" freedom UI page?
Can you give an example for my case?

 

Best regards

Like 0

Like

1 comments

Hello,

A better approach is to use modules for page code. I try to add as little code to the page request handlers as possible and move all code to modules/classes. See https://customerfx.com/article/organizing-code-for-creatio-freedom-ui-pages-with-modules/

Ryan

Show all comments