Hi All,

 

We are facing the below mentioned error on Building the workspace in file development mode. We could see the duplication errors since the source code files are available at both Package(Pkg) and Autogenerated folder.



Kindly help me with this!

 

File attachments
Like 0

Like

1 comments

Dear,

 

The issue happened due to the incorrect using of the file development mode for working with the server side source code.

Please find the information about how to do it propery in the article by the link below:

 

https://academy.creatio.com/documents/technic-sdk/7-16/overview

 

Best regards,

Norton

Show all comments

Hello,

How do i remove the "Add link to knowledgebase" menu item on the tools menu of the Attachments detail?

 

Thank you,

Allen

File attachments
Like 0

Like

3 comments
Best reply

Hi Allen, 

 

Sure, there is an option to block such functionality. However, please note that the development process should be applied.

 

1. Firstly, you need to create a replacing client module schema for the "FileDetailV2" client module. Please find the information about it in the article by the link below:

 

https://academy.creatio.com/documents/technic-sdk/7-16/creating-custom-client-module-schema

 

2. In a new replacing client schema, please insert the code below:

 

define("FileDetailV2", [],
	function(ViewUtilities, ConfigurationConstants, ConfigurationEnums, RightUtilities, DefaultProfileHelper) {
	return {
		methods: {
			/**
			 * ########## ######## ########### ###### ############## ######.
			 * @return {Array} ######## ########### ###### ############## ######.
			 */
			generateButtonMenuItems: function() {
				let itemsConfig = this.callParent();
				const itemsConfigUpdated = (itemsConfig = []);
 
				return itemsConfigUpdated;
		},
	}};
});

3. Save the changes and hard-reload the page.

 

Regards,

Anastasiia

Hi Allen, 

 

Sure, there is an option to block such functionality. However, please note that the development process should be applied.

 

1. Firstly, you need to create a replacing client module schema for the "FileDetailV2" client module. Please find the information about it in the article by the link below:

 

https://academy.creatio.com/documents/technic-sdk/7-16/creating-custom-client-module-schema

 

2. In a new replacing client schema, please insert the code below:

 

define("FileDetailV2", [],
	function(ViewUtilities, ConfigurationConstants, ConfigurationEnums, RightUtilities, DefaultProfileHelper) {
	return {
		methods: {
			/**
			 * ########## ######## ########### ###### ############## ######.
			 * @return {Array} ######## ########### ###### ############## ######.
			 */
			generateButtonMenuItems: function() {
				let itemsConfig = this.callParent();
				const itemsConfigUpdated = (itemsConfig = []);
 
				return itemsConfigUpdated;
		},
	}};
});

3. Save the changes and hard-reload the page.

 

Regards,

Anastasiia

Anastasiia Markina,

 

Why would you still want to call the parent method? Wouldn't it make more sense to just re-write the method to just return an empty array? e.g.:

define("FileDetailV2", [],
	function() {
	return {
		methods: {
			/**
			 * ########## ######## ########### ###### ############## ######.
			 * @return {Array} ######## ########### ###### ############## ######.
			 */
			generateButtonMenuItems: function() {
				return [];
		},
	}};
});

 

Hi Harvey, 

 

Sure, such a solution is appropriate, too. However, it's always better to use this.callParent method to avoid any issues through future updates. 

 

Thus, this.callParent calls the parent method firstly instead of re-writing or breaking its logic, so this is a safer approach for a client module schema replacement.

 

Regards,

Anastasiia

Show all comments

I would like to do some analysis of fields in our system, looking at when they are updated and frequency of update. Change log is enabled on these fields.  Does anyone know the table name that this data is stored in? Or is there a better way to do this?

Like 0

Like

2 comments

Hello Community,



Can someone help with this? Need to be able to locate where & how the changes are stored. We need to be able to migrate changes from an earlier legacy system to this change log. 

For table Activity try checking ActivityLog or SysActivityLog. I found it to be TablenameLog in my system.

Show all comments

