Hello team,

 

Is it possible to add a custom button in a mobile application that uses the html5-qrcode javascript library to read qr code?

 

Like 1

Like

1 comments

Hello Stefano,

 

Our R&D team has a task to implement a QR scanner in the mobile application (was also discussed here). The task is still in progress on their end and we expect this functionality to appear in the app in the next application releases. Currently it won't be an easy task, html5-qrcode is an external library and cannot be added to the client module.

Show all comments

Hello, 



I am trying to filter lookup values in the mobile application based on two columns "UsrStartDate" and "UsrEndDate". These two columns are present in the lookup object. But somehow the rule is not working. Any Comments?

Terrasoft.sdk.Model.addBusinessRule("UsrDisplayImages",
	{
		ruleType:Terrasoft.RuleTypes.Filtration,
		events:	
			[
				Terrasoft.BusinessRuleEvents.Load,
				Terrasoft.BusinessRuleEvents.Insert,
				Terrasoft.BusinessRuleEvents.ValueChanged
			],
		triggeredByColumns:["UsrCurrent_Program"],
		filters:Ext.create("Terrasoft.Filter",
			{
				modelName:"UsrDisplay_img_CurrentProgram",
				property:"UsrEndDate",
				comparisonOperation:Terrasoft.ComparisonTypes.GreaterOrEqual,
				value: new Date() // current date	
			})
	});

this is the rule placed in another module : "UsrMobileFilterModelConfig"

Also attaching the code of manifest file 

{
  "SyncOptions": {
    "SysSettingsImportConfig": [],
    "ModelDataImportConfig": [
      {
        "Name": "UsrDisplayImages",
        "SyncColumns": [
          "UsrName",
          "UsrSales_Rep_Name",
          "UsrCurrent_Program",
          "UsrIncentive",
          "UsrComments",
          "UsrBrand",
          "UsrSpiff_Month",
          "UsrColumn3",
          "UsrCustomer_Name_text",
          "UsrPreview",
          "UsrNewSpiffMonth",
          "UsrAmount",
          "UsrCases_Shipped",
          "UsrCases1_Displayed",
          "UsrSales_Rep",
          "UsrColumn11",
          "UsrCustomer_Name"
        ]
      },
      {
        "Name": "Employee",
        "SyncColumns": [
          "Manager"
        ]
      },
      {
        "Name": "UsrDisplay_img_CurrentProgram",
        "SyncColumns": [],
        "Ignore": false,
        "QueryFilter": {
          "items": {
            "dab489b7-06c4-4f1a-b588-0fe00e965bf7": {
              "filterType": 1,
              "comparisonType": 8,
              "isEnabled": true,
              "trimDateTimeParameterToDate": true,
              "leftExpression": {
                "expressionType": 0,
                "columnPath": "UsrEndDate"
              },
              "isAggregative": false,
              "dataValueType": 8,
              "rightExpression": {
                "expressionType": 1,
                "functionType": 1,
                "macrosType": 4
              }
            },
            "5c38cd37-a1bd-49bb-9cd8-2f11e8b7fbee": {
              "filterType": 1,
              "comparisonType": 6,
              "isEnabled": true,
              "trimDateTimeParameterToDate": true,
              "leftExpression": {
                "expressionType": 0,
                "columnPath": "UsrStartDate"
              },
              "isAggregative": false,
              "dataValueType": 8,
              "rightExpression": {
                "expressionType": 1,
                "functionType": 1,
                "macrosType": 4
              }
            }
          },
          "logicalOperation": 0,
          "isEnabled": false,
          "filterType": 6,
          "rootSchemaName": "UsrDisplay_img_CurrentProgram"
        },
        "SyncFilter": null
      },
      {
        "Name": "UsrDisplay_img_yes_no_lookup",
        "SyncColumns": []
      },
      {
        "Name": "UsrDisplay_Img_Spiff_Month",
        "SyncColumns": []
      },
      {
        "Name": "Contact",
        "SyncColumns": []
      },
      {
        "Name": "SocialMessage",
        "SyncColumns": [
          "EntityId"
        ]
      },
      {
        "Name": "SysFile",
        "SyncColumns": [
          "RecordId",
          "Name",
          "Type",
          "Data",
          "Size",
          "RecordSchemaName"
        ],
        "QueryFilter": {
          "items": {
            "DesignerDefaultRecordSchemaNameFilter": {
              "filterType": 4,
              "comparisonType": 3,
              "isEnabled": true,
              "trimDateTimeParameterToDate": false,
              "leftExpression": {
                "expressionType": 0,
                "columnPath": "RecordSchemaName"
              },
              "rightExpressions": [
                {
                  "expressionType": 2,
                  "parameter": {
                    "dataValueType": 1,
                    "value": "UsrDisplayImages"
                  }
                }
              ]
            }
          },
          "logicalOperation": 0,
          "isEnabled": true,
          "filterType": 6
        }
      },
      {
        "Name": "FileGroup",
        "SyncColumns": []
      },
      {
        "Name": "UsrDisplay_Image_Status",
        "SyncColumns": []
      },
      {
        "Name": "UsrBrand",
        "SyncColumns": []
      },
      {
        "Name": "Account",
        "SyncColumns": []
      }
    ]
  },
  "Modules": {
    "UsrDisplayImages": {
      "Group": "main",
      "Model": "UsrDisplayImages",
      "Position": 0,
      "isStartPage": false,
      "Title": "UsrDisplayImagesSectionTitle",
      "Hidden": false,
      "screens": {
        "start": {
          "schemaName": "UsrMobileUsrDisplayImagesGridPageSettingsDefaultWorkplace"
        },
        "edit": {
          "schemaName": "UsrMobileUsrDisplayImagesRecordPageSettingsDefaultWorkplace"
        }
      }
    }
  },
  "Models": {
    "UsrDisplayImages": {
      "RequiredModels": [
        "UsrDisplayImages",
        "Employee",
        "UsrDisplay_img_CurrentProgram",
        "UsrDisplay_img_yes_no_lookup",
        "UsrDisplay_Img_Spiff_Month",
        "Contact",
        "SocialMessage",
        "SysFile",
        "FileGroup",
        "UsrDisplay_Image_Status",
        "UsrBrand",
        "Account"
      ],
      "ModelExtensions": [],
      "PagesExtensions": [
        "UsrMobileUsrDisplayImagesActionsSettingsDefaultWorkplace",
        "UsrMobileUsrDisplayImagesGridPageSettingsDefaultWorkplace",
        "UsrMobileUsrDisplayImagesRecordPageSettingsDefaultWorkplace",
        "UsrMobileFilterModelConfig"
      ]
    },
    "SocialMessage": {
      "RequiredModels": [],
      "ModelExtensions": [],
      "PagesExtensions": []
    },
    "SysFile": {
      "RequiredModels": [],
      "ModelExtensions": [],
      "PagesExtensions": []
    }
  },
  "ModuleGroups": {
    "main": {}
  },
  "UseUTC": true,
  "Remove": {
    "SyncOptions": {
      "ModelDataImportConfig": [
        {
          "Name": "UsrDisplay_img_CurrentProgram",
          "QueryFilter": null
        }
      ]
    }
  }
}

 

