Hi,



Is there a possibility in Freedom UI to have number comparisons directly in the same dashboard metric tile with increasing/decreasing indicators & colors ?



Dummy example here below with YoY indicators (+ with color coding):



Like 0

Like

3 comments

Hello,

 

Unfortunately, it is not possible to do it by means of basic functionality.

We have registered an idea and forwarded it to our R&D team for further review.

 

Best regards,

Yuliya

@Damien, 

 

I had asked this question last year as Creatio has been using visuals of this functionality in their marketing since at least Q2 last year.

 

I was told we would start to see this in 8.0.6 but my guess would be, according to the latest roadmap I have seen, is that this will be 8.1 -8.2 releases. 



I feel the analytics OOTB functionality is lagging drastically behind other platforms. I am very much also hoping there is some OOTB reporting functionality that is going to be added as users really struggle with the UI from the excel add-on. 

 

I should add that I am impressed by the latest features, so I am sure we will get there eventually.



 

Harry,

 

thanks for you additional comments and very informative screenshot :)



Indeed, analytics & forecast is far behind what competitors (major and smaller) are capable of doing on the market. (Eg: simple changing numbers appeareance from 300,000.00 to 300K or 0.3M; adding a currency $ or CHF, or USD directly on the graph etc, have been around for more than a decade, and are not enhanced missing functionalities such filtering lists based on charts selection vs just a field or lookup (without bringing to a new list page), adding a fixed "objective" line, or the one mentioned here above -- ). Feels more like OOTB analytics is playing a rather slow and late catchup...



From the detailed roadmap, wondering what will actually be available as "official release" on planned quarters vs beta releases😉.

 

Also impressed with the potential of the new crt packages. Hopefully, a steady rythm of new functionality releases will pick up the pace again after 8.1 release "brings out of beta" Freedom UI and composability.

Show all comments

Hi Everyone,

 

We have 2 different types of rates for Customers. One is when the Order date is within Weekdays (Monday-Friday) and the other is for Weekends (Sat-Sun). We have an Order date/time field in our orders. Now is it possible to write a formula that finds out that using that date/time field to determine if the day is Weekday, then it uses the Weekday rate in the business process otherwise it uses the weekend rate?

 

I am looking into DayOfWeek() function but am unsure how to use it in the process. Also, this page is created in Freedom UI if that makes any difference. Thanks in advance!

Like 1

Like

4 comments

Bump!

Any help with writing this Formula? I need to write a formula that differentiates my Order Pickup time (Date/Time field) from Weekdays and weekends

Hi Hassan, 



You need to use the DayOfWeek property of the DayTime class in the formula. 

 

Create a new boolean parameter called IsWeekday 

Create a new formula element in your business process and populate it with the following : 



"YourDateTimeField".DayOfWeek > 0 && <=5 

 

Then, based on the value of your IsWeekday parameter you can proceed with calculating the rate for the order. 

 

Best regards,

Yuri.

Yurii Sokil,

Thank you, Understood

 

Show all comments

Hi Everyone,

 

Is it possible to refresh of a page (Freedom UI Page) through the business process? Currently, we have multiple business processes running in our Freedom UI Order page and the client has to do a manual refresh every time. So I was wondering if it's possible to automate it as well through the process? I know that it is possible in Classic UI and I have seen the Marketplace app for it as well but that doesn't work in Freedom UI. So any ideas?

Like 2

Like

3 comments
Best reply

To do this in a Freedom UI page, this article shows how to receive the server message:

https://customerfx.com/article/receiving-server-side-messages-in-a-creatio-freedom-ui-page/

 

Once the message is received, you can refresh the page using the code outlined in this article:

https://customerfx.com/article/refreshing-reloading-page-or-list-data-on-a-creatio-freedom-ui-page/

 

Also, for Freedom UI, there is a new option where you can set an entity to always automatically refresh the page when it’s updated in a process, as an alternative approach to the above. See https://customerfx.com/article/automatically-refreshing-a-creatio-freedom-ui-page-or-list-after-updating-a-record-in-a-process/

 

Ryan

+1 for Freedom UI

