Question

Hi all,

 

Is there a way to use tags in Freedom UI? It was available in Classic UI above the lists.

 

Thanks in advance!

Like 2

Like

1 comments

Hello!

 

In version 8.1.0 tags will be implemented in Freedom UI, the approximate ETA for it is the end of September.

Show all comments

У мене є невеличке недорозуміння пов'язане з обніном інофрмації самого creatio і сторонніми сервісами. Наразі мені потрібно зробити вивантаження даних про лідів  та партнерів в іншу бд, для цього я вирішив використати odata. Зараз я тестую запити через postman і виникає питання, яким методом відбувається авторизація через постмен оскільки при тестуванні самої url адреси в браузері мені надається інформація і помилок не виникає, а коли в postman ввести той самий url скидається типу розмітки, як я розумію на логінацію. Підскажіть можливо вже існуючі сервіси або якісь методи якими можна передати на сторонній сервіс інформацію з creatio, а також на рахунок методів авторизації які є доступними, і якщо там використовуються токени - то де саме їх можна отримати

p.s. сервіс реалізовується на пайтоні

Like 0

Like

2 comments
Best reply

Доброго дня,

якщо ви робите запит в postman відразу на odata скоріше за все вам приходить відповідь що ви не авторизовані. Спочатку треба виконати request  на аутентифікацію як описано тут https://academy.terrasoft.ua/docs/developer/integratsiya_i_vneshnij_api…

запит як описаний тут, наприклад https://academy.terrasoft.ua/docs/developer/integratsiya_i_vneshnij_api…

і отримані cookie BPMLOADER додати в headers наступних запитів, як описано в прикладах тут https://documenter.getpostman.com/view/10204500/SztHX5Qb?version=latest

 

Доброго дня,

якщо ви робите запит в postman відразу на odata скоріше за все вам приходить відповідь що ви не авторизовані. Спочатку треба виконати request  на аутентифікацію як описано тут https://academy.terrasoft.ua/docs/developer/integratsiya_i_vneshnij_api…

запит як описаний тут, наприклад https://academy.terrasoft.ua/docs/developer/integratsiya_i_vneshnij_api…

і отримані cookie BPMLOADER додати в headers наступних запитів, як описано в прикладах тут https://documenter.getpostman.com/view/10204500/SztHX5Qb?version=latest

 

Анастасия Шумейко,

Величезне дякую, дуже сильно допомогли, до цього я не вставляв усі куки

Show all comments

Dear All . In new instalation on server Windows 2022 Creatio version 8.08 I cant login on cratio . On login page doesnt hapen any . In browser console I saw error "Error while sending request 

    response status: 404 (Not Found)

    request url: http://localhost:90/ServiceModel/AuthService.svc/Login

    method: undefined

    request data:" 

Please tell me wher is error seting . I any times see instraction in installation and dont find some inforamtion . 

Thanks a lot .

Like 0

Like

1 comments

Hello,

 

The issue lies within the components. It's necessary to recheck if everything is correctly installed following the article:

https://academy.creatio.com/docs/user/on_site_deployment/application_se…

Show all comments

Hello Community, 

 

Is it possible to change the default filter column when using Search Filter? 

 

I wanted to filter a list page by text in a specific column all the time. But in Search Filter, It changes to Everything on reloading the page. 

How can we set default column for a search filter. 

 

Any suggestions are really helpful.

 

Thanks

Gargeyi.G

 

 

Like 0

Like

1 comments

Hello,

 

Your business task can be only achieved with the help of a separate development process. 

You can use 'entity schema query' filters in particular. Here is the guide on this topic

https://academy.creatio.com/docs/developer/front_end_development/data_o…

You can also use this community post with the example of such logic https://community.creatio.com/questions/default-filter-section

Show all comments

In Calendar Synchronization settings it's now possible only to set the Synchronization period to 1 month, 1 week or 2 weeks:

How is it possible to synchronize the calendar for a wider period (for example 6 months)?

