Dear mates,

i have a process recording the Lead in the call page if no contact or no account are find for the call number.

Everything works fine except at the end of the process, the call page is never open.

i allready open a support for this problem, and the support made it works.

Since i modify the process, the page no longer opens.

Did i do something bad before disturbing the support ?

thank you,

Nicolas

Like 0

Like

1 comments

Hello Nicolas,

 

What was the change that you've done? And what do you mean by "the call page is never open"? Does it appear as a notification in the right-side pannel?

 

Thank you for the clarifications!

 

Best regards,

Bogdan

Show all comments

Hi,

I created a new operation permission named "CanRunXXX"

When a user runs a specific process, I need to check if the user has the permission  to use it.

In the market place exists an addon specific for this feature https://marketplace.creatio.com/template/check-permission-operation

If I wanted to build it from scratch how can I do it?

Like 0

Like

7 comments

Hi Stefano,

 

Please install this marketplace app and analyze the content of the custom user task. It should contain some script inside it that receives the collection of allowed users that are stored in the operation permission users list. And this script can be used as an analogue to create your own user task if needed.

 

Best regards,

Oscar 

Oscar Dylan,

Thank you

Stefano Bassoli,

Hi

I tried to install the addon but it doesn't work

Any other suggestions ?

Stefano Bassoli,

I've installed the marketplace app and the following process worked perfectly on my end:

Basically the logic that checks if the current user has operation permissions rights is stored in the labCheckUserOperPermission class of the UserTask of the marketplace app:

protected override bool InternalExecute(ProcessExecutingContext context) {
			Success = (bool)UserConnection.DBSecurityEngine.GetCanExecuteOperation(OperationPermissionCode, UserConnection.CurrentUser.Id);
			return true;
		}

And returns either "true" or "false" for the "Success" parameter and the parameter itself determines if the process should be executed further or not. The full code of the UserTask can be found below:

namespace Terrasoft.Core.Process.Configuration
{
 
	using Newtonsoft.Json;
	using Newtonsoft.Json.Linq;
	using System;
	using System.Collections.Generic;
	using System.Collections.ObjectModel;
	using System.Globalization;
	using Terrasoft.Common;
	using Terrasoft.Core;
	using Terrasoft.Core.Configuration;
	using Terrasoft.Core.DB;
	using Terrasoft.Core.Entities;
	using Terrasoft.Core.Process;
	using Terrasoft.UI.WebControls.Controls;
 
	#region Class: labCheckUserOperPermission
 
	/// <exclude/>
	public partial class labCheckUserOperPermission
	{
 
		#region Methods: Protected
 
		protected override bool InternalExecute(ProcessExecutingContext context) {
			Success = (bool)UserConnection.DBSecurityEngine.GetCanExecuteOperation(OperationPermissionCode, UserConnection.CurrentUser.Id);
			return true;
		}
 
		#endregion
 
		#region Methods: Public
 
		public override bool CompleteExecuting(params object[] parameters) {
			return base.CompleteExecuting(parameters);
		}
 
		public override void CancelExecuting(params object[] parameters) {
			base.CancelExecuting(parameters);
		}
 
		public override string GetExecutionData() {
			return string.Empty;
		}
 
		public override ProcessElementNotification GetNotificationData() {
			return base.GetNotificationData();
		}
 
		#endregion
 
	}
 
	#endregion
 
}

So you can use something similar on your end as well.

 

Best regards,

Oscar

Hi Oscar 

In my environment doesnt appare in the user task list the new action 

Stefano Bassoli,

 

then you need to either re-install the marketplace app or check that your app is greater than 7.12 version and uses .NET Framework or use the code above to create your own user task to check operation permissions.

 

Best regards,

Oscar

Thank you very much

 

Show all comments

Hi Community,

 

Below  is the business rule I need to apply

 

Below is the code I wrote 

 

This doesn't work in mobile app but it also is not throwing any error.

 

Can anyone help me with this issue!

 

Many Thanks,

 

Akshit.

Like 0

Like

1 comments

Hi Akshit,

 

Here is an example of the code that has perfectly worked on my end:

Terrasoft.sdk.Model.addBusinessRule("Case", {
    name: "Make UsrStringField column required",
    ruleType: Terrasoft.RuleTypes.Custom,
    triggeredByColumns: ["UsrBoolAct"],
 
    events: [Terrasoft.BusinessRuleEvents.ValueChanged, Terrasoft.BusinessRuleEvents.Save],
 
    executeFn: function(record, rule, column, customData, callbackConfig) {
    	var isRequired;
    	var isActivated = record.get("UsrBoolAct");
    	if (isActivated===true){
    		isRequired=false;
    	} else {
    		isRequired=true;
    	}
        record.changeProperty("UsrStringField", {
            isValid: {
                value: isRequired,
                message: "Column must be filled in"
            }
        });
 
        Ext.callback(callbackConfig.success, callbackConfig.scope, [isRequired]);
    }
});

The logic here is that the "UsrBoolAct" column is true (this is a boolean column) then the "UsrStringField" should be filled in. After the application pool was restarted this output was received:

Please also note that wen workig with lookups instead of booleans such a construction will help to achieve the result needed:

var type = record.get("Type");
        if (type && (type.get("Id") === Terrasoft.ContactTypes.Doctor ||
                type.get("Id") === Terrasoft.ContactTypes.ContactPerson))

Best regards,

Oscar

Show all comments

Hi Community,

 

I want to apply the below business rule in mobile app

 

Below is the code I have written in the module : 

 

Below is the error I received when I logged in with other user(User other than mention in the code):

 

Requesting you help me to figure out the issue!

 

Many Thanks,

Akshit.

Like 0

Like

1 comments

Hello Akshit,

 

Hope my message finds you well.

 

Please restart the application pool in IIS if this is an on-site solution or contact us at support@creatio.com if this is a cloud app. Also please try to flush the web browser cache and cookies.

 

Also, what is the behavior when you log in as the user mentioned in the code?

 

Thanks in advance.

 

Best regards,

Roman

 

 

 

Show all comments

Hi,

I need to convert a detail to a section because my customer need to export on excel all details created.

Which is the best way to do this?

 

Like 0

Like

2 comments

Hello Stefano,

 

Hope you're doing well.

 

To perform your business task please refer to this community question regarding registering a custom section for an existing object: 

https://community.bpmonline.com/articles/register-custom-section-existi….

 

In your case, the needed detail is an object and you need to create a section from it. After that, the required data should be available in the newly added section.

 

Best regards,

Roman

Roman Rak,

Hi Roman,

thank you for your support.

I used the feature available in section wizard and some query derived from the post you suggest me, to get my goal.

Show all comments

Hi Community,

 

I have created a custom package and added all the necessary modules required for applying business rules in it.

 

 

I have then created a custom module with the business rule and added this module inside the ModelExtension attribute of required model[UsrPurchaseOrders] in MobileApplicationManifestDefaultWorkplace.

 

Business rule : 

 

Please help me with this issue.

 

Many Thanks.

 

Akshit

 

Like 0

Like

1 comments

Hello Akshit,

 

I've used the same code on my side:

Terrasoft.sdk.Model.addBusinessRule("Case", {
    ruleType: Terrasoft.RuleTypes.Activation,
    events: [Terrasoft.BusinessRuleEvents.Load, Terrasoft.BusinessRuleEvents.ValueChanged],
    triggeredByColumns: ["UsrContact"],
    conditionalColumns: [
        {name: "UsrContact", value: "c4ed336c-3e9b-40fe-8b82-5632476472b4"} //Andrew Baker
    ],
    dependentColumnNames: ["UsrStringColumn"]
});

and the logic is that if the contact specified in the UsrContact column is not Andrew Baker (sample) then the UsrStringColumn column should be deactivated. And the only difference between our scenarios is that the application pool for the app should be restarted once you apply all the changes in your custom module and include this module into the manifest. So please restart the application pool in IIS if this is on-site app or contact us at support@creatio.com if this is a cloud app. On my side the rule works as expected (using 7.16.4 version):

Best regards,

Oscar

Show all comments

Hi,

I customized the AddressAccount entity adding a new field.

How can I import data on the new field in this entity ?

Like 0

Like

4 comments

Hi Stefano,

 

You can do it as usual - perform an import and when mapping columns just map your custom column to the column from the file.

 

Best regards,

Oscar

Oscar Dylan,

Hi Oscar

I added a new field on AddressAccount entity named region.

This new field don't appear when setting the import, see the screenshot

What Am I doing wrong ?

 

Stefano Bassoli,

 

Hello,

 

Please check if the column is present in this list:

and