To do this in a Freedom UI page, this article shows how to receive the server message:

https://customerfx.com/article/receiving-server-side-messages-in-a-creatio-freedom-ui-page/

 

Once the message is received, you can refresh the page using the code outlined in this article:

https://customerfx.com/article/refreshing-reloading-page-or-list-data-on-a-creatio-freedom-ui-page/

 

Also, for Freedom UI, there is a new option where you can set an entity to always automatically refresh the page when it’s updated in a process, as an alternative approach to the above. See https://customerfx.com/article/automatically-refreshing-a-creatio-freedom-ui-page-or-list-after-updating-a-record-in-a-process/

 

Ryan

Thanks Ryan, you rock as always

Show all comments

Hi there! We are developing an application and want to add a custom channel provider. We follow this guide, and stuck on 4. Implement the conversion of an incoming message step. 

 

After adding completely the same converted class and publishing it, we receive 

The type or namespace name 'OmnichannelProviders' could not be found (are you missing a using directive or an assembly reference?) compilation result. 

 

As the guide suggests, this class should be added to Custom package and it is working ok in this case, however we need to add it to our application's package so it can be exported and installed. Is it possible? 

Like 0

Like

2 comments
Best reply

Hello,

 

Have I understood everything correctly and you develop this functionality in an assembly-package? If you uncheck this package option "Compile into a separate assembly" do you have the same error message?

 

Thank you!

Hello,

 

Have I understood everything correctly and you develop this functionality in an assembly-package? If you uncheck this package option "Compile into a separate assembly" do you have the same error message?

 

Thank you!

Oleg Drobina,

Correct, we have this option enabled by default and haven't changed it.

After unchecking this checkbox everything works like a charm. 



Thank you very much! 

Show all comments

Hi,

 

In the classic UI, it was possible to display the image fields on list pages (like for Products). As I am experiencing in the Freedom UI, if I add an image field to the list, the image doesn't display.

 

Is it possible to display images in a list in Freedom UI?

Like 1

Like

1 comments

Hello,

 

Unfortunately, there is no option to display the image fields on list pages in Freedom UI. 

We have registered an idea and forwarded it to our R&D team for further review.

 

Best regards,

Yuliya Gritsenko

Show all comments

Hi Community,

 

Is there a way to get the id of the attachment that has been generated through Process file in a business process as illustrated in file attached?

 

The idea is to read the id of this generated report to apply custom access rights.

 

 

Thank you for your help,

Like 0

Like

1 comments

I do wish it would return the ID, however, since it *can* create multiple files for whatever matches the filter conditions it's not always a single ID or file created.

What I typically do is do a read immediately after for attachments on the record, sorted by Created On desc, and also use the Name of the file based on the naming of the printable used. It's not ideal but has worked for me.

Ryan

Show all comments

Hi Community,

I have restored a cloud instance, locally. In Cloud the functionality (FileApiService) works.

The problem I am facing is that I can not upload files in the Attachments object (ex AccountFile) in the local instance.

 

Console

Console Response is in the attached file

File attachments
Like 0

Like

2 comments
Best reply

Good day,

 

Is it possible that the cloud instance was set up to upload the files to an S3 storage?

Please try changing the ActiveFileContentStorage setting to the database and compiling the system.



After that please try uploading the file again.

Thank you.

I will re-upload the Console Response , because the text file can not be opened.