Thanks

Like 0

Like

3 comments

Hello Massimiliano,



Unfortunately, 1 month is the maximum period that can be selected. Selecting a longer period affects mailbox synchronization performance, which is why we do not have such an option for synchronization.

Also, according to our usage statistics, old emails (more than 1-month-old) mostly have no business value, so we don't sync them. 



As a workaround, you can either re-forward them to the mailbox and synchronize your mailbox or create an excel file and import the related data to emails using file import.



However, we have already registered the idea for our R&D team to review this logic in future releases.

Mira Dmitruk,

We are using the Creatio calendar sync, but we are not getting notifications for meetings created more than 1 month in the future. Can you please increase the amount of time that the calendar syncs to the future?

Esther M,


Unfortunately, you can select no more than 1 month of synchronization, and it is not possible to increase this period. At the moment, we also have no workarounds to increase the given limit. 

However, a task has already been registered in our R&D team to consider and implement such a feature in future releases. 


Best regards,
Malika

Show all comments

Dears at community 

 

we are a new startup company and landed with a project for ITSM and would require some help related to scope of work template that can facilitate the user story, use cases, list of features and functionalities that we need to submit to the end client in order to kick off the project. 

 

Urge your support for expert creatio members 

 

thank you, 

 

Regards/Hisham

Like 0

Like

2 comments

Hello,



Welcome.



Community members will be happy to assist you!



Regards,

Orkhan

Thanks Orkhan, looking forward to that

Show all comments

Hi Team,

 

Scenario:

Currently, when we send outgoing emails from Creatio, they are marked as "not processed" in the CTI panel. This means that agents have to manually click on each outgoing email in the CTI panel and mark it as "processed." This manual step can be time-consuming.

 

Question:

Is there a way we can configure Creatio to automatically mark outgoing emails as "processed" when they are sent? 

 

If such automation is possible, could you please provide guidance on which object reference needs to be considered for the CTI panel? Any insights or best practices in implementing this change would be helpful.

 

Thank you all in advance for your assistance

 

Best Regards,

Mayan

Like 0

Like

2 comments

Hi,

 

Such a task can be accomplished by creating a simple business process.

Information about whether an email has been processed or not is stored in the EmailMessageData table in the IsNeedProceed column.

 

For each email created in the system and stored in the Activity table, we also record information about that email in the related EmailMessageData table.



This table is used to display records in the CTI panel.



Therefore, you need to create a process that triggers whenever a new record is added to the EmailMessageData table, where the Role field is 'From' (indicating sent emails), and where the SyncSessionId is not filled in (this column stores the ID of the session that performed synchronization, indicating that the email was sent directly from the email service and not from Creatio). If you want all emails to have the Proceed value, regardless of where they were sent from, you can skip this filtering step.

 

Afterwards, you should update the IsNeedProceed column to false for this record in the EmailMessageData table.



I hope this answers your questions. Thank you for reaching out!



 

Pavlo Sokil,

Thank you so much. I have made the changes, and it is working as expected.

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,

 

I have the following requirement where I need to open the ActivitySectionV2 page from a detail schema. More specifically, I've created a button in a custom detail which, when pressed, opens the ActivitySectionV2 page, as you can see in the following image.

 

In addition to opening the page, this button should transfer the records Contact Id from the detail  to the Activity section. Inside the ActivitySectionV2 page, I'll use these values for the QuickFilters of the Employees.

 

 

To achieve this, I tried using messages between modules. And also, loading the section module through the detail but both didn't work. 

 

Detail Schema

