In the Contacts section, I need to filter all the contacts that ever got emails Titled "Thanks" (NOT bulk emails, just simple emails). These emails are displayed here:

I tried any available lookup, yet no success. Which object should be used?

Like 0

Like

6 comments

Maybe like this. But I'm not sure.

https://prnt.sc/z38p5x

That's Participant instead of Owner.

Dear Yuriy, 



The option proposed by Julius above should work for the described purpose. 

Please use Email Participants object to get list of contacts which were in the needed bulk email's audience.



Kind regards,

Roman

Julius,

Thank you! I specified the question: NOT bulk emails, but simple emails

Dear Yuriy, 



In this case you need to build filter like this:



Kind regards,

Roman

Roman Brown,

Roman, that doesn't work for me! That gives only a few contacts. For instance, Darren is not among them. I suspect the contacts don't have activities, just emails. What table stores the emails?

Yuriy Konstantinov,

Activities and emails are stored in the same object, but just in case try to remove type=email filter and check if it helps. 

 

Best regards,

Angela

Show all comments

Hello community,

 

There are numerous use cases where Creatio filters for some data before showing on the UI. Few examples below - 

  1. Writing ESQ from JavaScript where we filter an object for only select records by adding filter groups. 
  2. User applying of a filter in a section list page or a detail. 
  3. When we add a detail to a Section record page, we map a column from the detail to a column in a section record. This is how Creatio filters for only the detail records belonging to that section record and displays the records subsequently. 

Few questions below which will help us explain Creatio better with our customers- 

  1. At which layer does Creatio execute these filters? Is it at the Application layer or at the Database layer? It is unlikely that it is at the App layer. Can you confirm that these happen at the DB layer and only the filtered records are fetched to the App layer and subsequently passed back to the UI?
  2. I am guessing that the Creatio ORM would aggregate all of the filters and frame a query which filters for the required data and then execute this at the DB layer? Excuse the over-simplification. Can you confirm and share a few more details on how this done? This would give us insight into the Product architecture and help us understand the product better.

If these insights are already available in the Documentation, Request you to share the link. Thanks in advance!

Like 1

Like

5 comments

Hello,

Yes, all filter conditions are added as conditions for queries and are performed at the database layer. You can see this if you install Creatio locally and run SQL profiler. You'll notice as an ESQ gets executed that ultimately this is translated to a SQL query with the filter conditions in the where clause.

Additionally, as a related side topic to mention to your original question which might be of interest, you can also create SQL views in the database containing aggregates/joins/unions/ranks/partions/etc and create an entity/object for that view. These objects can then be used normally in section lists, details, dashboards, reports/printables, and even read via OData/DataService APIs etc. This is a fantastic way to create what would be a complex or time consuming query and make the results readily available in the client.

Hope this helps with your question.

Ryan

Hello Shrikanth,

 

We can confirm that filtering conditions are configured as conditions for queries and they are being performed on the DB layer, but not the application layer.

 

We will ask the responsible team to add more information relateable to this kind of topic to the Academy. At the same time, please check the articles included in this section, they should be useful for further development operations:

https://academy.creatio.com/docs/developer/back-end_development

 

Thank you Ryan for your help!

 

Best regards,

Roman

Ryan Farley,

Thank you Ryan. Yes, I was aware of the views and similarly noticed usage of Stored procedures in the community. This prompted my question. 

Roman Rak,

Thank you Roman for the answer.

Ryan Farley,

 

If I can quote:

you can also create SQL views in the database containing aggregates/joins/unions/ranks/partions/etc and create an entity/object for that view

If I were to create a SQL view, how would I create an entity/object of the view?  Thanks,

 

[Edit]

I think I have the answer here Creating View Type Object in Creatio | Community Creatio

Show all comments

Dear community,

 

We added a detail to our product page where we can add options.

These options are products as well so whenever we press on the "+" we get a popup with a muliselect where we can choose all the options:

https://prnt.sc/xtcr11

 

The problem here is that we can see all the options with different Categories.

How can we filter so it only shows the category that is the same as the product above it?

 

thank you!

 

 

