Hello!



Is it possible to generate/download Excel file with all columns for data import?

It was possible in previous versions, but now I cannot find such option 





Thank you!

Vladimir

Like 0

Like

1 comments

I'm trying to binding lookup data with section data inside of this lookup. But when it is installed to another, an error occurs and the data section is not bound. How to bind lookup data with data section?

Like 0

Like

1 comments

Hi colleagues,

Please select these data bindings and press install in the "Multi actions" menu.

Will it be successful?

Best regards, Alex.

Show all comments

Hello, 

 

It is possible to connect with more than one record in this section.

 

For example, connect an activity with two opportunities and these appear in the panel of pending activities in the two opportunities

 

Like 1

Like

1 comments

Hello Luis, 



Modifying the detail [Connected To] is only possible by the means of the development since it is implemented by using different programming logic.

We may suggest to check the below posts where similar business task have been already discussed:

https://community.creatio.com/questions/connect-activity-custom-object#comment-71151

https://community.creatio.com/questions/how-can-i-remove-activity-link-email

Should you have any questions, please let us know!

Best regards,

Anastasiia

Show all comments

hello,

I have a query that can we generate any pdf in creatio and fill the detain in the pdf using our Custom feilds .

Like 1

Like

3 comments

Hello,



I believe that your business task could be achieved by this add-on.

Bogdan

Will surely look into this 

Thanks

Hi Bogdan

As far as I have explored Aspose.PDF Addon ,we are not able to create Pdf in studio can you provide some steps how to configure this addon in my Application in Sales.

 

Show all comments

Hello community,

I referred the following OData Doc https://academy.creatio.com/docs/sites/en/files/pdf/node/1398/OData_.pdf (Pages 9 through 14) to add a contact image.



I understand there are 3 steps

1. Create a record in SysImage Table

2. Add Image content (Data column of BLOB type) using PUT request

3. Set Contact tables column "PhotoId" to the Id in SysImage table created in step 1.

 

Despite multiple attempts and I am unable to see the image on the UI of contact record. The following is how I see the image







I am probably doing something wrong in step 2.

Please help understand how to send Image Data via http://localhost:98/0/odata/SysImage(da08aecf-44bf-479e-99a3-5c4ce1c817… API.



Should the image Data be base64 or Hex format? Or can I directly add it as a file through postman and send?

Like 0

Like

1 comments

Hello,

 

Thank you for your question.

Please refer to this community article that explains how to fix this exact issue:

https://community.creatio.com/questions/upload-image-sysimage-using-oda…

 

Please note that after adding the picture, be sure to religion into the application and clear your browser's cache.

 

Thank you.

Show all comments

I need the button that I created "Adjust Inventory" to be visible only when the page is not with altered fields without having the values saved.

So when it is unsaved it will show like this:

And when you have the "Save" and "Cancel" buttons visible, it should be disabled.

Like 0

Like

3 comments

Hi Gabriel,



Can you please check the SchemaPageV2 of your object?

That should have the Button definition in the Diff array and you can add the Visible: false property to it to remove it from your edit page.





BR,

Bhoobalan Palanivelu.

 

Bhoobalan Palanivelu,

I created an attribute to be able to disable it when there is an unsaved field, the problem is that I can't change it, and the page in the two images above are the same page, it is a detail page.

 

Gabriel Cassimiro,

 

Could you please share with us more details on the page/detail where you are using this, and the current code implementation that you have for your button?

 

Best regards,

Dariy

Show all comments

Hi Team,



I would like to modify the filters for the list of Product Displayed while adding products in OrderProduct (In Order record).

 

Step 1: How does the add button event open ProductSelectionSchema?

Step 2: Need to update the filters in ProductSelectionSchema?

The Product selection schema has "loadGridData" method that calls "getProductInBasePriceListEsq" where the BasePriceList is taken and filtered.

Also, in OOTB the Account and its price list are sent to ProductSelectionSchema and how do the values are transferred?

 

Below are the filters required,

1.Dont need to display any base price list for any products.

2.Filter the Product Price List only if it has start date.

3.Filter the Product Price List only if end date is empty or null.

4.Need an additional parameter to filter the Product (price list table, column is grade).

i.e., Grade column value is passed from Order page and it has to be compared in ProductSelectionSchema.



Note: Date filters or other filters are not applying and it always shows the base price list. And how to get the values from OrderPageV2 to ProductSelectionSchema (if it is through message mechanism, how the OOTB Account and its pricelist is transferred and what are the schemas and where it is defined both subscription and publish of basepricelist)