messages: {
			"SetActivityFilters": { 
				mode: Terrasoft.MessageMode.BROADCAST,
				direction: Terrasoft.MessageDirectionType.PUBLISH
			}
},
methods: {
openActivities: function(){
 
				var collection = this.get("Collection");
 
				var contactIds = [];
 
				for(var i = 0; i < collection.collection.items.length; i++){
					if(collection.collection.items[i].values.imdContact !== undefined){
						contactIds.push(collection.collection.items[i].values.imdContact.value);
					}
				}
 
				window.console.log(contactIds);
 
 
 
				//Open Activity + Send Contacts
				this.sandbox.publish("SetActivityFilters", contactIds, [this.sandbox.id]);
				this.sandbox.publish("PushHistoryState", {hash: "SectionModuleV2/ActivitySectionV2"});
 
 
				/*this.sandbox.loadModule("SectionModuleV2", {
					renderTo: "centerPanel",
					//id: "SectionModuleV2_ActivitySectionV2",
					instanceConfig: {
						parameters: {
							ContactIds: contactIds 
						},
						schemaName: "ActivitySectionV2",
						isSchemaConfigInitialized: true,
						useHistoryState: true,
						//isSeparateMode: true,
						//entitySchemaName: "Activity",
				  }
		  });*/
}}

 

ActivitySectionV2

 

			messages: {
			         "SetActivityFilters": { 
				          mode: Terrasoft.MessageMode.PTP,
				          direction: Terrasoft.MessageDirectionType.SUBSCRIBE
			         }
		    },		
            methods: {
             init: function(){
				this.callParent(arguments);
				this.sandbox.registerMessages(this.messages);
				this.processMessages();
 
				//window.console.log(this.parameters);
			},
 
			onRender: function(){
				this.callParent(arguments);
			},
 
			processMessages: function() {
				this.sandbox.subscribe("SetActivityFilters", function(result){
 
					window.console.log("'MessageToSubscribe' received" + result);
 
				}, this, ["SectionModuleV2_CaseSection_CardModuleV2_detail_imdSchema54bae29aDetail1d5019a5imdCaseParticipants"]);
			}}

Could you please tell me if there is any other way I can achieve this requirement and what is wrong with my approach.

 

Thanks in Advance.

 

Best Regards,

Pedro Pinheiro

Like 1

Like

3 comments

Hello Pedro,

 

Current code you shared will open the Activity section indeed, but there is no logic in the code that will add values to the quick owner filter. And it's so since it's impossible to do via the scenario you described. Why: because to set such filtration dynamically the addNonPeriodFilterValue method from the FixedFilterViewModelV2 should be called (just check it in the debugger when selecting owner from the lookup inside the filter) and I found no ways of doing that from the init method of ActivitySectionV2. So you need to find other ways of achieving the business task.

Hi Oleg Drobina,

 

Thanks for the response.

 

Currently, to simplify the problem. I'm just trying to fully open the ActivitySection and print the values that are coming from the detail, without applying the filters.

 

To do this I had to change the initial code, because my activity was not receiving the "SetActivityFilters" message. So, what I did was to load the module instead, using the following code:

methods: {
			onActiveRowAction: function(buttonTag, primaryColumnValue) {
				this.mixins.ConfigurationGridUtilitiesV2.onActiveRowAction.call(this, buttonTag, primaryColumnValue);
			},
 
			init: function(){
				this.callParent(arguments);
			},
 
			openActivities: function(){
 
				var collection = this.get("Collection");
 
				var contactIds = [];
 
				for(var i = 0; i &lt; collection.collection.items.length; i++){
					if(collection.collection.items[i].values.imdContact !== undefined){
						contactIds.push(collection.collection.items[i].values.imdContact.value);
					}
				}
 
				window.console.log(contactIds);
 
				this.sandbox.loadModule("SectionModuleV2", {
					renderTo: "centerPanel",
					id: "SectionModuleV2_ActivitySectionV2",
					instanceConfig: {
						parameters: {
							ContactIds: contactIds 
						},
						schemaName: "ActivitySectionV2",
						isSchemaConfigInitialized: true,
						useHistoryState: false,
					}
				});
			}
}

I followed this post in the community to try to implement this https://community.creatio.com/questions/pass-parameters-section

 