{
    "errorInfo": {
        "errorCode": "NullReferenceException",
        "message": "Object reference not set to an instance of an object.",
        "stackTrace": "   at Terrasoft.Core.AppConnection.get_S3ConnectionParameters()\r\n   at Terrasoft.File.S3.Settings.S3ConnectionSettingsProvider..ctor(AppConnection appConnection)\r\n   at DynamicInjectord7776e6fbfbf47f3aaef1f7b3f02b5c5(Object[] )\r\n   at Ninject.Activation.Context.ResolveInternal(Object scope)\r\n   at Ninject.Activation.Context.Resolve()\r\n   at Ninject.KernelBase.Resolve(IRequest request, Boolean handleMissingBindings)\r\n   at Ninject.Planning.Targets.Target`1.ResolveWithin(IContext parent)\r\n   at System.Linq.Enumerable.WhereSelectArrayIterator`2.MoveNext()\r\n   at System.Linq.Buffer`1..ctor(IEnumerable`1 source)\r\n   at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)\r\n   at Ninject.Activation.Providers.StandardProvider.Create(IContext context)\r\n   at Ninject.Activation.Context.ResolveInternal(Object scope)\r\n   at Ninject.Activation.Context.Resolve()\r\n   at Ninject.KernelBase.Resolve(IRequest request, Boolean handleMissingBindings)\r\n   at Ninject.Planning.Targets.Target`1.ResolveWithin(IContext parent)\r\n   at System.Linq.Enumerable.WhereSelectArrayIterator`2.MoveNext()\r\n   at System.Linq.Buffer`1..ctor(IEnumerable`1 source)\r\n   at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)\r\n   at Ninject.Activation.Providers.StandardProvider.Create(IContext context)\r\n   at Ninject.Activation.Context.ResolveInternal(Object scope)\r\n   at Ninject.Activation.Context.Resolve()\r\n   at Ninject.KernelBase.Resolve(IRequest request, Boolean handleMissingBindings)\r\n   at Terrasoft.Core.Factories.ClassFactory.&lt;&gt;c__DisplayClass16_0.&lt;Get&gt;b__0()\r\n   at Terrasoft.Core.Factories.ClassFactory.GetInstance[T](Func`1 action)\r\n   at Terrasoft.File.StorageInstanceFactory.CreateContentStorage(FileMetadata fileMetadata)\r\n   at Terrasoft.File.File`2.&lt;InvokeOnContentStorage&gt;d__32.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at Terrasoft.File.File`2.&lt;WriteAsync&gt;d__45.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at Terrasoft.Common.Threading.AsyncPump.Run(Func`1 asyncMethod)\r\n   at Terrasoft.Configuration.FileUpload.FileUploader.Upload(IFileUploadConfig fileUploadConfig)\r\n   at Terrasoft.Configuration.FileUpload.FileUploader.UploadFile(IFileUploadConfig fileUploadInfoConfig)\r\n   at Terrasoft.Configuration.FileUpload.FileUploader.UploadFile(IFileUploadInfo fileUploadInfo, Boolean isSetCustomColumns)\r\n   at Terrasoft.Configuration.FileApiService.UploadFile(Stream fileContent)"
    },
    "success": false,
    "nextPrcElReady": false,
    "queryId": null,
    "responseStatus": {
        "ErrorCode": "NullReferenceException",
        "Message": "Object reference not set to an instance of an object.",
        "StackTrace": "   at Terrasoft.Core.AppConnection.get_S3ConnectionParameters()\r\n   at Terrasoft.File.S3.Settings.S3ConnectionSettingsProvider..ctor(AppConnection appConnection)\r\n   at DynamicInjectord7776e6fbfbf47f3aaef1f7b3f02b5c5(Object[] )\r\n   at Ninject.Activation.Context.ResolveInternal(Object scope)\r\n   at Ninject.Activation.Context.Resolve()\r\n   at Ninject.KernelBase.Resolve(IRequest request, Boolean handleMissingBindings)\r\n   at Ninject.Planning.Targets.Target`1.ResolveWithin(IContext parent)\r\n   at System.Linq.Enumerable.WhereSelectArrayIterator`2.MoveNext()\r\n   at System.Linq.Buffer`1..ctor(IEnumerable`1 source)\r\n   at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)\r\n   at Ninject.Activation.Providers.StandardProvider.Create(IContext context)\r\n   at Ninject.Activation.Context.ResolveInternal(Object scope)\r\n   at Ninject.Activation.Context.Resolve()\r\n   at Ninject.KernelBase.Resolve(IRequest request, Boolean handleMissingBindings)\r\n   at Ninject.Planning.Targets.Target`1.ResolveWithin(IContext parent)\r\n   at System.Linq.Enumerable.WhereSelectArrayIterator`2.MoveNext()\r\n   at System.Linq.Buffer`1..ctor(IEnumerable`1 source)\r\n   at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)\r\n   at Ninject.Activation.Providers.StandardProvider.Create(IContext context)\r\n   at Ninject.Activation.Context.ResolveInternal(Object scope)\r\n   at Ninject.Activation.Context.Resolve()\r\n   at Ninject.KernelBase.Resolve(IRequest request, Boolean handleMissingBindings)\r\n   at Terrasoft.Core.Factories.ClassFactory.&lt;&gt;c__DisplayClass16_0.&lt;Get&gt;b__0()\r\n   at Terrasoft.Core.Factories.ClassFactory.GetInstance[T](Func`1 action)\r\n   at Terrasoft.File.StorageInstanceFactory.CreateContentStorage(FileMetadata fileMetadata)\r\n   at Terrasoft.File.File`2.&lt;InvokeOnContentStorage&gt;d__32.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at Terrasoft.File.File`2.&lt;WriteAsync&gt;d__45.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at Terrasoft.Common.Threading.AsyncPump.Run(Func`1 asyncMethod)\r\n   at Terrasoft.Configuration.FileUpload.FileUploader.Upload(IFileUploadConfig fileUploadConfig)\r\n   at Terrasoft.Configuration.FileUpload.FileUploader.UploadFile(IFileUploadConfig fileUploadInfoConfig)\r\n   at Terrasoft.Configuration.FileUpload.FileUploader.UploadFile(IFileUploadInfo fileUploadInfo, Boolean isSetCustomColumns)\r\n   at Terrasoft.Configuration.FileApiService.UploadFile(Stream fileContent)",
        "Errors": null,
        "Meta": null
    },
    "rowsAffected": -1
}

 

