Hello team,

 

I have a multiselect lookup and a requirement where already selected records must be checked. I have used config.selectedValues to mark already selected records. 

 

Unfortunately, the application takes a lot of time (from 6 to 15 seconds) before the already selected records are marked on the UI. Hence the users are selecting records again and creating duplicates. There are other validation issues around this as well.

 

Is there a way to stop user from selecting further records till all existing records are marked checked? Please have a look at the video.

 

The use case in short, is to ensure that the checked records are marked and only then the user is allowed to choose further records.

Like 1

Like

0 comments
Show all comments

Hi,

Is there a way to add advanced filter mode to lookup record in lookup section?

Right now there is only "Add filter" option on Filters/folders. I need to add "Switch to advanced mode" to lookup record to add more modes to filter. 

 

Like 1

Like

1 comments

At the moment, it is not possible to configure advanced filters in Lookups records.
We have recorded your request and this issue will be considered in as much detail as possible with the prospect of implementation in future versions of the application.
As a workaround, the advanced filter can be configured by the "list" dashboard by selecting the directory object, and in the display parameters select the advanced filter.

Thank you for your appeal and for helping to make our product better!

Show all comments

7.18.5 in-site
Set up integration with ZAPIER - 1.03.
Periodically, ZAPIER gives an error when transferring data:
Could not parse JSON from /0/DataService/json/SyncReply/RuntimeEntitySchemaRequest
hide details
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http ://www.w3.org/1999/xhtml"d
http://joxi.ru/Vm6B4jWt04GMkm

This is all the information that displays by mistake ZAPIER
the error occurs when transferring not all but only some records

 

Can someone explain what this error is?

Like 0

Like

2 comments

Hi Alexey!

Please tell us more about the issue.
Which steps did you take to transfer data?
Did any common errors occur?
Did the issue occur on a particular step?

Hi Oleksander,

Here is all the information by mistake http://joxi.ru/L21EGgYFV0GbK2
Here is the action itself - create a contact and fill in three fields "Email", "Name", "Account"
http://joxi.ru/DmBBZKktP4d3Bm
http://joxi.ru/8Ankb1yT0y16pr
http://joxi.ru/12M95y0cXkqRv2
http://joxi.ru/n2Y9Xp4cVeGE42
the error is not permanent. When that day or two appears, contacts are not created, and then they are created again, and even when you restart those that have not been completed, they are successfully completed

 

Вот вся информация по ошибке http://joxi.ru/L21EGgYFV0GbK2
Вот само действие - создать контакт и заполнить три поля "Емейл", "ФИО", "Аккаунт" 
http://joxi.ru/DmBBZKktP4d3Bm
http://joxi.ru/8Ankb1yT0y16pr
http://joxi.ru/12M95y0cXkqRv2
http://joxi.ru/n2Y9Xp4cVeGE42
ошибка не постоянная. Когда появляется то день или два не создаеются контакти, а потом снова создаются и даже когда повторно запускаеш те что не віполнились они успешно выполняются

Show all comments

Hi,

 

I would like to add a hyperlink (titled "Details" below) in edit page of a record. When clicking the hyperlink it should redirect to another page in a new tab.

Right now clicking "Details" the page opens in new tab. My issue is that along with the required page, a new tab opens at https://{sitename}/0/Nui/ViewModule.aspx as well. Thus 2 new tabs are opened when I click on the link now.

Below is what I have (Today's agenda is not a detail; it's a control group):

Below is my code:

methods:{

onDashboardDetailsButtonClick:function(){
                let url = <link to the page>;
                window.open(url, '_blank');
            }

},

diff: /**SCHEMA_DIFF*/[
            {
                "operation": "insert",
                "name": "DashboardDetails",
                "values": {
                    "layout": {
                        "colSpan": 7,
                        "rowSpan": 1,
                        "column": 7,
                        "row": 2,
                    },
                    "itemType":Terrasoft.ViewItemType.HYPERLINK,
                    "enabled": true,
                    "caption":"Details",
                    "click": {"bindTo": "onDashboardDetailsButtonClick"},
                },
                "propertyName": "items",

                "index": 2
            }

]

Can you please tell me what I'm doing wrong and how to resolve this?

Like 0

Like

4 comments
Best reply

Hello Nirupama,

 

