How to open section programmatically?

 

i need to open 'home' section programmatically as a result of event/command

Like 0

Like

2 comments

Hello!
 

You can achieve this without code by creating a business process that will be triggered and open the required page.


You can read more about business processes on the Creatio Academy:

https://academy.creatio.com/docs/8.x/no-code-customization/8.1/category/process-administration

Regards,
Orkhan

in my case thats not an option.... 

Show all comments

Hello, everyone! 


I've stumbled upon a request from a client who wants his product images (from the attached files) to be shown to whoever is viewing the product in a tab "Images" from said product. 

I've created the tab without any trouble and associated the "Gallery" component to it, linking the "Uploaded file" (SysFiles) with the correct data souce filter (id from my record = "Record ID" from Uploaded file). It just shows me a picture of a camera.. 

 

 

Inside the "SysFile" object, the only options I have as to "fileType" are "File", "Link" and "Link to object"... Should there be a "jpg" or something like that for the image to be shown there? 

---

What other solution is there for it to be displayed? 

I've searched that on classic UI that was possible, but saw no proof of how it was done. 

 

Btw, i'm on version 8.2.0.4183.

 

Hope yall can help me. 

Thanks! 

Like 0

Like

1 comments
Best reply

Hello,

 

Unfortunately, the "SysFile" object is not suitable for use as an image source for the gallery, as it lacks some key image-related settings.
However, if the images are simple, this can be achieved using "handlers".

 

The main works to be done:
1. Configure a filter for the gallery to ignore invalid files.
In the example, display only files whose names end with ".png".
 

2. Populate the "image" property in "templateValuesMapping" within the gallery settings in the metadata.
In the designer, this field should be empty.
Let's take this one as example:
"image": "Gallery_gckk34fDS_SysFileToImage"
 

3. Implement a handler for "crt.HandleViewModelAttributeChangeRequest" in the metadata.
Here’s an example of the handler:
{
    request: "crt.HandleViewModelAttributeChangeRequest",
    handler: async (request, next) => {
        if (request.attributeName === "Gallery_gckk34f" && request.value?.length > 0) {
            for (var i = 0; i < request.value.length; i++) {
                const record = request.value[i];
                const recordId = record.attributes["Gallery_gckk34fDS_Id"];
                const recordName = record.attributes["Gallery_gckk34fDS_Name"];
                const recordUrl = "/0/img/entity/hash/SysFile/Data/" + recordId;
                const newColumnAttribute = {
                    displayValue: recordName,
                    value: recordId,
                    url: recordUrl
                };
                record.attributes["Gallery_gckk34fDS_SysFileToImage"] = newColumnAttribute;
            }
        }
        return next?.handle(request);
    }
}
 

How the handler works:
When the loaded collection is not empty, we populate the attribute specified in "templateValuesMapping" for each record with a specific object.
In the "url" field, we set the following link:
"/0/img/entity/hash/SysFile/Data/" + recordId
The system will load data from the "Data" column of the "SysFile" object based on a given identifier.
 

If you have any additional questions, feel free to ask.

Hello,

 

Unfortunately, the "SysFile" object is not suitable for use as an image source for the gallery, as it lacks some key image-related settings.
However, if the images are simple, this can be achieved using "handlers".

 

The main works to be done:
1. Configure a filter for the gallery to ignore invalid files.
In the example, display only files whose names end with ".png".
 

2. Populate the "image" property in "templateValuesMapping" within the gallery settings in the metadata.
In the designer, this field should be empty.
Let's take this one as example:
"image": "Gallery_gckk34fDS_SysFileToImage"
 

3. Implement a handler for "crt.HandleViewModelAttributeChangeRequest" in the metadata.
Here’s an example of the handler:
{
    request: "crt.HandleViewModelAttributeChangeRequest",
    handler: async (request, next) => {
        if (request.attributeName === "Gallery_gckk34f" && request.value?.length > 0) {
            for (var i = 0; i < request.value.length; i++) {
                const record = request.value[i];
                const recordId = record.attributes["Gallery_gckk34fDS_Id"];
                const recordName = record.attributes["Gallery_gckk34fDS_Name"];
                const recordUrl = "/0/img/entity/hash/SysFile/Data/" + recordId;
                const newColumnAttribute = {
                    displayValue: recordName,
                    value: recordId,
                    url: recordUrl
                };
                record.attributes["Gallery_gckk34fDS_SysFileToImage"] = newColumnAttribute;
            }
        }
        return next?.handle(request);
    }
}
 