define("ProductSelectionSchema", [],
function() {
return {
    methods: {
      init: function(callback, scope) {
            this._initViewActionItems();
            this.set("CurrentDataView", "GridDataView");
            this.set("DataViewToChange", "GridDataView");
            this.moneyModule = MoneyModule;
            this.initAttributeDefaultValues();
            this.callParent([function() {
                this.Terrasoft.chain(
                    this.initEntitySchema,
                    this.initProfile,
                    this.requestMasterEntityData,
                    this.loadCurrencyRates,
                    this.initCurrencies,
                    function() {
                        this.loadGridData();
                        this.subscribeSandboxEvents();
                        this.Ext.callback(callback, scope);
                    },
                    this
                );
            }, this]);
        },
 
 
    getProductInBasePriceListEsq: function(basePriceList) {
        var basePriceListProductEsq = this.getBaseESQ("Product");
        var productPricePrefix = "[ProductPrice:Product:Id].";
        basePriceListProductEsq.rowCount = 40;
 
        basePriceListProductEsq.addColumn("Price", "ProductPrice");
        basePriceListProductEsq.addColumn(productPricePrefix + "Price", "Price");
        basePriceListProductEsq.addColumn(productPricePrefix + "Currency", "Currency");
        basePriceListProductEsq.addColumn(productPricePrefix + "Tax", "Tax");
        basePriceListProductEsq.addColumn(productPricePrefix + "Tax.Percent", "DiscountTax");
        basePriceListProductEsq.addColumn(productPricePrefix + "PriceList", "PriceList");
        basePriceListProductEsq.addColumn(productPricePrefix + "DBLStartDate", "StartDate");
        basePriceListProductEsq.addColumn(productPricePrefix + "DBLEndDate", "EndDate");
        basePriceListProductEsq.addColumn(productPricePrefix + "DBLProductGrade", "DBLProductGrade");
 
        basePriceListProductEsq.filters.addItem(this.Terrasoft.createFilter(this.Terrasoft.ComparisonType.EQUAL,
            productPricePrefix + "Product.Id", "Id"));
        basePriceListProductEsq.filters.addItem(this.Terrasoft.createColumnFilterWithParameter(
            this.Terrasoft.ComparisonType.EQUAL, productPricePrefix + "PriceList.Id", basePriceList.value));
 
        /*basePriceListProductEsq.filters.addItem(this.Terrasoft.createColumnFilterWithParameter(
            this.Terrasoft.ComparisonType.LESS_OR_EQUAL, productPricePrefix + "DBLStartDate", today));
        basePriceListProductEsq.filters.addItem(this.Terrasoft.createColumnFilterWithParameter(
            this.Terrasoft.ComparisonType.EQUAL, productPricePrefix + "DBLEndDate", null));
 
            Need Filters
            1.Dont need to display any base price list for any products.
            2.Filter the Product Price List only if it has start date.
            3.Filter the Product Price List only if end date is empty or null.
            4.Need an additional parameter to filter the Product (price list table, column is grade).
            i.e., Grade column value is passed from Order page and it has to be compared in ProductSelectionSchema.
 
 
        */
 
        basePriceListProductEsq.filters.addItem(this.Terrasoft.createColumnFilterWithParameter(
            this.Terrasoft.ComparisonType.EQUAL, productPricePrefix + "DBLProductGrade", productGrade.value));
 
        this.applyAdditionalFilters(basePriceListProductEsq);
        this.initializePageableOptions(basePriceListProductEsq);
        basePriceListProductEsq.filters.addItem(
            this.Terrasoft.createColumnFilterWithParameter(this.Terrasoft.ComparisonType.EQUAL,
                "IsArchive", false));
        return basePriceListProductEsq;
    },
    },
    diff: []
};
});



Any support on this case is appreciated!





BR,

Bhoobalan Palanivelu.

 

Like 0

Like

3 comments

Hello Bhoobalan,

 

Regarding the first question, the add button is defined in the ProductDetailV2 schema from the ProductCatalogue package. In this part:

onProductSelectionButtonClick: function() {
					var isCardChanged = this.isCardChanged();
					if (isCardChanged) {
						var args = {
							isSilent: true,
							messageTags: [this.sandbox.id]
						};
						this.set("OpenProductSelectionModule", true);
						this.sandbox.publish("SaveRecord", args, [this.sandbox.id]);
					} else {
						this.loadProductSelectionModule();
					}
				},

 