Terrasoft.ViewItemType.HYPERLINK item type also has an addtional property "href" and if it's not filled in by default it's automatically filled in with the base application url (https://somesite.creatio.com). You can also see it when hovering the mouse to the link or copy the link adddress from this element. As a result when you click on the item your custom URL is opened and additionally the default URL of the website.

 

If it's possible you should try setting your custom URL to the "href" property like:

getCustomURL: function() {
				return "https://www.wikipedia.org/";
			}
...
{
                "operation": "insert",
                "name": "DashboardDetails",
                "values": {
                    "layout": {
                        "colSpan": 7,
                        "rowSpan": 1,
                        "column": 7,
                        "row": 2,
                    },
                    "itemType":Terrasoft.ViewItemType.HYPERLINK,
                    "enabled": true,
                    "caption":"Details",
					"href": {"bindTo": "getCustomURL"}
                },
                "propertyName": "items",
 
                "index": 2
            },

 

Hello Nirupama,

 

Terrasoft.ViewItemType.HYPERLINK item type also has an addtional property "href" and if it's not filled in by default it's automatically filled in with the base application url (https://somesite.creatio.com). You can also see it when hovering the mouse to the link or copy the link adddress from this element. As a result when you click on the item your custom URL is opened and additionally the default URL of the website.

 

If it's possible you should try setting your custom URL to the "href" property like:

getCustomURL: function() {
				return "https://www.wikipedia.org/";
			}
...
{
                "operation": "insert",
                "name": "DashboardDetails",
                "values": {
                    "layout": {
                        "colSpan": 7,
                        "rowSpan": 1,
                        "column": 7,
                        "row": 2,
                    },
                    "itemType":Terrasoft.ViewItemType.HYPERLINK,
                    "enabled": true,
                    "caption":"Details",
					"href": {"bindTo": "getCustomURL"}
                },
                "propertyName": "items",
 
                "index": 2
            },

 

Thanks, Oscar! That works!

 

As a follow up, is there a way to make the integer value in the above screenshot a hyperlink, so that instead of providing a separate link like "Details", they can on the value and that redirects them to the details page?

Nirupama Mohan Latha,

 

As for the integer field - I am not sure, but you can try converting it into a string column and add the logic as was described here.

Thank you!

Show all comments

Hi everyone,

I was trying to remove edit and delete access rights from feed messages. I tried this by modifying the object permission for this object "SocialMessages". However after some investigation I reached to the point that feed is not dependent on object permissions but is something that can be modified in client-modules (front-end). I would like to know if there is a way how to remove/disable the edit and delete button.

Thanks in advance :)

Like 0

Like

4 comments
Best reply

Luis Kateshi,

 

they can be overriden it depends on the approach it's done. For example try creating a module in configurations with the UsrSocialFeedUtilities name and the following code:

define("UsrSocialFeedUtilities", ["terrasoft", "SocialFeedUtilities"], function(Terrasoft) {
    Ext.override(Terrasoft.SocialFeedUtilities, {
        getPostCommentEditVisible: function() {
                    return false;
                },
        getPostCommentDeleteVisible: function() {
            return false;
        }
    });
    return {}; 
});

and then create a repalcing view model for the SocialFeed module with the following code (where we add the created UsrSocialFeedUtilities module as a dependency):

define("SocialFeed", ["UsrSocialFeedUtilities"],
	function() {
		return {
			properties: {},
			mixins: {},
			messages: {},
			attributes: {},
			methods: {},
			diff: []
		};
 });

refresh the page in the UI and check what happens. I am sure the edit and delete buttons will be hidden.

Hi Luis,

 

Indeed this can be done by overriding the logic of the getPostCommentEditVisible and getPostCommentDeleteVisible methods from the SocialFeedUtilities module. So you need to override these methods.

Hi Oleg,

Thanks for your reply. I already tried to do this but as I see it is not possible to create a replacing client-module for "SocialFeedUtilities". And the methods u mentioned (getPostCommentEditVisible and getPostCommentDeleteVisible) seem to be private and I don't think they can be overriden. 

 

/**
         * ########## ######### ###### ############## #########/###########.
         * @private
         */
        getPostCommentEditVisible: function() {
            return this.getPostCommentEditDeleteVisible();
        },

Luis Kateshi,

 

they can be overriden it depends on the approach it's done. For example try creating a module in configurations with the UsrSocialFeedUtilities name and the following code:

define("UsrSocialFeedUtilities", ["terrasoft", "SocialFeedUtilities"], function(Terrasoft) {
    Ext.override(Terrasoft.SocialFeedUtilities, {
        getPostCommentEditVisible: function() {
                    return false;
                },
        getPostCommentDeleteVisible: function() {
            return false;
        }
    });
    return {}; 
});

and then create a repalcing view model for the SocialFeed module with the following code (where we add the created UsrSocialFeedUtilities module as a dependency):

define("SocialFeed", ["UsrSocialFeedUtilities"],
	function() {
		return {
			properties: {},
			mixins: {},
			messages: {},
			attributes: {},
			methods: {},
			diff: []
		};
 });

refresh the page in the UI and check what happens. I am sure the edit and delete buttons will be hidden.

Thank you Oleg, it worked, I appreciate your help :)