How the handler works:
When the loaded collection is not empty, we populate the attribute specified in "templateValuesMapping" for each record with a specific object.
In the "url" field, we set the following link:
"/0/img/entity/hash/SysFile/Data/" + recordId
The system will load data from the "Data" column of the "SysFile" object based on a given identifier.
 

If you have any additional questions, feel free to ask.

Show all comments

Hello community!

 

Is there any way to integrate MS Teams registration forms and Creatio for obtaining participants' data directly in Creation without export-import? Might be some kind of application on Marketplace or well-known option of no-code development?

 

 

Like 0

Like

1 comments

Hi, I am trying to add a custom field in Activity task minipage: 

I tried to edit ActivityMiniPage, but it does not add the new field.

Where should I add this field?

Like 0

Like

4 comments

Hello,

You need to make sure that you are making changes in the view mode of the activity mini-page.

Hi Pavlo Sokil,

Thank you for your response.

I have added the new field in all three modes, but the new field doesn't show on the mini page, as I have shown in the photo. The new field shows on the mini page that opens on the click of the pen:

 

 

Maybe you have some custom Activity types which are not related with this Mini Page in SysModuleEdit.

Run the sript:
Select * from "SysModuleEdit" where "SysModuleEntityId" in (select "Id" from "SysModuleEntity" where "SysEntitySchemaUId" in (select "UId" from "SysSchema" where "Name" = 'Activity' and "ExtendParent" = 'false'));

And check if for your type Mini page and Mini Page Modes are defined.


For a more detailed analysis, we recommend contacting Creatio technical support.

 

Best regards,
Pavlo!

Pavlo Sokil,

After executing the query you sent, I get these values for the columns you pointed out:

Show all comments

Hello Creatio Friends,

 

I'm stuck. 

 

We are testing out creating additional org roles and want the users to automatically get assigned when they SSO in. One user can have multiple org roles.

 

We saw there’s some SSO fields already mapped to Contact like branch -> Branch, displayname -> Name and that kind of thing, but I’m stuck on figuring out how they get assigned to org role. 

 

I found VwSysRole that spells out all the different roles and SysUserInRole where they give individual role assignments for each user (multiple ok).

 

Just can’t find the gap - how they go from SSO JIT to assigned to an org role. Any chance you know?

 

Thanks in advance,

Israel

Like 0

Like

3 comments
Best reply

Hello,

 

In Creatio, organizational and functional roles are transmitted using the "role" attribute. This attribute is not listed in the JIT mapping but can be found in the SsoServiceProvider table under the SamlUserRole column.

 

To pass user roles to Creatio, simply create a claim named "role" on the Identity Provider side. For example, in Entra ID, this would be configured accordingly.

 

The claim should contain the attribute value where your roles are stored.

 

!Important: Role names must exactly match the role names in Creatio, including case sensitivity.

 

Regarding SSO technology and implementation, we can only assign existing roles to a user. Roles are not created automatically because:
 

  1. 1. A role must have predefined permissions or inherit from another role;

    2. The SSO protocol does not allow retrieving a full list of roles from the Identity Provider—only data about the current user can be obtained. So we only get the name of the role of the logged-in user, not the entire organizational role hierarchy.

    I hope this answers your questions.

Hello,

 

In Creatio, organizational and functional roles are transmitted using the "role" attribute. This attribute is not listed in the JIT mapping but can be found in the SsoServiceProvider table under the SamlUserRole column.

 

To pass user roles to Creatio, simply create a claim named "role" on the Identity Provider side. For example, in Entra ID, this would be configured accordingly.

 

The claim should contain the attribute value where your roles are stored.

 

!Important: Role names must exactly match the role names in Creatio, including case sensitivity.

 