Regarding the second part where you need custom filters, pleast contact us at support@creatio.com specifying each request and each question in detail in order to understand the business task and what is the current issue.

 

Best regards,

Dariy

 

Dariy Pavlyk,

Thanks for sharing this!

 

Is it possible to make the Product object in the Opportunity section (OpportunityProductInterest) to open the product catalogue?

What are the steps to be carried out to make this OpportunityProductInterest open the product catalogue list?



 

BR,

Bhoobalan Palanivelu.

 

Bhoobalan Palanivelu,

 

We're glad to see that you were able to achieve this functionality as mentioned in these articles

https://community.creatio.com/questions/enable-product-catalog-list-ord…

https://community.creatio.com/questions/enable-product-catalog-list-ord…

 

Unfortunately, as it's mentioned there, it wouldn't be possible to set up a product catalogue using our OOTB object, as it is already implemented for other functionalities. 

 

Best regards,

Dariy

Show all comments

Hello Creatio Community,

I have an editable list, and I want that one of its columns "Product" be displayed as a link. So that when its clicked it redirects automatically to the Product section.

How can this functionality be achieved ?

Does this involve overriding the addColumnLink: function ?

Thank you,

Petrika

Like 0

Like

2 comments
Best reply

Hi Petrika,



The below code will make the lookup column act as a link as to how it inherits the behaviours during a normal detail.



This is the actual logic to make the lookup a link in the detail Grid (Editable detail).



