Hi,

I want to get a session feedback from customers using a lookup of a scale 1-10.

I created the lookup writing the numbers on a text field (because lookups require a text field only for the display field), there for it shows the lookup the wrong order:

1,10,2,3,4,5,6,7,8,9. (The 10 is between the 1 and the 2).

Any ideas of how to force it displaying the right order?

(I tried adding a value field to the lookup of type integer but can't find a way to sort it using that field.)

Thanks,

Chani

Like 0

Like

2 comments

Hello Chani,

This doesn't answer your questions directly about sorting the lookup differently, however, I did want to mention I've been using emoticons in lookups for this purpose. They look nice and they do sort as expected. https://customerfx.com/article/quick-tip-using-emoticons-in-creatio-loo…

Using star emoticons, as I do in the article above, likely would be too confusing for values 1-10, but you could use number emoticons 1️⃣ 2️⃣ 3️⃣ … 9️⃣ 🔟 as well, which I believe  would sort correctly. Just throwing out an idea that is easy to implement.

Ryan

Ryan Farley,

Thank you!

I ended up just labeling the values like this: 01,02,03,04,05...10

Thanks for letting me know about the emoticons, I might use it in a different place. 

Show all comments

Dear Community, 

 

As per the link : https://community.creatio.com/questions/sort-detail-page-load

we implemented sorting by date time when the detail loads the first time. 

Method 1 

addGridDataColumns: function(esq) {
	this.callParent(arguments);
 
	// add sorting column
	var ModifiedOnColumn = esq.addColumn("ModifiedOn", "ModifiedOn");
	ModifiedOnColumn.orderPosition = 0;
	ModifiedOnColumn.orderDirection = Terrasoft.OrderDirection.DESC;
}

Method 2 : 

getGridDataColumns: function() {
                var gridDataColumns =  {
                    "ModifiedOn": {path: "ModifiedOn", orderPosition = 0
                    orderDirection: Terrasoft.OrderDirection.DESC}
                    }; 
                return gridDataColumns;
            }

Observations : if orderposition is mentioned, manual sort by user does not happen.

Removing order position and implementing any of the above methods, sorts the records, but once user does a manual sort, say by Name, the next time user logs in, the detail records are sorted by Name and not by the default sort condition "ModifiedOn"

 

Is there a way to enforce sort when user logs in and also allow manual sort by user?

 

Thanks in advance!

Like 0

Like

7 comments

Hello Shivani,

 

It happens since the sorting state for detail is saved in the SysProfileData table and each time a user opens a detail the correspondent sorting state is taken from the SysProfileData table.

 

You need to create a trigger in the system that could automatically remove a record about detail records sorting order in the SysProfileData table upon each login to the application.

 

To find a needed record you need to use two key points:

 

1) Use the "ContactId" column value to find records for some particular system user (references a contact of a system user)

2) Use the "Key" column and put the name of a detail

 

Here is an example of a query:

 

select * from SysProfileData where [Key] like '%Schema0bbbd1fe%' and ContactId in (select ContactId from SysAdminUnit where Name = 'input the name of a system user')

What you need to do is to drop a record found by the query, but upon each login to the system. For this purpose you can create a trigger that will be triggered upon changing the "LoggedIn" column value from the "SysAdminUnit" table.

 

Best regards,

Oscar

Oscar Dylan,

Thank you for your response, Oscar!

Oscar Dylan,

Hi Oscar. Is there a way to disable this 'Sort order memory' either at a detail level or user level or application level? What if users did not want their sort order to be remembered and pre-loaded?

M Shrikanth,

 

Hello,

 

In this case you will need to study the BaseDataView and check a particular place in the schema where UserProfile request is generated upon modifying the sorting order of a detail column and override the method where it happens so not to save the UserProfile state.

 

Best regards,

Oscar

Oscar Dylan,

 I understand Oscar. It would be laborious to identify all such details and override sending of the UserProfile request. I was looking at a master switch which will toggle whether this sort order is 'remembered' or not. I infer that such a feature is not available as of now

M Shrikanth,

 

No there is no such a toggle or a setting or a feature. This is all the logic in the BaseDataView that needs to be overridden in case it's not needed.

 

Best regards,

Oscar

Oscar Dylan,

Thanks Oscar. Appreciate your input. 

Show all comments

Hello all,

 

Is there a way that I can have the communication options sorted alphabetically for users?

Like 0

Like

3 comments

Dear Kevin,

 

Here is the example:

 

You can add the "order" attribute for every field that you need to sort to the edit page schema where the field is located.

In the following example we created the integer "UsrSorting" field in the lookup UsrTestLookup1 and copied the values from the "Name" field there. 

https://prnt.sc/kg623a

attributes: {
            "UsrTestLookup1": {
                lookupListConfig: {
                    orders: [
                        {
                            columnPath: "UsrSorting",
                            direction: Terrasoft.OrderDirection.ASC
                        }
                    ]
                }
            }
        },

The result - https://prnt.sc/kg62ci

 

You can try to implement the same logic to the 'Communication option types by communication type' lookup.

 

Regards,

Dean

 

That is great and I've seen that use before. However, I cannot find the correct name in order to reference the communication type lookup.

Dear Kevin,

 

In order to sort the communications options please do the following:

1. Create a replacing client module for the “ContactCommunicationDetail” schema.

