Hi Community,
I can't log in through Supervisor after deploying the stand.What to do in this case

Like 0

Like

4 comments
Best reply

First, you're sure you're using the correct password for Supervisor? If you need to reset the password for Supervisor, you can use the following SQL which will reset it back to "Supervisor" (upper case S)

update "SysAdminUnit" set "UserPassword" = 'JSDCg18tavKu1PPRqdP6t.AgqDORMm2cT7oDjw66hML64avIF/Qa2'
where "Name" = 'Supervisor'

Second, it could be that it is failing due to other reasons, for example, using HTTPS but the local Creatio is only configured for HTTP. If that is the case, see the Academy docs here: https://academy.creatio.com/docs/8.x/setup-and-administration/on-site-deployment/application-server-on-windows/switch-creatio-website-from-http-to-https

Lastly, if neither of those are the issue, also look in dev tools console and network tabs to see if it gives any clues about the issue.

Ryan

First, you're sure you're using the correct password for Supervisor? If you need to reset the password for Supervisor, you can use the following SQL which will reset it back to "Supervisor" (upper case S)

update "SysAdminUnit" set "UserPassword" = 'JSDCg18tavKu1PPRqdP6t.AgqDORMm2cT7oDjw66hML64avIF/Qa2'
where "Name" = 'Supervisor'

Second, it could be that it is failing due to other reasons, for example, using HTTPS but the local Creatio is only configured for HTTP. If that is the case, see the Academy docs here: https://academy.creatio.com/docs/8.x/setup-and-administration/on-site-deployment/application-server-on-windows/switch-creatio-website-from-http-to-https

Lastly, if neither of those are the issue, also look in dev tools console and network tabs to see if it gives any clues about the issue.

Ryan

Also, if your instance is Cloud, you must ask to support to reset it

 

Regards

Julio

Ryan Farley, Thank you

 

Show all comments

Hi community,

 

We have just received question from client if they can create email template in Creatio for Marketing purposes and if they can lock/secure the content of the email with password or design it in the way that it can't be forwarded. 

 

They are interested in simple solution. Thank you in advance.

Like 0

Like

2 comments

Hello,
 

Unfortunately, no OOTB functionality allows locking or securing the content of an email. However, we suggest the following alternatives that could address your requirements:
 

Dynamic Content Rules:
You can configure dynamic content rules within Email Designer. These rules allow you to define conditions for displaying specific blocks of content to different recipient segments. While this does not directly secure the content, it provides controlled visibility based on set criteria.
 

Link with Validation:
Another option is to send a link within the email that redirects recipients to a secure content page. You can add a password validation mechanism on that page to restrict access to the content.
 

Additionally, we have created a task for our R&D team to evaluate this functionality and consider adding a feature for securing email content in future releases. Your request to prioritize this task has been linked to this task.

Best regards,
Antonii.

Hi Antonii,

 

Thank you for the answer and providing possible alternative solutions.

 

Best regards,

Jelena

Show all comments

Hi!

I want to add a button to a detail page with a Data Import action, using the crt.ImportDataRequest action.
I need to specify a default value (the id of the current detail) to a field. Can I do that? Does anybody knows the entire list of parameters for this action?

Thank you in advance,

Ignacio Alvarez

Like 2

Like

2 comments
Best reply

Hello Ignacio,

 

Currently, the system is designed in a way that it is not possible to pass custom parameters into the params object of the crt.ImportDataRequest request. But we've created a request for our R&D team to make it possible to do and implement it in one of the next application releases. Thank you for this idea and for helping us in making the app better!

Hello Ignacio,

 

Currently, the system is designed in a way that it is not possible to pass custom parameters into the params object of the crt.ImportDataRequest request. But we've created a request for our R&D team to make it possible to do and implement it in one of the next application releases. Thank you for this idea and for helping us in making the app better!

I fully support Ignacio's request as the import feature really needs some love.

Common requests include importing the same value in multiple columns, transforming values with regular expressions, importing data into various fields in related tables, importing from sources like FTP, cloud storage, and creatio file storage, locking the addition of lookup values, and quite some more!

 

BR,

Robert

Show all comments

Hello,

 

Is it possible to use Classic UI in web application, but Freedom UI in mobile app? 
The project is done in Classic, so there is no Freedom UI yet.

Kind regards,
Vladimir

Like 1

Like

5 comments
Best reply