if (entitySchemaColumn.dataValueType === this.Terrasoft.DataValueType.LOOKUP{

                            config.showValueAsLink = true;

                        }

 

Add this method in your corresponding detail code,

getCellControlsConfig: function(entitySchemaColumn) {
					debugger;
						if (!entitySchemaColumn) {
							return;
						}
						var columnName = entitySchemaColumn.name;
						var enabled = (entitySchemaColumn.usageType !== this.Terrasoft.EntitySchemaColumnUsageType.None) &&
								!this.Ext.Array.contains(this.systemColumns, columnName);
						var config = {
							itemType: this.Terrasoft.ViewItemType.MODEL_ITEM,
							name: columnName,
							labelConfig: {visible: false},
							caption: entitySchemaColumn.caption,
							enabled: enabled
						};
						if (columnName === "MyColumn") {
							config.enabled = false;
						}
						if (entitySchemaColumn.dataValueType === this.Terrasoft.DataValueType.LOOKUP{
							config.showValueAsLink = true;
						}
						if (entitySchemaColumn.dataValueType !== this.Terrasoft.DataValueType.DATE_TIME &&
								entitySchemaColumn.dataValueType !== this.Terrasoft.DataValueType.BOOLEAN) {
							config.focused = {"bindTo": "Is" + columnName + "Focused"};
						}
						return config;
					},





BR,

Bhoobalan Palanivelu.

Hi Petrika,



The below code will make the lookup column act as a link as to how it inherits the behaviours during a normal detail.



This is the actual logic to make the lookup a link in the detail Grid (Editable detail).



if (entitySchemaColumn.dataValueType === this.Terrasoft.DataValueType.LOOKUP{

                            config.showValueAsLink = true;

                        }

 

Add this method in your corresponding detail code,

getCellControlsConfig: function(entitySchemaColumn) {
					debugger;
						if (!entitySchemaColumn) {
							return;
						}
						var columnName = entitySchemaColumn.name;
						var enabled = (entitySchemaColumn.usageType !== this.Terrasoft.EntitySchemaColumnUsageType.None) &&
								!this.Ext.Array.contains(this.systemColumns, columnName);
						var config = {
							itemType: this.Terrasoft.ViewItemType.MODEL_ITEM,
							name: columnName,
							labelConfig: {visible: false},
							caption: entitySchemaColumn.caption,
							enabled: enabled
						};
						if (columnName === "MyColumn") {
							config.enabled = false;
						}
						if (entitySchemaColumn.dataValueType === this.Terrasoft.DataValueType.LOOKUP{
							config.showValueAsLink = true;
						}
						if (entitySchemaColumn.dataValueType !== this.Terrasoft.DataValueType.DATE_TIME &&
								entitySchemaColumn.dataValueType !== this.Terrasoft.DataValueType.BOOLEAN) {
							config.focused = {"bindTo": "Is" + columnName + "Focused"};
						}
						return config;
					},





BR,

Bhoobalan Palanivelu.

Thank you Bhoobalan Palanivelu,

 

It works perfectly.

Show all comments

Is there a way to integrate Google Forms with Creatio's Lead Object. Can the OOTB Landing Page Integration capabilities help here?



Thank you!

Like 1

Like

1 comments

Hello Vishal,



Currently, there are no such connectors.



However, you can also try to set up integration through the Zapier connector directly. It allows you to transfer data between applications.

 

You can connect it to Creatio, and it, in turn, can transfer data from Google forms and tables.

Show all comments

I need this button to be on all rows and not on "activeRowActions", and I can't find the right parent.

 

{
	"operation": "insert",
	"parentName": "DataGrid",
	"propertyName": "activeRowActions",
	"name": "MoveQtyButton",
	"values": {
		"itemType": Terrasoft.ViewItemType.BUTTON,
		"caption": "Move Qty",
		 "className": "Terrasoft.Button",
         "style":this.Terrasoft.controls.ButtonEnums.style.BLUE,
         "tag": "call",
	}
},

 

Like 1

Like

6 comments

Hi Gabriel,



Please find the solutions in the below community threads.

https://community.creatio.com/questions/add-button-datagrid-active-row
https://community.creatio.com/articles/add-button-active-row-detail







BR,

Bhoobalan Palanivelu.

Bhoobalan Palanivelu,

Thanks for responding, but I had seen these posts before, and they helped me in parts but not for what I need, the two are for activeRow, that is for when they are selected only, and I need them to appear in all rows even if not selected.

Gabriel Cassimiro,



Thanks for the briefing!

In this case, you need a button as a column in the grid.



ContactSectionV2 Grid

define("ContactSectionV2", ["css!UsrContactSectionV2CSS"], function() {
	return {
		entitySchemaName: "Contact",
		attributes: {
			"SelectButtonColumn": {
				"dataValueType": Terrasoft.DataValueType.TEXT,
				"type": Terrasoft.ViewModelColumnType.VIRTUAL_COLUMN
			}
		},
		details: /**SCHEMA_DETAILS*/{}/**SCHEMA_DETAILS*/,
		diff: /**SCHEMA_DIFF*/[]/**SCHEMA_DIFF*/,
		methods: {
			onGridDataLoaded: function(response) {
				this.mixins.GridUtilities.onGridDataLoaded.call(this, response);
				this.addSelectCustomerButton();
			},
			onRender: function() {
				this.callParent(arguments);
				this.addSelectCustomerButton();
			},
			unSelectRow: function(id) {
				this.mixins.ConfigurationGridUtilities.unSelectRow.apply(this, arguments);
				this.addSelectCustomerButton();
			},
			addSelectCustomerButton: function() {
				var baseSelector = "#grid-ContactSectionV2DataGridGrid-wrap div.grid-listed-row div:last-child";
				var selector = baseSelector + ">span";
				var scope = this;
				$(selector).unbind();
				$(baseSelector).html(
					Ext.String.format("<span>{0}</span>", this.get("Resources.Strings.SelectCustomerButtonCaption")));
 
				$(selector).addClass("glb-select-customer-button");
 
				$(selector).click(function() {
					var id = "";
					try {
						id = arguments[0].currentTarget.offsetParent.offsetParent.attributes.id.value.split("item-")[1];
					} catch(e) {}
					if (id) {
						scope.onSelectCustomerButtonClick(id);
					} else {
						this.error("Active row id was not found");
					}
				});
			},
			onSelectCustomerButtonClick: function(id) {
				this.showInformationDialog(id);
			}
		}
	};
});

CSS Module:

.glb-select-customer-button {
	background: #8ecb60;
	color: white;
	padding: 2px 10px;
	border-radius: 3px;
}
 
.glb-select-customer-button:hover {
	background: #74bc48;
	cursor: pointer;
}



Result will be like below,





You need to do the same in your detail schema.





BR,

Bhoobalan Palanivelu.

 

Bhoobalan Palanivelu,

This is fantastic Bhoobalan, thanks for sharing!

Ryan

Bhoobalan Palanivelu,

Thanks, I have a question, because I'm trying to apply in a list of a detail, but I'm not having the same result for when it is a grid of a section, is there something I have to put different or does it work the same way?

Gabriel Cassimiro,



Please be informed to define the value for this label through the localizable string available on your schema page.

this.get("Resources.Strings.SelectCustomerButtonCaption"))

Also, you can check about the CSS and its dependency included in your schema.


 

BR,

Bhoobalan Palanivelu.

Show all comments