Hello, Team.

 

We have a scenario for performing access rights in the employee section.

Consider the following scenario:

Manager role, This role allows you to view (read and edit) profiles.



Consider the following scenario: we have a Manager user who has access to his own profile.



Now I want to remove his edit rights to his own profile without removing his role access, because the user can see and edit all profiles under this role, but i only want to remove access to his own profile.



Can we get a solution to this? I tried a few scenarios I was familiar with but couldn't find a solution.



Thank you very much.

Like 0

Like

1 comments

Hello,

 

You can change access rights for a specific record and user using the [Change access rights] process element and business processes.

Show all comments

we have a detail (Activity) with three editing pages (investigation, corrective actions, preventive actions) for which we must connect the click event of each detail so that the menu is filtered to obtain a specific page for each,

I implemented the code below but still not getting the result.

 

define("ClaSchema821f5cb2Detail", [], function() {

    return {

        entitySchemaName: "Activity",

        details: /**SCHEMA_DETAILS*/{}/**SCHEMA_DETAILS*/,

        diff: /**SCHEMA_DIFF*/[

            {

        "operation": "merge",

                    "name": "AddTypedRecordButton",

                    "parentName": "Claims1PageClaSchema821f5cb2Detail2b214db7Container",

                    "propertyName": "items",

                    "values": {

                        "controlConfig": {

                            "menu": {

                                "items": {

                                    "bindTo": "EnabledEditPages",

                                    "bindConfig": {

                                        "converter": function(editPages) {

                                            return editPages;

                                            /*if (editPages.getCount() >= 1) {

                                                return editPages;

                                            } else {

                                                return null;

                                            }*/

                                        }

                                    }

                                }

                            }

                        }

                    }

                },

            {

        "operation": "merge",

                    "name": "AddTypedRecordButton",

                    "parentName": "Claims1PageClaSchema821f5cb2Detail682ca645Container",

                    "propertyName": "items",

                    "values": {

                        "controlConfig": {

                            "menu": {

                                "items": {

                                    "bindTo": "EnabledEditPages2",

                                    "bindConfig": {

                                        "converter": function(editPages) {

                                            return editPages;

                                            /*if (editPages.getCount() >= 1) {

                                                return editPages;

                                            } else {

                                                return null;

                                            }*/

                                        }

                                    }

                                }

                            }

                        }

                    }

                },

            {

        "operation": "merge",

                    "name": "AddTypedRecordButton",

                    "parentName": "Claims1PageClaSchema821f5cb2Detail8ef4781dContainer",

                    "propertyName": "items",

                    "values": {

                        "controlConfig": {

                            "menu": {

                                "items": {

                                    "bindTo": "EnabledEditPages3",

                                    "bindConfig": {

                                        "converter": function(editPages) {

                                            return editPages;

                                            /*if (editPages.getCount() >= 1) {

                                                return editPages;

                                            } else {

                                                return null;

                                            }*/

                                        }

                                    }

                                }

                            }

                        }

                    }

                },

       

        ]/**SCHEMA_DIFF*/,

        methods: {

            

             initEditPages: function() {

                  console.log("initEditPagesinitEditPagesinitEditPagesinitEditPages");

                            var enabledEditPages = new this.Terrasoft.Collection();

                            var enabledEditPages2 = new this.Terrasoft.Collection();

                            var enabledEditPages3 = new this.Terrasoft.Collection();

                 

                            this.callParent(arguments);

                 

                            var editPages = this.getEditPages();

                              

                            var items = editPages.getItems();

                 

                              var item = items.filter(function(item){return item.get("SchemaName") == 'ClaActivityPageV21';});

                              enabledEditPages.add(item);

                            this.set("EnabledEditPages", enabledEditPages);

                            

                             var item2 = items.filter(function(item){return item.get("SchemaName") == 'ClaActivityPageV23';});

                              enabledEditPages2.add(item2);

                            this.set("EnabledEditPages2", enabledEditPages2);

                 

                             var item3 = items.filter(function(item){return item.get("SchemaName") == 'ClaActivityPageV24';});

                              enabledEditPages3.add(item3);

                            this.set("EnabledEditPages3", enabledEditPages3);

                 

                         

                           

            },

            

        }

    };

});

 

Like 0

Like

3 comments

Hello,

In the Detail schemas for each detail, you should write something like this:

define("UsrSchema26073b05Detail", [], function() {
	return {
		entitySchemaName: "Activity",
		details: /**SCHEMA_DETAILS*/{}/**SCHEMA_DETAILS*/,
		diff: /**SCHEMA_DIFF*/[
			 {
        "operation": "merge",
                    "name": "AddTypedRecordButton",
                    "values": {
                        "click": {"bindTo": "openSpecificPage"},
                    }
                },
		]/**SCHEMA_DIFF*/,
		methods: {
			openSpecificPage: function() {
				if (!this.get("EditPages")) {
					this.initEditPages();
				}
				var pages = this.get("EditPages");
				var pageId = pages.collection.items.find((x) => x.values.Caption === "Call").values.Id;
				this.addRecord(pageId);
 
		},
		}
	};
});

Just switch the Caption of the needed page (or use another parameter to distinguish pages) to the correct one in each schema.

Dmytro Vovchenko,

Can we do the same in freedon UI. Thanks in advance

Show all comments

I am currently involved in an exciting project involving system integration using OAuth2, and I would like to share my concern with all of you. In this case, I'm looking to implement OAuth2 authentication similar to what is achieved with Salesforce, but on the Creatio platform. I want to allow my application to connect to Creatio, access customer data and opportunities, and all this from the cloud, without the need for local deployments (on-site-deployment).

I really appreciate if someone in the community has explored these areas and can help me, I want to know if Oauth2 authentication is viable for this case, or I would simply go for the basic authentication by cookie

Like 0

Like

1 comments

Hello,

 

You can set up OAuth 2.0 authentication integration on your Creatio website with the following basic tools

 

Information on how to do this can be found on the Academy's website here:

https://academy.creatio.com/docs/user/on_site_deployment/deployment_additional_setup/oauth_2.0_authorization/set_up_oauth20_authorization_for_integrated_applications

Show all comments

Is there a way to add Password Reset link to the standard login page (non-portal users)? 

Desired behaviour: User would click the link at login page - if active user, would receive an email to their associated email address with a link to a page to set a new password.

This would be more productive than asking the users to contact the System Admin to reset their password, as the Users could do it themselves without any admin intervention.

Like 4

Like

2 comments
Best reply

Hello,



Unfortunately, at the moment Reset Password link is only available for portal users of the system. We have already started the task of adding such a function for users who log in to the site using the standard login page. A responsible R&D team is working on it.



Thank you for your patience and understanding in this matter.

Hello,



Unfortunately, at the moment Reset Password link is only available for portal users of the system. We have already started the task of adding such a function for users who log in to the site using the standard login page. A responsible R&D team is working on it.



Thank you for your patience and understanding in this matter.

Malika,

Great, thank you.

Show all comments

Hi,

 

I want to have 2 approvals with my custom application. If both are accepted then it moves to the next stage and if both are rejected then to the Denied stage but if one of them is rejected and one is approved then we have a separate stage as Re-consideration. How can I include this thrid stage in the business process?

Like 0

Like

7 comments

Hello,



Could you explain your business process in more detail, and what outcome do you see for the 3 stage option?

 

This information is necessary to understand your business process and the outcome you want to get from it. 

Malika writes:

Hello,

Could you explain your business process in more detail, and what outcome do you see for the 3 stage option?

 

This information is necessary to understand your business process and the outcome you want to get from it. 

Hi Malika, there are 2 approvals in the process and 3 outcomes. If both approvals are accepted. We want it to move to next stage "Approved", If both rejects "Rejected" and if one approves it but one rejects it then "Reconsider" stage. I have done the first two and they are simple. But I am confused with third one. How do i structure it in my business process?

Anyone?

Bump

Hi!

 

To meet this business task, it will be necessary to layer several gateways. You probably already have the "Approved" conditional flow formula as such: 

