Package Installation Error
Sales_Creatio

I am getting below error while installing package from one creatio instance to another. JFYI, In my workplace, I have added Products and Invoices sections. 
I am unable to identify root cause of an issue. Any help would be greatly appreciated. 

2025-11-27 15:26:57,719 Error occurred while generating schema source code "Product" in package "XXXXXX". UId aa4bec4a-c36b-45ba-aedb-69e98150ca16: Object reference not set to an instance of an object.
2025-11-27 15:26:57,734 System.NullReferenceException: Object reference not set to an instance of an object.
 at Terrasoft.Core.Entities.EntitySchema.GetShowInAdvancedMode(Guid uid)
 at Terrasoft.Core.Entities.EntitySchema.get_ShowInAdvancedMode()
 at Terrasoft.Core.Entities.EntitySchemaGenerator.WriteSchemaClassPrimaryInfo(SchemaCodeGeneratorResource`1 resource, EntitySchema entitySchema, EntitySchema parentEntitySchema, ICollection`1 protectedMethods)
 at Terrasoft.Core.Entities.EntitySchemaGenerator.GenerateSchemaCode(GeneratorContext context, SchemaCodeGeneratorResource`1 resource, EntitySchema entitySchema)
 at Terrasoft.Core.Entities.EntitySchemaGenerator.WriteSchemaClassBody(GeneratorContext context, SchemaCodeGeneratorResource`1 resource, GeneratorTokenVisibility sourceVisibility)
 at Terrasoft.Core.CodeGeneration.SchemaCodeGenerator`1.GenerateSourceCode(SchemaCodeGeneratorResource`1 resource, TextWriter streamWriter, Action`3 action)
 at Terrasoft.Core.CodeGeneration.SchemaCodeGenerator`1.GenerateSourceCode(SchemaCodeGeneratorResource`1 resource, String sourceFileName)
 at Terrasoft.Core.Entities.EntitySchemaGenerator.GenerateSchemaSource(SchemaCodeGeneratorResource`1 resource, EntityCollection sourceCollection, String sourceFileName)
 at Terrasoft.Core.CodeGeneration.SchemaCodeGenerator`1.GenerateSources(SchemaCodeGeneratorResource`1 resource)
 at Terrasoft.Core.Entities.EntitySchemaGenerator.GenerateSources(SchemaCodeGeneratorResource`1 resource, EntitySchema schema)
 at Terrasoft.Core.Entities.EntitySchemaGenerator.GenerateSources(SchemaCodeGeneratorResource`1 resource)
 at Terrasoft.Core.SchemaManager`1.GetSchemaSources(TSchemaManagerSchema schema, Guid schemaId, UserConnection userConnection)
 at Terrasoft.Core.Entities.EntitySchemaManager.GetSchemaSources(EntitySchema schema, Guid schemaId, UserConnection userConnection)
 at Terrasoft.Core.SchemaManager`1.GenerateSchemaSources(TSchemaManagerSchema schema, Guid schemaId, UserConnection userConnection)
 at Terrasoft.Core.SchemaManager`1.GenerateSchemaSources(Guid sysSchemaId, ISchemaManagerItem schemaManagerItem, UserConnection userConnection)
 at Terrasoft.Core.Packages.PackageInstallUtilities.InstallSchemaAssociatedData(Guid schemaId, SchemaDescriptor schemaDescriptor, Boolean continueIfError)
2025-11-27 15:26:57,734 Error occured while performing operation on "Product" item, UId = aa4bec4a-c36b-45ba-aedb-69e98150ca16.
2025-11-27 15:26:57,734 System.NullReferenceException: Object reference not set to an instance of an object.
 at Terrasoft.Core.Entities.EntitySchema.GetShowInAdvancedMode(Guid uid)
 at Terrasoft.Core.Entities.EntitySchema.get_ShowInAdvancedMode()
 at Terrasoft.Core.Entities.EntitySchemaGenerator.WriteSchemaClassPrimaryInfo(SchemaCodeGeneratorResource`1 resource, EntitySchema entitySchema, EntitySchema parentEntitySchema, ICollection`1 protectedMethods)
 at Terrasoft.Core.Entities.EntitySchemaGenerator.GenerateSchemaCode(GeneratorContext context, SchemaCodeGeneratorResource`1 resource, EntitySchema entitySchema)
 at Terrasoft.Core.Entities.EntitySchemaGenerator.WriteSchemaClassBody(GeneratorContext context, SchemaCodeGeneratorResource`1 resource, GeneratorTokenVisibility sourceVisibility)
 at Terrasoft.Core.CodeGeneration.SchemaCodeGenerator`1.GenerateSourceCode(SchemaCodeGeneratorResource`1 resource, TextWriter streamWriter, Action`3 action)
 at Terrasoft.Core.CodeGeneration.SchemaCodeGenerator`1.GenerateSourceCode(SchemaCodeGeneratorResource`1 resource, String sourceFileName)
 at Terrasoft.Core.Entities.EntitySchemaGenerator.GenerateSchemaSource(SchemaCodeGeneratorResource`1 resource, EntityCollection sourceCollection, String sourceFileName)
 at Terrasoft.Core.CodeGeneration.SchemaCodeGenerator`1.GenerateSources(SchemaCodeGeneratorResource`1 resource)
 at Terrasoft.Core.Entities.EntitySchemaGenerator.GenerateSources(SchemaCodeGeneratorResource`1 resource, EntitySchema schema)
 at Terrasoft.Core.Entities.EntitySchemaGenerator.GenerateSources(SchemaCodeGeneratorResource`1 resource)
 at Terrasoft.Core.SchemaManager`1.GetSchemaSources(TSchemaManagerSchema schema, Guid schemaId, UserConnection userConnection)
 at Terrasoft.Core.Entities.EntitySchemaManager.GetSchemaSources(EntitySchema schema, Guid schemaId, UserConnection userConnection)
 at Terrasoft.Core.SchemaManager`1.GenerateSchemaSources(TSchemaManagerSchema schema, Guid schemaId, UserConnection userConnection)
 at Terrasoft.Core.SchemaManager`1.GenerateSchemaSources(Guid sysSchemaId, ISchemaManagerItem schemaManagerItem, UserConnection userConnection)
 at Terrasoft.Core.Packages.PackageInstallUtilities.InstallSchemaAssociatedData(Guid schemaId, SchemaDescriptor schemaDescriptor, Boolean continueIfError)
2025-11-27 15:26:57,734 Error occured while performing operation on "Product" item, UId = aa4bec4a-c36b-45ba-aedb-69e98150ca16.
2025-11-27 15:26:57,734 System.NullReferenceException: Object reference not set to an instance of an object.
 at Terrasoft.Core.Entities.EntitySchema.GetShowInAdvancedMode(Guid uid)
 at Terrasoft.Core.Entities.EntitySchema.get_ShowInAdvancedMode()
 at Terrasoft.Core.Entities.EntitySchemaGenerator.WriteSchemaClassPrimaryInfo(SchemaCodeGeneratorResource`1 resource, EntitySchema entitySchema, EntitySchema parentEntitySchema, ICollection`1 protectedMethods)
 at Terrasoft.Core.Entities.EntitySchemaGenerator.GenerateSchemaCode(GeneratorContext context, SchemaCodeGeneratorResource`1 resource, EntitySchema entitySchema)
 at Terrasoft.Core.Entities.EntitySchemaGenerator.WriteSchemaClassBody(GeneratorContext context, SchemaCodeGeneratorResource`1 resource, GeneratorTokenVisibility sourceVisibility)
 at Terrasoft.Core.CodeGeneration.SchemaCodeGenerator`1.GenerateSourceCode(SchemaCodeGeneratorResource`1 resource, TextWriter streamWriter, Action`3 action)
 at Terrasoft.Core.CodeGeneration.SchemaCodeGenerator`1.GenerateSourceCode(SchemaCodeGeneratorResource`1 resource, String sourceFileName)
 at Terrasoft.Core.Entities.EntitySchemaGenerator.GenerateSchemaSource(SchemaCodeGeneratorResource`1 resource, EntityCollection sourceCollection, String sourceFileName)
 at Terrasoft.Core.CodeGeneration.SchemaCodeGenerator`1.GenerateSources(SchemaCodeGeneratorResource`1 resource)
 at Terrasoft.Core.Entities.EntitySchemaGenerator.GenerateSources(SchemaCodeGeneratorResource`1 resource, EntitySchema schema)
 at Terrasoft.Core.Entities.EntitySchemaGenerator.GenerateSources(SchemaCodeGeneratorResource`1 resource)
 at Terrasoft.Core.SchemaManager`1.GetSchemaSources(TSchemaManagerSchema schema, Guid schemaId, UserConnection userConnection)
 at Terrasoft.Core.Entities.EntitySchemaManager.GetSchemaSources(EntitySchema schema, Guid schemaId, UserConnection userConnection)
 at Terrasoft.Core.SchemaManager`1.GenerateSchemaSources(TSchemaManagerSchema schema, Guid schemaId, UserConnection userConnection)
 at Terrasoft.Core.SchemaManager`1.GenerateSchemaSources(Guid sysSchemaId, ISchemaManagerItem schemaManagerItem, UserConnection userConnection)
 at Terrasoft.Core.Packages.PackageInstallUtilities.InstallSchemaAssociatedData(Guid schemaId, SchemaDescriptor schemaDescriptor, Boolean continueIfError)
Like 0

Like

1 comments

Hello.

During package installation, the system generates source code using only the metadata available at that stage. If the package references other schemas, events, or classes that belong to packages not yet installed, the generator cannot resolve those dependencies — leading to NullReferenceException and namespace errors.

To resolve the issue:

Ensure that all parent or related packages are installed before installing the target package where the error occurs.

Verify that the package contains all necessary schemas, processes, and event references.

If some dependencies are external, ensure they are installed in the environment before installation.

Best regards,
Antonii.

Show all comments
Filters
datetime
Sales_Creatio
8.0

Dear Community,

I noticed that in Creatio, under the Quick Filters for Date/Time, the available option only goes up to quarterly filtering. It seems there’s no built-in default quick filter option for yearly (annual) filtering.

My question:
Is there any way or workaround to apply a yearly quick filter?
(I am of course aware of the standard date filtering options, but this is specifically about the Quick Filter presets.)
Or does anyone know if this is planned to be added in a future update?

Thanks in advance!

Like 2

Like

3 comments

Hello!

Currently, Creatio's Quick Filter component does not include a built-in yearly (annual) preset; only options up to quarterly periods are available. As a workaround, you can use the standard date filtering options to manually select a yearly range.
 

+1 for this one, 

not easy to understand why there is not a current year, previous year

+1, also would be great to have a notion of Fiscal Year / Quarter etc..

Show all comments
price list
price
Product
OrderProducts
Sales_Creatio
8.0

Hi Mentors,

I’m referring to this documentation:
Manage Prices – Creatio
(https://academy.creatio.com/docs/8.x/creatio-apps/8.0/sales-tools/products-and-prices/manage-prices)

I have created multiple price lists for a product (VIP Partner, Platinum Partner, Silver Partner, Bronze Partner, Base, etc.) and assigned the corresponding prices for each.


I also enabled the Price List field on the Account object.
My goal is: when an Account has a specific price list assigned, every Order created for that Account should automatically use the prices from that price list.

However, when I create an Order for an Account with Partner Platinum as the assigned price list, the Order still pulls the Base product price, not the price from the Partner Platinum list.

The total amount is always calculated using the base price.


I also noticed that in the Order → Products tab, I can manually select a price list for each product, but regardless of what I choose (Account-level or Order-level), the system still uses the base price.
How can I fix this issue?
Any guidance would be appreciated. Thanks in advance! 🙏🤞

Like 1

Like

1 comments

Hello!

In the community case below it's answered that this "logic [... is] currently only implemented on Classic UI pages and will not function on Freedom UI pages".

https://community.creatio.com/questions/pricelist-not-populating-specif…

We are considering a long-term CPQ implementation and I understand that from a functional perspective, CPQ depends on having a valid price list, and in Classic UI this was resolved automatically at UI level. In Freedom UI, this logic is no longer executed.

Could you please clarify:

  • Whether Freedom UI CPQ intentionally requires explicit or custom price list resolution
  • What the recommended replacement pattern is (server-side logic, business rules, services)
  • Whether native Account → Price list auto-selection is planned to be implemented for Freedom UI? And when?

Thank you,
Jacek

 

Show all comments
Sales_Creatio
8.0

Hi everybody, I have the following task: 

on some form a "Product" field exists. After it's value had changed, I need to fill two subordinate objects (details) on the same page. Logic:

{
	request: "crt.HandleViewModelAttributeChangeRequest",
	handler: async (request, next) => {
	if (request.attributeName === "Product" && !request.silent) {
		const product = await request.$context.Product;
		console.log(typeof product);
		if (typeof product === "object" && !Ext.isEmpty(product)) {
			await FormFunctions.processProductChange(request);
			const saveResult = await this.handlerChain.handlerChain$.process({
				type: "crt.SaveRecordRequest",
				preventCardClose: true,
				$context: request.$context
			});
			debugger;
			if (saveResult) {
				await FormFunctions.fillOrderItemTopics(request);
				await FormFunctions.fillOrderItemStructure(request);
			}
		}
	}
}

unfortunate result:

if the same task is being solved as some handler on some button, no problem occurs. Any suggestions please? 

Like 0

Like

2 comments

Hello,
Hard to tell based on the code alone what is exactly wrong, my guess is in the way you call a crt.SaveRecordRequest. Try to replicate the code form this article https://customerfx.com/article/saving-a-page-before-some-action-on-a-cr…

Dmytro Vovchenko,

Hi Dmytro. It was not a code issue at all - when a new page was created in the latest creatio version, and content were transferred there, the problem had gone :) My guess is that the issue was caused smth in the page system hierarchy. But thank you for the answer anyway.

Show all comments
Pricelist
order
Product
price
Sales_Creatio
8.0

Hi everyone,
I added the Price List field to the Account object (it’s hidden by default).
When I select Partner Platinum for an Account and create an Opportunity for that Account, the product prices still use the base price list instead of the Partner Platinum list.

Is there anything additional I need to configure so the Opportunity uses the Account’s Price List automatically?

Like 0

Like

3 comments

Good day,

We are reviewing your question in another post of yours
https://community.creatio.com/questions/product-price-not-updating-based-account-price-list

We will provide you with an answer in the aforementioned post as soon as we have analyzed the relevant details.

Hi Nikita Kudin,

Hope you’re having a great day 😊
Thank you for taking the time to look into this.
I appreciate your support, and I’ll wait for your detailed response.

Hello again, Sreehari and thank you for waiting!

We have consulted our development team regarding your question.

Unfortunately, the logic you are describing is currently only implemented on Classic UI pages and will not function on Freedom UI pages.

The R&D team is reviewing the possibility to implement this logic in Freedom UI pages in the future releases of Creatio.

We apologize for the inconvenience and thank you for bringing this to our attention.

We will update our articles on Creatio Academy to reflect this limitation.

Show all comments
Sales_Creatio
8.0

Hello,

I want to create a dashboard on our Creatio home page that shows me the accounts per owner.
The data is displayed correctly on the edit page.
However, when I save the edit page and reload Creatio, no data is displayed on the home page. 
When I open the edit page, the data is there.

The dashboard works with other databases.
Apparently, the problem lies with the accounts.

Perhaps you have an idea what the cause could be?

Thank you in advance.

Best regards,

Franziska

Like 0

Like

2 comments

Hello,

Thank you for your request. The problem may occur for the following reasons:
- the user does not have rights
- there are additional quick filters or filters added by the developer on the page

For a more detailed analysis, I recommend contacting support.

Halyna Parkhomenko,

Thank you for your feedback.


I haven't found any errors in the rights settings, and there are no active filters either.
I will contact support about this.

Show all comments

Hello

If multiple authentication providers are set in single-sign-on configuration, users must select their one in the login page (there's a link for each authentication provider below the "LOGIN BUTTON"):

Example

Usually a Creatio user doesn't even know what an authentication provider is and he doesn't know what to click in login page.

How can Creatio be accessed specifiyng in the URL what authentication provider should be used?

Thanks

Like 0

Like

1 comments

Hello Massimiliano,

To make the distinction between SSO providers more visual, you can name them in a specific way. For example, if the marketing team will only be using the first Okta IdP, you can name it “Marketing Team” — this name will then appear in parentheses on the login page.

Unfortunately, there isn’t an option to provide users with a direct login link, since the authentication key is generated dynamically when the corresponding link is clicked.

Additionally, for some IdPs such as Okta, it’s possible for users to log in directly from the Identity Provider’s interface, without needing to access the Creatio login page.

I hope this helps! Wishing you a great day.

Best regards,
Alina

Show all comments
Customization
emailcomposer
MessageComposer
custom button
Sales_Creatio

I need to add a custom button that, when clicked, will perform the same function as sending an email, but with an additional function that executes along with the sending. However, I'm unable to access the "MessageComposer" or "EmailComposer" component to implement it. Could you help me with this problem?

In the image below, this is how I want the button (outlined in red) to look when implemented.

Like 2

Like

2 comments
Best reply

Harvey Adcock,

I received a response from Creatio Support.
Here's the answer:

"At the moment, the Message Composer element is not customizable in the system. We recognize that this limitation may affect your workflow and the flexibility you need to tailor the system to your specific business requirements.
 
That being said, we want to assure you that we are actively working toward enhancing this functionality."
 

So, for now, we can't do any customization.

+1 on wanting information on how to modify OOTB components - not sure if it's possible in Creatio, but it would really help a lot of scenarios where we end up having to do things in a suboptimal way because we don't have information on how to modify the OOTB components to do things like add buttons or take custom actions when a user interacts with the component.

Harvey Adcock,

I received a response from Creatio Support.
Here's the answer:

"At the moment, the Message Composer element is not customizable in the system. We recognize that this limitation may affect your workflow and the flexibility you need to tailor the system to your specific business requirements.
 
That being said, we want to assure you that we are actively working toward enhancing this functionality."
 

So, for now, we can't do any customization.

Show all comments
Setup
Gemini
API
Sales_Creatio

How do I enable this in my demo org

Like 1

Like

1 comments

Hello Alekhya,

Please follow the steps below to set up your Gemini API key with Creatio:

  1. Make sure you are logged in to the Google account
  2. Access Google AI Studio:
    Go to https://aistudio.google.com/
  3. Create API Key
  4. Copy and Store the Key Securely:
  5. Add the API Key to Creatio:
    • Open Creatio and go to System Settings.
    • Locate the setting named “Gemini API key.”
    • Paste the key generated in Google AI Studio into this field and save your changes.

You can also follow instrucitons here for up-to-date instructions: 
https://ai.google.dev/gemini-api/docs/api-key

I trust this clarifies how to enable the enrichment.

Show all comments
webhook
webhooks
#array
Sales_Creatio
8.0

We use webhooks to add Leads, Calls, and CallAIAnalytics. Each different source of data and different JSON format.
First 2 cases work as expected using default business process to parse webhooks

But webhooks for 3rd case for AI analytics from calls is sending JSON with arrays of text fields instead of concatenated text field.

So we are encountering a critical type casting error when processing incoming data from the webhook using the Newtonsoft.Json library in a .NET environment.

Context:

  1. Data is being received via a webhook payload.
  2. The relevant data section in the JSON payload is structured as an array of strings (a list of mistakes/notes):

    JSON

     

    {
      // ... other fields
      "UsrEmployeeMistakes": [
        "Mistake 1 detail.", 
        "Mistake 2 detail."
      ],
      // ...
    }
    
  3. I am trying to map this value to the column UsrEmployeeMistakes within the entity UsrResidentAI.

The Technical Error:

When the system attempts to process the incoming JSON array, it throws a type casting exception:

An error occurred while setting the column value.
ColumnName: UsrEmployeeMistakes.
EntityName: UsrResidentAI.
Exception: Cannot cast Newtonsoft.Json.Linq.JArray to Newtonsoft.Json.Linq.JToken.

Analysis:

The webhook sends an array, which Newtonsoft.Json correctly parses as a JArray. However, the column UsrEmployeeMistakes (or the underlying property/setter) seems to be expecting a simple, single JSON element (JToken), possibly because it's configured to store a single string/text field in the database rather than a collection or a native JSON type.


My Question:

Given that I cannot control the array format from the incoming webhook:

What is the most robust way to handle this conversion in my processing logic? 


I am looking for the best practice and no-code or low-code is preferable.
Thank you
Leo

Like 0

Like

2 comments

Hi Leonid,

Using no-code or low-code will not be possible here, you may need to customize the business process to handle the specific format. You might consider contacting Creatio support support@creatio.com for assistance.

Eduard Dovydovskyi writes:

Hi Leonid,

Using no-code or low-code will not be possible here, you may need to customize the business process to handle the specific format. You might consider contacting Creatio support support@creatio.com for assistance.

Thank you Eduard
Any hints how to do this with business processes and code?
thank you

Show all comments