When I change the "View Mode" interface on the mini page, affect "Add Mode" interface 

Screen "Add Mode" before edit "View Mode":

Screen "Add Mode" after edit "View Mode":

Like 0

Like

1 comments

Dear Thanh,

 

Currently, Creatio uses same schema code for all mini pages, so modifying "View Mode" will lead to changes in other modes. Our developers know that some users want to have different views and are working on implementing this task in future releases. 

 

Best regards,

Angela

Show all comments

Hi Community,

 

I have made some dashboard but I want to share a link to my clients so that they can have a direct view of the dashboard I prepared through the link I shared with them.

 

Please help if there is any functionality in creatio with which dashboard url links can be shared to client for viewing the dashboards.

 

Thanks & Regards.

Like 0

Like

1 comments

Dear Akshit,

 

Unfortunately, there is no such functionality in the application. Please note that we have notified the development team about your request.

 

Best regards,

Norton

Show all comments

Hello Community,

 

I'm testing different cases of using ML of type "Recommendation prediction" based on documentation https://academy.creatio.com/documents/administration/7-16/recommendatio….

 

Described solution is working on purchases of similar products data set. How to set model to learn prediction based on similar customers  purchases ?

 

Is there any description or example how to use advanced tool (Query metadata for selecting additional training data, Query for selecting additional training data) on this type of ML model (Recommendation) ?

 

Regards,

Marcin

Like 0

Like

3 comments
Best reply

Marcin Kott,

 

Advanced parameters are merged with parameters that are formed by standard tools and as a result are formed one common set of parameters. Moreover, in the advanced settings, you can also specify additional filtering parameters.

 

For recommendation models, no "additional" parameters need to be passed, since the models are trained on transaction data, or any other interaction of the client with the product, for example, the product in the order. The model will not accept any other parameters.

 

Extended selection is needed for these models, for example, in order to combine data on purchases of goods and views of goods on the site. Then a selection is written that somehow aggregates this data, but as a result, it is necessary to still get a selection of the type - client, product, number.

 

In recommendation case in "inputs" tag i may add Id and eg. Account Country, Account Category ? - It is impossible to divide this way, since the selection should contain only Id (just an identifier)

user_id (a user)

item_id (something purchased by the user)

value

 

Finally, there are actually two options for recommendations – selection by standard tools or completely form it using a custom query.

 

Best regards,

Norton

Hi Marcin,



To set the model to learn prediction based on similar customers purchases you should add the following columns to the query:



Id (just an identifier)

user_id (a user)

item_id (something purchased by the user)