[#ApprovalUserTask1.Result parameter#]==[#Positive#]&&[#ApprovalUserTask2.Result parameter#]==[#Positive#]

 

As for "Rejected", the formula will have identical logic operator "&&" meaning 'and':

 

 [#ApprovalUserTask1.Result parameter#]==[#Negative#]&&[#ApprovalUserTask2.Result parameter#]==[#Negative#]

 

The "Reconsider" flow can have the logic so that either ApprovalUserTask1 or ApprovalUserTask1 has a Positive result parameter. It can be accomplished with a use of the "||" operator meaning "or":

 

[#ApprovalUserTask1.Result parameter#]==[#Positive#]||[#ApprovalUserTask2.Result parameter#]==[#Positive#]

 

As a result, you have 3 possible outcomes including the one for 1 approval that is positive.

 

Alla Blinova writes:

Hi Alla,

Is this [#Positive#] a parameter? And I suppose you would take it as a ID Parameter? I am not sure how this parameter would help here.

If you can show me your parameter's that would be great help! I tried this with ID Parameters but that isn't working for me.

 

This is what I have thought of. Though it's not tested yet. But I have added Read Data to read the status of both approvals and then Condition flow that checks if the both approvals equals to Positive by comparing it with Approval Status Lookup values then it changes stage to Approved and if both are negative then Denied and if anyone of them is negative then it goes into Reconsideration stage. Does this looks fine to you?

Show all comments

Hello Community,

 

We have a requirement where we need to show only investigation edit page and hide all the others in the + button of the detail, as displayed in figure below.

 

.

 

How can we achieve this?

 

Thank you,

Like 0

Like

1 comments

Hello Mariam,

 

Here is the example with the "Contracts" detail on the contact edit page where I have setup several edit pages:

Here is the list of these edit pages on the contact page:

And my task is to remove the "Specification" option. To do that:

 

1) Create a replacing view model for the "ContractDetailV2"

2) Add the following code to the methods of this replacing view model:

getEditPages: function() {
				var editPagesCollection = this.get("EditPages");
				var editPagesItems = editPagesCollection.getItems();
				var indexToRemove = editPagesItems.map(e => e.values.Caption).indexOf("Specification");
				editPagesCollection.removeByIndex(indexToRemove);
				return editPagesCollection;
			}

3) Save the schema and refresh the page in the UI

 

As a result the "Specification" option is gone from the list:

So in this case the main objective is to override the logic of the getEditPages method according to your business needs.

Show all comments

Hello,

 

We have a script task in a BP in an on-prem environment we are trying to save. We encounter the following error message when saving the BP:

 

 

 

Using the following code in the script task:

var payload = "{ \"userId\": \"" + UserConnection.CurrentUser.ContactId + "\" }";

Terrasoft.Configuration.MsgChannelUtilities.PostMessageToAll("LeadPageV2", payload);

return true;

 

However using the same BP with the same contents in our previous environment it saves just fine, no issue with Terrasoft.Configuration. Worth noting is that the BP was exported to the second environment (where we get the error message

) using the .md-file and imported in Configuration. If that has any bearing on the situation. I checked …. Terrasoft.WebApp\Terrasoft.Configuration\bin-folder in both on prem environments and in both I find Terrasoft.Configuration.dll.

Like 0

Like

2 comments

Hello,

 

It seems that you have the following using in the process methods:

 

Terrasoft.configuration

Since I receive the same error locally when doing it:

Please change it to Terrasoft.Configuration since this is case sensetive.

Oleg Drobina,

Hello and thank you for the response. It seems to not be the issue as saving it using upper case on Configuration gives me the same error. This is regardless if I apply a Using under Methods-tab or not for Terrasoft.Configuration.

Show all comments

Hello,

 

We have made several deliveries between environments for a customer and after all of a sudden it seems, we have an error message pop up when we try to save the record of a certain custom section:  t.map is not a function It happens regardless of what is saved in the custom section record.

 

I will attach a picture showing the issue. I will also attach a pic showing the error in the console.

Like 0

Like

1 comments

Hello,

 

Please note that this issue cannot be resolved over a community post, therefore please register a case for our support team directly at support@creatio.com.

Show all comments

Hi everyone,

Can someone tell me in creatio freedom UI how to download all of my  reports that have been generated without adding it to the attachment files.

Thanks in advance.

Like 3

Like

1 comments

Hello Abhishek,



Unfortunately, the printables section in Freedom UI is not available, but our team is already working on adding the ability to generate reports. As a workaround, you can try to generate reports through the business process. We provided the following articles below. Creating a business process: https://academy.creatio.com/docs/developer/integrations_and_api/business_process_service/overview?_gl=1 I am also sending you a link to a post in our community where you can also read information that may help you: https://community.creatio.com/questions/generate-word-printable-outside…



Thank you for contacting us!

Show all comments

Currently, I'm facing an issue while attempting to initiate a login request. Unfortunately, an error is persisting throughout the process. I suspect that there might be an additional configuration step required on my end, but I'm uncertain about the specifics.



The URL I am using for the login attempt is as follows:

https://057678-sales-enterprise.creatio.com/



This URL corresponds to the sales division of my trial account.



Could you kindly provide me with guidance on any potential configuration steps I might be missing or if there are specific settings I need to adjust? Your expertise would greatly assist me in resolving this matter and continuing my progress with the platform.









I'm using the wrong url?

Like 0

Like

2 comments

Hello,



Thank you for your question!

We attached the article where you can find the instructions on how to correctly set up the request, but the error indicates a problem with login and password. Please check the correctness of the login and password.

https://academy.creatio.com/docs/developer/integrations_and_api/authent…

Hello, thanks, the problem was modifying my password in user organization configuration roles, now it works.

Show all comments