Show all comments

Hi Community,

 

I'm having troubles generating a request with the following XML body, using the "Call Web Service" integration tool.

&lt;soapenv:Envelope xmlns:soap="" xmlns:cam="" xmlns:soapenv=""&gt;
	&lt;soapenv:Header /&gt;
	&lt;soapenv:Body&gt;
		&lt;cam:startProcessCampanhasaaaaa&gt;
			&lt;soap:request&gt;
				&lt;soap:agencia&gt;1&lt;/soap:agencia&gt;
				&lt;soap:argumentarioVenda&gt;A&lt;/soap:argumentarioVenda&gt;
				&lt;soap:nomeCampanha&gt;A&lt;/soap:nomeCampanha&gt;
				&lt;soap:nomeEntidade&gt;A&lt;/soap:nomeEntidade&gt;
				&lt;soap:notasAdicionais&gt;A&lt;/soap:notasAdicionais&gt;
				&lt;soap:numeroEntidade&gt;A&lt;/soap:numeroEntidade&gt;
				&lt;soap:requestId&gt;A&lt;/soap:requestId&gt;
				&lt;soap:validadeTarefa&gt;1&lt;/soap:validadeTarefa&gt;
				&lt;soap:gestorEntidade&gt;A&lt;/soap:gestorEntidade&gt;
			&lt;/soap:request&gt;
		&lt;/cam:startProcessCampanhasaaaaa&gt;
	&lt;/soapenv:Body&gt;
&lt;/soapenv:Envelope&gt;

Basically, when I tried to add the necessary parameters for the request, I've noticed that I can't add an object parameter without defining it as an array.

This setting is blocking me from following the structure of the request above. Because the "request" parameter is not an array. I also tried to import the wsdl, and it didn't work either.

 

Is there a way to bypass this? Should I create a script task instead?

 

Thank you in advance.

 

Best Regards,

Pedro Pinheiro

Like 1

Like

3 comments

Hello,

 

You can create this service manually.
Because this is an OOTB behavior with the value "is array".

Hi Kalymbet Anastasia,

 

Sorry, but I didn't understand your answer. The property "Is array" is true by default.

 

Do I need to create the soap request using a script task? 

 

Best Regards,

Pedro Pinheiro

Pedro Pinheiro,

 

Yes, you're right. When the request parameter is of type object the collection is considered a typed array and the checkbox is checked by default and not editable.

In this case, using a script task for the SOAP service would solve the case.

BR,

Bhoobalan Palanivelu.

Show all comments

Hi Community,

I'm hoping to add conditional formatting to a lookup field on an edit page (UsrColour).

UsrColour lookup = Id (Guid), Name (String), Hex (String).

 

Ideally, I'd like the colour to change based on the lookup value and for the colour to come from the Hex field in the Colour lookup. Alternatively, hard coding the colours into the page code would be an acceptable alternative.

I can format the field using the article below but not conditionally:
Adding Custom CSS Style Sheets in Creatio (formerly bpm’online) | Customer FX

 

Any assistance would be greatly appreciated.

Like 0

Like

2 comments
Best reply

hi Cristopher Montgomery,

This thread helps to add the custom CSS on condition based.
Please check this Custom CSS for a field/label based on Condition .

BR,
Bhoobalan Palanivelu.

hi Cristopher Montgomery,

This thread helps to add the custom CSS on condition based.
Please check this Custom CSS for a field/label based on Condition .

BR,
Bhoobalan Palanivelu.

Exactly what I need. Much appreciated.

Show all comments

