Hi Community,

Using tile view, I am able to display the image on grid. But our client wanted to use list view. How we can possibly show the image on list view?

Like 0

Like

7 comments

Hello Fulgen!



Unfortunately, there is not such functionality that allows you to show image in list view. Tile view should be used in such cases. 



However, you may try to create your custom view where everything you need will be displayed. To implement it, please check basedataview schema. Also scheduledataview schema (calendar view in activities) may helpful.  



Regards,

Alex

Alex_Tim,

Thank you Alex. I am also trying to figure out on tile view how the image was shown but unfortunately I cannot find the exact methods behind this image dsiplay. Do you have any idea?

Fulgen Ninofranco,

Try to use the "Lead Stage" column in a lead section as an example. 

Eugene Podkovka,

Thanks Eugene,



I tried in lead section instead of using 'Terrasoft.BaseProgressBar'

 

applyControlConfig: function(control) {

                        control.config = {

                            className: "Terrasoft.BaseProgressBar",

                            value: {

                                "bindTo": "QualifyStatus",

                                "bindConfig": {"converter": "getQualifyStatusValue"}

                            },

                            width: "158px"

                        };

                    }

 

on config method I changed the class name to 'Terrasoft.ImageView', but it didn't work. Below is my code.

applyControlConfig: function(control) {

                

                control.config = {

                    "className": "Terrasoft.ImageView",

                    "value": {

                        "bindTo": "QualifyStatus",

                        "imageSrc": {

                            "bindTo": "getLogo"

                        }

                    }

            

                };

            },

 

 

Fulgen Ninofranco,

It's not possible to say why it doesn't work without debugging. Please debug the functionality, compare it with the one that works on the "QualifyStatus" column and find what's wrong. 

Eugene Podkovka,

Thanks Eugene,

On config method I changed the class name to 'Terrasoft.ImageView' which is originally 'Terrasoft.BaseProgressBar' (Below is my code).

applyControlConfig: function(control) {

                

                control.config = {

                    "className": "Terrasoft.ImageView",

                    "value": {

                        "bindTo": "QualifyStatus",

                        "imageSrc": {

                            "bindTo": "getLogo"

                        }

                    }

            

                };

            },

I debug the functionality and after hitting this method, I am getting the error below.

Fulgen Ninofranco,

It's not enough just to change a part of the code. Please debug the functionality in general and find how it works. Then create your own one from scratch.

Show all comments

Hi Community,

Any idea how I can disable or skip this unsaved changes warning on a specific page.

Like 0

Like

1 comments

Hello Fulgen,

However, this part of functionality is not something that is recommended to modify.

In case it is necessary to remove this window, you may simply override logic that is responsible for this part of functionality. 

Please note on schema "BasePageV2" in package "NUI".  More presisely, methods onCanBeDestroyed, setNotBeDestroyedConfig Please debug it to understand how the functionality should be modified in your case.

Also if you will decide to override this methods, please be careful not to affect other functionality.



Best regards,

Alex

Show all comments

Hi,

I have a requirement to fetch data from an external API. The call is pretty costly in terms of performance and the data size is pretty huge. The good thing is the data is relatively static and doesn't change too often. Also, the data is transient in nature. It needs to be used for some intermediate processing and need not be persisted in the BPM'Online database. Ideally, I would like to store this data in the Redis Cache and set an expiry of 3 hours.

Theoretically, it seems possible to access the Redis Cache and get/set the values from/into the cache through the Source Code Schema. I wanted to confirm if there are any recommended ways of doing it? Are there any C# wrappers/classes that are already built in BPM'Online that we can use to get/set/invalidate cache?

Thanks in advance for all the help...

Like 0

Like

4 comments

Dear Amanthena,

There is no possibility to write directly to the Redis cache from the configuration. However, you can write to the Application level cache, which is stored to the Redis. Please see this article to find more info on Application cache:

https://academy.bpmonline.com/documents/technic-sdk/7-13/recommendations-use-different-types-repositories

The access to the Application cache is through UserConnection. ApplicationCache is a dictionary and to read/write you need to do the following:

userConnection.ApplicationCache[«123”] = “qwe”

Hope you find it helpful!

Anastasia

Thank you for all the life-saving help, Anastasia!

Anastasia Botezat,

 

Hi Anastasia,



In your earlier comment, you give an example of how to store a String in the dictionary. Could you share a working code snippet of how we can cache C# objects inside it? 



Ref - https://community.creatio.com/questions/store-object-icachestore-sessio…;

Dear Shrikanth,

 

In order to store an object in Application cache you should serialize the object to string and save the string. Please find more information about serialization in the article by the link below:

 

https://stackoverflow.com/questions/2434534/serialize-an-object-to-string

 

Best regards,

Norton

Show all comments

I want to use a JQuery plugin that adds an emoticon pop up dialog next to a text area, to use it in a text field in a page. 



I believe I have to create a custom control extending the BaseEdit or TextEdit (which one should I extend?).



How can I include the two files (.css and js) that I need to include in order to work?

I need a high level approach to start the task. Thanks.

Like 0

Like

4 comments

Dear Ignacio,