Like 0

Like

1 comments

Hello,

Are these rules configured on a Classic or a Freedom UI page?

If it's a Freedom UI then these types of rules won't work, see this discussion.

Show all comments

Hello

For mobile application I need to set Field in Account Page AS readonlny Permanently

 

I have found 2 solutions witch works in When Freedom UI checbox is unchecked

 

one of them: https://community.creatio.com/questions/how-make-fields-read-only-mobil…

the other is  addBusinessRule of type : Terrasoft.RuleTypes.Activation

 

but they don't work when Freedom UI checbox is checked :(

 

any solutions for setting fields Readonly for FREEDOM UI checked ?

Like 0

Like

5 comments
Best reply

Hello Tomasz,

 

The code you've used is using Ext.JS and is not working in Freedom UI.

 

In the latest application versions the business rules setup on the object level will also be applied to the page in the mobile app. Tested in 8.1.1 and the "Make elements read-only" rule is working properly:

The object should be published after adding such a rule and relogin performed in the app.

Hello Tomasz!

 

For Freedom UI, you may use readOnly property of the "Input" component, or the "Read-only input" component, according to this article: https://academy.creatio.com/docs/8.x/dev/development-on-creatio-platform/mobile-development/customization/freedom-ui/customize-page/references/common-components#title-15089-5

 

Best regards,

Natalia

 

Hello Tomasz,

 

The code you've used is using Ext.JS and is not working in Freedom UI.

 

In the latest application versions the business rules setup on the object level will also be applied to the page in the mobile app. Tested in 8.1.1 and the "Make elements read-only" rule is working properly:

The object should be published after adding such a rule and relogin performed in the app.

thanks Oleg! it works for FREEDOM UI checked !

I have noticted that if filed vale is empty ( or null) control dissapears

any solution how make it still visibale even if its empty ???

Tomasz Sobkowicz,

 

This has something to do with the rules setup. Please double-check all the rules that are set for your control.

there are no other rules

Show all comments

I need to read system settings in mobile application from client side. Can anyone help me on this?

Like 0

Like

4 comments

Hello Pavan,

 

Could you please elaborate on your business task? 

You can use Terrasoft.SysSettings.YourCodeSysSetting if the system settings is cached and enabled for portal users.

Bogdan,

I have a Boolean in system setting. I need to show a popup if the Boolean is false. For that, I have to read system setting value.

Hello Pavan,

 

Please check the Federico's reply above. Is it suitable in your case? 

Show all comments

Hello Community,

 