Kind regards,

Yosef

Like 0

Like

2 comments

Hello Yosef,

You can add additional filters to the lookup for the detail by overriding the getAllLookupFilters method from the LookupMultiAddMixin, I have an article on how to do that here: https://customerfx.com/article/adding-additional-filters-to-a-detail-ad…

Ryan

As far as getting the product category from the parent record, I'm not sure that it would work to pass values to the detail (as outlined here https://customerfx.com/article/passing-values-from-a-page-to-a-new-reco…) for the case where the detail is using the LookupMultiAddMixin. Your best bet is to use the sandbox to request the current category value from the page.

Ryan

Show all comments

Hi Team,

 

Kindly advice on how to block the mulitiple fixed filter  as attached .

 

Regards,

Sethuraghav N

Like 0

Like

3 comments

Hello,

 

Can you please specify your business task?

Do you want to prevent users from adding multiple single filters on the page?

 

Best regards,

Bogdan

 Yes Bogdan Spasibov, we need to restrict user in adding the multiple filters in a calendar page. Only one filter should be selected at a time.

 

 

HI SathishKumar,

 

There is the option to change filter behavior; however, Creatio R&D team highly disrecommend you implementing such a filter and can provide only theoretical instructions.

 

Firstly, please note that the filter you've mentioned is implemented as an old module functioning through the whole system, not the Activity/Calendar section only. Thus, to avoid affecting all filters of your platform, you need to create your custom one and call it from the replacing client schema module. 

 

The main filter loader is located at the "BaseDataView", the "loadFiltersModule" method. You need to replace the "ActivitySectionV2" and write there your own "loadFiltersModule" method that will re-write the original one from the "BaseDataView". 

 

Then, please create a new module at the Configuration:

 

define("UsrixedFilterViewModelV2", ["FixedFilterViewModelV2"],
	function(fixedFilter) {       
        function generate(config) {
            var result = fixedFilter.generate(config)
            result.methods.oldaddNonPeriodFilterValue = result.methods.addNonPeriodFilterValue;
            result.methods.addNonPeriodFilterValue =  function (tag, simpleFilterValue) {
                var filters = this.get(this.getSelectedLookupValuesPropertyName(tag));
                filters.clear();
                this.oldaddNonPeriodFilterValue(tag, simpleFilterValue);
            };
            return result;
        }
		return {
			generate: generate
		};
	});

 

Below the detailed description step by step. The "fixedFilter" is the old model.

var result = fixedFilter.generate(config)

This code calls a standard out-of-the-box filter.

result.methods.oldaddNonPeriodFilterValue = result.methods.addNonPeriodFilterValue;

Here please write the logic you need:

result.methods.addNonPeriodFilterValue =  function (tag, simpleFilterValue) {
                var filters = this.get(this.getSelectedLookupValuesPropertyName(tag));
                filters.clear();
                this.oldaddNonPeriodFilterValue(tag, simpleFilterValue);
            };

 

 

Regards, 

Anastasiia

Show all comments

Hi,

 

There are list of columns available in order to search for a contact in Mobile App. I have a use case to remove/hide those and set "Last Name" as the primary and default column to search based on.

E.g. as soon as you chose to set a filter, your text to be search as a last name.

 

How is this possible in Creatio?

 

Thanks

 

Like 0

Like

1 comments

Dear Kavian, 



It's possible to configure columns by which search will be performed in mobile application. 

Information on where and how it can be configured can be found in this academy article: https://community.creatio.com/articles/search-multiple-columns-mobile-a…



Please refer to it and configure the list of columns in your own way. 



Kind regards,

Roman

Show all comments

Creatio CRM has the feature of exporting data by filtering some records. Then we can export the data using the export to excel option.

However, for customers(end user) it may be confusing to apply multiple filters.

 

In this case lets suppose I only want to apply filter to only 2 fields.

So I want to create a process which will ask user to input values for those 2 filters. After that process will automatically generate a excel file which have all the records filtered according to the 2 filters input values.

 

Is this possible to do so?

I tried to create process but how to export data I can not figure out.

 

Like 0