Please see the articles below, there you can find the instructions on extending existing controls and how to created your custom control:

https://academy.bpmonline.com/documents/technic-sdk/7-13/how-add-custom-logic-existing-controls

https://community.bpmonline.com/articles/how-create-custom-control-element

As for the extending the BaseEdit or TextEdit, you can choose any of them based on your needs. I would recommend to open each of them, check the functionality they are offering and decide which one would fit better considering your business task and plugin.

As for the CSS styles, please see the following thread with the instructions on creating custom styles.

Regards,

Anastasia

Anastasia Botezat,

Thank you very much for your help Anastasia.

I don't see the CSS thread you are mentioning in your answer.

Thanks again.

Ignacio.

Ignacio Alvarez,

I apologize, seems the link didn’t get inserted. Here it is:

https://community.bpmonline.com/questions/how-add-custom-style-control-page-based-condition

Hope you will find it helpful! 

Regards, 

Anastasia

Anastasia Botezat,

Thanks Anastasia!

Show all comments

Hi,

i would like to know how can i run Validations/Actions (like field validations) after i select an item  from a lookup list.

 

Like 1

Like

1 comments

Hello Pedro!



To set validator on some field, usually setValidationConfig method is used.

Validation method, that is set for some field, triggers each time the value in this field changes.



Article about it: https://academy.bpmonline.com/documents/technic-sdk/7-13/how-add-field-validation





If the task is to trigger custom validation methods on other fields it is achievable via dependencies. Please check the example of usage: https://community.bpmonline.com/questions/handler-dependant-detail-update



Best regards,

Alex

Show all comments

Hi,

I have created a detail page with  some fields and a lookup list.

I would like to know how can i hide a specific item from that lookup list after i select it in the field, because i dont want that different fields have the same lookup item.

 

Example:

Lookup List: [A, B, C]

Field 1 -> Lookup List (A),B,C

Field 2 -> Lookup List (B),C

Field 3 -> Lookup List (C)

 

 

 

Like 0

Like

1 comments

Dear Pedro,

You can do this only with the help of the development process. Here is the article for more details: https://academy.bpmonline.com/documents/technic-sdk/7-13/using-filtration-lookup-fields-examples Also, here is the community post that might be helpful as well. https://community.bpmonline.com/questions/lookup-field-filter

Best regards,

Dean

Show all comments

Hello, has anyone else found an issue with email sync where ALL emails will get posted to your company's Account record on the history tab? Since all internal employees are part of our company's account, this means if our employees sync our O365 email accounts with bpm'online, then ALL emails are visible to ALL employees. This could be problematic if a manager is using email to discuss one of their employees compensation or performance.

Does anyone have any suggestions how to avoid this issue?

We like email sync for the visibility and history of communication between our company employees and our clients. However the caveat of intra-company emails being seen by all is not ideal.

Like 0

Like

8 comments

Dear Mitch,

There is no such out-of-the-box functionality that wold record the emails on the Our Company account. It seems like you have some custom Email detail that is based on Contact object. The default settings are as follows http://prntscr.com/nfuwza

Most likely the current one is based on contact object. Please make sure you have the correct detail. 

Best regards,

Dean

Dean Parrett,

We are using the out of the box email detail, the same as what you show in your screenshot. Since I am a contact in our instance, and my company is my account connected to my contact record, any email that syncs from my O365 outlook account to bpm is shown in the email detail on the account page history tab. Access for all of our users is open for accounts and contacts, this means every user can see every email for everyone. For this reason we have stopped using email sync and have instead started using the SmartCloud Connect Marketplace Add-in for Outlook.

Dear Mitch,

We've tried to recreate the same behavior but no emails getting posted in the account history. In this respect, I'd like to suggest you to approach our support team via support@bpmonline.com and investigate the issue in your particular environment.

Best regards,

Dean

Dean Parrett,

I can do that, but isn't this very basic functionality of bpm? If a email enters bpm'online via email sync, and sender's email belongs to a contact in the system, the email gets recorded as an email type activity and that activity record automatically inherits the connections of the contact and account.

We rely on this functionality for case creation, if a contact sends an email to create a case, the case gets created and the contact and account columns get filled in automatically. The problem is this also leads to our own internal emails all getting recorded if we use email sync for our own internal email accounts.

Dear Mitch,

Yes, linking the emails is a basic functionality but the problem here might be in the access rights. Therefore, it is better to approach our support team to have a closer look into the permissions settings to make sure you are provided with the correct solution. Also there might be a change that indeed it is some bug and we would need to investigate it.

Best regards,

Dean

Mitch Kaschub,

Hey Mitch - wondering what was the outcome of this? We are seeing similar issues on our side. 

Hi Alex, here is the resolution provided to me from my support case I had opened:

"Dear Mitch,



There is a feature called MailboxRightsForEmail. This feature divides emails and activities and grant different rights for them. This feature is currently disabled so all emails have the same access rights as activities - thus all users can see all emails. We can enable it on your instance but it will lead to mass data loss if the access rights are not set up. By saying that I mean that if there are users who must see certain emails they will not see it anymore if mailbox is not shared. So before we enable that feature please go through all mailboxes that exist in the system and make sure that all users have proper access rights for them."

 