Good day,

 

Is it possible that the cloud instance was set up to upload the files to an S3 storage?

Please try changing the ActiveFileContentStorage setting to the database and compiling the system.



After that please try uploading the file again.

Thank you.

Show all comments

Hi Everyone. I have a custom Orders screen, in which we assign orders to different catchers. So we simply have a list of catchers from which we can select catchers and then populate them in the below list. But we are looking to further move to an advance level. Our plan is to somehow show list of catchers that are available and not available. Initially we planned to display 2 different lists, one those are available and second that are not available while making a record in our Orders.

 

The availability depends upon the catcher. If the catcher is in a previous order with time less 12 hours. Then he is not available. Is this possible within Creatio? If so, then a short guide to how it is possible would be great! Thanks!

Like 1

Like

1 comments

Hi, I have a formula field in my Customer Orders page which is created in Freedom UI. There is Gross value field, that is a multiplication of 2 different other fields. I have tried two different approaches. One with having a Formula in my Business Process but it is giving "Formula value error: Cannot convert type "Decimal" to "Entity" " Error.

 

Additionally, I tried to use Modify Data too, to do the same and it doesn't gives any error but it also doesn't works. It doesn't give the value from formula. How can I make this work?

Like 1

Like

2 comments

BUMP

Hi!

 

The error 'Cannot convert type "Decimal" to "Entity" indicates that you are trying to save the value to the field of entity type. 

It can occur in case you are using the wrong type of parameter.



To make your process work, you need to create a parameter of decimal type to use in the formula. Here you can check the example for Hours values. You can create a formula by comparison.



Please check how the formulae work in our academy and how to work with the parameters: https://academy.creatio.com/docs/user/bpm_tools/process_elements_refere…

Show all comments

Hi all,

 

I wanted to make a column in a detail list view as a link. So that when I click on that link, it will open that detail record. How can I achieve this?

Please note that this detail is non-editable and created based on a custom object which is not a section also. (Purely a detail created based on a new custom object.)

 

I tried the below articles already, and no luck so far.

https://community.creatio.com/questions/open-section-record-clicking-de…

https://community.creatio.com/articles/how-make-url-string-field-clicka…

 

Kindly help me resolve this issue.

 

Thank you.

Geeviniy

Like 0

Like

1 comments

Hello!

 

Your business task could be achieved only by development. 



The possible ways of accomplishing the task are described here: https://community.creatio.com/questions/convert-text-field-hyperlink#co…. Check it out!

Show all comments