Yes - in the mobile wizard, you'll just need to check the "Freedom UI" option for each section exposed in the mobile application.

Ryan

Yes - in the mobile wizard, you'll just need to check the "Freedom UI" option for each section exposed in the mobile application.

Ryan

Ryan Farley,

Thank you!

Do you know in which version this checkbox was introduced? I don’t see it in 8.0.8. Does this mean we need to plan an upgrade?

Kind regards,
Vladimir

Vladimir Sokolov,

I think the first mention for Freedom UI in mobile was 8.0.6 - I don't recall how much was available in that release, so not sure if the option was available for all sections at that time  https://academy.creatio.com/docs/8.x/resources/release-notes/806-atlas-release-notes#title-2502-13

Ryan

Vladimir Sokolov,

Also, that option for Freedom UI in mobile is controlled by a feature. I have a couple of systems where that feature never got enabled by upgrades and the option doesn't show. If it's not showing in your system, that could be the case also and you can check with support for which feature is needed for that (I can't remember the feature name that controls that)

Ryan Farley,

 

Thank you so much, Ryan.
You’re, as always, amazing. The feature UseMobileFlutterFirst setting helped enable Freedom UI.

Kind regards,

Vladimir

Show all comments

How to populating the Non-Display Value During Lookup Selection

Like 0

Like

1 comments

Hello,

 

It is necessary for such a value to exist in the system.

Initially, this value can be added, for example, through the Lookup section, after which you will be able to select it in the field.

 

https://academy.creatio.com/docs/8.x/no-code-customization/customizatio…

Show all comments

Hi All, 
 

I have a custom detail called "Contribution" which have two fields Contact, Work Done (%). 

 

Problem statement - Whenever user added/edited records in detail system should check that the sum of work done (%) adds up to 100% and only then it allows to save the records in detail.

How can I apply this validation?

 

Please help.

Thanks

Like 0

Like

2 comments

You'll need to use asyncValidate to validate the record and perform an ESQ to get all the records added to the detail so you can ensure the sum of the percentages add up to 100%

See asyncValidate: https://customerfx.com/article/asynchonous-validation-on-pages-in-creatio-formerly-bpmonline/

ESQ: https://customerfx.com/article/an-introduction-to-performing-client-side-queries-using-entityschemaquery-in-creatio-formerly-bpmonline/

Basically, in the asyncValidate retrieve all rows added to parent record, add up the percent values. If the value exceeds 100 fail with message. This will prevent them from saving until they've entered the correct value - if it doesn't they will get your message telling them the issue.

Ryan

Ryan Farley,

Thanks, but my detail page is in Freedom UI, does it still work ?

Show all comments

Hi community , 

 

I find it a little difficult to figure out how to implement the freedom ui component configuration in my page, even if Creatio documentation lists it all:

 https://academy.creatio.com/docs/8.x/dev/development-on-creatio-platform/mobile-development/customization/freedom-ui/customize-page/references/common-components

The "UsrMobileUsrLeaveRequestRecordPageSettingsWorkplace2" client module is attached to this mobile page for a custom section that I designed called "UsrLeaveRequest."
How do I proceed about adding a custom button to this edit page now? 

 

[
    {
        "operation": "insert",
        "name": "settings",
        "values": {
            "entitySchemaName": "UsrLeaveRequest",
            "details": [],
            "columnSets": [],
            "localizableStrings": {
                "SocialMessageDetailCaptionUsrLeaveRequest_caption": "Feed",
                "AttachmentsDetailCaptionUsrLeaveRequest_caption": "Attachments",
                "primaryColumnSetUsrLeaveRequest_caption": "General information",
                "UsrEmployeV2_DetailStandardDetailUsrLeaveRequest_caption": "Employees detail"
            },
            "settingsType": "RecordPage",
            "operation": "insert",
 
        }
    },
    {
        "operation": "insert",
        "name": "SocialMessageDetailV2StandardDetail",
        "values": {
            "caption": "SocialMessageDetailCaptionUsrLeaveRequest_caption",
            "entitySchemaName": "SocialMessage",
            "showForVisibleModule": true,
            "filter": {
                "detailColumn": "EntityId",
                "masterColumn": "Id"
            },
            "operation": "insert"
        },
        "parentName": "settings",
        "propertyName": "details",
        "index": 0
    },
    {
        "operation": "insert",
        "name": "AttachmentsFlutterDetailStandardDetail",
        "values": {
            "caption": "AttachmentsDetailCaptionUsrLeaveRequest_caption",
            "entitySchemaName": "SysFile",
            "filter": {
                "detailColumn": "RecordId",
                "masterColumn": "Id"
            },
            "operation": "insert"
        },
        "parentName": "settings",
        "propertyName": "details",
        "index": 1
    },
    {
        "operation": "insert",
        "name": "UsrEmployeV2_DetailStandardDetail",
        "values": {
            "caption": "UsrEmployeV2_DetailStandardDetailUsrLeaveRequest_caption",
            "entitySchemaName": "Employee",
            "filter": {
                "detailColumn": "Manager",
                "masterColumn": "UsrApplicant"
            },
            "detailSchemaName": "UsrEmployeV2_Detail",
            "operation": "insert"
        },
        "parentName": "settings",
        "propertyName": "details",
        "index": 2
    },
    {
        "operation": "insert",
        "name": "primaryColumnSet",
        "values": {
            "items": [],
            "rows": 1,
            "entitySchemaName": "UsrLeaveRequest",
            "caption": "primaryColumnSetUsrLeaveRequest_caption",
            "position": 0,
            "operation": "insert"
        },
        "parentName": "settings",
        "propertyName": "columnSets",
        "index": 0
    },
    {
        "operation": "insert",
        "name": "42d4b33c-f361-44d4-92cd-07e8db664fca",
        "values": {
            "row": 0,
            "content": "Leave Request No.",
            "columnName": "UsrLeaveReaquestNo",
            "dataValueType": 1,
            "operation": "insert"
        },
        "parentName": "primaryColumnSet",
        "propertyName": "items",
        "index": 0
    },
    {
        "operation": "insert",
        "name": "0d5ca981-1558-4e4d-b1a2-2b2b9dbd422c",
        "values": {
            "row": 1,
            "content": "End Date",
            "columnName": "UsrEndDate",
            "dataValueType": 8,
            "operation": "insert"
        },
        "parentName": "primaryColumnSet",
        "propertyName": "items",
        "index": 1
    },
    {
        "operation": "insert",
        "name": "2013f978-c87f-4896-96be-5383cfd044e3",
        "values": {
            "row": 2,
            "content": "Start Date",
            "columnName": "UsrStartDate",
            "dataValueType": 8,
            "operation": "insert"
        },
        "parentName": "primaryColumnSet",
        "propertyName": "items",
        "index": 2
    },
    {
        "operation": "insert",
        "name": "266417d3-f847-4386-af45-2674e9e779bb",
        "values": {
            "row": 3,
            "content": "Applicant",
            "columnName": "UsrApplicant",
            "dataValueType": 10,
            "operation": "insert"
        },
        "parentName": "primaryColumnSet",
        "propertyName": "items",
        "index": 3
    },
    {
        "operation": "insert",
        "name": "1655829d-ce75-476c-9350-ce2696ecbf6d",
        "values": {
            "row": 5,
            "content": "Reason",
            "columnName": "UsrReason",
            "dataValueType": 1,
            "operation": "insert"
        },
        "parentName": "primaryColumnSet",
        "propertyName": "items",
        "index": 4
    },
    {
        "operation": "insert",
        "name": "9f677f71-3322-4e75-9938-69ca4e1c650f",
        "values": {
            "row": 6,
            "content": "Status",
            "columnName": "UsrStatus",
            "dataValueType": 10,
            "operation": "insert"
        },
        "parentName": "primaryColumnSet",
        "propertyName": "items",
        "index": 5
    },
    {
        "operation": "insert",
        "name": "3d874029-b467-4d7b-9eb0-d2ebfbe20403",
        "values": {
            "row": 7,
            "content": "Working Days Count",
            "columnName": "UsrWorkingDaysCount",
            "dataValueType": 4,
            "operation": "insert"
        },
        "parentName": "primaryColumnSet",
        "propertyName": "items",
        "index": 6
    },
    {
        "operation": "insert",
        "name": "bc0d7d7e-ffdf-44a5-98b3-0a10094341e2",
        "values": {
            "row": 4,
            "content": "Applicant.Manager",
            "columnName": "UsrApplicant.Manager",
            "dataValueType": 10,
            "operation": "insert"
        },
        "parentName": "primaryColumnSet",
        "propertyName": "items",
        "index": 7
    }
]

 

Like 0

Like

1 comments

Hello,
In order to add a button to a mobile page you need to modify the viewConfigDiff element. In your code it is missing, so you should add it manually in the "settings" element:

{
    "operation": "insert",
    "name": "settings",
    "values": {
        ---
        "viewConfigDiff": "[]"
    }
}

Here is an example of adding a new tab to the page:

"viewConfigDiff": "[{\"operation\":\"insert\",\"name\":\"LeadDecisionsPaths_Tab\",\"parentName\":\"Lead_Tabs\",\"propertyName\":\"items\",\"values\":{\"position\":2,\"text\":\"DecisionsPaths_Caption\",\"body\":{}}}]"

The button should be added similarly. 

Show all comments

Is it possible to specify mask IDs when showing & hiding body masks while data loads? I'm asking as it seems like my body mask is being hidden by some other process before the process I want the mask to show for has completed, so it grants the user the ability to control the page before it's ready.

 

What I was thinking is that if the body mask was given some ID when shown using showBodyMask, only a hideBodyMask specifying that same ID would hide the body mask - any others doing the same may make their own body mask hidden, but if any of them still remained, you would still see the loading spinner. For some reason I seem to remember this being possible in Classic UI, but I can't remember exactly or find the examples.

Like 0

Like

3 comments
Best reply

It was possible to get the mask Id in classic (it is returned from MaskHelper.ShowBodyMask()), but I don't believe that had any impact on something else not hiding the mask. As far as I am aware, that was only used to get the mask so you could display or change the message (the Freedom UI mask doesn't have a message, only the spinner)

