I've setup my yahoo mail in creatio and I can send emails.

BUT in my "incoming" box in creatio I can't see any email! (looks like it won't sync).

BTW: I can see my sent emails the "outgoing" (so some sync did happen ! )

 

Any idea?  

Like 0

Like

1 comments

Hello Eran,

 

It's hard to say without access to the configuration of the website. Perhaps you have enabled specific folders for the synchronization and Incoming is not one of them.

Please contact Creatio technical support via email support@creatio.com so our team can assist you.

 

Best regards,

Bogdan S.

Show all comments

Hi community,

is it possible to call a procedure inside a script block in a business process ?

A postgres function can't contains commit statements.

A postgres procedure can contains commit statements.

I need to call a postgres procedure.

Like 0

Like

4 comments

Hi Stefano,



This is how we call postgres function with parameter from process script:



Guid usrRecordId = Get<Guid>("UsrRecordId");

StoredProcedure storedProcedure = new StoredProcedure(UserConnection, "UsrSetOpportunityRights")

    .WithParameter("RecordId", usrRecordId)  as StoredProcedure;

storedProcedure.Execute();

Vladimir Sokolov,

Hi Vladimir,

I know this way, but it doesn't work with procedure.

Stefano Bassoli,

 

Hi,

 

The problem here is that the StoredProcedure class calls not stored procedures, but functions and it's so because of the fact that PostgreSQL supports stored procedures starting from 11 version. Currently there is no way to call a PostgreSQL procedure from a business process.

 

Best regards,

Oscar

As I understand, function is performed as one transaction. And if error appears, rollback will cancel all actions.

Show all comments

Hello community,

Is it possible to call BaseEntityEventListener.OnSaving for a specific entity from a business process?

Like 0

Like

1 comments

Hi, 



If the Parent Object of your entity is "Base Entity", all the Event Listeners of Base entity will be triggered during the execution of business processes. 



Best regards,

Yurii 

Show all comments

Hi, 

 

I'd like to set permission for add-on (installed application). 

 

Anyone can help how can I do it please

 

Thanks

Like 0

Like

3 comments

Hello Minh,

 

It depends on the MarketPlace add-on. Let me explain to you on the SQL Executor for Creatio add-on:



In order to set permission rules you need to go to ‘System Designer’, click on ‘Operation permissions’, and select operation named ‘Access to ‘SQL Console Requests section’ (the code is CanUseSqlConsole).  

Having it done you can add or delete access rights for users and groups of users.

 

Right after you complete making these settings, please make logout and login into your account again.

 

Best regards,

Bogdan

Hi Bogdan,

 

Thank you for your reply,

But I cannot find operation 'Access to' SQL Console Requests section, please see picture

Can I add new operation permission and link it to an addon?

 

Kind Regards, 

 

Minh,

 

This operation permission shoud be created automatically after add-on installation. 



Please try to create it manually, if it wasn't created automatically.

 

Best regards,

Bogdan

Show all comments

Hi Team,

 

Please see the below screenshot : 

System users will come top to down while filling the form but since primary manager and secondary manager fields are required, they can't create record in Qualification and Awards detail first without filling the Primary manager and secondary manager fields.

 

How can we correct this that keeping the primary manager and secondary stakeholder required, it shouldn't restrict the user to create records in the details?

 

Many thanks!

 

 

 

Like 0

Like

2 comments

We usualy make such field required on specific stages. So, it is possible to fill the details, but not possible to save in next stage until the fields are filled in

Hello Akshit, 

 

It's not possible to proceed with adding data to details on the record page before filling in the required fields on this page, it's expected behavior and as of now it cannot be changed with basic system tools. 

 

As mentioned by Vladimir, there is a workaround to make the fields required only on the specific stage of the record, so users will be able to fill in the details with data on the previous stage and on the next stage the fields will be required. 

Please find more information about this functionality in the article below and connected articles:

https://academy.creatio.com/docs/user/bpm_tools/dynamic_case_setup/case…



Best regards, 

Anastasiia

Show all comments
Question

Hi community,

