Hello all,

 

Is there any way to change the color of the big blue confidence level widget on opportunities? It looks good when the instance is configured in standard Creatio blue but we have several clients using different section colors and when you make the section list something like red, it clashes.

Is there any way to change the color of the widget?

Like 0

Like

1 comments
Best reply

You can add this CSS to the opportunity page:

#ConfidenceLevelWidgetContainer .background-container {
    background-color: #9f5989;
}

Result

 

If you need help with how to add the CSS to the page, see https://customerfx.com/article/adding-custom-css-style-sheets-in-bpmonl…

Ryan

You can add this CSS to the opportunity page:

#ConfidenceLevelWidgetContainer .background-container {
    background-color: #9f5989;
}

Result

 

If you need help with how to add the CSS to the page, see https://customerfx.com/article/adding-custom-css-style-sheets-in-bpmonl…

Ryan

Show all comments

Hi all,

 

I have been working on one of the API which is taking Base64 data as payload.

So, I have read the data(Base64) from attachment in business process, but I am unable to pass it to the Web Service which I have created.

 

This base64 data cannot be stored in string field. Please help if there is any work around.

Like 0

Like

1 comments

Good day,

 

If you are working with data in a business process you could try converting data with the use of a script task.

Since you can use C# for scripts in processes you could try to build a conversion script from the information in these posts:

 

How do I decode a base64 encoded string?

How do I encode and decode a base64 string?

 

And also a very similar question on our Community here.

 

Hope it helps!

Show all comments

Hello All,

 

I am trying to compile my system and its throwing an error. 

 

 

Can someone assist.

 

Regards

Sivanesan S

 

 

Like 0

Like

1 comments

Hello,

 

In the code of the UsrAccountInfoByTypeConverter you are trying to use the GetTypedColumnValue method in 81, 85 and 87 line and it's done incorrectly. You need to debug the code of the UsrAccountInfoByTypeConverter and check why the error is returned there (this should be related with types usage and columns from which data should be retrieved).

Show all comments

How do I delete a column from an Edit Page? We have sections with unused or accidentally added columns that we want to clean up and not have visible in Edit Page

Like 0

Like

1 comments

Hello Jeremy, 

 

The column can be deleted directly from the Section Wizard. 



If you have different data on UI and in Section Wizard, for example the column is visible on UI on the page but not available in Section Wizard (or vice versa), you'd need to check the value of the "Current package" system setting and set it to Custom, such issue may occur due to incorrect dependencies of your packages.

The "Custom" package is the very last package in the hierarchy, it "contains the functionality" of all other packages, so the mentioned issue should not occur once it's set as current package.



If the issue persists despite the provided recommendations, please contact the support team at support@creatio.com so we could proceed with investigation.



Best regards,

Anastasiia

Show all comments

Hello Creatio community,

I am using Creatio base method:

/**
 * Opens edit page for selected record.
 * @protected
 */
editCurrentRecord: function() {
	const primaryColumnValue = this.getPrimaryColumnValue();
	// ** ESQ Method
	var object = this.GetObjData(primaryColumnValue);
	// existing implementation
	this.closeMiniPage();	
	if (primaryColumnValue) {
		this.editRecord(primaryColumnValue);
	}
},

Before page redirection I want to get all object data using ESQ filter ("GetObjData" method). The problem is that ESQ is asynchronous and the main method doesn't wait for "GetObjData" method to finish.

 

How can I convert "GetObjData" to synchronous so the main method "editCurrentRecord" awaits the child method?

 

Regards,

Lirzae

Like 0

Like

1 comments

Hello,

if you want to make your methods work in a defined order, you need to use the Terrasoft.chain logic. More about it in this article.

Show all comments

Hi community,

Is it possible to use a wildcard when using global search?

Can I search for the account called creatio using cre* in the command line?

Like 0

Like

3 comments

Hello Stefano,

 

As of now it's not possible to use a wildcard when using global search.

