Hi Team,

 

We have a query regarding users having permissions to creating email templates in the Message Template section rather than admin creating email templates

 

Currently, only administrators have the ability to create email templates, select macro sources, and add macros while creating templates. However, the enquiry is whether the sales team would have the capability to create their own email templates for future use when communicating with customers rather than reaching out to admin for creating the email templates.

 

Is there a specific permission or access level that can be granted to normal users, specifically those in the sales team with a sales team license, which would allow them to create, save, and utilize their own email templates within the system? This would streamline our communication processes and empower our sales team to personalize their interactions with customers more effectively.

 

For now they are getting the below error while trying to create a email template :

Thanks for the help in advance!

 

Regards,

Mayan

 

Like 0

Like

1 comments

Hello,

for resolving this specific error you would need to give permission for operation by the code "CanManageLookups" in Operation permissions view in System designer. Not sure if users need more permissions to create templates but if its the only error occuring that could resolve it

Show all comments

Hello, I'm having a problem tagging records, Creatio support indicates it it produced by OmniChatGPTConnector.

 

Please see the Support indications



 

Hello Julio,
 
Our investigation has revealed that the root cause of the problem lies in the modification of the style for the "ts-modalbox" element within the "OmniChatGPTPanelCSS" scheme of the "OmniChatGPTConnector" package. The alteration of this style is causing the tag window to open is not full.
 
Our recommendation is to remove this modified style, as it appears to be causing the issue. However, we understand that this modification may have been made for specific purposes that we might not be aware of. With that in mind, we strongly advise you to reach out to the developers responsible for this customization.
They can provide insights into the purpose of the style modification and determine how to address the issue holistically.
Additionally, we have passed the information to your manager by adding her to the thread.
 
 
https://prnt.sc/9xHZAgGp1NBO

 

Like 0

Like

1 comments

Hello,

 

As this is an addon developed by third-party developers, we recommend that you contact them directly at support@creomate.com for further assistance with this matter.

 

Best regards,

Yuliya

Show all comments

Hi Community,

 

In our Approval Process, there will be more than 2 options and we are not using only approve and reject.

We will use the color for our decision

  • White = Approval
  • Black = Rejecte
  • Grey = will active a sub-process to add in more information

Could I able to set up an approval like that?

Thank you

Like 0

Like

4 comments
Best reply

Bao,

 

Your business task could be achieved by business process. 

 

You can use your diagram as the base for the process. 



Instead of the first Аpproval element use the [Auto-generated page]\[Pre-configured page]  (or [User dialog] element), to display for required user or role, then through the flow on the second Approval element making a decision.

Hello Bao,



Could you please elaborate on your business task?

 

Could you please clarify what you mean by "In our Approval Process"? Is that a business process or another logic? 



And how did you implement theses colors? 

Bogdan,

Um to be clear, I want to ask if there is any way to make an approval process with 3 options

Due to our business, the approval must have 3 options to divine our client into 3 group

  • White: means they are okay with a clean profile
  • Black: means they are having red flags in the profile
  • Grey: means our Top manager will be the one who decides to

Here is the picture for you to understand our business approval right now (but it just a summary, I am not allowed to share more detail on this)

Bao,

 

Your business task could be achieved by business process. 

 

You can use your diagram as the base for the process. 



Instead of the first Аpproval element use the [Auto-generated page]\[Pre-configured page]  (or [User dialog] element), to display for required user or role, then through the flow on the second Approval element making a decision.

Bogdan,

It's works

Thank you!

Show all comments

Hi community,

 

I added some records in [Connected to] Details. But when I check on the diagram, nothing changed.

Is there any way to update the diagram automatically after adding a record in [Connected to] details?

 

Thank you!

Like 0

Like

2 comments

Hi Bao, 



In order to help you with this question we need more details on how exactly records were added and where you want them to get displayed. 



Please contact our support team directly via support@creatio,com and provide us with this detailed info so we could advise you on this matter. 



Kind regards, 

Roman

Hi Roman,

 

I already contacted the support team

Thank you for your assistance!

Show all comments

Hi,



how can we set up the choice between a desktop or homepage as default logon, as well as workspace (currently switching to all apps..)

Like 0

Like

8 comments

Hello, 

 

To set up a choice between the desktop or homepage as the default login in Creatio, follow these steps:



Open the System Builder.



Click "Workplace setup" in the "Settings" block.



Find the section you want, open it and select it as the "Home page"









Bes regards, 

Orkhan

Nope,



Does not work since the introduction of desktops in the new shell, when someone logons on to Creatio, he's brought on the desktop vs the homepage of his workplace. This was already set up as is beforehand.



And not only are my users on desktop, they are also on "all apps", which is not what they want.

Hello Damien,

 

The issue has already been resolved in version 8.0.7.

 

After logging in, you will be directed to the same workplace that was active before logging out. However, the page displayed will be the desktop page.

 

Bogdan,



Thanks for the saving on the last active workplace :) , was this mentioned in the 8.0.7 release notes ?



