Studio_Creatio
Studio_Creatio_enterprise_edition
8.0

Hello Community,

 

I want to Create the Custom Page as shown in Image where, I can List the Custom UI Card Based on the Table Rows of Creatio. also I want to run the particular Process of the Creatio on click of the Button.

 

Give me any reference for this, if available.

 

Regards,

Ajay K

 

Like 0

Like

1 comments
FreedomUI
Javascript
Studio_Creatio
8.0

Hi,

I'm trying to add a live calculated field onto a Freedom List.

When 2 columns are set (e.g. Start Time, End Time) I want the Duration Column to be updated with the time difference. (With the picture below the Duration column should be set to "1hr")

 

 

Is there a way to do this?

Like 1

Like

1 comments

Hi,
 

You can implement logic similar to the DurationInMinutes and DurationInMinutesAndHours fields in the Activity object (CrtCoreBase).
 

You can check the logic for calculating these columns and build similar event-driven logic (an object-level process).
 

Method: CalculateDurationOnSaving();
 

img1


img2

img3


Alternatively, you can build a business process that will trigger when the Start Time or End Time fields are changed and calculate the required Duration field using a formula.

https://academy.creatio.com/docs/8.x/no-code-customization/bpm-tools/business-process-setup/process-formulas

Best regards,
Pavlo!

Show all comments

Hi team,

 

I want to show/hide a custom button depending on a field of an opportunity, in the page what I do is to create an attribute with dependencies to this field to call the method that points to the property of the diff  (visible/enabled), but in the section I can't do this. I would like to know how I can make the same thing of the example below in the section.

 

The attribute I made in the page: 

"SubastaValidate": {
               dependencies: [{
                   columns: ["Stage"],
                   methodName: "ShowButton"
               }]
           },

In the diff of the page add the property:

"enabled": {
                        "bindTo": "ShowButton"
                    },



Thanks in advance,

Nicolas

Like 0

Like

1 comments

Hello Nicolas,
Thank you for you question.

If i understood you correctly you successfully binded field value change to attribute in your record page but you could not achieve same result in the section page. It might be because those two pages have different fields (e.g in record page there are fields related to that specific record and in section page there is information related to the list of those records). 

In section page i created a method that checks status of selected row. If the status of an order is completed than a button becomes hidden.

Here is how i accomplished that: 


Alternatively you can directly subscribe to changes in ActiveRow in your section page by overriding init method as follows:

Hope this helps and let me know if you have any other question left!

 

Show all comments
Studio_Creatio
7.18

The records of associations in the MailboxFoldersCorrespondence and ActivityFolder tables exist, but when an email arrives, the Activity is not linked to the ActivityFolder, ActivityInFolder is empty. As a result, all emails are not associated with the folder on the mail server in which they are located.

How can I fix it?

 

Like 0

Like

1 comments

Dear Sergey,

 

Could you please provide us with an example and more details of this issue?

 

Thank you in advance!

Show all comments
Studio_Creatio
8.0

Greetings, we want to setup a trigger campaign to send to those members that turn 18 years of age. We have a dynamic folder setup for just these audiences. The question is, what would be the correct filter logic? This is what is currently setup in Creatio so far.

 

Any help is greatly appreciated. Thanks.

Like 0

Like

3 comments

Hello,

Could you clarify whether the goal is to send emails to the contact specifically on their birthday, or is it to send a newsletter to all contacts who have turned 18 this year?

Pavlo Sokil,

The goal is to send emails to the contacts that meet this criteria on their birthday or two days after their birthday.

Lucas Centeno,

 

Unfortunately, regular filtering won't work for these purposes.

 However, you can implement the following approach:
 

Create a separate column of type "Date" in the "Contact" object, for example, "18YearsDate," and populate it using a business process.


 This process should take the birth date from the "Birth Date" column, add 18 years to it, and set this value in the "18YearsDate" column. After that, you can set up a filter as follows:

18YearsDate = Today 
OR
 18YearsDate = Tomorrow, etc.
 

You can implement this calculation for the column using a formula  in the business process.
 

I hope this helps!

Show all comments

Can Some one guid me through screenshot

Like 0

Like

1 comments

To format values in a printable you need to create a macro. The macro will format the value when placed into the Word doc when the printable is run. See an example here: https://customerfx.com/article/creating-custom-macros-to-format-values-in-word-printables-for-creatio-formerly-bpmonline/

Ryan

Show all comments
FreedomUI
Studio_Creatio
lookup
display
8.0

Hello,

 

I have a Freedom UI Page with a city field filter to show only US cities. If the user starts typing a city that belongs to more than 1 state, the user does not have a way of choosing the right one, without using the search icon where, by default we have the state shown on the search results. 

 

Ideally, we just want to display the state on the search results and not on the city field itself on the page, as we do have another field showing the State for the city selected.

 

Thanks,

Jose

 

 

 

Like 2

Like

2 comments

yes, adding the view for more columns in the dropdown field would be great !

Hello,
We created a dedicated task for our R&D team in order for them to review the possibility of adding this logic to a dropdown list. For now, you can use "Selection window"

Show all comments
Studio_Creatio
8.0

Does Creatio can counts in years? I would like count how many years "Contacts" have.

Like it works for days - .Totaldays

Like 0

Like

4 comments

Hello,
Please provide us with a little bit more information on your task, so we can better understand your idea.

Hi. I have a day of birthday filed in Contacts. And I want send a reminder po responsable for the contacts when left 7 day to day of birthday. My idea is create a BP which will start at 1:00 everyday and analizing this field.

Antonii Viazovskyi,