Like

4 comments

Hello Ramnath,

 

It is better to use a standard scenario of specifying the filter and exporting records using the "Export to excel" action in the section. If you could create a script-task that could trigger the "ReportService" service and "GetExportToExcelKey" method inside this service based on the filtering parameters than this process could be executed. But we have no examples of this logic implementations so you need to look through the "GetExportToExcelKey" method and test it on your side.

 

Best regards,

Oscar

Hey Oscar,

 

I have very less development experience on Creatio Platform so I can't think I can develop scripts right now.

 

Rather I came up with another solution - Dynamic folder with access rights. So user will have access to the dynamic folder where they can filter record according to two fields. But I am unsure if giving them edit access may result in modifying the filter parameters. 

 

For example I want to find all the records that were created in between a period - I can create a dynamic folder with two fields -

(Created on > date_1 and Created on <date_2)

 

But having access to edit dynamic folder, the customer can also modify Created on parameter to modified on. 

RAMNATH SHARMA,

 

They cannot modify the Created On value of the record (since we are discussing the Created On column for records not for the folder itself (by the way they cannot modify Created On for folders as well)).

 

Yes, the client can modify the parameter itself (replace Created On with Modified On), but the client needs to understand that he/she shouldn't do it. By the way the client can create such a filter on their own (the possibility of advanced filters was developed for such proposes). Why there should be a process that should do this? It is easier to do it manually than via a process.

 

Also you can remove edit access rights for all users in the system using the "Change access rights" process element. As a result the client will see the folder, but won't be able to modify it.

 

Best regards,

Oscar

Oscar,

I thought of making the the process of exporting data easily with one click. That's why I wanted to see if it's possible with process.

Show all comments

Basing on the results of a vote held in the Creatio Community, the development team has planned a timeline for implementing improvements in Creatio product filtering tools. I am happy to let you know that, thanks to your active participation in the vote, the delivery of the vast majority of features is planned for Q3 and Q4 of this year. Hurrah! The team is still searching for a technical solution to task #3 "The ability to filter records from one or more dynamic groups". We will announce the possibility and delivery time a bit later.

Thanks to everyone who participated in the vote. You can always share your ideas, how to improve Creatio products in the "Ideas" section of Creatio Community. The product development team will definitely consider them. See ideas from other Community Members and participate in discussions.

Here is the Community’s rating of filtering enhancements for Creatio products:

 

Like 0

Like

Share

0 comments
Show all comments

Dear mates,

In my opportunity products interest detail, i'd like to filter the inactive products.

How can i do that ?

Is it in the OpportunityProductDetailV2 that i must insert a filter ?

define("OpportunityProductDetailV2", [], function() {

    return {

        entitySchemaName: "OpportunityProductInterest",

        details: /**SCHEMA_DETAILS*/{}/**SCHEMA_DETAILS*/,

        diff: /**SCHEMA_DIFF*/[]/**SCHEMA_DIFF*/,

        methods: {}

    };

});

Like 0

Like

2 comments

Dear Nicolas,

You can simply do it via business rules in UI: http://prntscr.com/qbw0eh. Filter by code must be inserted in OpportunityProductPageV2.

Best regards,

Angela

Thank you

Show all comments

Hi Team,

We were trying to filter out the account classification. However, we were not able to add the field account classification which is present in the account section to filters. is there a way to add them into the filter so that it can be searched quickly? 

 

 

 

Thank you in advance, Gokul

 

Like 0

Like

2 comments

Hello Gokul,

This field that you are trying to add to the filtration is a detail and detail values cannot be read using 1 level filter. To achieve your task you need to build a complex filter using Academy article here.

Best regards,

Oscar

Thank you for replying Oscar. I tried adding the advanced filter too but the account classification is not coming as an option in the filter

Show all comments

Hi all,

Is there any way to read all the existing records of sections in the mobile app without setting up individual filters? If yes, how?

 

Thanks 

Like 0

Like

1 comments

The mobile application doesn't have a section that contains all data. However, it's usually not needed. Probably, it will be possible to give you more information if you describe the business task.

Show all comments