Hello,

 

I am trying to build a business process that runs when a new SMS message is received. However, the Twilio SMS connector uses direct insert statements in the DlbSmsService source code object instead of the EntitySchema (ORM). Is there another way of firing off this business process without having to duplicate the entire SMS connector and changing out the method myself?

 

Thanks in advance.

Like 0

Like

2 comments
Best reply

Hi Josh,

 

I've not had an issue with processes triggering the signal on record added to DlbSmsMessage. I also saw the code in the DlbSmsService using the direct Insert, but that is for a record in DlbSmsConnectorMessageLog, not the SMS message itself. The code starts a background task to a class in the Files of the package (assuming). Have you not been able to trigger the start signal on record added SMS message? (That *is* working for me)

Ryan

Hi Josh,

 

I've not had an issue with processes triggering the signal on record added to DlbSmsMessage. I also saw the code in the DlbSmsService using the direct Insert, but that is for a record in DlbSmsConnectorMessageLog, not the SMS message itself. The code starts a background task to a class in the Files of the package (assuming). Have you not been able to trigger the start signal on record added SMS message? (That *is* working for me)

Ryan

You were absolutely right! Thank you very much for your help.

Show all comments

Hello!

 

I had a column in one of my objects that was deleted. In that column I was computing a sum with the help of a business process. After the deletion, I created another column in order to store that sum, but I cannot save the process as it gives me the following error:

The "ChangeDataUserTask1" element has an invalid value for the parameter "RecordColumnValues". Internal error: "Column with identifier "5edf4d5c-5df2-4c95-b1b7-0282f271b15b" not found in the entity schema "" ("924e0729-30d4-4c7f-a6bf-f203f4b0daef")"

I have checked in the database and the deleted column does not appear anymore, but neither the new one created, even though I saved and published the changes.

1. Why don't I see my new field in the db?

2. Why does the process still look for the first column, if it is deleted now?

3. How can I solve this issue so I can save my process?

Thank you in advance,

Maria

Like 0

Like

1 comments

Hello,

 

The most likely reason for such behavior is that you need to update your database structure and re-create the original business process.

 

To update your database you need to go into the configuration settings and click on "Update database structure where needed" under the action menu.

 

By re-create we meant that, unfortunately, you will have to create a new business process because the original one might still keep looking for an already deleted column.

 

If  you are still having issues, please feel free to contact our support by writing us an email at support@creatio.com

 

Thank you.

Show all comments

Is there a way to hide the button on a detail page when the parent page status has changed upon checking on initialize?

 

I tried to create an attribute that will be set to true when the parent status is 'order processing' and bind it to the visible property of the button but it doesn't work.

 

