Hi community,

 

I'd like to add button on a active row in a data grid :

 

For that I found posts on the community that explain how to achieve that :

https://community.creatio.com/questions/alteradd-row-buttons-newly-crea…

https://community.creatio.com/questions/add-button-row-section

https://community.creatio.com/articles/add-button-active-row-detail

https://community.creatio.com/questions/override-section-open-record-bu…

 

I tried to follow them. Here is my code :

define("ContactSectionV2", ["ProcessModuleUtilities"], function(ProcessModuleUtilities) {
	return {
		entitySchemaName: "Contact",
		details: /**SCHEMA_DETAILS*/{}/**SCHEMA_DETAILS*/,
		diff: /**SCHEMA_DIFF*/[
			{
				"operation": "insert",
				"name": "BtnRowCreateCandidature",
				"parentName": "DataGrid",
				"propertyName": "activeRowActions",
				"values": {
					"className": "Terrasoft.Button",
					"style": Terrasoft.controls.ButtonEnums.style.BLUE,
					"tag": "DataGridCandidature",
					"caption": { "bindTo": "Resources.Strings.BtnRowCreateCandidatureCaption" },
					"hint": { "bindTo": "Resources.Strings.BtnCreateCandidatureHint" },
				}
			}
		]/**SCHEMA_DIFF*/,
		methods: {
			onActiveRowAction: function(buttonTag, primaryColumnValue){
				this.callParent(arguments);
				switch(buttonTag){
					case "DataGridCandidature":
						this.myCustomFunction(primaryColumnValue);
						break;
				}
			},
			myCustomFunction: function(primaryColumnValue){
				this.showInformationDialog(primaryColumnValue);
			},
		}
	};
});

But for some reasons, the newly created button never showed up.

Is this the right way to create a button in a datagrid row ?

 

Best regards,

 

Julien Gunther

Like 1

Like

2 comments
Best reply

Hello Julien,

 

I've used the following approach:

define("ContactSectionV2", ["ContactSectionV2Resources"], function(resources) {
	return {
		entitySchemaName: "Contact",
		details: /**SCHEMA_DETAILS*/{}/**SCHEMA_DETAILS*/,
		diff: /**SCHEMA_DIFF*/[
			{
        		"operation": "insert",
        		"name": "DataGridActiveRowTestButtonAdding",
				"parentName": "DataGrid",
				"propertyName": "activeRowActions",
        		"values": {
                                "className": "Terrasoft.Button",
                                "style":this.Terrasoft.controls.ButtonEnums.style.BLUE,
                                "markerValue": "TestButtonAddingAction",
                                "tag": "call",
                                "caption": resources.localizableStrings.TestButtonAddingRowButtonCaption
        		}
			}
		]/**SCHEMA_DIFF*/,
		methods: {
			onActiveRowAction: function(buttonTag, primaryColumnValue) {
				switch (buttonTag) {
					case "call":
						this.testClick(primaryColumnValue);
						break;
					default:
						this.callParent(arguments);
						break;
				}
			},
			testClick: function(recordId) {
				this.console.log("The button is clicked!");
			}
		}
	};
});

Using localizable resources of the schema. It seems that in your code the module doesn't load the localizable string for "BtnRowCreateCandidatureCaption" key. In my code the string value was loaded and the button is present in active row:

Best regards,

Oscar

Hello Julien,

 

I've used the following approach:

define("ContactSectionV2", ["ContactSectionV2Resources"], function(resources) {
	return {
		entitySchemaName: "Contact",
		details: /**SCHEMA_DETAILS*/{}/**SCHEMA_DETAILS*/,
		diff: /**SCHEMA_DIFF*/[
			{
        		"operation": "insert",
        		"name": "DataGridActiveRowTestButtonAdding",
				"parentName": "DataGrid",
				"propertyName": "activeRowActions",
        		"values": {
                                "className": "Terrasoft.Button",
                                "style":this.Terrasoft.controls.ButtonEnums.style.BLUE,
                                "markerValue": "TestButtonAddingAction",
                                "tag": "call",
                                "caption": resources.localizableStrings.TestButtonAddingRowButtonCaption
        		}
			}
		]/**SCHEMA_DIFF*/,
		methods: {
			onActiveRowAction: function(buttonTag, primaryColumnValue) {
				switch (buttonTag) {
					case "call":
						this.testClick(primaryColumnValue);
						break;
					default:
						this.callParent(arguments);
						break;
				}
			},
			testClick: function(recordId) {
				this.console.log("The button is clicked!");
			}
		}
	};
});