the feedback case page (021/0/Nui/Feedback.aspx?vm=FeedbackModule&token=138ce645-68ad-48ee-a24b-b7fa7ed2822d&schemaName=CaseRatingFeedbackPage) appears always in english, on my creatio instance.

There are the localization strings in the client schema "CaseRatingFeedbackPage"

What am I doing wrong?

 

Like 0

Like

6 comments

Hello Stefano,

 

The feedback page is using your web browser settings to choose the appropriate language.

For example, if the browser language is set to English - the feedback page will be in English, if the user uses Russian - the page will open up in Russian, and so on.

 

Thank you,

Artem.

thank you Artem

Artem,

How does the URL of the feedback page is generated, I'm referring to the root URL (mysite.creatio.com/0)



I have set a system setting "SiteURL" to "mysitegateway.creatio.com" but it takes mysite.creatio.com in the smiley links.



But mysitegateway.creatio.com is configured using a proxy server for on-premise setup.





Best regards,

Bhoobalan Palanivelu.

hi Bhoobalan

check the PortalSiteUrl system settings value

 

Stefano Bassoli,

It's empty.

Does this PortalSiteUrl have to be populated as well, same as the "SiteURL" value?



Best regards,

Bhoobalan Palanivelu.

Bhoobalan Palanivelu,

You have to compile both field with

https://mysitegateway.creatio.com/0

Show all comments

Is there a way to send a notification email to contact owners when specific contacts are participating in any of the campaign step? For example, I want to send a notification to owner when a mail sent to a contact is opened. I am trying to stick with only campaign section and campaign flow edit, using campaign elements. 

Like 0

Like

1 comments

Dear Ismet, 

 

using the campaing elements this would be not possible, you would need to use a business process for this. You can create a signal that will be triggered by the condition that you desire. After that you can create in the business process an email that will be automatically sent to the contact owner.                                                                                                                                                        Business process designer article: https://academy.creatio.com/docs/user/bpm_tools/business_process_setup/…

Signals article: 

https://academy.creatio.com/docs/user/bpm_tools/process_elements_refere…

Business process event:

https://academy.creatio.com/docs/user/bpm_tools/business_process_setup/…

 

Thank you for contacting us.

Show all comments

 

Hi Team,

 

I have added one button in detail on clicking of which , it should be automatically navigated towards the next record in the detail. The records are displayed in tile view. Please refer to the screenshot.

 

 

I tried using the following options but they dont seem to work.

 

https://jsfiddle.net/SZKJh/

https://jsfiddle.net/SZKJh/1/

https://jsfiddle.net/r753v2ky/

 

Kindly help.

 

Thanks,

Sarika

Like 0

Like

7 comments
Best reply

Sarika Sharma,

 

Hi,

 

Ok, then something like this should be used:

onNewLineButtonClick: function(){
				var gridDataValue = this.getGridData();
				var gridDataItems = gridDataValue.getItems();
				var requestedActiveRow = this.get("RecordIndexColumn");
				if (requestedActiveRow != null) {
					if (requestedActiveRow &gt;= gridDataItems.length) {
						return;
					}
					var targetActiveRowId = gridDataItems[requestedActiveRow].values.Id;
					this.set("ActiveRow", targetActiveRowId);
					var targetElementId = document.querySelector("[id*=" + CSS.escape(targetActiveRowId) + "]");
					$([document.documentElement, document.body]).animate({
						scrollTop: $("#" + CSS.escape(targetElementId.id) + "").offset().top
					}, 2000);
				}

RecordIndexColumn - is a virtual column where we specify the number of the record to which we should scroll (for example can be a separate field on the page or in the detail). This variable:

var targetElementId = document.querySelector("[id*=" + CSS.escape(targetActiveRowId) + "]");

searches for the detail record on the document (since each detail record has an Id value inside the Id selector of the element on the page).

 

This is not a ready code, but it animates the page to be scrolled to the active row visible in the document.

 

Best regards,

Oscar

Hi Sarika,

 

An example of such a button created for the AccountAddressDetailV2:

 

1) The button code itself:

{
				"operation": "insert",
				"name": "NewLineButton",
				"parentName": "Detail",
				"propertyName": "tools",
				"values": {
					"itemType": Terrasoft.ViewItemType.BUTTON,
					"className": "Terrasoft.Button",
					"style": Terrasoft.controls.ButtonEnums.style.BLUE,
					"tag": "NewLineButton",
					"caption": { "bindTo": "Resources.Strings.NewLineButtonCaption" },
					"click": {"bindTo": "onNewLineButtonClick"}
				}
			}

2) Creating an attribute:

attributes: {
			"ActiveRowIndex": {
				"dataValueType": this.Terrasoft.DataValueType.INTEGER,
				"value": 0
			}
		},

3) The code of the click handler:

onNewLineButtonClick: function(){
				var gridDataValue = this.getGridData();
				var gridDataItems = gridDataValue.getItems();				
				var activeRow = this.get("ActiveRow");				
				for (var i = 0; i &lt; gridDataItems.length; i++) {
					if (gridDataItems[i].values.Id == activeRow) {
							this.set("ActiveRowIndex", i);
						}
				}				
				var currentActiveRowIndex = this.get("ActiveRowIndex");
				var newActiveRowIndex = currentActiveRowIndex + 1;
				var gridDataItemsLength = gridDataItems.length;
				if (newActiveRowIndex &gt;= gridDataItemsLength) {
					return;
				}
				var targetActiveRow = gridDataItems[newActiveRowIndex].values.Id;
				this.set("ActiveRow", targetActiveRow);
			}

As a result after refreshing the page the button will do what is needed - navigation will be performed.

 

Best regards,

Oscar

Hi Oscar,

 

Thanks for your response.

 

I tried the code that you suggested and it is selecting the next record in the row on Clicking the Next Record Button. But the issue is I still have to manually navigate to see the next record that is selected. Kindly suggest me some way that the next selected record automatically gets visible on the screen without me having to scroll towards it.

 

Regards,

 

Sarika

Sarika Sharma,

 

Please clarify what do you mean? I thought you need a button that will select the next record in the grid. Do you want to open it or what? Please provide all the details of the task from the very beginning to the expected result.

 

Best regards,

Oscar

Hi Oscar, 

 

I want the functionality as follows:

As Soon as I click on the 'Next Record' Button, the next record should be automatically scrolled up and comes up in the view without me having to scroll the view of the window.

 

 

Please check the below link for making it clear.

 

https://jsfiddle.net/SZKJh/1/

 

As soon as a number is entered, and GO button is clicked, it redirects to the line with that number. I want the same redirection to occur on incremental basis.

 

Sarika Sharma,

 

Hi,

 

Ok, then something like this should be used:

onNewLineButtonClick: function(){
				var gridDataValue = this.getGridData();
				var gridDataItems = gridDataValue.getItems();
				var requestedActiveRow = this.get("RecordIndexColumn");
				if (requestedActiveRow != null) {
					if (requestedActiveRow &gt;= gridDataItems.length) {
						return;
					}
					var targetActiveRowId = gridDataItems[requestedActiveRow].values.Id;
					this.set("ActiveRow", targetActiveRowId);
					var targetElementId = document.querySelector("[id*=" + CSS.escape(targetActiveRowId) + "]");
					$([document.documentElement, document.body]).animate({
						scrollTop: $("#" + CSS.escape(targetElementId.id) + "").offset().top
					}, 2000);
				}

RecordIndexColumn - is a virtual column where we specify the number of the record to which we should scroll (for example can be a separate field on the page or in the detail). This variable:

var targetElementId = document.querySelector("[id*=" + CSS.escape(targetActiveRowId) + "]");

searches for the detail record on the document (since each detail record has an Id value inside the Id selector of the element on the page).

 

This is not a ready code, but it animates the page to be scrolled to the active row visible in the document.

 

Best regards,

Oscar

Hi Oscar,

Many thanks for your response,

 

I tried the code you've provided above but it seems it is not reflecting any changes or action performed on the screen. I also configured the field "RecordIndexColumn" in section and added incrementing values in each of the records.

 

Sarika Sharma,

 

Hi,

 

It works correctly (almost, it should be modified a little since there is a problem with the MainHeaderSchemaContainer module at the top and the animation of the record (MainHeaderSchemaContainer sometimes can cover the actual record that is the first or the second in the detail list)). Also an example was provided for the AccountAddress detail and the "New line" button there). See the result:

Best regards,

Oscar

Show all comments

Hi Team,

How to upload a image in creatio, and reuse that Image with url in creatio UI.

 

Thanks

Like 0

Like

3 comments

Hello,

 

Could you please specify the exact place (, detail, record, etc)?



What is your business task?



Best regards,

Bogdan

Hi,

In portal section need to show company image logo,So need to upload a image to creatio and reuse in portal section using add web page option.Image not in any pubic network,it exists in local system now so trying to upload it to creatio. Hope You understand the requirement.

 

thanks

ssadula,

 

In order to display a custom image on the portal main page. It can be a banner that conveys the style and spirit of your company. Configure the banner as a separate web page. Create a separate web page on your website similar to the default banner on the portal to display a custom image.

To do this:

  1. Click  → “Set up portal main page.”

  2. Click  → [ Edit ].

  3. Double-click the “Website with image” block.

  4. Specify the title, the page URL, and styles (optional).

  5. Save the changes.

Best regards,

Bogdan

Show all comments

Hi Team 

 

We are trying to generate notification Using Academy Article as everything shows successful but no notification was generated

 

https://academy.creatio.com/documents/technic-bpms/7-11/how-set-push-notifications-mobile-application-users

 

 

For Approval we tried adding section to mobile but nothing was found in section

 

 

 

These are only option available can anyone suggest some workaround over this

 

Thank You So Much

 

Like 0

Like

5 comments
Best reply

Hello Braj,

 

I'll share here the answer that I provided regarding the approvals case so the community has access to this information as well.



In order to be able to use approvals in the mobile app you would need to follow these steps:



1) You need to run the 3 scripts that will be at the end of the message. This will enable some features needed for this functionality.



2) Then you need to flush (clear) the cache of the Redis server and restart the pool application of the site. 



3) Before adding the approval detail to a section in the Mobile application wizard, you need to make sure that approvals are enabled for this section in the main Creatio site. In order to do that, you need to open the Section wizard at the desired section, and you will see the possibility to enable approvals for this section.



4) Then you can open the Mobile application wizard and open the desired workplace. There you can open the desired section,  select "Details setup" and click on "New detail". There you will be able to select the Type, and here is where you can select the approval that you desire.



After that you can log out and log in at the mobile app, and verify the changes.

 

DECLARE @featureCode varchar(max) = 'UseMobileApprovals',

 @featureId uniqueidentifier;

set @featureId = (select top 1 Id from Feature where Code = @featureCode);

IF @featureId is null

BEGIN

 insert into Feature

  (Name, Code)

 values

  (@featureCode, @featureCode);

 set @featureId = (select top 1 Id from Feature where Code = @featureCode);

END;

delete from AdminUnitFeatureState where FeatureId = @featureId;

insert into AdminUnitFeatureState

 (SysAdminUnitId, FeatureState, FeatureId)

values

 ('A29A3BA5-4B0D-DE11-9A51-005056C00008', 1, @featureId);

 

DECLARE @featureCode varchar(max) = 'UseMobileApprovalPushNotifications',

 @featureId uniqueidentifier;

set @featureId = (select top 1 Id from Feature where Code = @featureCode);

IF @featureId is null

BEGIN

 insert into Feature

  (Name, Code)

 values

  (@featureCode, @featureCode);

 set @featureId = (select top 1 Id from Feature where Code = @featureCode);

END;

delete from AdminUnitFeatureState where FeatureId = @featureId;

insert into AdminUnitFeatureState

 (SysAdminUnitId, FeatureState, FeatureId)

values

 ('A29A3BA5-4B0D-DE11-9A51-005056C00008', 1, @featureId);

 

DECLARE @featureCode varchar(max) = 'UseMobileFlutterApprovals',

 @featureId uniqueidentifier;

set @featureId = (select top 1 Id from Feature where Code = @featureCode);

IF @featureId is null

