Dear,

I would like to create a custom object to replace the activityparticipant object.

However, when i tryed to create the remplacement object, i ve got the error:

Multiple replacements of same schema in single package are not allowed.

There are effectively two activityparticpant objects :

So how can i create a new activityparticipant custom object ?

Thank you,

Nicolas

Like 0

Like

4 comments

hi LÉZORAY Nicolas,

The Error: Multiple replacements of the same schema in a single package are not allowed refers that the object schema is already available in the current package. 

Could you confirm the current package doesn't have this Object?
Also do you have any custom created package and where this replacement is tried?

Below is the successful replacement of object in custom development package.

 

 

BR,
Bhoobalan Palanivelu.

Hi Bhoobalan Palanivelu !

I don't see how you managed to create the replacement object without error.

 

In the custom package i have no activityparticipant object:

 

If i go into Allpackage i have the same files as you (without the DEVLocal one):

 

Here's how i proceeded:

 

In the next screen, in the inheritance field, i entered "activityparticipant" 

And then i got the error message:

 

Can you please let me know how you managed to create your custom item ?

Thank you for your help !!!

Have a nice day,
Nicolas

 

LÉZORAY Nicolas,

By chance could you please try it in another custom-created package (Custom_Transfer) rather than OOTB Custom?

Bhoobalan Palanivelu,

 

It works in the another custom package.

I have never used this one.

 

Thank you !

Show all comments

Hello Creatio team,

I manage to give access for ( Operations and Records )to this specific object from the Configuration.

Even though these changes are not reflected as can be seen in the printscreen below:

How can i overcome this problem ?

Like 0

Like

1 comments

Hello,

 

As we mentioned in the submitted case to support, we do not recommend you manually check those boxes, to properly add them please follow the steps below:

  1. In the object, permissions section add your restrictions
  2. The system will create a "copy" of the object you are working on in the current package as a reference to the original object
  3. In that copy, you will see the checkboxes checked for the chosen options from object permissions.

Please make sure to set the "Current Package" system setting to the one you are developing in.

For further questions please refer to your support case.

 

Thank you.

Show all comments

I created a harmony of data which comes from external web services. For example, I retrieved dataA for ColumnA, dataB for ColumnB, dataC for ColumnC etc. I want to INSERT this data to section object table which section page based on.

How can i bind these things?

Like 0

Like

1 comments

Hello,
 

You can create a business process in which you will fill in the required fields received from the web service.
 

Details on the academy website:
https://academy.creatio.com/docs/user/bpm_tools/process_elements_refere…

Show all comments

Like 0

Like

2 comments

Hello,

 

Such error may occur if any of the default localizations were deleted (any records from the dbo.SysCulture) 
Please flush Redis of your instance and try to create an object again. 

 

 

Yes Did It's working Thank you

Show all comments

Hi community,

 

I need a way to sort the rows of a data grid according to the values present in a detail.

 

I have my detail in the candidate object like this:

 

Here is a small simplified diagram of the relationship between my lookup, my detail and my object:

I would like to run this sql query to filter the candidates :

SELECT c.* FROM technocandidats tc
RIGHT JOIN candidats c ON c.id = tc.candidat_id
WHERE tc.techno_id = n OR
tc.techno_id = n OR ...

where "n" will be the techno's id.

 

Is there a way to do this directly in the section's advanced filters?

 

Or better still, in a box on top of the section like the one in my candidat object where the detail appears? Or even better, make that in a preconfigured page ?

 

Best regards,

 

Julien Gunther

Like 0

Like

1 comments

Hello Julien,

 

I believe this should be possible as you have the connections between your objects. Could you please contact Creatio support team using support@creatio.com so we can help you with the filter setup in your system?

 

Thank you,

Bogdan S.

Show all comments

When I try to create a new object I get the message "Primary Column property not set" I cannot see anywhere in the object creation page to set this.

 

Can someone direct me to where to set this property

I using the trial version

Like 0

Like

2 comments
Best reply

Hi Robert,

Typically, your object should have "BaseEntity" as it's parent. When BaseEntity is selected as the parent, it will inherit an Id column (plus others) and the Id column will be selected as the Id column for the object. The error is letting you know that the object does not have a column selected as the Id column (when you select BaseEntity as the parent it will select the Id column as the objects "Id" property).

Here's an example of what I mean: https://share.customerfx.com/ApuEljAl

Ryan

Hi Robert,

Typically, your object should have "BaseEntity" as it's parent. When BaseEntity is selected as the parent, it will inherit an Id column (plus others) and the Id column will be selected as the Id column for the object. The error is letting you know that the object does not have a column selected as the Id column (when you select BaseEntity as the parent it will select the Id column as the objects "Id" property).

Here's an example of what I mean: https://share.customerfx.com/ApuEljAl

Ryan

Ryan Farley,

Thanks Ryan, makes total sense.  I was coming at this from a DB perspective not an ORM object modeling perspective duh!

 

And thanks so much for thge video, that is awesome!

Show all comments

Hi,

I read collection of records using this script:

var entities = Get<ICompositeObjectList<ICompositeObject>>("ReadDataUserTask2.ResultCompositeObjectList");
I want to loop through this list and set parameter with type contact to each object of the list.

The collection of records is a list of opportunityContact.

I tried converting each ICompositeObject to opportunityContact using this script:

foreach (var entity in entities)
{
 ...
    OpportunityContact contactInOpp = (OpportunityContact)entity;

    Set("contact",contactInOpp.Contact);

but OpportunityContact is not a known object.

How do I access the types of the tables (no need to add data to DB or search just get the type in order to convert)?

Thanks,

Chani

 

Like 0

Like

2 comments

Hi Chani,

 

Here is a working example of two cases: set the string parameter value from the process that reads the collection and also modify contacts massively in the script task based on the received collection.

 

Here is the screenshot of the main process:

and the screenshot of the sub-process:

The idea of the sub-process is to read the collection of 4 records and their emails, Ids and Names if to be more specific. Then the read values are passed to the main process as a collection and go to the main process parameters (see that the "OutputParameters" parameter has the value of "[#SubProcess that will read all the needed data from Contacts 1.OutputRecordCollection#]").

 

The script task itself calls the ProcessContactNames method that is specified in the main process "Methods" tab:

The listing of the code is below:

public void ProcessContactNames() {
	string result = "";
	var contactsList = Get&lt;ICompositeObjectList&lt;ICompositeObject&gt;&gt;("OutputParameters");
	foreach (ICompositeObject item in contactsList) {
				item.TryGetValue&lt;string&gt;("FullNameParameter", out string ContactName);
				item.TryGetValue&lt;string&gt;("EmailParameter", out string ContactEmail);
				item.TryGetValue&lt;Guid&gt;("IdParameter", out Guid ContactId);
				result = result + " " + ContactName + " " + ContactEmail + ", ";
				ContactName = "Oscar Dylan from process";
					var contactSchema = UserConnection.EntitySchemaManager.GetInstanceByName("Contact");
					var entity = contactSchema.CreateEntity(UserConnection);
						entity.FetchFromDB("Id", ContactId);
						entity.SetColumnValue("Name", ContactName);
						entity.Save();
			}
Set&lt;string&gt;("StringParameter", result);
}

Also add the following usings to your main process:

System.Data
System.Security
Terrasoft.Configuration

The idea here is to pass the collection of records from the "OutputParameters" main process parameter, process each record in the foreach cycle, compose the result string that then will be displayed on the autogenerated page to check if the process worked and also find each contact by its Id that was passed from the collection and set the name column value for each contact as "Oscar Dylan from process".

 

As a result the process worked perfectly:

and contact names were modified:

Please analyze the process and use the same approach on your side.

 

Best regards,

Oscar

Oscar Dylan,

Thank you. 

Will try that.

Show all comments

Creatio by default allows a user to choose between 50, 250 and 500 as max lengths of a Text column from the Object designer. In a use case where Creatio co-exists with an external system and both share the same fields, it becomes important to maintain consistency with respect to data types and lengths.

Right now, the only way to enforce a custom length (say String(8)) is to implement field validators on the Creatio GUI and write custom code to validate any input received via server side integrations. However, the field in the DB would still have 50, 250 or 500 as the length. This is not ideal. 
 

It would be very useful to permit defining custom lengths of fields Eg String(8) from the Object designer which directly creates those custom lengths in the database. 

1 comments

Hello Shrikanth,

 

Hope you're doing well.

 

Thank you for being interested in the Creatio application and further its improvements. We have created a functional request and passed it to our R&D team. After additional review, if the request will be in high demand this kind of functionality will be implemented in the future versions of the application and the users will be able to permit defining custom lengths of the needed fields without adding the custom code.

 

We appreciate your cooperation!

 

Best regards,

Roman

Show all comments

I created a process which will give access to a particular portal user permission to read and edit record. The portal user name is filled in the record page. 

Process first triggers when a record is added then it read the portal user name in the record and assigns the access permissions. But the process is not giving access rights to the portal user. 

Can any one help ?

Here are the screen shots : -

1. Process

2. After adding record and process completion, the access rights 

3. Object permission of the Section page

Like 0

Like

5 comments

Hello Ramnath,

 

Could you please provide us with screenshots of the business process elements settings for further assistance on this matter?

 

Thank you in advance! Looking forward to your reply. 
Olga. 

Olga Avis,

Here are the screenshots of elements:-

1. Trigger element - record added

2. Read portal user name (Field name - Borrower)

3. The access rights added

The Role is the name of borrower which was read in 2nd Read Borrower element.

This process is in my local dev environment. I have also created the same process on a trial cloud environment. But the process does not seem to work. 

Is there anything I am missing?

Hello,

 

It is necessary to grant the rights not to User role but for the Employee  where you should indicate the value of the Borrower field http://prntscr.com/stoezu .  It should be something like this [#Read Borrower.First item of resulting collection.Borrower#]

As for now you try to grant the rights to some role and the system cannot identify it.

 

Best regards,

Dean

Dean Parrett,

 

I assigned the access role in process for employee. And the process works now.

But why can't we do for User role.

Even if it works with employee role. The borrower is not an employee. He/She is an end user who will fill the form. Why does it have to be assigned in Employee role.

Can you please elaborate?

 

Thanks

Ramnath

Hello,

 

The thing is that your process doesn't read the user role. It would be necessary to find the user's role first using additional read data elements and based on which role is found by, use it in Role parameter instead of Employee.

Regards,

Dean 

Show all comments

Hi there,

Can someone please let me where in the CRM are all the attachments stored in the database?

So say if I attach a file in the Attachment and Notes tab in the Contacts section, I know that the Attachments detail is called Contact's Detail but which object holds those attachments in the database?

Thanks,

AK

Like 0

Like

1 comments

Hello,

All files are stored as binary data in the "data" column of the object. Each one is stored in their own column, for example 'ActivityFile'

Best regards,
Angela

Show all comments