Hi Community, 

 

I'm trying to create a simple campaign where, when a contact submits a landing page, a record is added to the contact email subscription detail

I've added the Email subscription to the following lookup to be able to update the object from the Add Data step in a campaign 

 and created the following campaign.

 

However, when I run it, the campaign gets stuck in the Add data step:

 

Am I missing anything? 

Is it possible to get more details as to what is happening? 

 

Thanks and Best regards,

Tiago

Like 0

Like

5 comments

Dear Tiago,

 

Have you checked Camapaing log? There should be an error or a message with details of what happened with the campaign,

Best regards,

Angela 

Hi Angela, 

 

I've had a look and submitted a couple more landing pages.

On the Campaign log all steps are marked as success. 

On the Campaign Audience tab it only says In Progress.

 

 

Thanks,

Tiago

Tiago Carvalho,

 

Please stop the campaign manually and start it once again. The campaign will process all the participants that are currently on the "Add data" element during the next campaign execution and before the next execution it looks like the participants are stuck, but they are not stuck but wait for the next campaign run.

 

I've created the same campaign on my end and the participant was correctly processed and the subscription status was added:

 

here is the screenshot of the lookup settings:

here is the campaign schema:

and the result is:

So this approach will work on your end as well.

 

Best regards,

Oscar

Hi Oscar, 

 

I've stopped and restarted the campaign and left it running for a while. 

However, the contact are still in the same step. 

 

No errors are visible in the Campaign Log. 

 

Thanks,

Tiago

 

Tiago Carvalho,

 

Please email us at support@creatio.com so we could take a closer look at the application since we will also need to check application logs directly and check if there is no error message there. We will process this question as a ticket on our end and provide you with the detailed result of the investigation, because the information here will not be enough to identify the reason for such behavior.

 

Thank you!

 

Best regards,

Oscar

Show all comments

Hi Community!

 

as there is no out-of-the-box way of deploying permissions from one system to another, I'm currently trying to achieve this via SQL.

 

I'm able to add a static SQL script to the package and it will be executed fine on the target system. My problem is that the content of the SQL script is not static. I have to execute an SQL script in the source system to get all the information about the current permission setup and then use these results to build the update/insert statements for the target system.

 

Did anyone try to accompish this before?

 

Thanks for any hints!

Like 0

Like

5 comments

Dear Robert,

 

Organization Roles can be transferred only by SQL scripts. Functional roles are transferred by binding data of the System administration object. The rights to existing records should be transferred via scripts as well. To distribute rights to new records you can either set up a business process or configure object permission directly on the production environment.

 

Best regards,

Angela

Angela Reyes writes:

Dear Robert,

Organization Roles can be transferred only by SQL scripts. Functional roles are transferred by binding data of the System administration object. The rights to existing records should be transferred via scripts as well. To distribute rights to new records you can either set up a business process or configure object permission directly on the production environment.

Best regards,

Angela

Thanks Angela!

 

But the question is how can I transfer the definition of the permissions, without rewriting the SQL script over and over again?

Is the following procedure the only way?

  1. Select the current permissions manually with SQL

    the tables are:

    1. SysEntitySchemaOperationRight for object permissions
    2. SysEntitySchemaRecordDefRight for record permissions
    3. SysEntitySchemaColumnRight for column permissions
  2. transform the result to and insert/update statement
  3. save those scripts in the package SQL section
  4. export/import package

And do I have to/am I allowed to truncate those 3 tables first?

Is there a stored procedure that applies the new permissions on the target systems' records?

 

Thanks a lot and best regards

Robert Pordes,

Your description is almost correct. Please see all steps:

1. Create scrip for update/ insert records from SysAdminUnit table to use these records in the next steps

2. Select the current permissions manually from SQL the tables:

2.1 SysEntitySchemaOperationRight for object permissions

2.2 SysEntitySchemaRecordDefRight for record permissions

2.3 SysEntitySchemaColumnRight for column permissions

2.4 Also there are tables like Sys{ObjectName}Right (e.g. SysAccountRight) in which record rights are stored, so you should create script for each object. 

3. Transform the result to and insert/update statement

4. save those scripts in the package SQL section

5. export/import package

 

Best regards,

Angela

Hi Angela,

thanks, but aren't the tables Sys{ObjectName}Right storing the applied rights (they will be populated by clicking "update record permissions", correct?). If I create scripts on eg DEV system, the data will not be the same! I mean we will definitely have different eg. account and contact records on dev/test/prod system.

That's exactly why I asked this in my previous post: 

Is there a stored procedure that applies the new permissions on the target systems' records?

 

Thanks,

Robert

Robert Pordes,

There is no stored procedure. This is why I suggested workarounds like

binding data and business processes.

 

Best regards,

Angela

Show all comments

Dear Community,

 

I was wondering if anyone knows a way on how to automatically fill in a lookup that has been filtered by the Business Rules?

The idea would be to have 2 lookups that are connected together.

If lookup A has value "123" then lookup B can only have value "ABC".

In this situation the client has to click on Lookup B to select the only available option which is "ABC". These are extra clicks...

 