"However, the page displayed will be the desktop page."



Any way to counter this ? We had already made the effort to create custom homepages for the different teams. The new extra desktop pages, which I see could be useful in some cases, are not useful for us at all today. Anyway to deactivate or bypass ?

 

Hi Damien ,

Did you got any solution to open custom homepages instead of opening desktop while logging in?

Thanks.

Manideep.

Nothing yet unfortunately, really something to change, everyone is asking...

Hi Damien,



I tried updating homepage in user settings, I think it's working now.When user logins in instance it will open dashboards section.

Check in any new cloud instance, for some reasons this feature is not working in local.

Thanks.

Manideep.

Hello Community,

 

is there a way to get the value of Active workplace?

Show all comments

Hi community,

 

I am currently researching the Relationship which function shows as [Connect to] in Account or Contact in Classic UI

But I want to ask if there is any way to set up permission for that function.

For example, I want only the admin could allow to add or edit the relationship. Others can only read the relationship

 

Thank you!

 

Like 0

Like

1 comments
Best reply

Hello!

 

To set up object permissions in that way you need to go to System settings - Object permission - Relationship connection. There you can set up permissions in that way as you provided in the request.

Hello!

 

To set up object permissions in that way you need to go to System settings - Object permission - Relationship connection. There you can set up permissions in that way as you provided in the request.

Show all comments

Hi Community,

 

My instance was developed on Customer Package

I want to create another package. Let's call it A package. To continue our development.

But after I set up the dependencies for A Package, I was unable to config Object from Custom Package

Should I move all elements from Custom Package to my A Package?

Or what else should I do?

Like 0

Like

4 comments

Hello,

 

If you are developing in order to later transfer these changes to a production website (or any other website), it is essential to transfer these elements from the Custom package, as you have different bindings and data, as well as changes made to the objects. If you do not transfer them, the integrity of the development will be compromised, and the package is unlikely to be successfully installed on the target website.

Also, please note that the package must include all the necessary dependencies for these elements to be transferred. If, at the moment you want to move an element, you are missing a dependency, for example, the website will display a message indicating what is specifically missing.

 

Additionally, please familiarize yourself with the documentation:

Packages basics

Delivery in Creatio IDE

Move the functionality between packages

Kalymbet Anastasia,

I understood

I just have a further question.

If, I move all the elements from the Custom Package to my A package on the Development website. Then, I install that package on the Production website. The Production already had a Custom Package with all the same elements as the Development website.

 

Is there any possible error when I install my A Package on the Production site?

Bao Phan,

 

If they are the same elements with the same UId and name, then yes, there may be a conflict during installation.

Kalymbet Anastasia,

So if I create another package (B package) and move all elements from Custom Package to the B package on Production Site.

Then, I continue to develop A Package on the Development site and install it later on the Production Site

Is it possible doing it? Any conflict or error may happen?

Show all comments

Hi community,

How to hide the "Copy" and "Delete" button in the list?

Thank you

Like 0

Like

2 comments

Hi everybody. We'd applied a code from here https://academy.creatio.com/docs/developer/back_end_development/api_for… (Get file content part). The code is the following:

	byte[] data;
	Guid recordId = entities[0].GetTypedColumnValue<Guid>("Id");
	var fileLocator = new EntityFileLocator("KnowledgeBaseFile", recordId);
	IFile file = userConnection.GetFile(fileLocator);
	// Read the contents of the file in the content byte array. Remember to free the stream object by utilizing using! 
	using (Stream stream = file.Read()) {
	   data = stream.ReadAllBytes();
	}
 
	string s1 = Encoding.GetEncoding("Windows-1250").GetString(data);

actually it is the same as in the creatio example on the page:

 

byte[] content;
Guid recordId = Guid.NewGuid();
var fileLocator = new EntityFileLocator("ActivityFile", recordId);
IFile file = connection.GetFile(fileLocator);
 
// Read the contents of the file in the content byte array. Remember to free the stream object by utilizing using! 
using (Stream stream = file.Read()) {
   content = stream.ReadAllBytes();
}

unfortunately if fails with the following:

 

System.NotSupportedException: Specified method is not supported. at Terrasoft.File.Content.FileContentStream.get_Length() at Terrasoft.Common.StreamUtilities.ReadAllBytes(Stream source) at Terrasoft.Core.Process.EonFileProceedingCustom10MethodsWrapper.ScriptTask1Execute(ProcessExecutingContext context) at Terrasoft.Core.Process.ProcessFlowElement.ExecuteItem(ProcessExecutingContext context) at Terrasoft.Core.Process.ProcessFlowElement.Execute(ProcessExecutingContext context)

 

honestly I don't understand the problem because it occurs in the core method :( Does anybody have a solution please?

 

8.0.6 sales team

 

Like 0

Like

1 comments

Hello,

You using ReadAllBytes(), however, even the article you provided used another method ReadToEnd().

Please change the method and see if the problem is still present.

 

using Terrasoft.Common;
 
var content = new byte[]();
Guid recordId = Guid.NewGuid();
 