and select the column. In case the column is not present then either the AccountAddress object should be published or the parent object for the replaced AccountAddress object was chosen incorectly. Please check if your parent object is the same as mine:

If it is not please remove the replaced object and replace the AccountAddress object from scratch.

 

Best regards,

Oscar

Oscar Dylan,

Thank you Oscar,

It works

Show all comments

I need a single field to hold a DateTime variable.

It should be available for being read/written via business processes.

I tried to use System settings for this, but with no success; I couldn't manage a business process to set a value for a System setting.

What is the best way to keep a global variable in Creatio?

Like 0

Like

4 comments

Yurily,

A system setting is the best place for something like that. Normally, I'd use a Modify Data element in the process to write it back, but in current versions of Creatio the lookup to add columns to update causes a client-side error so you're unable to select columns. 

However, you can set it with a script task. Let's assume your value is a string value and currently in a process parameter named "MyParameterValue". You'd add code something like this to read it from the parameter and set a system setting with a code of "UsrMySetting":

var val = Get<string>("MyParameterValue");
Terrasoft.Core.Configuration.SysSettings.SetValue(UserConnection, "UsrMySetting", val);
return true;

Ryan

Ryan Farley,

Thanks for your answer. The thing I don't understand is what "Yurily" means :)

Yuriy Konstantinov,

lol, sorry for the typo Yuriy!

Ryan Farley,

Hi Ryan,

 

I'm doing this, but for some reason the updated value is not on the System Setting if I see it by the System Settings, but If I ask it on a process I get the updated number.

 

I try to explain better, I create a System Setting variable, and init it with a number, in the process I update the value of the system setting and use it for some task, but when I come back to Creatio System setting and open the System setting is just like I define it, no change, but If I ask its value from a process it's updated.

 

I think is something related with cache or whatever, did you know what could be wrong?

 

For example, the following sub process is called in a "Read collection of records" loop.

 

In the first image you can see, I get the value of the System Setting called "Incidencias Detectadas - Correlativo Histórico" and add 1 and stores it in a local parameter.

 

The initial value in the System setting is 1

 

In the next step of the sub process I did something with the value, and in the third element of the sub process I update the system setting using the updated value in step 1. ie the old number + 1

 

 

It works OK, it's fine!, but when I came to System Setting, it shows me the initial number, ie: 1 and it must be 800 to my example,

 

You can see the value still is one, but If I read the value from a process, it gives to me the correct value. WHAT'S WRONG?

 

Thanks in advance

Julio Falcón

Show all comments

I am exploring ways by which we can add a message to a custom channel within Feed Section via Business Process. Please help me with information.

 

Product - Creatio customer center

version - 7.16

Like 0

Like

4 comments

Hello,

 

The main objects in Feed functionality are SocialChannel, SocialMessage and SocialMention. 

There is also an OOB process called ESN notification but it can only be found via the Configuration section. You can use it as an example to build your own business logic.

Please let us know if more information is required.

 

Best regards,

Bogdan S.

Bogdan Spasibov,

Thanks much for the information provided. I could see the BP related to ESN Notification and it really helped.

I require implementation clarity (especially related to objects) on the following scenario,

 

I have created a custom channel named "Psiog". Now, I would like to add a message, via a business process, in the channel "Psiog" saying that an "employee" (data from contacts section) is "available"/"not available" (chosen from a lookup in a preconfigured page) along with respective comments. 

Could you please help me with the above one? As far as I tried implementation, I could add a message to the Feed in general and was unable to post in a particular channel.

 

 

Adding relevant screenshots

DhariniS,

 

SocialMessage object has a column named EntityId. Please, populate it with SocialChanel.Id value. This should help.

 

Best regards,

Bogdan S.

Bogdan Spasibov,

Thank you! Tried giving the custom channel name in the "object instance" parameter of the social message and it worked!

Show all comments

Hi Community,

 

Scenario : We have a added image to a section/detail. Post adding, we have an option to add another/delete the uploaded image

 

Question: Is there am option to zoom/view the uploaded the image, than view in the thumbnail size instead of increasing the image placement.

File attachments
Like 0

Like

1 comments

Hello Amritha,

 

You can try to take an example of code from OOB application. The schema name is BaseMessageHistoryItemPage that is placed in the Message package. The functionality is developed for the Case page and works in the following way - you just click on the picture that is placed in the Email or Portal message to enlarge it.

 

Best regards,

Bogdan S.

Show all comments