Hi. I have a day of birthday filed in Contacts. And I want send a reminder po responsable for the contacts when left 7 day to day of birthday. My idea is create a BP which will start at 1:00 everyday and analizing this field.

Дмитро Вовченко,

This functionality can only be implemented by development tools. We advise you to pay attention to how the GenerateAnniversaryRemindings business process is implemented and use it as an example.

Show all comments
mobile
Studio_Creatio
8.0

Hello friends!

 

We've been working on creating custom branded mobile applications for android and iOS.  Still working on finishing iOS, but Android is done, with the exception of one issue that I cannot resolve.  Everything is branded using our images, with the exception of the launcher icon itself.  I added all of our custom images to the src folder and all of the images in the application were updated as expected (including notification icons). Any icon used for the launcher should be in the "mipmap_xxxx" folders and we have added equivalents in the SDKConsoleUtility/src folder.  We know this is working, since the notification icons are using our custom icons.  As a final attempt, I replaced every instance of a creatio icon image I could find in all of the source repository files and still the launcher icon is the creatio icon.  
 

Has anyone successfully custom branded the mobile app for Android and was able to use a custom application launcher icon?


As a reference, we've been following the academy article here:  Brand and publish mobile apps basics | Creatio Academy

Please let me know what I'm missing.

Thank you!

Jeremy


 

Like 0

Like

4 comments

Hello Jeremy,

To change the launcher icon you have to specify the "app_icon_path" in the SDK.config file from the article that you've mentioned

For example:

"app_icon_path": "../res/AppIcon.png"

Anhelina,

Hi Anhelina

 

The config value "app_icon_path"  is for iOS only, according to the documentation here: SDKConsole utility parameters | Creatio Academy

 

For Android, there is a value for "native_resources_path" that is the path to the src folder with the custom image resources.  This value is set and working as all of other images in the app have been referencing our custom images there. It's just not using our image for the application launcher icon.

 

Any ideas?

 

Jeremy Couzens,

It usually works with native_resources_path for Android. The default folder is res/android/res, and folders with resources should be placed inside, as is done in Android projects. The directory can contain subdirectories with drawable, drawable-xhdpi, and other icons.

Maybe the reason is the file type? You can use the xml and webp
In another case, it's hard to understand the reason remotely.

Hi Jeremy, 

I'm currently working on the branding of the mobile application. 
Can you tell me how did you change the login page logo, by default it's the bpm'online logo and I cannot make it change to our custom image.

Show all comments

Hello!

On a page, I want to be able to create a pop-up after a certain action, and also, after completing another separate action, to refresh the page. I have 2 business processes, which post the messages using Script Tasks

First Business process:
var userConnection = Get("UserConnection");
Terrasoft.Configuration.MsgChannelUtilities.PostMessage(userConnection,"PopupReturnedMailSent", "Mail has been sent to client!");
return true;

Second Business process:
var userConnection = Get("UserConnection");
Terrasoft.Configuration.MsgChannelUtilities.PostMessage(userConnection,"RefreshPage","");
return true;

In my client module, I wrote the following code:
init: function() {
    this.callParent(arguments);

    Terrasoft.ServerChannel.on(Terrasoft.EventName.ON_MESSAGE, this.onServerMessageReceived, this);
    this.subscribeForWebsocketEvents();
},

onServerMessageReceived: function(scope, message) {
    var sender = message && message.Header.Sender;

    if (sender === "PopupReturnedFlowApiError") {
        Terrasoft.showInformation("An error occured. Please retry."); //Opportunity Inactive
    }

    if (sender === "RefreshPage") {
        this.reloadEntity();
    }
},

destroy: function() {
    Terrasoft.ServerChannel.un(Terrasoft.EventName.ON_MESSAGE, this.onServerMessageReceived, this);
    this.unsubscribeForWebsocketEvents(); 
    
    this.callParent(arguments);
},

subscribeForWebsocketEvents: function() {                 
    this.Terrasoft.ServerChannel.on(this.Terrasoft.EventName.ON_MESSAGE,                     
                                    this.onWebsocketMessage, this);             
},             
unsubscribeForWebsocketEvents: function() {                 
    this.Terrasoft.ServerChannel.un(this.Terrasoft.EventName.ON_MESSAGE,                     
                                    this.onWebsocketMessage, this);             
}

I get the following error in the console:


The functionality is still working, but I get these errors in console. I noticed that the Refresh sender doesn't need subscribeForWebsocketEvents and unsubscribeForWebsocketEvents functions, but I think these are needed for the pop-up sender.
 

Like 0

Like

2 comments

In the subscribeForWebsocketEvents and unSubscribeForWebsocketEvents you're referencing a function named onWebsocketMessage but your actual function is named onServerMessageReceived.

That is the cause of the error. Update those functions to use onServerMessageReceived.

Ryan

Good morning Ryan Farley,

 

Thank you, I thought onWebsocketMessage is a core function that must be called for pop-up, but it works without it, as you said :)

 

Final code:

init: function() {
	this.callParent(arguments);
	// register our function to receive messages
	Terrasoft.ServerChannel.on(Terrasoft.EventName.ON_MESSAGE, this.onServerMessageReceived, this);
},
 
onServerMessageReceived: function(scope, message) {
	var sender = message && message.Header.Sender;
 
	if (sender === "PopupReturnedFlowApiError") {
		Terrasoft.showInformation("An error occured. Please retry.");
	}
 
	if (sender === "RefreshPage") {
		this.reloadEntity();
	}
},
 
destroy: function() {
	// unregister so we no longer get messages
	Terrasoft.ServerChannel.un(Terrasoft.EventName.ON_MESSAGE, this.onServerMessageReceived, this);
	this.callParent(arguments);
},
Show all comments