BEGIN

 insert into Feature

  (Name, Code)

 values

  (@featureCode, @featureCode);

 set @featureId = (select top 1 Id from Feature where Code = @featureCode);

END;

delete from AdminUnitFeatureState where FeatureId = @featureId;

insert into AdminUnitFeatureState

 (SysAdminUnitId, FeatureState, FeatureId)

values

 ('A29A3BA5-4B0D-DE11-9A51-005056C00008', 1, @featureId);

 

Best regards,

Dariy

 

 

Hello,

 

We have already a corresponding case from you for our support team. 

 

We will update you there.

 

Best regards,

Bogdan

Bogdan,

Hi Bogdan,

 

It has been 20 days.

Please do check over this as client is escalating this

 

Thank You

Braj Raj singh Kushwaha,

 

hope this finds you well.

 

Unfortunately, we are unable to investigate this issue without having access to the instance. We have requested external access from you but never heard back. Kindly get back to us with the external access provided so that we could look into this.

 

Best regards,

Anastasiia

Hello Braj,

 

the notifications weren't working because the feature UseMobilePushNotifications wasn't enabled. After activating it, I have tested the business process and I could succesfully receive a push notification.

 

Best regards,

Dariy

Hello Braj,

 

I'll share here the answer that I provided regarding the approvals case so the community has access to this information as well.



In order to be able to use approvals in the mobile app you would need to follow these steps:



1) You need to run the 3 scripts that will be at the end of the message. This will enable some features needed for this functionality.



2) Then you need to flush (clear) the cache of the Redis server and restart the pool application of the site. 



3) Before adding the approval detail to a section in the Mobile application wizard, you need to make sure that approvals are enabled for this section in the main Creatio site. In order to do that, you need to open the Section wizard at the desired section, and you will see the possibility to enable approvals for this section.



4) Then you can open the Mobile application wizard and open the desired workplace. There you can open the desired section,  select "Details setup" and click on "New detail". There you will be able to select the Type, and here is where you can select the approval that you desire.



After that you can log out and log in at the mobile app, and verify the changes.

 

DECLARE @featureCode varchar(max) = 'UseMobileApprovals',

 @featureId uniqueidentifier;

set @featureId = (select top 1 Id from Feature where Code = @featureCode);

IF @featureId is null

BEGIN

 insert into Feature

  (Name, Code)

 values

  (@featureCode, @featureCode);

 set @featureId = (select top 1 Id from Feature where Code = @featureCode);

END;

delete from AdminUnitFeatureState where FeatureId = @featureId;

insert into AdminUnitFeatureState

 (SysAdminUnitId, FeatureState, FeatureId)

values

 ('A29A3BA5-4B0D-DE11-9A51-005056C00008', 1, @featureId);

 

DECLARE @featureCode varchar(max) = 'UseMobileApprovalPushNotifications',

 @featureId uniqueidentifier;

set @featureId = (select top 1 Id from Feature where Code = @featureCode);

IF @featureId is null

BEGIN

 insert into Feature

  (Name, Code)

 values

  (@featureCode, @featureCode);

 set @featureId = (select top 1 Id from Feature where Code = @featureCode);

END;

delete from AdminUnitFeatureState where FeatureId = @featureId;

insert into AdminUnitFeatureState

 (SysAdminUnitId, FeatureState, FeatureId)

values

 ('A29A3BA5-4B0D-DE11-9A51-005056C00008', 1, @featureId);

 

DECLARE @featureCode varchar(max) = 'UseMobileFlutterApprovals',

 @featureId uniqueidentifier;

set @featureId = (select top 1 Id from Feature where Code = @featureCode);

IF @featureId is null

BEGIN

 insert into Feature

  (Name, Code)

 values

  (@featureCode, @featureCode);

 set @featureId = (select top 1 Id from Feature where Code = @featureCode);

END;

delete from AdminUnitFeatureState where FeatureId = @featureId;

insert into AdminUnitFeatureState

 (SysAdminUnitId, FeatureState, FeatureId)

values

 ('A29A3BA5-4B0D-DE11-9A51-005056C00008', 1, @featureId);

 

Best regards,

Dariy

 

 

Show all comments