Hi,

 

I need to filter contact list that is displayed when logging a call activity through Section Actions Dashboard. Below is the code I have added for the same:

1. Replaced CallMessagePublisherPage

 define("CallMessagePublisherPage", ["ConfigurationConstants"],
	function(ConfigurationConstants) {
		return {
			entitySchemaName: "Activity",
			mixins: {},
			attributes: {
				"Contact": {
					"lookupListConfig": {
						"columns": ["Account"],
						"filters": [
							function() {
									var config = this.getListenerRecordData();
									var additionalInfo = config.additionalInfo;
									var account=additionalInfo.account.value;
									var filterGroup = Ext.create("Terrasoft.FilterGroup");
									if(account){
									filterGroup.add("ContactFilter",
										Terrasoft.createColumnFilterWithParameter(
											Terrasoft.ComparisonType.EQUAL,
											"Account",
											account,
											Terrasoft.DataValueType.LOOKUP)
											);
									}
									return filterGroup;
							}
							]
					}
				}
			},
			methods: {
						setDefaultCallDirection: function() {
							var query = this.Ext.create("Terrasoft.EntitySchemaQuery", {
								rootSchemaName: "CallDirection"
							});
							query.addColumn("Name");
							var recordId = ConfigurationConstants.Activity.ActivityCallDirection.Outgoing;
							query.getEntity(recordId, function(result) {
								this.setDefaultCallDirectionQueryHandler(result);
							}, this);
						}
					},
			diff: /**SCHEMA_DIFF*/[]/**SCHEMA_DIFF*/
		};
	}
);

 

2. Replaced SectionActionsDashboard

  define("SectionActionsDashboard", ["SectionActionsDashboardResources"], function(resources) {
    return {
        methods: {
				onGetRecordInfoForPublisher: function() {
					var info = this.callParent(arguments);
					info.additionalInfo.account = this.getAccountEntityParameterValue(info.relationSchemaName);
					return info;
				},
				getAccountEntityParameterValue:function(relationSchemaName){
					switch(relationSchemaName){
						case "Lead":
							return this.getMasterEntityParameterValue("QualifiedAccount");
						case "Contact":
						case "Opportunity":
						case "Order":
							return this.getMasterEntityParameterValue("Account");
						case "Account":
							return {"value":this.getMasterEntityParameterValue("Id")};
						default:
							return {};
					}
 
				}
		}
    };
});

With above code, I get the below result in Account section when I open the window to select contact.

Above is the expected result. But when typing in the name on the lookup field instead of opening the selection window all contacts that match the text are displayed(not filtered by Account)

Any idea how to apply the same filter when pulling the list by typing in the lookup field?

 

Like 0

Like

2 comments
Best reply

Hi,

 

Please also add the following method to the CallMessagePublisherPage:

getLookupQuery: function(filterValue, columnName) {
					var esq = this.callParent(arguments);
					var filterGroup = this.getLookupQueryFilters(columnName);
					esq.filters.addItem(filterGroup);
					return esq;
				},

and refresh the page after that. This should result in the needed filtration in the list view of the lookup.

Hi,

 

Please also add the following method to the CallMessagePublisherPage:

getLookupQuery: function(filterValue, columnName) {
					var esq = this.callParent(arguments);
					var filterGroup = this.getLookupQueryFilters(columnName);
					esq.filters.addItem(filterGroup);
					return esq;
				},

and refresh the page after that. This should result in the needed filtration in the list view of the lookup.

That works, thank you!

Show all comments

Hi Team!

 

Can you help us on how to add static folders to:

1. custom section?

2. Creatio OOTB section, where the static folders functionality is not available by default (for example, Contracts)?

I've tried inserting folder of Static type into %Section%Folder, but it works only for the sections where static folder already available in UI. 

Thanks in advance!

Like 0

Like

1 comments

Hello,

 

1. Please be informed that static folders functionality is not available in the custom section. We have created a corresponding query for our R&D team.

 

2. In the basic system version only the following section can have static folders:

employees
process library
process journal
lookups
system settings
As for the Contacts section, static folders are available with the "Marketing" product only.

Show all comments

I'm having an issue where no previously created activities are appearing in the mobile application when toggling to Offline Mode.

Can anyone provide insight on where to look for a fix?

Like 1

Like

1 comments

Hello,

Please follow the same post here.

Show all comments