"className": "Terrasoft.ConfigurationGrid",
"generator": "ConfigurationGridGenerator.generatePartial",
"generateControlsConfig": {"bindTo": "generateActiveRowControlsConfig"},
"changeRow": {"bindTo": "changeRow"},
"unSelectRow": {"bindTo": "unSelectRow"},
"onGridClick": {"bindTo": "onGridClick"},
"activeRowActions": [
	{
		"className": "Terrasoft.Button",
		"style": this.Terrasoft.controls.ButtonEnums.style.TRANSPARENT,
		"tag": "save",
		"markerValue": "save",
		"imageConfig": {"bindTo": "Resources.Images.SaveIcon"},
		"visible": {"bindTo": "IsOrderProcessing"}
	},...
init: function() {
	debugger;
	this.callParent(arguments);
 
	var orderId = this.$MasterRecordId;
	var esq = Ext.create("Terrasoft.EntitySchemaQuery", {
		rootSchemaName: "Order"
	});
 
	esq.addColumn("Status", "Status");
	esq.getEntity(orderId, function (result) {
		debugger;
		if (!result.success) {
			this.showInformationDialog("Data query error");
			return;
		}
		if (result.entity) {
			var orderStatus = result.entity.get("Status");
 
			if (orderStatus.value === "3f7523c5-f066-4bb6-bfd8-b2156fb42f13") { // Order Processing
				this.set("IsOrderProcessing", true);
			}
			else {
				this.set("IsOrderProcessing", false);
			}
		}
 
	}, this);
}

 

Like 0

Like

1 comments

Hello,



Anyone experience that Email are not visible in Section > Timeline > Email for other users?



Note:

- Object permission for Activity is set as All Employees > All Employees.

- User I tried logging in has no Email Account.



What could possible be the solution/issue?



Regards,

Solem A.

Like 0

Like

4 comments
Best reply

Solem Khan Abdusalam,

 

Please find more information here.



Best regards,

Bogdan

Hello Solem,

 

The emails on the timeline are only visible to the users, who have access to the 'can read/edit any data' operation permission.



Best regards,

Bogdan

Bogdan,



I saw the option and the Object "Activity" already has the user's role and Create/Edit/Delete are already check.



Regards.

Solem A.

Solem Khan Abdusalam,

 

Please find more information here.



Best regards,

Bogdan

Bogdan,

 

Work's like magic!



Thanks,

Solem A.

Show all comments

Hello all,

 

I am trying to enable access for a portal user to trigger a service within Creatio. I'm following the steps as listed in this academy page but when I try to declare _baseService and publish, I receive an error saying that GlbInterviewService is "'GlbInterviewService' is a namespace but is used like a type"

 

namespace Terrasoft.Configuration.KeenGlbInterviewService
{
	using System;
	using System.IO;
	using System.Collections.Specialized;
	using System.Globalization;
	using System.Runtime;
	using System.Runtime.Serialization;
	using System.ServiceModel;
	using System.ServiceModel.Web;
	using System.ServiceModel.Activation;
	using System.Threading;
	using System.Threading.Tasks;
	using System.Web;
	using Terrasoft.Core;
	using Terrasoft.Core.Factories;
	using Terrasoft.Web.Common;
    using Terrasoft.Web.Common.ServiceRouting;
 
	#region Class: KeenGlbInterviewService
 
	[DefaultServiceRoute, SspServiceRoute]
	[ServiceContract]
	[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)]
	public class KeenGlbInterviewService : BaseService
	{
 
		#region Methods: Public
		private static readonly GlbInterviewService _baseService = new GlbInterviewService();
 
		[OperationContract]
		[WebInvoke(Method = "POST", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json)]
		public InterviewServiceResponse Start(InterviewServiceRequest request)
		{
			return _baseService.Start(request); 
		}
 
		[OperationContract]
		[WebInvoke(Method = "POST", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json)]
		public InterviewServiceResponse Complete(InterviewServiceRequest request)
		{
			return _baseService.Complete(request);
		}
 
		#endregion
 
	}
 
	#endregion
 
	#region DataContract
 
	[DataContract]
	public class InterviewServiceResponse : ConfigurationServiceResponse
	{
		[DataMember(Name = "isSuccess")]
		public bool IsSuccess {get; set;}
	}
 
	[DataContract]
	public class InterviewServiceRequest
	{
		[DataMember(Name = "interviewId")]
		public Guid InterviewId { get; set; }
	}
 
	#endregion
 
}

From what I can tell I've set everything up exactly as the article says but I still receive the error. Though they declare _baseService the same way. Any suggestions as to what I could be doing wrong?

Like 0

Like

3 comments
Best reply

Kevin Brady,

 

Ok, according to the error you should have the Terrasoft.Configuration.GlbInterviewService namespace in your system, but you try to create a new method that has the same name as the namespace (as well as your current class KeenGlbInterviewService has the same name as your namespace Terrasoft.Configuration.KeenGlbInterviewService). So theoretically adding "using Terrasoft.Configuration.GlbInterviewService" to your code should fix this issue, but still you need to rename either classes or namespaces since they shouldn't have the same name.

Hello Kevin,

 

I used the same exact code and created a source code in my local app and it didn't return error messages. Try recreating it and also check if the error message is returned from the source code you've shared.