It was possible to get the mask Id in classic (it is returned from MaskHelper.ShowBodyMask()), but I don't believe that had any impact on something else not hiding the mask. As far as I am aware, that was only used to get the mask so you could display or change the message (the Freedom UI mask doesn't have a message, only the spinner)

Makes sense, must have been mis-remembering then, cheers Ryan. Would be nice to be able to show & hide specific body masks, as sometimes there will be multiple sets of data loading in in parallel, with no guarantees of which will finish first/last.

Hello,
Your idea has been registered to our R&D team, thank you for providing us with new ways to improve.

Show all comments
Question

Hi community ,

I have created a replacing schema for "Base Page Template" and added a button , now I wanted that button to show up in every freedom ui page in every section .

Like 1

Like

1 comments

Hello!

 

This must be enough for formpages. But you will also need to add this Button to ListFreedomTemplate because it can override some changes from "Base Page Template". Also, I would recommend to run fully generate schema source and compile all actions.

Show all comments

Good day, colleagues.

 

IProcessExecutor processExecutor = _userConnection.ProcessEngine.ProcessExecutor;
return processExecutor.Execute("VERY_IMPORTANT_PROCESS", valuesDictionary);

 

In context of my question, this simple script have multiple calling from different users (sessions) in one period of time. So i need to use Supervisor UserConnection to clarify "VERY_IMPORTANT_PROCESS" logging. Is it possible? Any workarounds?

 

 

 