Regarding SSO technology and implementation, we can only assign existing roles to a user. Roles are not created automatically because:
 

  1. 1. A role must have predefined permissions or inherit from another role;

    2. The SSO protocol does not allow retrieving a full list of roles from the Identity Provider—only data about the current user can be obtained. So we only get the name of the role of the logged-in user, not the entire organizational role hierarchy.

    I hope this answers your questions.

Hi Pavlo, 

 

That answers my questions more completely than I was hoping. Thank you for your expertise and for including screenshots!

Joshua,

You also need to create the corresponding attribute in the SsoServiceProvider table in the SamlUserRole column, following the instructions above, and then fill it in on your SSO provider side.

Show all comments

Is there anyone that is currently using the Creatio Project Management Section to manage construction based jobs?

Would be interested in hearing how this is working for you and if you are able to track everything via that section.

 

Thanks!

Like 1

Like

0 comments
Show all comments

I'm trying to create print-ready reports in MS Word. I have create the report in Creatio and log in MS Word using Creatio account. When i select "Select Report" it showing this error. Can you check and let me know.

 

Like 1

Like

1 comments

Hi,

 

When working with the Creatio plug-in for MS Word, you may encounter the error "Unexpected character encountered while parsing value: <. Path", line 0, position 0." when selecting a template for further customization.
 

This issue arises due to login problems to your Creatio environment.
 

Possibly, the problem lies in the fact that the password for the user you are connecting with has expired. To confirm, simply log in as this user in the Creatio application using direct credentials.

If the password has indeed expired, you will see the following message:



and after simply changing the password, the functionality of the Creatio plug-in for MS Word will be available to you again.

Show all comments

Hi all,

 

i've set up "next steps" component in my interface so that a user can check what are the pending activities for a record with an associate case

 

Language is in italian in this screen, but "Attività" is the next steps component. In this instance it is a pre configured page routed to a group "Amministrazione". My issue is that users from different group are able to open the pre configured page and work on it.

 

I can toy with object permission and set the record as read only for everyone but those in the group who is owner of the task but other users are still able to open the pre configure page. 

 

The ideal behaviour would be for the complete button in the task to be disabled for those users that are not part of the owner role. Is that even possible?

 

Thanks

 

Like 0

Like

1 comments
Best reply

Hello,
 

Starting from version 8.2.2, we have already fixed this behavior in the product.

 Now, if a user does not have permissions for an activity, business process actions (tasks, pre-configured pages, etc.) will not be displayed in the Next Steps element.
 

If you require a backport of this solution to an earlier version of the application, please contact the support team (support@creatio.com) referring to the current post , and we will check the feasibility of applying this fix to your version.
 

Thank you for reaching out!

Hello,
 

Starting from version 8.2.2, we have already fixed this behavior in the product.

 Now, if a user does not have permissions for an activity, business process actions (tasks, pre-configured pages, etc.) will not be displayed in the Next Steps element.
 

If you require a backport of this solution to an earlier version of the application, please contact the support team (support@creatio.com) referring to the current post , and we will check the feasibility of applying this fix to your version.
 

Thank you for reaching out!

Show all comments

Hi,

I created a modal which inherits the BasePageV2 to solve my problem with lookup's filtering for simplelookups, but now I am facing problem with trying to close the modal.



I tried BasePageV2's onBackButtonClick, this._closePage(), onDiscardChangesClick and it doesn't close the modal. 

Any workaround/idea?

Like 1

Like

1 comments
Best reply

Hi,

Problem solved.

Since I created a modal base on BasePageV2, it doesn't have a this.close() function by default. 

Solution: Unloading module/modal should be done inside the modal (BasePageV2), hence I need to call this.destroyModule(); while in the Modal.
 

Hi,

Problem solved.

Since I created a modal base on BasePageV2, it doesn't have a this.close() function by default. 

Solution: Unloading module/modal should be done inside the modal (BasePageV2), hence I need to call this.destroyModule(); while in the Modal.
 

Show all comments

In the classic UI, users had the ability to set follow the Feed of an Account record. This is no longer possible in the Freedom UI. Is there a way for a user to follow all feeds for all accounts somehow by a setting or in code?

Like 1

Like

1 comments

Hello,

Unfortunately, it is not yet available for Freedom UI pages. However, we have already registered a task for our R&D team to look into the possibility of implementing this functionality.

Best regards.
Antonii

Show all comments