/* Create a file locator for the new file. */
var fileLocator = new EntityFileLocator("ActivityFile", recordId);
IFile file = UserConnection.GetFile(fileLocator);
 
/* Read the contents of the file in the content byte array. Remember to free the stream object by utilizing using! */
using (Stream stream = file.Read()) {
   content = stream.ReadToEnd();
}

 

Show all comments

Hi community,

I have a list of warehouses that contains the "Primary" field. It's only one of them that can be a primary warehouse.

When a user creates an order, I want the "Warehouse" field can be set automatically to the primary warehouse.

How to do this?

 

Thank you.

Like 1

Like

6 comments
Best reply

I has solved this problem by adding parameter "this" into the "result.collection.each()".

It will be shown as "result.collection.each(function(), this)"

esq.getEntityCollection(function(result) {
	debugger;
	if (!result.success) {
		// For example, error processing/logging.
		this.showInformationDialog("Can't set the location.");
		return;
	}
	result.collection.each(function(item) {
		var primaryWarehouse = {value: item.get("Id"), displayValue: item.get("SceName")};
		this.set("SceWarehouse", primaryWarehouse);
		return;
	}, this)
}, this);

 

You can Use Business Rule for auto populating Some fields. 

https:/academy.creatio.com/docs/user/customization_tools/ui_and_business_logic_customization/business_logic/setup/set_up_a_new_business_rule

 

Hi smit suthar,

 

I have tried to use the "Set field value" action, but it's too simple.

I want to set the value of "Warehouse" with a primary warehouse.

Note: The "Warehouse" section has the "Primary" (boolean) field.

So, for example; I have 2 warehouses, "A" and "B". And, I set the warehouse "B" primary field as TRUE. Then, when the user creates an order, the "Warehouse" field of the order will be filled by "B" automatically.

 

Do you have any other ideas?

Hello David Chandra,

 

Based on the shared information I can assume that your business task can be fully covered with a help of business rules functionality. 

If you'd like to expand the customization you can consider designing the custom business process that will read the needed columns from a page and apply changes with a Modify data element or even with script-task element where you can specify the custom logic with code. 

Alternatively, you can implement your business task with a help of additional development, but we do not have a specific ready to use example of such implementation. 



Best regards,

Anastasiia

Hello Anastasiia,

If we use the Business Rule means, we have to save the order and then use "added data trigger" to set the warehouse value.

Do you know how to set the warehouse value before we save the new order?

 

Regards,

David

Hello Anastasiia,

 

I managed to create a function in the page source code as below:

 

/* Overload the base Terrasoft.BasePageV2.onEntityInitialized method that is called after Creatio initializes the schema of the record page object. */
onEntityInitialized: function() {
	/* Call the parent implementation of the method. */
	this.callParent(arguments);
	/* Call the handler method that sets the [Location] column value. */
	this.setWarehouse();
},
/* The handler method that sets the [Warehouse] column value. */
setWarehouse: function() {
	/* The [Warehouse] column value. */
	var location = this.get("SceWarehouse");
	/* Checks whether the mode of the new record is set. */
	var newmode = this.isNewMode();
	// * If the value is not set and the mode of the new record is set. */
	if (!location &amp;&amp; newmode) {
		/* Get the contact's location by using ESQ */
		const userContactId = Terrasoft.SysValue.CURRENT_USER_CONTACT.value;
		const esq = this.Ext.create(Terrasoft.EntitySchemaQuery, {
			rootSchemaName: "SceWarehouse"
		});
		esq.addColumn("Id");
		esq.addColumn("SceName");
		esq.addColumn("Primary");
		const esqFirstFilter = esq.createColumnFilterWithParameter(Terrasoft.ComparisonType.EQUAL,
				"Primary", true);
		esq.filters.add("esqFirstFilter", esqFirstFilter);
		esq.getEntityCollection(function(result) {
			debugger;
			if (!result.success) {
				// For example, error processing/logging.
				this.showInformationDialog("Can't set the location.");
				return;
			}
			result.collection.each(function(item) {
				var primaryWarehouse = item;
				this.showInformationDialog(primaryWarehouse.get("SceName"));
				this.set("SceWarehouse", primaryWarehouse);
			})
		}, this);
	}
}

The "showInformationDialog" function is able to show the correct record.

But, the "SceWarehouse" is still not populated.

Note: "SceWarehouse" field is a lookup based on the "SceWarehouse" section.



Could you help?



Thank you.

I has solved this problem by adding parameter "this" into the "result.collection.each()".

It will be shown as "result.collection.each(function(), this)"

esq.getEntityCollection(function(result) {
	debugger;
	if (!result.success) {
		// For example, error processing/logging.
		this.showInformationDialog("Can't set the location.");
		return;
	}
	result.collection.each(function(item) {
		var primaryWarehouse = {value: item.get("Id"), displayValue: item.get("SceName")};
		this.set("SceWarehouse", primaryWarehouse);
		return;
	}, this)
}, this);

 

Show all comments