Hi,

How to do Attachment* as mandatory?

Like 2

Like

1 comments

Hello,

Thank you for your request. Unfortunately, it is not possible to make the Attachment required using custom methods as it is a detail.


However, as a workaround using l development, you can implement following validation script (sample for Activities) in object process for Validating message:

UserConnection userConnection = context.UserConnection;

   Select select = (Select)new Select(userConnection)
            .Column(Func.Count("Id"))
            .From("ActivityFile")
            .Where("ActivityId").IsEqual(Core.DB.Column.Parameter(Entity.Id));
       
if (select.ExecuteScalar<int>() == 0)
            throw new Exception("Attachment is required");

return true;

Show all comments

Hello, 

 

I have the list on two different pages. On the first page, I want to open the edit page, but on the second page, I do not. On the second page, I have already removed the open option ("features": { "rows": { "selection": false, "toolbar": false .... 

 

 

However, when double-clicking on a row, the default page associated with the object is opened. Is there a way to block the double-click action or open a different page instead?

Like 0

Like

5 comments

Hello,

Unfortunately, this could not be achieved by basic methods. However, this can be done by deleting all the editing pages for the object.
 

In Freedom UI, Add-ons are used for page configuration. Where you can check if there are pages linked to the detail in the object's settings. Based on your screenshot, it seems there are no such settings for this object.

 

On the other hand, Classic UI sections use a different mechanism, where page configurations are stored in the database, specifically in the following tables:

  • SysModuleEdit, which is connected to the object through records in the SysModuleEntity table.
  • SysModuleEntity, in turn, refers to the object (SysSchema) via the SysEntitySchemaUId column.

For the OpportunityProductInterest object, you can check the page configurations using the following script (there are 2 pages for this object in the system):

 

SELECT * FROM "SysModuleEdit" WHERE "SysModuleEntityId" IN ( SELECT "Id" FROM "SysModuleEntity" WHERE "SysEntitySchemaUId" IN ( SELECT "UId" FROM "SysSchema" WHERE "Name" = 'ObjectName' ) );
 

Steps to resolve:

  1. Delete these records or set the SysModuleEntityId column to NULL.
     

    • This will ensure that the OpportunityProductInterest object will no longer have pages across the system.
    • As a result, records will not open after a double-click in the detail.
       

    Unfortunately, there is no built-in way in the system to restrict page opening from the detail only.

     

  2. Alternative approach:
     
    • Create a database view that duplicates the data from the main object but does not have page configurations.
    • Build the detail using this view instead of the main object.

      I will also create an idea for our development team to implement such possibility in futures version.
       

Thank you for reaching out. I hope this helps resolve the issue!

Might be a simpler route to try to see what the request is that fires when double-clicking a row. The list will definitely fire a request for that, but I don't know what it is. 

Pavlo Sokil,

How do I create a view?

Cristiano Carvalho writes:

How do I create a view?

See https://customerfx.com/article/using-database-views-in-creatio/

Ryan

Hello!
Try this to solve your case

{
   "operation": "merge",
   "name": "DataTable",
   "values": {
      "rowDoubleClick": {}
   }
},

Show all comments

Hello community,

When I create a replacement object for ListPageV2Template, the Freedom UI page that shows me the available template breaks.
Could you tell me the correct way to customize it?
What is the difference between ListPageV2Template and ListFreedomTemplate?
The second one is used by Account and Contact sections, but when I create a new custom section, Creatio uses ListPageV2Template page.

 

Like 0

Like

1 comments

Hello,
 

Replacing basic templates is not supported, as it can lead to unintended issues or incompatibilities. 

However, we understand that this is not ideal for your specific needs.
 

We want to assure you that we have created a request for our development team to implement this functionality in future versions of our application. We understand the importance of providing our clients with the best possible experience and will work hard to implement the changes you have suggested.
 

About the difference between templates

ListFreedomTemplate - its old template, we do not use it in the latest apps

ListPageV2Template - its a new template that are using now for creating apps

Show all comments

Hello

In Classic UI I've customized a section page (let me call it "Production Page") with 3 details that must be shown and filtered depending on the record selected in the previous detail.

Let me call "detail 1", "detail 2" and "detail 3" the three details.

Only "detail 1" is visible opening the Production Page.

When the user selects an item from the "detail 1", then "detail 2" becomes visible and is filtered based on the Id of the "detail 1" selectet item.

When the user selects an item from the "detail 2", then "detail 3" becomes visible and is filtered based on the Id of the "detail 2" selectet item.

 

I've implementd it with custom javascript code in my classic ui "Production Page" and works very well.

 

My customer wants to migrate its classic section to Freedom UI, then I must do the same thing in a Freedom UI FormPage using list or datagrid components.

I've not found any documntation or guide on handling list item selection events.

How can I do it?

Is there a way to hide the "Open, Copy and Delete" bullet point shown at the left of the rows of a freedom UI list component?

 

Thanks

Regards

Like 0

Like

1 comments

You can filter a list based on the selected record of another list all using no code in Freedom UI. See this post: https://community.creatio.com/questions/filtering-records-freedom-ui-expanded-list

If you also want to have code that gets the change of the selected row in a list see here: https://community.creatio.com/questions/list-bind-selected-record-or-add-custom-handler-selectionchange

For removing the row toolbar menu with add,copy,delete, see here: https://customerfx.com/article/removing-the-row-toolbar-from-a-creatio-freedom-ui-list-component/

Ryan

Show all comments

How do I change the sort order of the gallery component on a FreedomUI record page?

The current sort order seems to be created on date Newest first. I would like to be able to sort by a custom field on the page alphabetically (A-Z), if the gallery was using text, or numerically, if the field is a number field (smallest to largest).

Like 0

Like

1 comments

Hello!

The feature you're looking to implement is not achievable using a no-code approach but can be done with low-code customization. To create a custom ordering solution, you'll need to modify the page's code and configure the sorting settings as follows:
Locate the configuration:
1. Open the page's code and find the section with viewModelConfigDiff.
2. Add the sorting configuration:
3. Include the sorting attribute:
In the viewModelConfig  block, add this line to include the new config: "ItemsSorting": {},
Identify your Gallery component in the modelConfig block and add the following code
"sortingConfig": {
 "attributeName": "ItemsSorting",
 "default": [
   {
     "columnName": "Name",
     "direction": "asc" // Use "desc" for Z-A sorting
   }
 ]
}
4. Save your changes:
Once the code is updated, save the changes. The data should now be displayed in the correct order.

Show all comments

I have a list of logs, and I want to group them by the user's name. Is it possible to group data in a GridDetail?

Like 0

Like

7 comments

If this is a classic detail, this marketplace add-on will allow you to group the rows of any list: https://marketplace.creatio.com/app/tree-view-creatio

Ryan

Hi Ryan,

I intend to do something like that.

SELECT username
FROM logs
GROUP BY username

I’m not sure if it’s possible to list the grouped data.

Thanks

 

Cristiano Carvalho,

Yes, that is what that marketplace add-on allows you to do - the column you select (in your case the username) will group the rows by that column, so rows with that username will be grouped below it  and can be expanded. 

You can see an example of this out of the box on the classic project page, the structure tab (the project tasks) group this way as well (it is grouped by the ParentId column). You can analyze the "ProjectStructureDetailV2" schema to see how it is implemented. 

Ryan

Ryan Farley,

I am afraid, this addon allows to display parent-child tree, but not group by category. 

Hello, yes, that's true. 

Do you know of another option to group by name?

 

Thanks

 

Dear Cristiano,

Unfortunately, the option to group the list is not currently available.

 

As a workaround, you can add two separate lists to the page. In the first list, include users, and in the second, logs. Then, apply a filter to the logs based on the selection in the users' list.

This setup allows you to select one or more users in the first list, and the second list will automatically display logs related to the selected users.


You can also set up a pivot table in Classic UI dashboards, which allows grouping by a certain column, but pivot tables also have some restrictions. You can read more about it in this article.

Additionally, I created an idea for our R&D team.

Have a great day!

Cristiano Carvalho,

If you want to create read-only detail, you can create VIEW with ParentId field. Then you can use this add-on.

But editable detail is much more difficult

Another option is to create 2 details - Contacts and Logs. So, Logs detail is filtered by selected Contact

 

Kind regards,

Vladimir

Show all comments

Can anyone tell me what are the events that we can use to trigger a handler code other than "clicked" on a button? for example hover-over, dropdown clicked, etc.?

Please specify the events that are already supported by creatio or if they require some customization to make them work.

Like 0

Like

1 comments

Hello Ahmad,

There is no such official documentation. Each business task needs to be reviewed separately to find the perfect solution. 

As I understood from the question described, you may use dataSources to cover your task. Please check the article to find out more.

Additionally, you may read here about the Creatio front-end architecture. 

 

Show all comments

Hello Community,

 

We are trying to use Dynamic Case Management for displaying our stage process. However, since the business process involves a lot of stages (12 in total), the visual representation isn’t ideal. 

 

We attempted to organize the stages into columns and separate them into two headers ("Which column determines which case to use with a record?"), but this has resulted in unintended behavior, such as requiring manual confirmation for stage type changes (Header changes) upon modifying the column value and some bugs.

 

Has anyone encountered a similar situation, or have any workarounds for this case?

Like 1

Like

3 comments

You can try to create several cases (if you can split all your 12 stages of the process into several phases). 

Vladimir Sokolov,

We have tried to create several cases, it requires populating a start condition. The thing is that when the start condition changes based on the column value, it triggers unwanted behavior. The user need to manually confirm stage changes when the column value (start condition) is modified. 

 

 

 

 

What we expect is for the behavior to be consistent with how Dynamic Case Management (DCM) works in the "Normal" setup, where the UI immediately displays the stage changes when the column value is changed, even before the "Save" button is clicked.

Hello!

 

About several cases: At this moment we have only manual replacement and our developer's researching the possibility to automatically switching cases in future releases.

 

For the main question about the size and visibility of different cases, you can use the "Group with another stage" functionality.

 

Show all comments

Hello Creatio Community,

 

    I want to display Contact List in a dropdown. The Contacts should be dynamically filtered based on the Account selected in another dropdown on the same page, As Shown in below Image.

Requirement:
    When the user selects a particular Account, the Contact dropdown should update to display only the Contacts associated with that Account. Both fields Account and Contact are linked to Custom object in Creatio.


Questions:
1. How can I dynamically filter the Contacts dropdown based on the selected Account?
2. Are there specific methods or best practices in Creatio Freedom UI for implementing such a dependency?

 

Thanks & Regards,

Ajay Kuthe.

Like 1

Like

1 comments
Best reply

Hello,

Unfortunately, the desired functionality cannot be implemented with user's methods. However, as a workaround, you can do the following:

1) Here is an example of the functionality you need. It describes how to filter dropdown values - https://customerfx.com/article/dynamically-filtering-a-lookup-on-a-creatio-freedom-ui-page/
 
2) Another option: create a dropdown on the page where macro source is selected. Then create a filtering business rule that will filter values in the parameter based on the added dropdown value. 

We want to assure you that we have created a request for our development team to implement this functionality in future versions of our application. 

Hello,

Unfortunately, the desired functionality cannot be implemented with user's methods. However, as a workaround, you can do the following:

1) Here is an example of the functionality you need. It describes how to filter dropdown values - https://customerfx.com/article/dynamically-filtering-a-lookup-on-a-creatio-freedom-ui-page/
 
2) Another option: create a dropdown on the page where macro source is selected. Then create a filtering business rule that will filter values in the parameter based on the added dropdown value. 

We want to assure you that we have created a request for our development team to implement this functionality in future versions of our application. 

Show all comments

I was wondering what approach you guys usually take to make testing more automated and faster inside creatio

Like 1

Like

2 comments

Hello,

We recommend using development (dev) sites to test any development, including business processes. This approach enables you to identify and resolve potential errors in the developed functionality without impacting the production site, ensuring its stability and uninterrupted operation.

Best regards,
Antonii.

Sure, but assuming you reach a point where there many inter-related things and/or you're asked to add an small thing which could lead you to try every possible route in order to see if anything breaks, it takes time. So I as wondering if there is some kind of approach people take.

 

I was thinking of the possibility of using other business processes to simulate the actions of an user for unit testing. I haven't thought of it deeply, but an inmediate doubt that came to my mind was how could I recopile for example the results of a related process that was triggered by the testing process, or in general the results of a group of tests in a custom section

 

I don't know if another person has already done it

Show all comments