However the "Search by partial match" option is available for most of the GS templates:

https://academy.creatio.com/docs/user/on_site_deployment/containerized_…

 

If the template should be changes for your cloud-based site, you can create a corresponding request for the support team.

 

Best regards,

Anastasiia

 

Anastasiia Zhuravel,

Can this change affect the duplicate search results?

Hi,

 

There will be no negative impact on the search functionality, just it's parameters will be different, all of the search templates features are provided in a corresponding table of the shared above article.

 

Best regards,

Anastasiia

Show all comments

Hi,



Could you localize the app https://marketplace.creatio.com/app/gdpr-creatio "GDPR for Creatio" to French / German / Italian ?



Eg in French: GDPR becomes RGPD



Thank you



Damien

Like 0

Like

5 comments

Hi Damien,

The responsible team does not have current plans to add additional localizations. However, since the app is a free add-on, you can localize it on your own.

Irina Lazorenko writes:

Hi Damien,

The responsible team does not have current plans to add additional localizations. However, since the app is a free add-on, you can localize it on your own.

Will need a bit of guidance then, we tried localizing, but it breaks the app...



That's a bit disappointing, knowing GDPR is a European feature, and Europe is slightly more than one language, you would expect that type of legal linked application to be multilingual...

Hi Damien!



Could you please provide us more details about the issue?

Which steps have you taken? What kind of errors have you got?

 

Also note that we recommend using the Translation section to add a localization.

Hi,



We had stop using it because it was taking way too much time to load (literally up to 2 h sometimes) and was unusable. Never tried it again in version 8 of Creatio, actually worked this time :)

Damien Collot,

 

Hi Damien,

Great to hear it works fine. 

 

When you open the Translation section, Creatio runs the actualization process. It is required to check for and load new localizable strings. 

If you make a large number of changes and you have not used the section for a long period, the first actualization can take some time.

Show all comments
Question
Hello Everyone ! 

I would like to know if there's a way to check standard on a numeric field  of an ID.

I would like to check the correctness of the input received by the user, no need to verify the validity of the id.

 

The required device is written In JAVASCRIPT:

 

Like 0

Like

1 comments

Hello,

 

Here is the example of checking if the string contains Guids:

The code is:

function checkIfValidGuid(id) {
    var valueToCheck = id.trim();
    return /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/.test(valueToCheck);
}

It's better use regular expressions in case you need to check if the input fits the conditions. Please also note that this is the general Java Script question not related to development in the Creatio platform so it's better to ask such questions in forums like Stack Overflow.

Show all comments

Hi community,

I have a custom button in the product in order detail action menu.

When I click this custom button, I want it to save the parent order page before it continue to do other work.

How may I get the master record and save? Is it like this.parent.save() or something else?

Thank you!

Like 0

Like

2 comments
Best reply

Oleg Drobina,

Thank you Oscar, it works! I provide my codes below:

onButonClick2: function() {	  
  var config = {
	  sysProcessName: "UsrProcess_46b3b57Dynasafe11",
	  parameters: { 
		  ProcessSchemaRecordID: this.get("MasterRecordId")
	  },
	  callback: function() {
		  this.reloadEntity();
		  Terrasoft.showInformation("The process has completed.");
	  },
	  scope: this
  };			  
  var args = {
	  isSilent: true,
	  messageTags: [this.sandbox.id],
	  callback: function() {
		  ProcessModuleUtilities.executeProcess(config);
	  }
  };
  this.sandbox.publish("SaveRecord", args, [this.sandbox.id]);				  
},

 

Hi Andrew,

 

Probably this approach can save the master record of the detail, but it should be tested (taken from the examples in the BaseGridDetailV2):

const args = {
					isSilent: true,
					messageTags: [this.sandbox.id]
				};
				this.sandbox.publish("SaveRecord", args, [this.sandbox.id]);

 

Oleg Drobina,

Thank you Oscar, it works! I provide my codes below:

onButonClick2: function() {	  
  var config = {
	  sysProcessName: "UsrProcess_46b3b57Dynasafe11",
	  parameters: { 
		  ProcessSchemaRecordID: this.get("MasterRecordId")
	  },
	  callback: function() {
		  this.reloadEntity();
		  Terrasoft.showInformation("The process has completed.");
	  },
	  scope: this
  };			  
  var args = {
	  isSilent: true,
	  messageTags: [this.sandbox.id],
	  callback: function() {
		  ProcessModuleUtilities.executeProcess(config);
	  }
  };
  this.sandbox.publish("SaveRecord", args, [this.sandbox.id]);				  
},

 

Show all comments

Hello Creatio community,



We're trying to hide/show items in print section button based on specific conditions. The filter works fine in section page and edit page but it doesn't work when we try to open the edit page from the section page.



When we try to open the edit page from the section list the filter that we have made in both section and page doesn't apply and all the items in print button are displayed. Examples below.

 

1. Print button in section list

2. Print button when we open edit page (from reload)

3. Print button when edit page is open from application section list

 

Application page:

        preparePrintFormsMenuCollection: function (printForms) {
                this.callParent(arguments);
                printForms.eachKey(function (key, item) {
                    if(key =="ebd9e198-9d05-21b7-6d30-4f79eb6cf2ea")
                    {
                        item.set("Visible", true);
                    }
                    else{
                        item.set("Visible", false);
                    }
                }, this);
            },

Application section:

            isSectionPrintFormEnabled: function(reportId) {
                if (!this.isAnySelected()) {
                    return false;
                }
                if (this.isSingleSelected() && !this.get("SelectAllMode")) {
                    var applicationId = this.$ActiveRow;
                    if(reportId == "ebd9e198-9d05-21b7-6d30-4f79eb6cf2ea"){
                        return true;
                    }
                    return false;
                } else {
                    const reportCollection = this.get(this.moduleSectionPrintFormsCollectionName);
                    const report = reportCollection.get(reportId);
                    return (report && report.get("PrintFormType") !== Terrasoft.ConfigurationEnums.ReportType.Word) || !this.get("SelectAllMode");
                }
            }, 

The function "preparePrintFormsMenuCollection" is called every time the application page is opened. When the application page is opened from the section list (combined mode) the print button is not reloaded and keeps the older values.



How can we reload the items of the print button when the edit page is opened from section page?



Regards,

Lirzae

Like 0

Like

2 comments

Hello Lirzae,

You could try the following. When a row is selected in the section, retrieve the collections of printables for the section, then look through and set the Visible property based on the values of the selected row. Something like this: 

rowSelected: function(primaryColumnValue) {
    this.callParent(arguments);
 
    // get data for selected row
    var row = this.getGridData().get(primaryColumnValue)
 
    // get printables collection
    var reportCollection = this.get(this.moduleSectionPrintFormsCollectionName);
    Terrasoft.each(reportCollection, function(report) {
            if (row.get("UsrSomeField") == "Some Value" && report.get("Id") == "TheReportId") {
                report.set("Visible", false);
            }
            else {
                report.set("Visible", true);
            }
    }, this);
}

Note, I've not tried that before so not sure if it will work, but that is what I would attempt first. Also, the fields available in the "row" variable would depend on the column layout of the section. If you need to ensure a value is available, you'll want to add that to the section ESQ like this: 

initQueryColumns: function(esq) {
    this.callParent(arguments);
 
    if (!esq.columns.contains("UsrSomeField")) {
        esq.addColumn("UsrSomeField");
    }
}

Ryan

Ryan Farley,

 

I tried using "rowselected" method but this only works in section list page. When I try to open the edit page from section list the print button shows all the items.

The other method that I used "preparePrintFormsMenuCollection" is called when the edit page is opened but doesn't reload the print button items. 

 

Is there any other method that can reload print button items when the edit page is opened from the section list?

Show all comments