Like 0

Like

4 comments
Best reply

Hello,

 

Something similar was implemented in the RunSendEmailToCaseGroupV2 business process:

UserConnection userConnection = UserConnection;
if (userConnection.CurrentUser.ConnectionType == UserType.SSP) {
	userConnection = userConnection.AppConnection.SystemUserConnection;
}
...

Here the system checks if the current user is an external user and if so - replaces the userConnection with systemUserConnection (which is a Supervisor user).

 

You can try the same approach in your code to make sure the business process is called under the Supervisor user.

Hello,

 

Something similar was implemented in the RunSendEmailToCaseGroupV2 business process:

UserConnection userConnection = UserConnection;
if (userConnection.CurrentUser.ConnectionType == UserType.SSP) {
	userConnection = userConnection.AppConnection.SystemUserConnection;
}
...

Here the system checks if the current user is an external user and if so - replaces the userConnection with systemUserConnection (which is a Supervisor user).

 

You can try the same approach in your code to make sure the business process is called under the Supervisor user.

Oleg Drobina,

Thx for anser.

So, when i use SystemUserConnection from NOT an admin user session i get all CRUD operaions without security?

Because i see "current user" in process log.

Alexey,

 

Yes, this should be so. If it's not sufficient, then the whole approach with the desired functionality should be changed.

Thx

Show all comments