Question

Auto Numbering for Custom Section

Hi,

I have a scenario, where a custom section's record can be created from opportunity via business process, as well as from its own section page. I am trying to implement auto numbering for the section.

The problem I face is that I could not sync the sequence number from both the business process and the auto numbering, done via system settings, as the system settings value gets incremented by 1 irrespective of what the previous sequence might be. 

So, I planned on using ESQ to fetch the collection of records in db, sorting them in descending order and getting the first record from it. Below is the code I have used for that.

 

recordIdAutoNumbering : function(callback, scope) {

                

                var result = {

                    success: true

                };

                if (this.isAddMode() || this.isCopyMode()) {

                    var esq = Ext.create("Terrasoft.EntitySchemaQuery", {

                    rootSchemaName: "UsrClientSection"

                });

                var name = esq.addColumn("UsrName");

                esq.orderPosition = 0;

                esq.orderDirection = Terrasoft.OrderDirection.DESC;

               

                

                esq.getEntityCollection(function (result) {

                    if (result.success) {

                       if (result.collection.getCount() > 0) {

                          //  window.alert();

                                //result.success = false;

                            result.collection[0].getColumnValue(name.Name).ToString();

                                    }

                                } else {

                                    return;

                                    }

                                    callback.call(scope || this, result);

                            }, scope);

                 }

                 this.set("UsrName", result);

            }

        }

 

I am getting undefined error while fetching the "result.collection[0]". Could you please shed some light on how this scenario can be handled.

 

Also please suggest any better practice to get this issue solved henceforth.

 

Thanks,

Mohamed.

Like 0

Like

2 comments

You can achieve this from server side auto numbering!!! ESQ is not required if u follow it.https://academy.bpmonline.com/documents/technic-sdk/7-13/how-add-auto-numbering-edit-page-field

Or else Create a table for example.UsrAutonumber Add a integer column to it. say 1 to integer column.

take the number from this table when you are adding a record for the autonumber from ESQ . Update the column to 2 in UsrAutonumber table once  you save the record .

 

Use server side implementation.

Thank you

Sriraksha KS,

Thanks Sriraksha.

Show all comments