2. Add the following code to the schema:

 

define("ContactCommunicationDetail", [], function(){
    return{
        methods: {
            initCommunicationTypes: function(callback){
                var esq = this.Ext.create("Terrasoft.EntitySchemaQuery", {
                        rootSchemaName: "CommunicationType",
                        isDistinct: true
                    });
                esq.addMacrosColumn(this.Terrasoft.QueryMacrosType.PRIMARY_COLUMN, "Id");
                var nameColumn = esq.addMacrosColumn(this.Terrasoft.QueryMacrosType.PRIMARY_DISPLAY_COLUMN, "Name");
                nameColumn.orderDirection = Terrasoft.OrderDirection.ASC;
                esq.addColumn("[ComTypebyCommunication:CommunicationType:Id].Communication", "CommunicationId");
                this.initCommunicationTypesFilters(esq);
                esq.getEntityCollection(function(response) {
                    if (response.success) {
                        var entityCollection = response.collection;
                        this.set("CommunicationTypes", entityCollection);
                    }
                    callback.call(this);
                }, this);
            }
        }    
    };    
});

 

Best regards,

Norton

Show all comments

Hi Community,

How to Sort Records in Mobile App Section List?

Like 0

Like

3 comments

Dear Fulgen,

Hope you are doing well today.

The mobile application doesn't have this option. We already had similar requests from multiple users and our R&D team has in plans to implement the sorting option in the future application versions.

Best regards,

Dean

Dean Parrett,

Thanks Dean, but programatically is there any way?

Dear Fulgen,

Yes, you can develop custom sorting function. You can try to debug the sorting feature in the web version and implement similar logic for mobile version.

Regards,

Dean

Show all comments

Hello,

I noticed that if you have expanded the detail to "Show more" records than the initial 10 listed, then you click the column name to sort the list, it contracts the list back down to 10 records. Is there any way to change this to keep the entire list visible after re-sorting the data instead of resetting the view?

Thank you. 

Like 0

Like

1 comments

Dear Reid,

Unfortunately, there are no basic tools to change this behavior. We've registered this issue in out R&D team backlog to fix it in the future application releases.

Best regards,

Dean

Show all comments

Similar to excel, is it possible to sort multiple columns in the list view of bpm? For example, we would like to be able to sort cases by registration date first, then we would like to sort by priority and within the records in the same priority, the records should still be sorted with the most recent registration dates at the top. 

Like 0

Like

2 comments

The only way to do it is to create another column with the sort order you want that is updated by scripting or process, then sort on it.

https://community.bpmonline.com/ideas/sort-sections-based-multiple-columns

Dear Mitch,

This idea has been already accepted by our R&D team and will be available in the future application versions.

Best regards,

Dean

Show all comments

Parameters of a process appear in creation order in the process or alphabetical order as a sub-process, which can become unwieldy or confusing when referencing subprocesses since there is no way to indicate which ones are required to be passed into a process to function correctly.  Is there any way to sort the Parameters manually, for example, so that inputs parameters are at the top of the list?

Like 0

Like

1 comments

Dear Janine,

Currently the logic is that parameters in the process are ordered by creation date (if we are talking about custom business processes). And indeed they cannot be sorted in another order and I will create a request to our R&D team so they could include this functionality in out of the box version of the application. Thank you for this idea!

Best regards,
Oscar

Show all comments

I would like to be able to sort sections based on multiple columns.  Sort in the order in which columns are selected.  For example, when sorting by name, one would click on first name header, then last name header to have the list alphabetized by the full name.

1 comments

Dear Janine,

Thank you for your suggestion! I have forwarded your idea to our R&D. They will evaluate the possibility of implementation in future system releases.

Best regards,
Angela

Show all comments

Can you sort records by ascending or descending in the mobile app? I can only find and option to filter records, but I would like to have my records filtered by ascending on the created by column. Is that possible? I did not see an option in the mobile app wizard to set up default sorting either.

Like 0

Like

1 comments

Dear Mitch,

Sorting is present only in the out-of-the-box sections and only in the out-of-the-box workplace “Main workplace”. Sorting is implemented at the code level that can be inspected in mobile%sectionname%moduleconf.js file. As for now any changes to sorting functionality can be done only with development. 

I'll inform our R&D team about this issue and suggest them to implement it. Thank you for helping us to make our application better!

Best regards,
Angela

Show all comments

Hi Community,

 

How can I sort the the records in detail using the client code

Like 0

Like

3 comments

Dear Fulgen,

You may use and example described here: https://community.bpmonline.com/articles/how-sort-records-date-modifica…

Angela Reyes,

Hi Angela,

Thanks for your answer, but I don't need to create a query anymore since I am using already a detail, is there any property under it that can sort the list by column

Fulgen Ninofranco,

I recommend you to use entityschemaquery like Angela said, but if it`s not an option there is one more way to achieve it.

Also, please note on attributes of GridDetail: sortColumn, sortColumnDirection, sortColumnIndex.
It will look something like this: 

"sortColumn": {"bindTo": "sortColumn"},
"sortColumnDirection": {"bindTo": "GridSortDirection"},
"sortColumnIndex": {"bindTo": "SortColumnIndex"}

Also, more about details you can find here:
https://academy.bpmonline.com/documents/technic-sdk/7-13/details-0

Best regards,
​​​​​​​Alex

 

 

Show all comments