Esq Synchronization
Field validation
Thread Sleep
7.14_()
sales

Is there a way to make a thread sleep (like "Thread.Sleep(nnn)" in C#) in order to make it possible to wait for a property set by an ESQ return, such as the code example below ?

...

this.set(("EsqOk", false);

esq.getEntityCollection(function(result) {

     ...

     // ESQ return

     ...

     this.set(("ValidationMessage", "xxxxxxxx");

     this.set("EsqOk", true);

     }

}, this);

// main thread flow

while (!this.get("EsqOk") {

     this.Thread.Sleep(500);

}

return {

     invalidMsg: this.get("ValidationMessage")

};     

 

Like 0

Like

1 comments

No. It's a bad idea to stop the application for data selection. It's better to use masks. Like MaskHelper.showBodyMask and MaskHelper.hideBodyMask

Show all comments
7.14_()
sales

After activating this checkbox and publishing the object, how in the system do users actually choose to deactivate a record?

Like 0

Like

3 comments

Dear Jordan,

You can deactivate the records of the objects to exclude them from the business logic. It can be used if the data is outdated and will never be used. Here is the example. Lets say you have some contact type values that  are no longer relevant. You can either delete them or make inactive. Once you've selected 'Allow records deactivation' for the ContactType object, you will have a new column added to the table - 'Inactive' http://prntscr.com/oye8hk In this example, I've deactivated Test value. As the result, the value will no longer be displayed in the lookup dropdown list  http://prntscr.com/oye8nw

Note, the deactivation of the records is available for all objects but automatic filtering of all records works only in drop-down lists, on the lookup selection page and in quick filters. The automatic filter is not applied on pages with lookup contents, in the advanced filters and sections. For the sections it is better to use access permissions functionality.

Best regards,

Dean 

Dean Parrett,

 

Hi Dean. How does one deactivate records in default lookups like "countries". We have a use case where our client has operations in only select countries but might expand to other countries in the future. 



How can we re-use the default countries look up and yet permit de-activation?

Hello,

 

The records can be disabled on the object level what will exclude the required country from the countries lookup on any page. I've described the steps how to do it in the post https://community.creatio.com/questions/record-de-activation-out-box-lookups#comment-76237

 

Regards,

Dean

Show all comments
lookups
lookupedit
terrasoft.controls
7.13_()
sales

Hi Community!

I'm trying to create a lookup using Ext.create("Terrasoft.controls.LookupEdit" into a custom module.  I created the lookup but I need to bind it for example to contacts.

Does anyone have an example of how to do it?

Appreciate it!

Regards

Like 0

Like

2 comments

Please find the answer in the article by the link below: https://community.bpmonline.com/questions/select-datasource-custom-lookup-control

Alina Kazmirchuk,

Thank you! Are the same attributes being that I directly create the control by Ext?

Regards.

Show all comments
sales

From what I understand using the app I can use contacts, activities, dashboard sections etc. but there isn't a way to accomplish more data demanding actions like browsing products and create a sales order that's going to be later synchronized with the cloud server (once Internet is available again) correct? 

Like 0

Like

1 comments

Dear Brynn,

You can add such object to mobile app via mobile section wizard and work with it in offline mode. Any section from PC version of bpmonline can be added to mobile app.

Best regards,

Angela

Show all comments

Dear community

I request your collaboration with a question for Mobile Application Wizard, I have configured some sections, Opportunities and Claimant (Custom section), once exit system or compile all items, or modify some field in section wizard, the sections dissapear and I must configured everything again.

In my manifest file, I'm calling some business rules, that I need for some validations.

Please check the following image.

I really appreciate your help.

Thank you so much.

Like 0

Like

1 comments

Dear Gio, 

Unfortunately, it is not possible to tell what exactly is causing such system behavior. Please send us an email at support@bpmonline.com and we will be happy to help.

Regards,

Anastasia

Show all comments

Hi

How can we Create menu / section for the existing object?

Is this possible by applying db scripts. If yes please suggest the same.

Like 0

Like

1 comments

Dear Sriraksha,

Firstly, we highly do not recommend to create several sections per one object. Please note, that data will be duplicated in both sections, since they are referring to one object. You can create a new object in the system with the same range of columns and copy data from initial object to newly created. 

Nevertheless, if you intend to add section manually, please take a look at following tables: 

SysModule,

SysModuleEdit,

SysModuleEntity, 

SysModuleInWorkplace, 

SysSchema

 

Regards,

Anastasia

Show all comments
calculation fields
7.14_()
sales

I am following the documentation about adding a calculated field you can find here.

I am following it piece by piece, and am doing everything exactly as it says but every time I try to view the calculated field in the edit orders page it says "Invalid column name UsrBalance". I've logged out and back in along with clearing cache. I also have recompiled it in the configuration advanced settings. When I download the package and import it though it works fine, no issues. I compare my package to their package and its the same. Maybe I am missing a part where I need to somehow validate the UsrBalance column or something I'm not sure. All parent inheritance is correct and followed as they have put it too.

Like 0

Like

1 comments

Please check if you have the value of system setting called "Prefix for object name" set as Usr and if it is not - you need to change it to Usr and relogin to the system and check the issue after that.

If it won't work, please try to find this column in the database and if it is not present in the database - please run update database structure for the object which is represented by the table where this column is present.

Also please double check if the field was added the same way to this part in the article:

define("OrderPageV2", [], function() {
    return {
        // Edit page object schema name.
        entitySchemaName: "Order",
        details: /**SCHEMA_DETAILS*/{}/**SCHEMA_DETAILS*/,
        // The attributes property of the view model.
        attributes: {
            // Name of the view model attribute.
            "UsrBalance": {
                // Data type of the view model column.
                dataValueType: Terrasoft.DataValueType.FLOAT,
                // Array of configuration objects that determines [UsrBalance] column dependencies.
                dependencies: [
                    {
                        // The value in the [UsrBalance] column depends on the [Amount] 
                        // and [PaymentAmount] columns.
                        columns: ["Amount", "PaymentAmount"],
                        // Handler method, which is called on modifying the value of the on of the columns: [Amount] 
                        // and [PaymentAmount].
                        methodName: "calculateBalance"
                    }
                ]
            }
        },
        // Collection of the edit page view model methods.
        methods: {
            // Overriding the base Terrasoft.BasePageV2.onEntityInitialized method, which 
            // is triggerd after the edit page object schema has been initialized.
            onEntityInitialized: function() {
                // Method parent implementation is called.
                this.callParent(arguments);
                // Calling the handler method, which calculates the value in the [UsrBalance] column.
                this.calculateBalance();
            },
            // Handler method that calculates the value in the [UsrBalance] column.
            calculateBalance: function() {
                // Checking whether the [Amount] and [PaymentAmount] columns are initialized
                // when the edit page is opened. If not, then zero values are set for them.
                var amount = this.get("Amount");
                if (!amount) {
                    amount = 0;
                }
                var paymentAmount = this.get("PaymentAmount");
                if (!paymentAmount) {
                    paymentAmount = 0;
                }
                // Calculating the margin between the values in the [Amount] and [PaymentAmount] columns.
                var result = amount - paymentAmount;
                // The calculation result is set as the value in the [UsrBalance] column.
                this.set("UsrBalance", result);
            }
        },
        // Visual display of the [UsrBalance] column on the edit page.
        diff: /**SCHEMA_DIFF*/[
            {
                "operation": "insert",
                "parentName": "Header",
                "propertyName": "items",
                "name": "UsrBalance",
                "values": {
                    "bindTo": "UsrBalance",
                    "layout": {"column": 12, "row": 2, "colSpan": 12}
                }
            }
        ]/**SCHEMA_DIFF*/
    };
});
Show all comments

I am getting the following error while trying to login to BPM Online on-site  (set up using Microsoft SQL Server) and I am getting the same error while trying to login to BPM Online on-site  (set up using Oracle SQL Server). I ve done the set up seperately with different websites in IIS. Screenshots attached. Kindly advise me on how to overcome this problem.

Failed to load resource: the server responded with a status of 404 (Not Found)

Error while sending request      response status: 404 (Not Found)     request url: http://localhost:82/ServiceModel/AuthService.svc/Login     method: undefined     request data: {"UserName":"Supervisor","UserPassword":"*******","TimeZoneOffset":-330}

Like 0

Like

3 comments

Hello,

The most obvious reason of this issue is in fact that not all needed Microsoft Components were activated for the device where IIS is deployed. Please double-check all needed components once again on the machine where IIS is deployed (the full list of needed components can be found here).

Also please get sure that you have Microsoft .NetFramework of 4.7.2 version installed on the machine where IIS is deployed.

Best regards,

Oscar

Oscar Dylan,

Thanks. WCF and HTTP components were not enabled!

 

Regards,

Dharini

Hi 

 

The BPMonline setup process can be divided into the following general steps: 1. Deploying the MS SQL Server 2008 on the database server computer. 2. Deploying a Redis database on the user session storage server. 3. Installing the BPMonline application on the application server computer. 4. Restoring the database from the backup on the database server computer. This step is necessary only if the database server is not deployed on the same computer as the application server  

 

Thanks 

Lavanya Sreepada 

 

 

Show all comments
user dialog
process design
lookup
7.14_()
sales

Is it possible to specify a lookup as the possible answers for an user dialog ? How ?

Like 0

Like

2 comments

Dear Ricardo,

There is no such option for user dialog but you may use auto-generated or pre-configured page instead for such task - they can be configured as you described. 

Best regards,

Angela

Angela Reyes,

Thanks !

Show all comments
detail
bug
Academy
7.14_()
sales

Hi Community,

I created an editable detail thanks to the source code provided on the Academy.



The problem is that the datas are not saved.



Please find here the code from the Academy:

// Defining schema and setting its dependencies from other modules.
define("UsrCourierServiceDetail", ["ConfigurationGrid", "ConfigurationGridGenerator",
    "ConfigurationGridUtilities"], function() {
    return {
        // Detail object schema name.
        entitySchemaName: "UsrCourierService",
        // Schema attribute list.
        attributes: {
            // Determines whether the editing is enabled.
            "IsEditable": {
                // Data type — logic.
                dataValueType: Terrasoft.DataValueType.BOOLEAN,
                // Attribute type — virtual column of the view model.
                type: Terrasoft.ViewModelColumnType.VIRTUAL_COLUMN,
                // Set value.
                value: true
            }
        },
        // Used mixins.
        mixins: {
            ConfigurationGridUtilities: "Terrasoft.ConfigurationGridUtilities"
        },
        // Array with view model modifications.
        diff: /**SCHEMA_DIFF*/[
            {
                // Operation type — merging.
                "operation": "merge",
                // Name of the schema element, with which the action is performed.
                "name": "DataGrid",
                // Object, whose properties will be joined with the schema element properties.
                "values": {
                    // Class name
                    "className": "Terrasoft.ConfigurationGrid",
                    // View generator must generate only part of view.
                    "generator": "ConfigurationGridGenerator.generatePartial",
                    // Binding the edit elements configuration obtaining event
                    // of the active page to handler method.
                    "generateControlsConfig": {"bindTo": "generateActiveRowControlsConfig"},
                    // Binding the active record changing event to handler method.
                    "changeRow": {"bindTo": "changeRow"},
                    // Binding the record selection cancellation event to handler method.
                    "unSelectRow": {"bindTo": "unSelectRow"},
                    // Binding of the list click event to handler method.
                    "onGridClick": {"bindTo": "onGridClick"},
                    // Actions performed with active record.
                    "activeRowActions": [
                        // [Save] action setup.
                        {
                            // Class name of the control element, with which the action is connected.
                            "className": "Terrasoft.Button",
                            // Display style — transparent button.
                            "style": this.Terrasoft.controls.ButtonEnums.style.TRANSPARENT,
                            // Tag.
                            "tag": "save",
                            // Marker value.
                            "markerValue": "save",
                            // Binding button image.
                            "imageConfig": {"bindTo": "Resources.Images.SaveIcon"}
                        },
                        // [Cancel] action setup.
                        {
                            "className": "Terrasoft.Button",
                            "style": this.Terrasoft.controls.ButtonEnums.style.TRANSPARENT,
                            "tag": "cancel",
                            "markerValue": "cancel",
                            "imageConfig": {"bindTo": "Resources.Images.CancelIcon"}
                        },
                        // [Delete] action setup.
                        {
                            "className": "Terrasoft.Button",
                            "style": this.Terrasoft.controls.ButtonEnums.style.TRANSPARENT,
                            "tag": "remove",
                            "markerValue": "remove",
                            "imageConfig": {"bindTo": "Resources.Images.RemoveIcon"}
                        }
                    ],
                    // Binding to method that initializes subscription to events
                    // of clicking buttons in the active row.
                    "initActiveRowKeyMap": {"bindTo": "initActiveRowKeyMap"},
                    // Binding the active record action completion event to handler method.
                    "activeRowAction": {"bindTo": "onActiveRowAction"},
                    // Identifies whether multiple records can be selected.
                    "multiSelect": {"bindTo": "MultiSelect"}
                }
            }
        ]/**SCHEMA_DIFF*/
    };
});

It seems that the "Saved function" are missing now ?



Thanks a lot for your help.

 

Dorian

Like 0

Like

1 comments

Dear Dorian,

It’s hard to say what exactly is wrong without checking the source code. However, if the detail is displayed on the page without any records it can mean that it’s an error in the “filter” property of detail settings on page schema.

Please find the correct example of the filter below:

                "filter": {

                    // Detail object schema column.

                    "detailColumn": [lookup field of detail object referring to the page object],

                    // Section object schema column.

                    "masterColumn": "Id"

                }

For more detailed assistance, please contact technical support.

Best regards,

Norton

Show all comments