value (how much did the user purchase, but you can leave it 1 if it's important to see the fact of a purchase)



You should add those values to additional metadata as it is shown here:

https://academy.creatio.com/documents/technic-sdk/7-16/how-implement-custom-prediction-model

 

You can find more information regarding queries here:

https://academy.creatio.com/documents/technic-sdk/7-16/creating-data-queries-machine-learning-model?document=administration



Unfortunately, we don't have a separate article regarding this type of ML model (Recommendation).



Thank you.

Bohdan Zdor,

 

Thank You for explanation. To better understand this tool please clarify me some concerns:

 

 

Is this “advanced tools to add columns” overrides basic training data set resulting from “Recommendation dependency” query or this is additional data which are corellared with basic query ?

I mean .. “Query for selecting additional training data”, “Query metadata for selecting additional training data”.

 

I yes, then what is principle to building additional select ("new Select") to maintain relation between 2 queries (basic and advanced) ? Eg. that selected object should be the same (“Recommendation dependency” = "select .. From x"), what else ?

 

 

“Query metadata for selecting additional training data” – In posted documentation

https://academy.creatio.com/documents/technic-sdk/7-16/how-implement-custom-prediction-model?_ga=2.41994279.328510928.1596630980-1487324197.1596630446

additional columns are set:

 

{

    "inputs": [

        {

            Id

        },

        {

           attr1

        },

        {

           attr2

        }

    ],

    "output": {

        attr3

    }

}

In recommendation case in "inputs" tag i may add Id and eg. Account Country, Account Category ??

What I have to add then in "output" tag ?

 

In Your example I understood that as a input I have to add

Id -> Object Id

user_id -> Account Id

item_id -> Product Id

value  -> Quantity

when eg. Query data set is a “Product in Quote”, right ?

 

Regards,

Marcin

Marcin Kott,

 

Advanced parameters are merged with parameters that are formed by standard tools and as a result are formed one common set of parameters. Moreover, in the advanced settings, you can also specify additional filtering parameters.

 

For recommendation models, no "additional" parameters need to be passed, since the models are trained on transaction data, or any other interaction of the client with the product, for example, the product in the order. The model will not accept any other parameters.

 

Extended selection is needed for these models, for example, in order to combine data on purchases of goods and views of goods on the site. Then a selection is written that somehow aggregates this data, but as a result, it is necessary to still get a selection of the type - client, product, number.

 

In recommendation case in "inputs" tag i may add Id and eg. Account Country, Account Category ? - It is impossible to divide this way, since the selection should contain only Id (just an identifier)

user_id (a user)

item_id (something purchased by the user)

value

 

Finally, there are actually two options for recommendations – selection by standard tools or completely form it using a custom query.

 

Best regards,

Norton

Show all comments
Question

Hi Team,

 

I am attaching the screenshot of dashboard which I need to download in excel or pdf format.

The problem  I am facing is that when I take the screenshot the report (Top 10 passenger detail by spend) becomes blank. 

 

Please help me with this! 

 

Thanks & Regards.

 

Like 0

Like

1 comments

Hi Ankit,

 

Pivot tables were developed using angular in our system and connected to the app as custom element and use shadow dom for styles encapsulation. And the screenshot cannot be done because of the shadow dom. Screenshot is performed using html2canvas library and it has an issue on GitHub https://github.com/niklasvh/html2canvas/issues/430. We tried updating the html2canvas library to the latest version but the error still reproduces and we are now working on developing our own rendering. So as for now there is no workaround for this problem, but using third-party screenshot tools.

 

Best regards,

Oscar

Show all comments

Hello,

How do we remove or disable the following menu items for a grid in detail area?

  • Select multiple records
  • Apply filter
  • Sort by(i.e. disable all sort options)

 

Like 0

Like

1 comments
Best reply

Hi Allen, 

 

In order to remove "Select multiple records", "Apply filter", "Sort by" you can do the following: 

 

1. Create a replacing client module schema for the detail schema. Here is the article on how you can do it:



https://academy.creatio.com/documents/technic-sdk/7-16/creating-custom-…

 

2. In a replaced client schema, please override method addGridOperationsMenuItems as in the example below:

 

define("UsrSchemac2207388Detail", [], function() {
  return {
    entitySchemaName: "UsrPets",
    details: /SCHEMA_DETAILS*/{}/**SCHEMA_DETAILS*/,
    diff: /**SCHEMA_DIFF*/[]/**SCHEMA_DIFF*/,
    methods: {
      addGridOperationsMenuItems: function(toolsButtonMenu) {
        const switchGridModeMenuItem = this.getSwitchGridModeMenuItem();
        if (!switchGridModeMenuItem) {
          toolsButtonMenu.addItem(this.getButtonMenuSeparator());
          toolsButtonMenu.addItem(switchGridModeMenuItem);
        }
        const exportToExcelMenuItem = this.getExportToExcelFileMenuItem();
        if (exportToExcelMenuItem) {
          toolsButtonMenu.addItem(exportToExcelMenuItem);
        }
        const fileImportMenuItem = this.getDataImportMenuItem();
        if (fileImportMenuItem) {
          toolsButtonMenu.add("FileImportMenuItem", fileImportMenuItem);
        }
        Terrasoft.each([
          this.getGridSettingsMenuItem(),
          this.getRecordChangeLogMenuItem(),
          this.getObjectChangeLogSettingsMenuItem()
        ], function(buttonConfig) {
          if (buttonConfig) {
            toolsButtonMenu.addItem(this.getButtonMenuSeparator());
            toolsButtonMenu.addItem(buttonConfig);
          }
        }, this);
      },
    },
  };
});



If you want to do that in all details you can override BaseGridDetailV2 and override the method in the same way. 



Best regards, 

Anastasiia

Hi Allen, 

 

In order to remove "Select multiple records", "Apply filter", "Sort by" you can do the following: 

 

1. Create a replacing client module schema for the detail schema. Here is the article on how you can do it:



https://academy.creatio.com/documents/technic-sdk/7-16/creating-custom-…

 

2. In a replaced client schema, please override method addGridOperationsMenuItems as in the example below:

 

define("UsrSchemac2207388Detail", [], function() {
  return {
    entitySchemaName: "UsrPets",
    details: /SCHEMA_DETAILS*/{}/**SCHEMA_DETAILS*/,
    diff: /**SCHEMA_DIFF*/[]/**SCHEMA_DIFF*/,
    methods: {
      addGridOperationsMenuItems: function(toolsButtonMenu) {
        const switchGridModeMenuItem = this.getSwitchGridModeMenuItem();
        if (!switchGridModeMenuItem) {
          toolsButtonMenu.addItem(this.getButtonMenuSeparator());
          toolsButtonMenu.addItem(switchGridModeMenuItem);
        }
        const exportToExcelMenuItem = this.getExportToExcelFileMenuItem();
        if (exportToExcelMenuItem) {
          toolsButtonMenu.addItem(exportToExcelMenuItem);
        }
        const fileImportMenuItem = this.getDataImportMenuItem();
        if (fileImportMenuItem) {
          toolsButtonMenu.add("FileImportMenuItem", fileImportMenuItem);
        }
        Terrasoft.each([
          this.getGridSettingsMenuItem(),
          this.getRecordChangeLogMenuItem(),
          this.getObjectChangeLogSettingsMenuItem()
        ], function(buttonConfig) {
          if (buttonConfig) {
            toolsButtonMenu.addItem(this.getButtonMenuSeparator());
            toolsButtonMenu.addItem(buttonConfig);
          }
        }, this);
      },
    },
  };
});



If you want to do that in all details you can override BaseGridDetailV2 and override the method in the same way. 



Best regards, 

Anastasiia

Show all comments

I have a fault tolerant installation on-premise where there are 3 nodes running Creatio. Is there a way of configuring node-specific system setting? In other words, is there a way to have different values for different nodes for the same system setting?

 

Thanks in advance...

Like 0

Like

1 comments

Hello,

 

Such an option is not available for fault-tolerant installation. 

Fault-tolerant architecture implies that when one node fails, users will be able to work with the neighbouring one. If two neighbouring nodes are different, then this is no longer a fault-tolerant architecture, but two different applications.

 

Best regards,

Angela

Show all comments

Hi All,



We have implemented IFrame in our creatio instance to connect with third-party applications. The process is executing successfully. But we get an issue in the network, we could see the call is made twice in the network always one gets failed and the other one we could get a successful response. 

But we have no idea why the other call is made.





Kindly help me with this !



Regards,

Adharsh S

Like 0

Like

2 comments

Dear Adharsh,

 

All controls (including Terrasoft.IframeControl) inherit from the “Terrasoft.Component” class that is located in the “component.js” file. The “Terrasoft.Component” class is designed in such way that on “reRender” function it inserts html content of the control into DOM twice https://prnt.sc/tl2f68. The old “wrapEl” object is destroyed and replaced by the new one - https://prnt.sc/tl2tnu.

 

In order to fix this behavior, it is necessary to perform a very detailed analysis of how it can be done differently. Moreover, take into account the regression since this is the basic mechanism for all controls.

 

Please note that we notified the development team about your request.

 

Best regards,

Norton

Norton Lingard,



Thanks!

Show all comments