Using localizable resources of the schema. It seems that in your code the module doesn't load the localizable string for "BtnRowCreateCandidatureCaption" key. In my code the string value was loaded and the button is present in active row:

Best regards,

Oscar

Oscar Dylan,

 Thank you very much it works !

Show all comments

Hi folks, 

 

Does Creatio have the ability to link email templates to the web-hosted version of them? The use case is to help recipients who either can't view HTML emails, or have image downloading switched off, to view the full version of an email.

Like 2

Like

9 comments

Hello Kavian,

 

Sorry for re-asking, but could you please provide more examples or re-phrase the request?

 

Thank you in advance.

 

Best regards,

Roman

Hi Roman,

 

This feature is a small piece of hyperlinked text usually found in the header of an email to offer the recipient an online version of the email, for reasons such as trouble viewing HTML messages or have image loading turned off.

 

 

Kavian Abhari,

 

Thank you for specifying!

 

The only solution on how to make a link in the template is to input that link to the text.

 

You can find more information on it here:

https://academy.creatio.com/docs/user/marketing_tools/email_marketing/e…

 

Hope this helps!

 

Thank you!

 

Danyil

 

 

Thanks Danyil,

 

actually what we are looking for is not how to add link to the email body, and more where that link leads us.

The question is, if Creatio has the ability to store the web-hosted version of the emails? The use case is to help recipients who either can't view HTML emails, so they can click on "View in browser" link and view the full version of an email.

 

Thanks,

Dear Kavian,

 

Thank you for your question!

 

We have checked this option with our RnD and they have advised us that currently there is no such option in the system as Creatio has massive mailings with millions of audiences and it is not possible to store a letter template for each recipient.

 

Hope this clarifies!

 

Danyil

 

I'll try to explain. We have the same question. The question is not to store each email instance sent, because they are the same per email template. The idea is to automatically upload the template to name_of_company.creatio.com/bulk_emails/bulk1.html and embed the link into the email automatically. Like "unsubscribe" link is provided automatically. Because currently, we do it manually to the site of our company. And that's annoying. Someone in our company starts proposing to change the email provider to something like Klavio. Not very pleasant. It's not something exotic to make. Should I start the new "Idea" thread or you will share the proposal to RnD?

Yuriy Konstantinov,

 

Hello!

Sorry for a delayed reply! Unfortunately, as of now,  there is no such basic functionality. 

For this functionality Creatio should know the link to the email itself while sending it, however, Creatio generates the content and sending it to the email provider, who saves the email and then perform the delivery. This way email is not being saved in a system, Creatio only saves some kind of log (activity) and doesn't know the link to the email itself while generating the content.

But if you are using ElasticEmail provider, there is a way to use "View in browser/View online" link in the email body to form the link to a web version. In order to do so, the <a href="{view}">View On Web</a> construction should be added to the HTML-code of the text element. 

Let me just mention, that this option works only for ElasticEmail provider as it's their macros. 

Also, we have already registered the corresponding query for our R&D team to implement this functionality in further releases. I will assign your case to this project in order to increase its priority.

Thank you!

Best regards,

Anastasiia

 

 

 

Anastasiia Zhuravel,

Hi Anastasiia,

Does the html page generated by ElasticSearch have an expiration date?

Is it possible to know what "macros" like {view} ElasticEmail provides ?

Stefano Bassoli,

Hi

I've found this article on ElasticEmail How to use merge fields | Elastic Email Help Center

Show all comments