Oleg Drobina,

I recreated the code and also tried pasting the above code directly back into Creatio to ensure that there weren't any changes that occurred in creating this post and I still received the error.

Kevin Brady,

 

Ok, according to the error you should have the Terrasoft.Configuration.GlbInterviewService namespace in your system, but you try to create a new method that has the same name as the namespace (as well as your current class KeenGlbInterviewService has the same name as your namespace Terrasoft.Configuration.KeenGlbInterviewService). So theoretically adding "using Terrasoft.Configuration.GlbInterviewService" to your code should fix this issue, but still you need to rename either classes or namespaces since they shouldn't have the same name.

Show all comments

When opened, the process constantly shows the loading icon, it is not possible to make any changes to it. Tried looking at the metadata, but couldn't find any errors. Please tell me how to solve this problem

Like 0

Like

0 comments
Show all comments

Hello!



Where can I find Accounts and Contacts, excluded from duplicates search as 'Not duplicate'?

There are doubts and some of same mistakenly were marked as 'Not duplicate' in global duplicates search and it is necessary to remove this mark

 

Thank you!

Like 0

Like

3 comments

Hello,

 

Can you please specify what Creatio version you have and also your Deduplication service version?

Hi Mira Dmitruk,

Sales Team. Version 8.0.3.2908 (Cloud)

How can I found Deduplication service version?

Hello,

 

For the mechanism of Bulk duplicates search using the deduplication service, in order to reset the "Not duplicates" flags of all marked packs of duplicates on the deduplication service, it is necessary to clean the UniqueEntity table in mongodb.

In future releases, it should be possible to change the logic of the "not a duplicate" mark so that this action can be canceled by basic tools.

 

In case you use the deduplication service in cloud, and you get the situation when you need to clean the table with "not a duplicate" in mongo, please don't hesitate to contact us and we will help you to clean it.

Show all comments

Hi,

 

I need to place a checkbox in the center of a grid cell. I have tried with a text label and I could justified it by adding the following code to the diff property of the attribute:



"styles": {

     "labelStyle": {

          "textAlign": "center"

     }

}

 

The label finally looked like this:

However, I did not find a way to center a checkbox field into the grid:

I hope you can offer me a solution. Thank you in advance!

Like 0

Like

1 comments

Hello,

As a suggestion, you may modify the diff part of these elements, so that they will be in the same container.

After that, you should apply a needed style to both elements.

In this article, you can find an example of how to center different elements.

Show all comments

Hi all, 



I'm just starting to get to grips with making API calls to Creatio and stuck trying to POST a new record, where a column is a lookup. 



I understand that I can post using the Guid to the lookup using column name "UsrLookupNameId". However, if I don't have the Id but only a value in one of the Lookups column, is that possible? 

 

For example, I have the lookup UsrNationality, but I only have the value "Germany" and not the ID. Or, must I first make a GET request to get the ID? 

 

Here is current code: 

 

{

"UsrName": "Test Name",

"UsrNationality": "Germany"

}

 

Any help much appreciated :)

Like 0

Like

2 comments

Hi Harry,

You would have to first do a GET to the lookup object to get the record where the Name = "The name", then do the POST separately using the Id value for the lookup column. So two separate calls, one to GET the lookup and a second to POST the new record.

Typically when I have code working with Creatio's API's I retrieve the needed lookups into a local cache to avoid repeatedly doing GETs to the lookups.

Ryan

Thanks Ryan, that's what I thought. I used the "GET

$filter parameter (eq operator)" option in the end. 



I'm integrating using Make.com, so little harder to leave everything in local cache. Have got it working well now though. 

 

Thanks again for the reply.

Show all comments

Hi,

 

while we do customers updates on-premise, we'd like to avoid any connection of users in the middle of package installations or updates.



Is there a maintenance mode that can be activated ?



Thank you all,



Damien

Like 4

Like

0 comments
Show all comments