We are currently working on a custom button for contact edit page in mobile application which will reload the page and shows a popup . We have an issue with the reload. I have tried using this.reloadEntity and location.reload. But it is navigating to the list page and the popup is not showing. Can anyone please help me on this.

 

Regards,

Pavan Manne.

Like 0

Like

1 comments

Hello Pavan,

 

I guess you need to use refreshDirtyData method as described here. location.reload should reload the mobile app completely and you will be redirected either to the start page with the list of sections or to the section list of your current record and this.reloadEntity cannot be used in mobile app, it's only for desktop app.

Show all comments

Hello community,

 

I need to show a pop-up message with options Yes or No in the Classic UI of the mobile application. How can we achieve this?

 

Thanks in advance

Yasaswini

 

Like 0

Like

1 comments

Hello!



We recommend using the push notification in the business process to add notifications to the mobile app.

More details about pop-up messages can be found in the article: https://academy.creatio.com/docs/user/bpm_tools/bpm_process_examples/ne…

Probably, you find the articles useful for your business tasks:

https://community.creatio.com/questions/mobile-show-confirmation-dialog

https://community.creatio.com/questions/how-can-i-show-information-dialog-mobile

Show all comments

Hi everyone,

In the mobile app functionality to capture an image to upload it to attachments, is there a way to obtain the image data as soon as it has been uploaded? Or is there a way to obtain the bytes from the url that is obtained on image capture?



Note: The url obtained is not a data url but a path to the captured image.

 

Thanks,

Ramya

Like 0

Like

1 comments

Hello,

 

Thank you for your question!

 

We kindly ask you to provide us with more detailed information about your needs.

Show all comments

I want to get the current day value to compare it to a field ! how can i get it using business rules in mobile ?

Like 0

Like

1 comments

Hello,

 

You need to use a custom business rule (like described  in the Academy article here), get column value using record.get() method and then compare it to the instance of the Date like it's done in JS (using getDate(), getMonth() etc. methods).

Show all comments

Hi everyone,

I am looking to override the functionality of the Add Record button on the Grid Page (Section Page) of the Mobile Application. Can you help me figure out the name of the method that gets called when the Add button is tapped?

Thanks & regards,

Ramya

Like 0

Like

4 comments

Hi Ramya,

 

In order to override the functionality of the Add Record button on the Grid Page of the Mobile Application follow these steps:



1) In Configuration create a Module, for example call it UsrChangeButtonLogic:

Ext.define("InvoiceGridPage.Controller", {
    override: "Terrasoft.controller.BaseGridPage",
    statics: {
        Model: Invoice
    },
    executeAddAction: function () {
        console.log('Hello1');
        this.callParent(arguments);
           console.log('Hello2');
    }
});

2) Create a replacing view module for the MobileApplicationManifestDefaultWorkplace module. Or use a mobile wizard  - it will create the manifest automatically. Add the newly created module UsrChangeButtonLogic to the manifest:

  "Models": {
        ...
        },
        "Invoice": {
            ...
            ],
            "ModelExtensions": [],
            "PagesExtensions": [
                "MobileInvoiceRecordPageSettingsDefaultWorkplace",
                "UsrChangeButtonLogic"
            ]
        }
    },

3) Compile your Workplace and synchronize the mobile application again.

 

As a result, "Add record" button click of Invoices Grid Page will be overwritten.  

 

Artem Smyrnov,

Thank you! That worked. Can you also help me figure out how to show a confirmation dialog on the mobile application? Something similar to the web app implementation of Terrasoft.showConfirmation? Thanks in advance!



Regards,

Ramya

Ramya R,



Use Terrasoft.MessageBox.showMessage ('your confirmation dialog message') to display a confirmation dialog.



Many thanks.

Artem

 

Artem Smyrnov,

The Terrasoft.MessageBox.showMessage method only helps in displaying a message to the user. I am looking for a functionality where the user is able to select "Yes" or "No" options below the message. Can you please help me with this?

Thanks,

Ramya

Show all comments

Hi everyone,



I am trying to add a custom button to the contacts section in the mobile application. I followed the steps provided in: https://community.creatio.com/articles/adding-custom-user-action-mobile… to create a custom button on the user actions list, but I was unsuccessful.



Alternatively, is there a way to add buttons to the section (list) page, or to add a button in the Freedom UI section of the mobile application?



Regards,

Ramya

Like 0

Like

2 comments

Hi Ramya,

 

Currently there is no way to add custom buttons in Freedom UI (the article you refer to will only work in classic UI). I've created a suggestion for our R&D team to make it possible to add buttons in Freedom UI using no-code capabilities and pointed them to your community question.

 

Thank you for helping us in making the app better!

Hi Oleg Drobina,

Thank you for the prompt response. In the Classic UI, is it possible to add a button somewhere other than the record's edit page, maybe in the section page or a common menu like the settings? Or is it possible to override the existing 'Add Contact' button?



Regards,

Ramya



Show all comments