Is there a way to automatically fill in Lookup B whenever there's only one option left?

 

Thanks!

Like 0

Like

5 comments
Best reply

Note, as of 7.16.2, the autocomplete setting (which is what you need to auto-fill the dependent lookup) can now be set in the business rule, no need to modify the code, looks like the academy article needs to be updated.

 

 

Ryan

Hi Yosef,

 

The parameter "autocomplete" is what you are looking for, on the academy there is an example "https://academy.creatio.com/documents/technic-sdk/7-16/filtration-rule-…".

Hello Yosef, 

 

Please, take a look at the article provided in the previous comment. 

 

Let us know in case any further information is required. 

 

Best regards,

Olga. 

Hi Olga,

 

Sorry but I don't see any previous comments?

 

 

Kind regards,

Yosef

Dear Yosef,

 

Please, check if the comment is available now. 

 

Thank you in advance!

Olga. 

Note, as of 7.16.2, the autocomplete setting (which is what you need to auto-fill the dependent lookup) can now be set in the business rule, no need to modify the code, looks like the academy article needs to be updated.

 

 

Ryan

Show all comments

Hi!

When i publish my changes the system (7.16.3.1473) pop up this message/warning:

FacebookMessagingService.OmnichannelMessaging.cs | 49 | 
This async method lacks 'await' operators and will run synchronously. Consider
using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)'
to do CPU-bound work on a background thread.

Can you help me to fix this, please?

Thx!

 

Like 0

Like

4 comments

Hello Wolf, 

 

This warning message appears because there is no await operator in the RegisterFacebookMessenger async function of the FacebookMessagingService schema (the await operator is actually presented in this function but is commented and as a result, the compilator returns a warning). Please ignore it since it doesn't impact the system functionality at all. We have already created the request for our R&D team to review the logic of this schema and apply changes to it to remove the warning message in further releases. 

 

Our apologies for this inconvenience!

 

Best regards, 

Olga. 

Hello Wolf,

 

There is a system setting you can change to ignore compiler warnings (you’ll still see errors). See https://customerfx.com/article/turning-off-compiler-warnings-in-creatio…

 

Ryan

Olga Avis,

thank you for your reply. 

 

No problem. :)

 

Best regards,

Wolf

Ryan Farley,

Hi Ryan,

good to know, thanks.

 

Wolf

Show all comments

Hi All,

I have written a PATCH request to consume an Incoming API which contains a two-parameter id and a JSON Request body. I have tried to call the service through postman but I am getting as 404 NotFound response.



 

Via Postman, Passing the parameters,

1) By appending the id to the Url itself, and passing JSON params in the body.

2) By passing the id as a Parameter and body contains request data(JSON)

3) By passing 2 parameters completely in the Body itself 



Kindly help me in fixing this issue!

Like 0

Like

2 comments

Dear Adharsh,

 

Can you please specify if you tried to call the service via browser and were you able to log into the system via postman? 

 

You may also check this article - it should be helpful: https://academy.creatio.com/documents/technic-sdk/7-16/calling-configuration-services-using-postman

 

Best regards,

Angela

Angela Reyes,

 

Thanks for your response. 

The issue got solved. There was a missing of adding the Request Verb in the Handler Mappings in IIS.



Regards,

Adharsh

Show all comments

Hi Community,

 

I have a scheduled business process which has some script tasks in it. Now if something fails or if an error occurs, I want to automatically re-trigger the business process again. How can I possibly do this?

Like 0

Like

1 comments

Dear Fulgen,

 

There is no way to re-trigger the process but you can use a script task to read the failed process in SysProcessLog, for example that is in status Error, and launch a new process instance. It will not be the same process that failed but only a new one.

 

Regards,

Dean

Show all comments

Hi all,

 

Does deleting a contact trigger sync process? If no, how can we do that?

 

Thanks for your help

Like 0

Like

3 comments
Best reply

Hello Kavian, 

 

In the out-of-the-box version of the application, there is no such functionality.  Anyway, you can discuss the development and implementation of this kind of functionality during advisory hours and contact our manager for further questions.

 

About the basic functionality: there are two ways how Contacts can be synchronized. The first one is manual: for that you need to go to the Contacts section, click the 'Actions' button, choose 'Synchronize contacts' and select the 'Synchrinize now' option. 

 

The second option is using of automatical Contacts synchronization.

 

In this case system will sync contacts every specific interval of synchronization (for example, every minute). The interval (stored in minutes) for the synchronization can be changed in Mailbox synchronization interval system settings:

Even if you enabled the automatical sync process you are still able to sync Contacts manually.

 

Also in the following articles you can find more information about the synchronizing contacts with MS Exchange:

https://academy.creatio.com/documents/technic-sdk/7-16/synchronizing-contacts-ms-exchange?document=

https://academy.creatio.com/documents/administration/7-16/synchronizing-creatio-contacts-ms-exchange-and-microsoft-365-contacts

 

Best regards,

Roman

Hello Kavian, 

 