We have several processes using the popup element addon (https://marketplace.creatio.com/template/popup-element-business-processes).  The popup does not consistently display.  I can see the process runs correctly and shows the popup should display but it does not actually display in the UI in a Creatio hosted 7.18.4 environment.

 

In comparison, on a locally hosted instance of 7.18.2.1236, the popup does consistently display.

 

Please advise how we can get popups to consistently display.

Like 3

Like

9 comments

Hello Melanie,

 

Please keep the following best practices in mind when working with the popup element:

 

1. We recommend using the element after the elements of the User actions block. For example, Perform task, Pre-configured page, etc.

2. Avoid using several popup elements in a row. In this case, the user will see only the last element.

 

If you are already following the best practices, please send us a screenshot of the relevant popup element in the business process.

Hi Ivan,

We are following the best practices.  Here is a screen shot of the successfully executed process (though popup did not display), which is called when a user attempts to complete an activity.  We need to validate if information is filled out, and if not, display a popup of the missing information.

Again, this does consistently display in a locally hosted environment but does not consistently display on a cloud hosted environment.

 

Hello,

 

I am also having this problem with this popup element, same situation, element does not consistently display. It is also situation that it display locally but not in cloud environment.

Did you find solution for this problem?

 

Thank you in advance!

 

Best regards,

Marijana

 

 

Hello again,

 

Just found out solution for my problem. The problem was with the WebSockets ( there were not working on this cloud system). When I tried on other system it is working good. 

I am trying to utilize this plugin and am having the same problem. The process log shows that it run, but nothing appears on the front end for the user. We are using a cloud-based system. 

Has anyone found a solution for this yet?  We are still experiencing inconsistent popups in a cloud environment.

Still looking for a solution on this.  Please advise.

This is happening again for us.  Any updates yet?

Hi to all,

 

I recommend checking your browser extensions. Some of them, ad blockers in particular, could block pop-up windows in Creatio

Show all comments

Hi community,

 

I try to trigger a business process from a custom button. I in the post that I need the ProcessModuleUtilities to achieve that. Here is my code :

 

define("MTF_Candidat1Page", ["MultiChoiceMixin", "ProcessModuleUtilities"], function(ProcessModuleUtilities) { 
	return {
		entitySchemaName: "MTF_Candidat",
		...
		methods: {
			OnClickCreateInterview: function(){
				var args = {
					sysProcessName: "MTFtestbtn" // this is the name of my business process. It simply send me a mail for now.
				};
				ProcessModuleUtilities.executeProcess(args);
 
				this.showInformationDialog("Busniess process triggered"); // just to show something to let me know the function triggered properly the busniess process
			},
		},
		...
		diff: /**SCHEMA_DIFF*/[
				...
				{
				"operation": "insert",
				"name": "BtnCreateInterview",
				"values": {
					"layout": {
						"colSpan": 24,
						"rowSpan": 1,
						"column": 0,
						"row": 7
					},
					"itemType": 5,
					"classes": {
						"textClass": [
							"actions-button-margin-right"
						],
						"wrapperClass": [
							"actions-button-margin-right"
						]
					},
					"click": {
						"bindTo": "OnClickCreateInterview"
					},
					"tag": "OnClickCreateInterview",
					"caption": {
						"bindTo": "Resources.Strings.BtnCreateInterviewCaption"
					},
					"hint": {
						"bindTo": "Resources.Strings.BtnCreateInterviewHint"
					}
				},
				"parentName": "ProfileContainer",
				"propertyName": "items",
				"index": 7
			}
			...
		]/**SCHEMA_DIFF*/
}

 

Now when I click on the button on my candidate page I have this error :

 

"Uncaught TypeError: ProcessModuleUtilities is undefined"

 

Do you have other docs to trigger business processes on custom button press ?

 

Best regards,

 

Julien

Like 0

Like

2 comments
Best reply

Hi Julien,

 

Could you change your schema definition as the following (swap "MultiChoiceMixin" and "ProcessModuleUtilities")?

define("MTF_Candidat1Page", ["ProcessModuleUtilities", "MultiChoiceMixin"], function(ProcessModuleUtilities) 

regards,

 

Cheng Gong

Hi Julien,

 

Could you change your schema definition as the following (swap "MultiChoiceMixin" and "ProcessModuleUtilities")?

define("MTF_Candidat1Page", ["ProcessModuleUtilities", "MultiChoiceMixin"], function(ProcessModuleUtilities) 

regards,

 

Cheng Gong

Cheng Gong,

 It works, thank you !

Show all comments

We are using the devlabs Excel Reports Builder add-on and since the Creatio upgrade to Version 7.17 or 7.18 it is not possible anymore to upload templates. The upload in itself seems to go well as there is no error message indicating otherwise. But the checkbox "Template uploaded" is not set to True and after generating the report it is obvious that the template was not uploaded because none of the uploaded changes are in the generated report.

Like 0

Like

1 comments

Hi Oliver!

I recommend updating your add-on to the latest version as this issue was fixed in it. You can find the latest version on this page:

https://marketplace.creatio.com/app/excel-reports-builder-creatio

Show all comments

Hello, i have to move one field from a section detail tab to another tab, how can i do that?

 

Regards,

Like 0

Like

1 comments

Hello Alvaro,



Unfortunately, there is no basic tool to implement your business task. 

So, we recommend you create a new field on the tab.



Best regards,

Bogdan

Show all comments

What is the font on the Cases processing tab? can it be configured by the user? When we send emails via template, we use arial, but shown on the processing time it seems to change to Times New Roman. Can this be configured?

Like 0

Like

1 comments

Hi Mitch,

 

Thank you for your question!

 

In order to change the font, please edit the template according to your needs, then select the whole text and choose the fond needed. Unfortunately, this is the only option at the moment. Currently, there is no possibility to apply the font by default for regular emails. Our R&D team has a functionality request in an "Accepted" status regarding the possibility of applying default font for regular emails so we can expect this logic in one of the nearest releases. 

 

Kind regards,

Anastasiia

Show all comments

Hi!

Verison 7.18.3. We have process build on object:

In this procees there is a start poin tthat is no longer needed, but I do not see a possibility to delete it (I was able to delete related Script taks though) :

I tried to deactivate Event taht was catched in this start point - but that didn't remove the start point itself.

Please, advice how to remove this element? 

Thanks!

Like 0

Like

6 comments

Hello!

 

Thank you for your question!

 

It can be deactivated in object settings in tab 'events':

Just unclick the element you no longer need.

 

Kind regards,

Anastasiia

Anastasiia Lazurenko,

thanks, but I actually did that already (see my original message: "

I tried to deactivate Event taht was catched in this start point - but that didn't remove the start point itself." ). This Event is not trigered, but start poin in Processs is still there

What did I do wrong there? 

Thanks!

Юлія Дяків,

 

Hello!

 

Thank you for the information!

 

In this case the best way to resolve this is to:

1. Try changing the Start Signal by clicking the Gear button and to see if this helps deleting it;

2. If this won`t help, the fastest and the most convenient solution would be creating a new Business Process copying the Diagram and the settings of this Business Process.

Please make sure to deactivate this current process after you create a new one from scratch (copying it may result in the same error)

 

Hope this helps!

 

Thank you!

 

Regards,

 

Danyil

Danyil Onoprienko,

thank you. 

Changing the Start Signal didn't help to delete it, unfortunatelly.

As for the solution describd in 2. it could work, but isn't the best approach: in case process is big, with a lot of elements, such "cope-paste" could lead to mistake, and needs extencive testing aftervards.

Best regards, Iuliia

Hello,

 

Thank you for your patience.

 

We have confirmed that this is an out-of-the-box behavior of an Entity (event) sub-process. You can delete the whole box itself, but not the start-element within it:

 

There is no way of deleting the start element in this Event sub-process.

 

Hope this  clarifies!

 

Regards,

 

Danyil

Danyil Onoprienko,

thank you so much for clarification. This seems to ne unnecessary limitation to my view, but you surelly have a reason for such behaviour so we will keep that in mind. Thanks again!

Show all comments

Hi Community!

 

Is there a way to prevent users from logging into the system?

For example if we do maintenance, deployments or have to restart the system?

 

Thanks,

Robert

Like 0

Like

1 comments

Hi Robert,



Unfortunately, there is no such functionality in our system. 



As a workaround, you can deactivate users by SQL queries.



Best regards,

Bogdan

Show all comments

Hi community,

 

I installed the multichoice package from the marketplace and I created a combobox but for some reason I'm not able to save the data once I filled the created combobox.

 

Here is my schema :

define("MTF_Candidat1Page", ["MultiChoiceMixin"], function() {
	return {
		entitySchemaName: "MTF_Candidat",
		attributes: {
			"UsrComboBox": {
				"dataValueType": Terrasoft.DataValueType.LOOKUP
			},
		},
		mixins: {
			MultiChoiceMixin: "Terrasoft.MultiChoiceMixin"
		},
		methods: {
			init: function() {
				this.callParent(arguments);
				this.mixins.MultiChoiceMixin.init.call(this, arguments);
			},
			getMultiChoiceEntitiesConfig: function() {
				items = {
					UsrComboBox: {
						mainEntitySchemaName: "MTF_Candidat",
						mainColumnName: "Lkp_Francais",
						relatedEntitySchemaName: "MTFcompetenceslinguistiques",
						relatedColumnName: "Name"
					}
				};
				return items;
			}
		},
		...
		diff: /**SCHEMA_DIFF*/[
		...
		{
				"operation": "insert",
				"parentName": "TabMTFInfosCandidatTabLabelGridLayoutd7450211",
				"propertyName": "items",
				"name": "UsrComboBox",
				"values": {
					"className": "Terrasoft.MultiChoiceCombobox",
					"layout": {
						"colSpan": 12,
						"rowSpan": 2,
						"column": 0,
						"row": 0,
						"layoutName": "TabMTFInfosCandidatTabLabelGridLayoutd7450211"
					},
					"bindTo": "UsrComboBox",
					"dataValueType": Terrasoft.DataValueType.ENUM,
					"labelConfig": {
						"caption": "Test ComboBox"
					}
				},
 
			},
		...
		]/**SCHEMA_DIFF*/
	};
});

"UsrComboBox" is an attribute I created in the attributes of this schema.

"MTF_Candidat" is an object that I created in the page wizard.

"Lkp_Francais" is the field ID for a lookup already defined in the page wizard. By default when I created Lkp_Francais, the connected lookup is "MTFcompetenceslinguistiques".

"MTFcompetenceslinguistiques" is a basic lookup with only the inherited fields

 

It produces this combobox :

The UI part it works fine :

But if I save my object, close it and reopen it, the data previously filled in the combobox are no longer there:

 

I tried to generate the source code for all the modified schemas in the advanced settings, then I recompiled everything and it still doesn't work.



Do you have any idea what is going on and what I can do to solve this problem?

 

EDIT : in my getMultiChoiceEntitiesConfig method I tried to change

mainColumnName: "Lkp_Francais"

to

mainColumnName: "Id"

as recommanded in https://marketplace.creatio.com/app/multiple-choice-field-setup-creatio under the installation part and this time when I save my object it just load indefinitely. I tried to change it to "MTFContactCandidat" which is a lookup connected to a Contact object and the result was the same,when I click on save it loads indefinitely.

 

Best regards,

 

Julien G.

Like 0

Like

2 comments
Best reply

Hi Julien,

This add on should work with a detail which linked with your main entity (MTF_Candidat) and the lookup (MTFcompetenceslinguistiques).

 

According to the information you mentioned, you only have a field in the MTF_Candidat which linked to MTFcompetenceslinguistiques.



Therefore, you need change your design by creating a detail which allows you to store multiple records from the lookup and link to the main object.

 

After that your item configuration should be something like this:

 

items = {
 UsrComboBox: {
		mainEntitySchemaName: "DetailObject", //Detail Object code
		mainColumnName: "ColumnConnectedToMainObject", //The column in the created detail which link to MTF_Candidat.
		relatedEntitySchemaName: "MTFcompetenceslinguistiques", //Lookup object,Your configuration is Correct.
		relatedColumnName: "ColumnConnectedToLookup" //The column in the created detail which link to MTFcompetenceslinguistiques
	}
};

regards,

 

Cheng Gong

Hi Julien,

This add on should work with a detail which linked with your main entity (MTF_Candidat) and the lookup (MTFcompetenceslinguistiques).

 

According to the information you mentioned, you only have a field in the MTF_Candidat which linked to MTFcompetenceslinguistiques.



Therefore, you need change your design by creating a detail which allows you to store multiple records from the lookup and link to the main object.

 

After that your item configuration should be something like this:

 

items = {
 UsrComboBox: {
		mainEntitySchemaName: "DetailObject", //Detail Object code
		mainColumnName: "ColumnConnectedToMainObject", //The column in the created detail which link to MTF_Candidat.
		relatedEntitySchemaName: "MTFcompetenceslinguistiques", //Lookup object,Your configuration is Correct.
		relatedColumnName: "ColumnConnectedToLookup" //The column in the created detail which link to MTFcompetenceslinguistiques
	}
};

regards,

 

Cheng Gong

Cheng Gong,

 

Thanks for your answer!

 

 

Show all comments