I was creating a button that runs a simple business process that sends a mail.

The problem is after altering the schema of the Portal user profile and adding a button the business process doesn't run nor gets mentioned in the process logs for tracing.

here are the codes used in the schema to run a bp in the portal contact page :

 

define("SspProfileContactPage", ["ProcessModuleUtilities","css!UsrCSSPortalProfile"], function(ProcessModuleUtilities) {
    return {

....

methods: {
            OnClickTest: function(){
                var args = {
                    sysProcessName: "UsrProcess_e179057",
                    parameters: { 
                        test: "testing" 
                    }
                };
                ProcessModuleUtilities.executeProcess(args); 
                this.showInformationDialog("Busniess process triggered");
            },

...

diff...

...

"operation": "insert",
                "name": "UpdateButton",
                "parentName": "Tabc34c9c60TabLabelGroup654f02cd",
                "propertyName": "items",
                "values": {
                    "itemType": Terrasoft.ViewItemType.BUTTON,
                    "caption": "Update Info",
                    "style": Terrasoft.controls.ButtonEnums.style.BLUE,
                    "click": {
                        "bindTo": "OnClickTest"
                    },
                    //"tag": "OnClickTest",
                    "hint": "TEST BUTTON"
                },

Like 0

Like

1 comments

Hello,

 

I've used the same code in the demo application and the process was triggered. Maybe the process is not logged in the process log ("Enable logging" in the process settings in the process designer) or you receive some actual error in the console when starting the process. You need to check if the code of the schema doesn't contain duplicates of methods or errors as well. The complete code from my side:

define("SspProfileContactPage", ["ProcessModuleUtilities", "css!UsrCSSPortalProfile"], function(ProcessModuleUtilities) {
	return {
		mixins: {},
		entitySchemaName: "Contact",
		messages: {},
		details: /**SCHEMA_DETAILS*/{}/**SCHEMA_DETAILS*/,
		diff: /**SCHEMA_DIFF*/[
			{
				"operation": "insert",
                "name": "UpdateButton",
                "parentName": "GeneralInfoTab",
                "propertyName": "items",
                "values": {
					"itemType": Terrasoft.ViewItemType.BUTTON,
					"caption": "Update Info",
                    "style": Terrasoft.controls.ButtonEnums.style.BLUE,
                    "click": {
                        "bindTo": "OnClickTest"
                    },
					"hint": "TEST BUTTON"}
			},
		]/**SCHEMA_DIFF*/,
		attributes: {},
		methods: {
				OnClickTest: function(){
					var args = {
						sysProcessName: "UsrProcess_b0eee32",
						parameters: { 
							test: "testing" 
						}
					};
                ProcessModuleUtilities.executeProcess(args); 
                this.showInformationDialog("Busniess process triggered");
            },
		},
		rules: {},
		userCode: {}
	};
});

 

Show all comments

I want to build an 'add' client wizard for our customer service to make it easy for them and also to prevent mistakes.

 

The first step would be to insert zipcode and housenumber, then it will make an API call to see how many adresses match these two parameter. 

 

The list that is returned, if the list is > 1 it should show you the information from the array and make you able to choose 1 of the options. 

 

If the list is 1 it should automatically pick the only available option.

 

I understand how to create the business process but combining this with a user interface is still difficult for me, is this even possible? 

Like 1

Like

0 comments
Show all comments

I have a lookup field on a detail (List of VAT options with an added column for the % values), im trying to use these now to calculate a value, how do I access the other column? I can access the VAT Code using this.get("UsrVatCode"), but want the associated column which as the % amount.

Like 0

Like

2 comments
Best reply
var lookupId = this.get("RecordColumn").value;
 
var esq = this.Ext.create("Terrasoft.EntitySchemaQuery", {
    rootSchemaName: "INSERTOBJECT"
});
 
esq.addColumn("Insert Object column you wish to view");
 
esq.getEntity(lookupId, function(result) {
    if (!result.success) {
        this.showInformationDialog("Error");
        return;
    }
    this.showInformationDialog(result.entity.values.Column You wish to view);
}, this);

This is the code that I used to get it working, if anyone needs it.

var lookupId = this.get("RecordColumn").value;
 
var esq = this.Ext.create("Terrasoft.EntitySchemaQuery", {
    rootSchemaName: "INSERTOBJECT"
});
 
esq.addColumn("Insert Object column you wish to view");
 
esq.getEntity(lookupId, function(result) {
    if (!result.success) {
        this.showInformationDialog("Error");
        return;
    }
    this.showInformationDialog(result.entity.values.Column You wish to view);
}, this);

This is the code that I used to get it working, if anyone needs it.

There is also another approach: in the schema in the attributes property you can specify your column in the following manner:

"Your_column_from_the_page": {
					"dataValueType": this.Terrasoft.DataValueType.LOOKUP,
					"lookupListConfig": {
						"columns": ["column_name_from_the_lookup_object"]
					}
				},

As an example we can see that in the ContractPageV2 there is this attribute:

"Currency": {
					"dataValueType": this.Terrasoft.DataValueType.LOOKUP,
					"lookupListConfig": {
						"columns": ["Division"]
					}
				},

and we have access to the value of the "Division" column from the "Currency" lookup:

Show all comments

Im trying to create a calculated field to show a total of all records from a detail on a record, ive looked into using sql views, however I'm not sure if that would work as you cant filter by the record I don't think, are there any code solutions or anything similar?

Like 0

Like

1 comments

Hello,

 

You can try creating an integer column in the page (and in the object that this page represents) and create a business process that will change the value in this column once the record is added to the detail (or decrement once the value is removed). This way you can create the logic without additional code that will save resut in the server.

 

If you still want using the code - something similar is the functionality of the order product detail summary (that displays the number of products in order, can be found on the order page in the "products" tab). This logic can be found in the updateSummary method from the OrderProductDetailV2 from the Order package.

Show all comments

Does anyone know a way to change the order of the dashboard panels?

On the table SysDashboard I found the column Postion. But if I change something here, it doesn't do anything.

It looks like he always sorts alphabetically.

 

Like 2

Like

3 comments
Best reply

Dear Christian,

 

Thanks for your question.

 

Starting from version 7.16.2, you can change the order of dashboard tabs by adding them to favorites:

 

 

 

Please let us know if additional questions arise!

 

Best regards,

Anastasiia. 

 

 

It's always just alphabetical. To force a certain order I usually just prefix the dashboard name with a number.

Ryan

Dear Christian,

 

Thanks for your question.

 

Starting from version 7.16.2, you can change the order of dashboard tabs by adding them to favorites:

 

 

 

Please let us know if additional questions arise!

 

Best regards,

Anastasiia. 

 

 

Thanks for your answers. 
I found a little workaround. I put a space in front of the name. It works.
But, to mark it as "favorites" is the better way. :-)

Show all comments

Hello. I'm working with the Multiple choice field setup for Creatio (https://marketplace.creatio.com/app/multiple-choice-field-setup-creatio) add-on but I'm not getting it to save the selected values.

I've followed the guide here: https://marketplace.creatio.com/sites/marketplace/files/app-guide/Multi…

I get the values correctly on the page, and they are selectable. But nothing is saved to the database when i Save the record

Object: UsrContactLabels
Lookup: UsrLabels
Link-object: UsrContact

 

 

Like 0

Like

1 comments

Hi Vasili,

Could you please give us more details about your issue?

Specifically, please describe your object model based on the following template:

The example implies the following conditions:
1. Multiple choice field was added to the Activity page.
2. The method uses the ActivityParticipant object linked to the Activity object.
3. The Contact object is a source object for the Multiple choice field.

 

As such, the structure comprises three main objects:
• Activity: main object
• ActivityParticipant: decoupling object
• Contact: source object for the Multiple choice field

 

Also, please send us the list of columns in the decoupling object, your Creatio version, product, and DBMS

Show all comments

we are taking Token as request parameter  and it will generate Response as Data object for these thing how to create business process. 

 

Can Anybody please, suggest how to do business process?

Like 0

Like

1 comments

Hi

The best way of doing a business process around the web server would be using the element "Call web service". Regarding the situation, it would be better to start your web server via this element.

Show all comments

we are created rest webservice with username as system setting(Paramater) it was coming in Bpm and password(it was showing an error while selecting parameter as system setting) as request parameters and get response as Token for these process we need to create business process.

can you please,share any idea or image for BPM.?

 

File attachments
Like 0

Like

1 comments

Hello,

 

The best way of doing a business process around the web server would be using the element "Call web service". Regarding the situation, it would be better to start your web server via this element.

 

We have one example related with web service integration.

Show all comments
Question

I got a strange error when trying to open Preconfigured page on UAT envirinment
no changes on the process or page has been made recenty.
The page has not been even started

Terrasoft.Common.InvalidObjectStateException: Column Id value cannot be obtained because it has not been loaded.
 

Like 0

Like

2 comments

Hello,

 

Please make sure to contact our support team directly at support@creatio.com and describe this issue in more detail, so we could help resolve it.

thx Mira.
it correctet itself.
its looks the engin cant localize any paremeters or page.
But its start working

regards
Tomek

Show all comments

Hi Everyone!
Hope everyone is well,
I really need urgent help/suggestion in the below scenario-

Scenario-
Candidates resumes are attached in the Contact attachments and I need to stream this file to 3rd party resume parsing platform which can parse the resume/CV and send back the response.

My Findings -
I found a few resume parsing platforms to which If I can pass either file url/file/base64 and then it parses the information.
I also tried to pass the data in the "Data" column of the contact attachment table directly to the parsing platform but it returns an error - "Unable to decode encoded file data"

Challenge -
Not able to read file data from attachment as base64 and convert it to string.

Like 1

Like

1 comments

Hello,

 

In Postman I was able to get the content of the file using the following URL (GET request): https://site.creatio.com/0/rest/FileService/GetFile/d95c76f6-64bc-444c-…

 

This is the URL that is called when you try to get the attachment from the UI. d95c76f6-64bc-444c-9bfc-1b9cfd4f06e0 is the UId from the SysSchema table representing the object where the attachments are stored (ContactFile, AccountFile, FileLead etc) and the eba29d21-2922-4094-b996-f5c18ee025d1 is an Id of the actual attachment.

 

This should be also received using some program call (like some integration) as either a plain text or the set of bytes (should be tested). Then the content can be encoded\decoded using something like this https://stackoverflow.com/questions/11743160/how-do-i-encode-and-decode…. These are suggestions, unfortuantely we don't have a ready solution for this. 

Show all comments