Hello,

i made a module, in freedom-ui mode, to display custom content in Accounts_FormPage. The module init is triggered with crt.HandleViewModelInitRequest handler.



here is the useful module code :

/* AMD module declaration. */
// jshint esversion: 11
define("UsrAccountHistoriqueProduit", ["@creatio-devkit/common"], function(sdk) {
    //
    return {
        //**--------------------------------- Init module -------------------------------**/
        onInitialized: async function($context) {
            const idAccount = await $context.Id;
            const my = this;
            
            /* Declare the class. */
            class UsrAccountHistoriqueProduit extends HTMLElement  {
                constructor(args) {
                    super();
                    this.displaycontent();
                }
                async displaycontent() {
                    var shadowDom = this.attachShadow({mode: 'open'});
                    shadowDom.innerHTML = "";
                    
                    const html = await my.statsOrderProduct(idAccount);
                    shadowDom.innerHTML = html;        
                }
            }

            /* Register the component. */
            customElements.define('usr-historiqueproduit-view-element', UsrAccountHistoriqueProduit);

            /* Register the web component as a view element. */
            sdk.registerViewElement({
                type: 'usr.CustomViewElement',
                selector: 'usr-historiqueproduit-view-element'
            });

        },
...

It works fine at load of the page, then when viewing a second account, i have this error message : 

ERROR DOMException: Failed to execute 'define' on 'CustomElementRegistry':
the name "usr-historiqueproduit-view-element" has already been used with this registry



i think i can clean up the registered viewElement with the crt.HandleViewModelDestroyRequest handler, but i did not found cleaning method in the sdk objet.

 

How should it be done please ?

 

best regards,

Patrice

Like 0

Like

2 comments
Best reply

Hi Patrice,

 

This error message occurs since the element with "usr-historiqueproduit-view-element" selector was already registered upon first init:

sdk.registerViewElement({
                type: 'usr.CustomViewElement',
                selector: 'usr-historiqueproduit-view-element'
            });

In your onEnityInitialized you need to add additional check if the element was registered in DOM or not (for example as proposed here) and as a result of this check perform registration or not.

Hi Patrice,

 

This error message occurs since the element with "usr-historiqueproduit-view-element" selector was already registered upon first init:

sdk.registerViewElement({
                type: 'usr.CustomViewElement',
                selector: 'usr-historiqueproduit-view-element'
            });

In your onEnityInitialized you need to add additional check if the element was registered in DOM or not (for example as proposed here) and as a result of this check perform registration or not.

Thanks Oleg,

i was not aware of the CustomElementRegistry api, i thaught it was a Creatio thing.

Now i know where the documentation is ! (mozilla.org)

 

Best regards,

Patrice

Show all comments

Dear mates,

We are adding to Creatio, our contacts from marketplaces with oData.

We are facing the following issue :

data are well integrated into Creatio, but if we look at the contact sheet, in the area on the top left, the telephone professional is not indicated even though it is present in the contact's communications fields. So in the contact details of the account, we do not directly see the contact's telephone number.

 

How can we add the phone to the contacts left panel in order to see the contact's telephone number directly on the accounts page ?

Thank you !

Nicolas

Like 1

Like

1 comments

Hello,



It`s seems to be an issue that our support should take a look. Please send us an email at support@creatio.com



Best regards,

Serhii

 

Show all comments

Dear mates,

i have installed the application "Conducting surveys for Creatio".

when i go to the Interviews edit page of the section wizard, i get the following error :

Page contains items with the same name in the schema source code in different containers. Changes of these items may be applied incorrectly. It can be fixed in the source code.
 
 
The name "undefined" is used by:
- The item with path CardContentWrapper.CardContentContainer.HeaderContainer.Header.GlbQuestionnaireType.undefined
- The item with path CardContentWrapper.CardContentContainer.HeaderContainer.Header.GlbQuestionnaireType.undefined.undefined
- The item with path CardContentWrapper.CardContentContainer.HeaderContainer.Header.GlbQuestionnaire.undefined
- The item with path CardContentWrapper.CardContentContainer.HeaderContainer.Header.GlbQuestionnaire.undefined.undefined
The name "converter" is used by:
- The item with path CardContentWrapper.CardContentContainer.HeaderContainer.Header.GlbQuestionnaireType.undefined.undefined.converter
- The item with path CardContentWrapper.CardContentContainer.HeaderContainer.Header.GlbQuestionnaire.undefined.undefined.converter

how can i fix this issue ?

Thank you !

Nico

Like 0

Like

2 comments

i created two custom objects for GlbQuestionnaire and GlbQuestionnaireType but the error still appears

LÉZORAY Nicolas,

 

Hello,

 

The developer has published a new version of the add-on with fixes for these errors. Please install the latest version via the link and ensure that everything works as expected.

 

Show all comments

Hello,



In Classic UI we have used related object fields for business rules

How can we do the same in Freedom UI?

 

Thank you!

Like 0

Like

3 comments

@Damien, is this link now offline for you also? Can’t seem to access it! Anything in the roadmap with regards to improved analytics/excel reporting by any chance?!

Hello,

 

Linking a column filter of the current object with another unrelated object is currently not possible. We only operate on the object and its own columns (including columns through direct relationships). 

Show all comments

Hello,

After setting mandatory field for account on form page : street, zip code, city  (see screenshot). I am facing issue creating a new account, after saving it Iget an error message on the mini page bacause of those mandatory fields. I would avoid to add this mandatory on the mini page. Do you have an idea how we can solve the issue?

 

BR

File attachments
Like 0

Like

1 comments

What you need to do is *not* set required on the field itself. This makes it required in all cases. Instead, leave required unchecked and add a business rule on the full page to make the field required. This way, it won't be required on the mini page, but it will be required on the full page.

Ryan

Show all comments

Hi,

 

I have read all documentation on lead channel vs lead source but am still unsure how I should use them.

 

Can someone that is gathering leads from a trade show tell me how they use these categories? Would the channel be 'Trade Show' and the Source be the name of the trade show? Or do you use other fields, such as 'Event' for the name of the trade show?

 

We want to track our leads for every specific trade show and conference we attend.

 

Thanks in advance

Like 0

Like

3 comments

Hello,

 

There are several ways to transfer leads to Creatio. 

1)create lead manually

2)from bulk emails

3) create a lead from the landing page

The way you describe it is for working with a landing page. 

The [ Landing pages and web forms ] section is used to set up integration between Creatio and web forms on your websites. As a result, each time an integrated web form is submitted, a new record is automatically created in Creatio using data from the submitted form. Landing page integration can be used for generating leads, adding customers to event participants, automatic order registration, and more. 

The main idea of Lead channel and source is tracking from which website leads come to our system.

The channel field contains information about the type of web resource from which this lead came (for example social network). The source contains information about the name of the web resource from which the lead came. Creatio uses UTM marks to track lead generation channels. They help to analyze which resource leads come from. More information about in this article: https://academy.creatio.com/docs/8-0/user/marketing_tools/website_track…

More information about how to work with Lead channel and source can be found at the link:https://academy.creatio.com/docs/8-0/user/marketing_tools/website_track…

Viktoriia Hrynchuk,

 thanks for the reply. My question is more geared towards adding a lead manually that we get at an in person trade show. We have decided to use 'Event' as the Channel and then create an Event for each specific trade show to connect the leads to that event.



Ex.

Channel  = Event

Event = Waste Expo 2023



Thanks again for the reply.

Hello,

 

Yes, you can use the Event as Chanel, but after you register the lead you need to manually import it to the necessary event.

Show all comments

Hello community,

I have a requirement to add a button in ShellHeaderToolbar in the MainShell. I tried adding a button but was not successful as ShellHeaderToolbar is not of container type. Is there any workaround for this?

Regards,

Pavan Manne

Like 1

Like

1 comments
Best reply

I did this in my Recently Viewed Records add-on in the marketplace, it wasn't easy and took a bit of a hack. You'll need to override the MainShell  and what I ended up doing is add a button into the shell that I move at runtime into the ShellHeaderToolbar. Feel free to look at the source of that add-on to see what I am doing to accomplish this. Ideally, it would be great if that were a container and you could add items to it, but sadly not the case.

Ryan

I did this in my Recently Viewed Records add-on in the marketplace, it wasn't easy and took a bit of a hack. You'll need to override the MainShell  and what I ended up doing is add a button into the shell that I move at runtime into the ShellHeaderToolbar. Feel free to look at the source of that add-on to see what I am doing to accomplish this. Ideally, it would be great if that were a container and you could add items to it, but sadly not the case.

Ryan

Show all comments

Hi all,

Can anyone tell me how I can add an image from the Image field in the message template.

Thanks in advance

Like 1

Like

2 comments

Hello,

 

Unfortunately, the logic of inserting an image through a macro into a letter template is not implemented in Creatio.

I am broadcasting your wish to the development team to consider the possibility of adding similar logic in future versions.

 

Ok thanks

Show all comments

Hi community,

 

I need to disable the automatic opportunity amount update triggered by "CalckOpportunityAmountAfterSevedScriptTask" in the "OpportunityProductInterest" event

How can I do that?

Which is the best way?

Thank you in advance

Like 0

Like

3 comments

Hello,

One of the ways to disable this logic is to override the method CalckOpportunityAmount, in order to do so you need:

1) Create a replacing object for the OpportunityProductInterest in your package

2) In it click "Open Process"

3) Add the following code to the Methods tab

Hi Dmytro,

thank you for your reply.

I tried but it does not work, my custom package is an assembly package.

Any idea?

Weird, it worked for me when I added this code to a Custom package.

Try adding it there and see if it works. Also, try compiling the configuration and see the result.

Show all comments

Hello,

we use Asterisk for our call center, and would like to handle call forwarding properly :

for now, in the case of call forwarding, the talktime is recorded on the first call receiver, we would like to record the talk time to the proper user.

 

In our system, the [Call] object has some fields which are not populated : RedirectingId, RedirectionId.

If it was, it would allow us to make a process to fix this.

 

Is there a way to populate the RedirectingId and RedirectionId ?

Or is there another way to reach our goal ?

 

Regards,

Patrice

Like 1

Like

7 comments
Best reply

Hello, 

At the moment, filling in the fields ParentCallId, RedirectingId, and RedirectionId is not implemented. When a call is redirected, three records are created:

  1. The incoming call that arrived for the user.
  2. An outgoing call is created by the user when transferring the call to another user.
  3. An incoming call for the second user who accepted the transferred call.

Unfortunately, based solely on the call statuses, it is not possible to definitively determine whether the call was redirected according to the system's data. As an option, you can try implementing logic to populate the aforementioned fields as part of your project.

In [Call] object, there is also IntegrationId field, which is filled with a concatenation of time stamp and ids but i can not figure what these ids are related to...

Hello,

 

For each of the operators, the time will be recorded following the same logic: when the phone started ringing when it was picked up, when it was put on hold, and when it was hung up.

 

In this case, it is necessary to clarify how transferring a call to another operator affects the call duration of the first operator. The first operator is no longer speaking with the customer, so where is this time supposed to be added?

Conversely, the second operator to whom the call was transferred, had not been speaking with the customer before the call was transferred to them, so where should this time be attributed?

Hi Sergii,



According to the developer documentation, the transfer does not seem to be really handled, there is start / hold / drop events, not transfer.



Maybe it's still something to be ?

Maybe i'm misunderstanding the way phone actions actually works ?

Maybe it's a Asterisk configuration thing or something ?

Hello, 

At the moment, filling in the fields ParentCallId, RedirectingId, and RedirectionId is not implemented. When a call is redirected, three records are created:

  1. The incoming call that arrived for the user.
  2. An outgoing call is created by the user when transferring the call to another user.
  3. An incoming call for the second user who accepted the transferred call.

Unfortunately, based solely on the call statuses, it is not possible to definitively determine whether the call was redirected according to the system's data. As an option, you can try implementing logic to populate the aforementioned fields as part of your project.

Is the functionality that populates the parentId and redirectionId fields, available in the new Asterisk connector ?



actually, we have not found how to identify that it is a transfer with the 3 lines created. 

Hello, 

 

Currently, for the AsteriskV2 connector, the fields RedirectionId and RedirectingId are not populated. However, we have plans to implement this in the future. We have already registered the idea for our R&D team to implement this functionality in further releases.

Show all comments