Hello,

With 8.2.3, the Landing Page Designer allows me to create a Landing Page with a form, export in HTML, publish it on my domain name.

The page and forms works well and a NEW submitted form record & contact are created in the CRM.

After submitting the form, the message displayed on the screen is as followed:
 

 

Where and How can we customize the message  OR  redirect to a Thank YOU page ?

 

PS : the version field when creating this POST has only 8.0 as an option.

Like 0

Like

4 comments

For now that is hardcoded in the javascript that Creatio includes with the form from https://webtracking-v01.creatio.com/JS/crt-landing-page.js

If you're self-hosting the form, you could save that script as your own copy and change the script tag in the form to use yours instead of the Creatio one, then modify it there. 

Ryan

Ryan Farley,

Outch….I’ve been doing Landing Pages for over 20 years with various softwares. Hard to believe that we can’t control the On Submit button  other than hardcoded JavaScript.

Can I suggest that you add the feature of redirecting to another page (Thank You or any url) within the coming release?

It’s a pretty basic Landing Page feature.

Francois Breault,

I agree, seems a bit short-sided. Hopefully they add that, I assume they will at some point (I don't work for Creatio, but I'm sure they'll see your suggestion to add that as a feature in your comment here). 

Hello,

Thank you for your question.

Currently, it is not possible to change the text that appears after a form submission in the Landing Pages module on a per-page basis. This text is fixed in the system and cannot be customized individually for each landing page.

However, we have registered this idea in our R&D team backlog for consideration and potential implementation in future releases of the application. We appreciate your feedback and your help in improving our product.

If you have any other questions or need further assistance, please feel free to reach out.

Show all comments

Hi all,

I have a process where a user selects a contact folder from a list on a preconfigured page. A sub process then needs to run for each contact in the selected folder.

I've read the article for Programmatically Using Section Folder Filters in Processes or Server-Side Code in Creatio | Customer FX and I have borrowed a script task for creating the list of contacts.

var sectionName = "Contact";
var folderId = "2d3c0306-1e43-4ba7-943b-a3d261b66897"; //I will pass this in from the preconfigured page
 
// get folder SearchData
var folderSchema = UserConnection.EntitySchemaManager.GetInstanceByName(sectionName + "Folder");
var esq = new EntitySchemaQuery(folderSchema);
var dataCol = esq.AddColumn("SearchData").Name;
var folderData = esq.GetEntity(UserConnection, folderId).GetBytesValue(dataCol);
 
// convert filter data to esq filters
var serializedFilters = System.Text.Encoding.UTF8.GetString(folderData, 0, folderData.Length);
var dataSourceFilters = Terrasoft.Common.Json.Json.Deserialize<Terrasoft.Nui.ServiceModel.DataContract.Filters>(serializedFilters);
 
// MUST INCLUDE using Terrasoft.Nui.ServiceModel.Extensions;
var folderFilters = dataSourceFilters.BuildEsqFilter(UserConnection.EntitySchemaManager.GetInstanceByName(sectionName).UId, UserConnection);
 
// now can include folderFilters as filters in new esq
var contactEsq = new EntitySchemaQuery(UserConnection.EntitySchemaManager, "Contact");
contactEsq.AddColumn("Id");
contactEsq.Filters.Add(folderFilters); // using the filters from the folder
var contacts = contactEsq.GetEntityCollection(UserConnection);

I would like to either pass the results into a collection or run a sub process for each contact directly from the script task.

Any help would be much appreciated,

Like 0

Like

3 comments

An easy way to accomplish what you're after is to: 

  1. Create a collection parameter in the process
  2. Populate the contacts from the ESQ into the collection parameter (see link below)
  3. Then use normal subprocess for each contact in the collection

See here for how to add the results of the ESQ from the folder to a collection param: https://customerfx.com/article/working-with-collection-parameters-in-a-process-in-creatio/

Ryan

Ryan Farley,

Thanks Ryan. I'll give this a go now.

Ryan Farley,

I'm still struggling to get the result I'm after with the following code:

Parameters: 
- ContactFolderId (Guid)
- ContactsList (Collection)
    - ContactsList.ContactId
    - ContactsList.Name

var sectionName = "Contact";
var folderId = Get&lt;Guid&gt;("CommunityFolderId"); //"2d3c0306-1e43-4ba7-943b-a3d261b66897";
 
	var folderSchema = UserConnection.EntitySchemaManager.GetInstanceByName(sectionName + "Folder");
	var esq = new EntitySchemaQuery(folderSchema);
	var dataCol = esq.AddColumn("SearchData").Name;
 
	var folderEntity = esq.GetEntity(UserConnection, folderId);
	var folderData = folderEntity.GetBytesValue(dataCol);
 
	var serializedFilters = System.Text.Encoding.UTF8.GetString(folderData, 0, folderData.Length);
	var dataSourceFilters = Terrasoft.Common.Json.Json.Deserialize&lt;Terrasoft.Nui.ServiceModel.DataContract.Filters&gt;(serializedFilters);
 
	var folderFilters = dataSourceFilters.BuildEsqFilter(
		UserConnection.EntitySchemaManager.GetInstanceByName(sectionName).UId,
		UserConnection
	);
 
	var contactEsq = new EntitySchemaQuery(UserConnection.EntitySchemaManager, "Contact");
	contactEsq.AddColumn("Id");
	contactEsq.AddColumn("Name");
	contactEsq.Filters.Add(folderFilters);
 
	var contacts = contactEsq.GetEntityCollection(UserConnection);
 
	var list = Get&lt;CompositeObjectList&lt;CompositeObject&gt;&gt;("ContactsList");
 
	foreach (var contact in contacts)
	{
		var item = new CompositeObject();
		item["ContactId"] = contact.GetTypedColumnValue&lt;string&gt;("Id");
		item["Name"] = contact.GetTypedColumnValue&lt;string&gt;("Name");
		list.Add(item);
	}
return true;

When I run the process (passing 2d3c0306-1e43-4ba7-943b-a3d261b66897 into the ContactFolderId parameter, I'm getting an error saying:


Terrasoft.Common.ItemNotFoundException: Value "Id" was not found.
  at Terrasoft.Core.Entities.EntityColumnValueCollection.GetByName(String name)
  at Terrasoft.Core.Entities.Entity.InternalGetColumnValue(String valueName)
  at Terrasoft.Core.Entities.Entity.GetTypedColumnValue[TResult](String valueName)

I tried changing it to the following alternatives but I got the same error:

var item = new CompositeObject();
	item["ContactId"] = contact.GetTypedColumnValue&lt;Guid&gt;("Id");

and

var item = new CompositeObject();
	item["ContactId"] = contact.Get&lt;Guid&gt;("Id");

I feel like I'm missing something obvious somewhere.

Show all comments

Hello community,

I have a question if any conditions are applied to visibility of Publish button in the Landing form of Landing page section? I've created a test LP, but can't see this button. 

Like 0

Like

2 comments

The ability to publish is only enabled by turning on a feature. Go to:

[creatiourl]/0/flags

Then locate the feature (or add it if it is missing) "LandingPagePublishingEnabled" and check the box to enable. Then click the "clear cache" button. This will turn that on.

Ryan

Ryan, thanks a lot!

Show all comments

Hello everyone,

I'm hoping someone in the community can shed some light on an integration issue I'm facing. I've been stuck on this for a couple of days and have exhausted the usual methods, so any advice would be greatly appreciated!

I'm developing a webphone panel for a telephony provider. This is built as a standalone Angular component that uses an <iframe> and depends on the provider's JavaScript library, webphoneConnectorSDK.js. The final component is intended to be used within our Creatio instance.

The Problem: The component behaves perfectly in my local Angular development environment (ng serve). The SDK script loads, its global objects are available, and all functions work as expected.

However, once the component is built and deployed within the Creatio environment, it fails. I receive runtime errors indicating that the functions from the SDK cannot be found ( "WebphoneConnectorSDK is not defined").

What I've Already Tried:

I'm confident the script file is being loaded, but it seems it's not executing correctly or exposing its objects to the global window scope inside Creatio.

  1. Standard <strong>angular.json</strong> Method: I've added the script to the "scripts" array in my angular.json file.

    "scripts": [ 
    	"src/assets/js/webphoneConnectorSDK.js" 
    ]

    I've verified after building that the SDK's code is present in the final, bundled scripts.js file, which is loaded on the page. Still, the WebphoneConnectorSDK object is undefined.

  2. Dynamic Script Loading: I also tried creating a service in Angular to load the script dynamically and waiting for it to complete (async/await). The script's onload event fires successfully, but the result is the same.

My Questions for the Community:

  1. Has anyone else successfully integrated a third-party JS library (especially one that relies on the global window object) into a custom Angular component for Creatio?
  2. Is there a known "best practice" or a specific integration pattern for this scenario that I'm missing?
  3. Are there any non-obvious Creatio settings or configurations that could be interfering with the execution of globally-scoped scripts?

I'd be incredibly grateful for any ideas, pointers, or shared experiences you might have. Thanks for taking the time to read!

Like 1

Like

1 comments

Hello,

You can find solutions for similar cases in these community posts:
- https://community.creatio.com/questions/how-include-external-js-file-creatio
- https://community.creatio.com/questions/how-can-i-import-third-party-js-library

Here is a code example for your case:

requirejs.config({
    paths: {
        WebphoneSDK: Terrasoft.getFileContentUrl("YourPackageName", "src/js/webphoneConnectorSDK.js")
    }
});
 
define("YourModuleName", ["WebphoneSDK"], function(WebphoneSDK) {
    // Expose to global scope
    window.WebphoneConnectorSDK = WebphoneSDK;
 
    // Your existing Angular component logic here
});

 

Show all comments

Is there any way to add the OOTB Change Log section into a workplace? I know it isn't a normal Section so it would be somethign of a workaround, but it would be useful for our purposes to grant access to just the Change Log without granting access to the System Designer to a user role. Even just having a "Section" displayed in the workplace that just acts as a link to the change log would be useful if that's possible in some way?

Like 0

Like

1 comments

Hello.

The Change Log is not a standard section in Creatio and cannot be directly added to a workplace as a section. 

The R&D team has a task to add the Change log as a section in future releases.

Best regards,
Antonii.

Show all comments

Hello all,

I am repeatedly running into an issue where the Creatio Freedom UI page designer is showing a field under Data model attributes that is from a higher package in the hierarchy. The page I am working on does not depend on the page where the field is added but the page designer still thinks the field exists which is causing cyclical dependency errors every time I try to save the page even if I don't do anything to add the erroneous field to my page.

My page is properly placed in the lower package and connected with the version of the object within the same lower package. Why is Creatio disregarding my package structure and showing the field from a higher package? It's impossible to proceed when Creatio keeps making problems I'm trying to avoid.

Like 0

Like

1 comments

Hello,

 

The issue you are facing is related to how Creatio manages package dependencies automatically.

When you use elements from another package, Creatio adds dependencies which can sometimes lead to cyclic dependencies.

To resolve this:

-Review package dependencies - make sure your package does not depend (directly or indirectly) on a package that also depends on yours, creating a cycle.

-Adjust dependencies if needed - remove or rearrange package dependencies

-Verify current package setting - ensure you are working in the correct package and saving changes there.

-Refactor functionality if necessary — if the problematic field/functionality is not required in your package, consider moving it to a package where it won’t cause cycles.

Proper management of package dependencies and settings should help you avoid these cyclic dependency errors in Creatio.

Show all comments

I have a simple business process that calculates the Quote total by summing the Item Total field in the Quote Item records - as shown below:

 

This business process is triggered by three signal events: Quote item created, Quote Item modified, and Quote item deleted. The process works successfully when the quote item is added or deleted. The issue is when the Quote item is modified - specifically when I change the related Quote. 

While testing the business process, I changed the quote item's related Quote field from Quote 1 to Quote 2 and it updated Quote 2's total field; however, it did not update Quote 1's total field. I realize this is the case because the business process has no way of accessing the previous field value before it was modified. 

 



Is there a way to go around this or a way for a business process to see the previous values of a record before it was modified?

Like 0

Like

0 comments
Show all comments

Hi, I would like to know if there is a max amount of concurrent requests that Creatio is able to handle for custom web services defined in Creatio.

Is there any way to configure the max number of allowed concurrent requests to the same service on the technical user, the web service or the package containing the web service?

Like 0

Like

1 comments
Best reply

Hello,

There is no configurable maximum number of concurrent requests setting in Creatio for custom web services. The idea of a fixed limit isn't practical, because the performance impact of a request depends heavily on what the request actually does.

For example:

  • 1k lightweight requests that perform simple data retrieval or write operations may have minimal impact on the system.
  • Conversely, 1k complex or resource-intensive requests (e.g. involving multiple joins, integrations, or heavy business logic) could significantly degrade performance or cause failures under load.

Instead of a static limit, Creatio relies on the underlying infrastructure and available resources to dynamically manage the load. When system resources become constrained, the platform will naturally slow down or reject excess incoming requests to protect stability.

We recommend using a batching approach when integrating or calling custom services:

  • Start with batches of 2,000 to 20,000 requests, depending on the expected load per request.
  • Perform load testing to evaluate how the system responds. If the particular request is lightweight, you can safely increase the batch size.

This approach gives you flexibility and scalability without setting limits that may not reflect actual usage.

Hello,

There is no configurable maximum number of concurrent requests setting in Creatio for custom web services. The idea of a fixed limit isn't practical, because the performance impact of a request depends heavily on what the request actually does.

For example:

  • 1k lightweight requests that perform simple data retrieval or write operations may have minimal impact on the system.
  • Conversely, 1k complex or resource-intensive requests (e.g. involving multiple joins, integrations, or heavy business logic) could significantly degrade performance or cause failures under load.

Instead of a static limit, Creatio relies on the underlying infrastructure and available resources to dynamically manage the load. When system resources become constrained, the platform will naturally slow down or reject excess incoming requests to protect stability.

We recommend using a batching approach when integrating or calling custom services:

  • Start with batches of 2,000 to 20,000 requests, depending on the expected load per request.
  • Perform load testing to evaluate how the system responds. If the particular request is lightweight, you can safely increase the batch size.

This approach gives you flexibility and scalability without setting limits that may not reflect actual usage.

Show all comments

Hi Guys,
May I know in which Module the  "Workforce engagement management in Creatio" belong to? because i saw Creatio had a clip like this:

https://www.youtube.com/watch?v=G6cCMuJmSlg

Like 1

Like

1 comments

Hello,

The “Workforce Engagement Management” functionality you saw in the video is part of Service Creatio - the module responsible for case management, agent productivity, omnichannel communications, and workforce engagement features. 

 

“Workforce Engagement Management”  enables agents and supervisors to access and update workforce management data via telephone.

 

Have a nice day!

Show all comments

Hello,

I am currently working on Integrating my Custom Object Data on Time Line tab in Contact form page, I have followed this link to accomplish this .


Now I want to show the file attachment preview or a downloadable link in the timeline tab.


This is what I have tried:

  1. In my first try, I tried to save the files in separate object and add that object as lookup field in my custom object.
    1. Result: It shows the name of file only in timeline object
  2. In my second try, I directly introduced  a file datatype field in my custom object,
    1. Result : It shows the raw file content in preview.

Also, How can we change the visibility of this field as I only want to show it if it has any value. I am using an online instance.

Can any one guide me on how to do this?

Thanks in advance for your support!!

Like 0

Like

2 comments
Best reply

Hello,

Thank you for your message.

At the moment, displaying file previews or downloadable file links directly within the Timeline tab is not supported out of the box in Creatio. This functionality might require additional custom development.

Hope this will answer all your questions!

 

Hello,

Thank you for your message.

At the moment, displaying file previews or downloadable file links directly within the Timeline tab is not supported out of the box in Creatio. This functionality might require additional custom development.

Hope this will answer all your questions!

 

Got it Thank you @Valeriia Ripnevska !!

Show all comments