When pressing the "Open Activity" button, I get this error and behaviour:

 

After some debbuging, I found that the context does not have the module that I'm trying to load. Maybe, I'm missing some dependencies.

 

 

Could you please help me understand this issue?

 

Once I figure this out, I will check another approach to apply the filters.

 

Thank you.

 

Best Regards,

Pedro Pinheiro

 

 

 

 

 

 

 

 

To pass values from the detail (in my example it was ContractDetailV2) to the ActivitySectionV2:

 

1) In the ContractDetailV2:

onOpenActivityButtonClick: function() {
				this.sandbox.publish("PushHistoryState", {
					hash: "SectionModuleV2/ActivitySectionV2",
					silent: false,
					stateObj: {
						value: "5266908c-f3d1-4c5c-9097-f0dfbdbf900b",
						displayValue: "Email Supervisor"
					}
				});
			}

Here you can pass an array in the "value" property of the stateObj object as well.

 

onOpenActivityButtonClick is a click-handler for the button:

{
                "operation": "insert",
                "name": "OpenActivityButton",
                "parentName": "Detail",
                "propertyName": "tools",
                "values": {
                    "itemType": Terrasoft.ViewItemType.BUTTON,
                    "caption": {"bindTo": "Resources.Strings.OpenActivityButtonCaption"},
                    "click": {"bindTo": "onOpenActivityButtonClick"},
                    "style": Terrasoft.controls.ButtonEnums.style.TRANSPARENT,
                    "enabled": true
                }
            }

 

2) In the ActivitySectionV2:

define("ActivitySectionV2", [], function() {
	return {
		entitySchemaName: "Activity",
		details: /**SCHEMA_DETAILS*/{}/**SCHEMA_DETAILS*/,
		diff: /**SCHEMA_DIFF*/[]/**SCHEMA_DIFF*/,
		methods: {
			init: function() {
				this.callParent(arguments);
				var shouldUpdateFilter = this.checkHistoryState();
				if (shouldUpdateFilter.value &amp;&amp; shouldUpdateFilter.displayValue) {
					var tag = "Owner";
					var row = {
						value: shouldUpdateFilter.value,
						displayValue: shouldUpdateFilter.displayValue
					}
					console.log("Row value: " + row.value + " and Row displayValue: " + row.displayValue);
				}
			},
			checkHistoryState: function() {
				var historyState = this.sandbox.publish("GetHistoryState");
				return historyState?.state;
			}
 
		}
	};
});

As a result you will be able to get passed values in the init method execution:

Show all comments

Hello,



I've made a page with Creatio Freedom UI and need to be able to have 1 button on the page that both adds a record and then redirects the user to a specific page.  It appears I can only have the button do 1 action or the other (save a record or open a specific page).  To do both actions with one button, I instead tried creating a business process for this.  It's adding the record fine but I am having trouble getting it to open a specific page afterwards.  Opening an edit page and choosing the home page I want the user to be directed to does not work and instead.  I think it's because edit pages on a business process are treated like tasks and are not simply a redirect. 



Should I use a script element instead to redirect the user to a specific page after the record is added in the business process or is there a more simple way to do this?

Like 1

Like

2 comments

This can be done with custom code on the Freedom UI page. You'd need to wire up the button to execute a custom request on the page: 

See https://customerfx.com/article/adding-a-button-to-execute-custom-code-o…

Then, in that custom request, you'd need to first save the page:

See https://customerfx.com/article/saving-a-page-before-some-action-on-a-cr…

And then open the other page: 

See (for opening an add or edit page): https://customerfx.com/article/opening-an-edit-page-to-add-or-edit-a-re…

Or (if the page isn't a record page): https://customerfx.com/article/navigating-to-a-page-via-code-in-a-creat…

Ryan

Ryan Farley, thank you so much for this detailed, thoughtful reply and all the articles you've written!  I was able to get the button to save a record and redirect to the desired page after with custom code. 

Show all comments