In the out-of-the-box version of the application, there is no such functionality.  Anyway, you can discuss the development and implementation of this kind of functionality during advisory hours and contact our manager for further questions.

 

About the basic functionality: there are two ways how Contacts can be synchronized. The first one is manual: for that you need to go to the Contacts section, click the 'Actions' button, choose 'Synchronize contacts' and select the 'Synchrinize now' option. 

 

The second option is using of automatical Contacts synchronization.

 

In this case system will sync contacts every specific interval of synchronization (for example, every minute). The interval (stored in minutes) for the synchronization can be changed in Mailbox synchronization interval system settings:

Even if you enabled the automatical sync process you are still able to sync Contacts manually.

 

Also in the following articles you can find more information about the synchronizing contacts with MS Exchange:

https://academy.creatio.com/documents/technic-sdk/7-16/synchronizing-contacts-ms-exchange?document=

https://academy.creatio.com/documents/administration/7-16/synchronizing-creatio-contacts-ms-exchange-and-microsoft-365-contacts

 

Best regards,

Roman

Roman Rak,

Thanks for your response. So correct me if I'm wrong, if an user delete a contact from CRM, that contact will not be deleted from Outlook (for example)?? However, if modified, those modifications will be applied, right?

Kavian Abhari,

Yes, you are correct

Show all comments

Hi Community,

 

I have a decimal field "UsrGrandTotal". I am showing this field in my word printable. How can I format the value of my field as  below:

 

Value: 2415.00

Must show as like this: 2,415.00

 

I found below link in academy but the problem is that, If the fractional part is zero, it will not be displayed. I need to show both the comma delimiter and the fractional 0 in 2 digits

https://academy.creatio.com/documents/technic-sdk/7-16/basic-macros-ms-…

Like 0

Like

3 comments

Dear Fulgen,

 

It’s possible to create a custom macros if there is no basic macros that would suit your business task. Please find the example of creating the custom macros in the article by the link below:

 

https://academy.creatio.com/documents/technic-sdk/7-16/how-create-macros-custom-report-word

 

Best regards,

Norton

I have an article with a sample here that is pretty close to what you're after, this custom macro will format money as $2,415.00 (based on the culture in the macro). You can see this article here https://customerfx.com/article/creating-custom-macros-to-format-values-in-word-printables-for-creatio-formerly-bpmonline/ You could use it as a starting point for yours and just replace the line

result = currency.ToString("C", new CultureInfo("en-US"));

to something like this

result = number.Format("{0:n}");

Ryan

Ryan Farley,

 Thanks Ryan, helps a lot!

Show all comments



We've been using the Calculated Metrics addon for some time now, but just recently, it's started showing the wrong list for the object lookup.

Item 'a' correctly shows just the objects:

https://i.imgur.com/B4JZwbB.png

 

Items 'b', 'c', and 'd', however, show what appear to be pages:

https://i.imgur.com/HIMwOVP.png

 

If you scroll all the way to the bottom and load the full list, it seems that it might contain both:

https://i.imgur.com/B0eTvrl.png

 

But this is both inconvenient and rather unintuitive for our non-technical users, given the inability to distinguish between the identically-named pages and the object itself, as well as the fact that the objects don't initially appear in the list.  Is there any way we can correct the filter on these lookups?

Like 0

Like

5 comments

Hello Darian,



Kindly specify the Creatio product and version that you are using. This info will help us reproduce the issue.

 

Thank you.

Alexander Demidov,

 

Sales/Service Enterprise, version 7.16.3.1473.

Hello Darian,

 

 

Thank you for the information provided. I have reproduced the issue and submitted it to the responsible team. I will let you know of any updates.

Hello Darian,



This is to inform you that we have published the updated package on Creatio Marketplace. Please install the add-on and check for the updates.

 

Have a good day!

Alexander Demidov,

 

Thanks, looks good.

Show all comments

Hello Community!



I notice the following behavior - 

User 'A' and 'B' have the same contact's page open at the same time and intend to modify the same field. 'A' changes a field and saves it. However 'B' does not know that the field value has changed behind the scenes and in turn modifies the value. I notice that B's change overwrites A's ie Last write wins. And neither user knows that this has happened. 

  1. How do I ensure that 'B' is informed that 'A' has made a change so 'B' can get the latest data and take corrective action?
  2. Concurrency is a standard problem to solve. How does Creatio look at solving concurrency related issues? Is this part of the product road map??
Like 0

Like

2 comments

Hello!

 

Creatio assumes that each user only workes on 1 record - most sections have field "owner" which specifies what user responsible for which record. If there is a need to work with many records and users may interfere with each other you can use processes to distribute records as it is done in Queues. 

 

Best regards,

Angela

Angela Reyes,

Hi Angela. Thank you for your response. 



Multiple users having access to 1 record is common place where people work in teams and an entire Org role has access to modify a set of records. There are also cases where Creatio will need to co-exist with other enterprise systems which modify the same record thus creating a shared source of truth system. 



I am going ahead and logging an idea on the community to make the above situations easier from a User POV. 

Show all comments