I intend to explore this feature in a test environment to see how to use it and how well it works. In the interim, our solution is to use the outlook Add-in called "Smartcloud Connect for bpmonline" where users can push one specific targeted email to bpm from their outlook mailbox.

Alex Zarate,

see response above.

Show all comments

Hi Community,

Any Idea how can I create a dialog box with input fields and buttons?

Like 0

Like

6 comments

Dear Fulgen,

Depending on your business task, your can make up a business process with AUTO-GENERATED PAGE or PRE-CONFIGURED PAGE elements. Here are some more details on them:

https://academy.bpmonline.com/documents/technic-bpms/7-13/auto-generated-page-process-element

https://academy.bpmonline.com/documents/technic-bpms/7-13/pre-configured-page-process-element

Basically, the application does not support opening small dialog boxes, but you can use auto-generated page with any fields or buttons that you need. It can appear as a separate page but not as a small dialog box. 

Best regards,

Dean

Dean Parrett,

Thanks Dean.



Auto generated page and pre-configured page will not be acceptable for our client since it will open as full screen. What we want to achieve is only as size as mini page or a dialog box.

How can we open a minipage in client code? maybe we can use mini page, upon clicking a custom button we will load a minipage.

 

Dear Fulgen,

Yes, that would be possible if you are ready to create this window using the development tools. Here are a couple of similar articles that will be helpful. 

https://academy.bpmonline.com/documents/technic-sdk/7-13/adding-pop-summaries-mini-pages-module

https://academy.bpmonline.com/documents/technic-sdk/7-13/creating-pop-summary-mini-page-adding-records

https://academy.bpmonline.com/documents/technic-sdk/7-13/creating-pop-summaries-mini-pages

https://academy.bpmonline.com/documents/technic-sdk/7-13/adding-pop-hints

 

You can also analyze the the any minipage code and create a custom page that would open up upon your preferred conditions, as in your example upon clicking any button. 

Dean

Dean Parrett,

Thanks Dean,

I found below dialog box with text field in BPM online after clicking the new email account. Same as below is our requirement, any idea how we can achieve this?

 

Dear Fulgen,

There are no basic tools in the bpmonline that would allow to open similar boxes. However, we suggest you to analyse the 'ModalBox' as well as 'ModalBoxSchemaModule' schemas code and develop your own dialog windows that would pop up under your preferred conditions. 

Best regards,

Dean

This would be a very useful feature for my client also.

Show all comments

Hi,

I have a requirement to setup BPM'Online in production in an on-premise setup for 100-300 users. I went through the documentation of system requirements for 100-300 users. I have a few questions.

1) Would we need to procure licenses for Microsoft SQL server? Are there any other licenses that we need to procure for any other software component involved in the deployment?

2) Are there any best practices that we can use from a deployment architecture perspective?

3) Is there a docker solution readily available to horizontally scale each of the application components independent of each other? Has it been tried out before in production in any of the implementations? Are there any best practices while using docker in the context of BPM'Online?

Thanks in advance...

 

Like 0

Like

4 comments

Dear Amanthena,

Here are the answers to your questions:

1. In general, the bpmonline licenses are required for using particluar application functionality. As for the software for local deployment, bpmonline doesn't require any licenses. If you are using free Microsoft SQL server software, the application can be deployed without any difficulties. 

2. You may just refer to this chain of articles on how to deploy and set up your environment. It is more than enough for successful application deployment https://academy.bpmonline.com/documents/administration/7-13/installing-bpmonline?document=#XREF_45275_bpm_online_on_site

3. As for now, unfortunately, we do not have any docker solutions. Most possible reason for it is that we already have cloud option for the application deployment.

Best regards,

Dean

Thank you for the info, Dean. Regarding point no. 3 in your comment, sometimes customers would not want to go on cloud citing data security reasons. For such customers, would it make sense to consider a deployment solution on-premise that would make it easy to manage hardware, mainly from a scaling perspective? While exploring Docker as a solution for this, would we have to be aware of some limitations/nuances of the BPM'Online framework that could hinder progress? In the context of Docker, can each of the application components in BPM'Online be horizontally scaled independent of each other?

Dear Amanthena,

We do not have any experience as well as documentation on how to deploy the environment using Docker. Basically it could be possible to deploy the environment using Docker, but since we have no such a solution, we cannot guarantee that the process is going to be successful. If you have any active subscription, you may approach our support team via support@bpmonline.com and request all necessary files for the website deployment. Using them you can try to deploy the application and be the first who find a solution to this question.

Best regards, 

Dean

Thank you, Dean!

Show all comments

Hi Community,

I want to implement remaining time indicator on my custom page, just like what you have in case form. Any idea how can I achieve this?

 

Like 0

Like

1 comments

Dear Fulgen,

Please take a look at CasesEstimateLabel.js schema. It contains the logic for the indicator. On the CasePage.js schema there is a container (SolutionCaptionProfile) where indicator is rendered. 

Please use the code in the CasesEstimateLabel.js schema to create your own module for indicator and then place it on the custom section page.

Regards,

Anastasia

Show all comments