Hi,

 

We need to notify the admin if any user exports data using Export to Excel option. I have created a small business process to create the notification. I need to call this business process when someone exports the data. I see the exportToExcelFile() in Data Utilities that calls ReportService to generate the report, but not sure how to override this function to call the process after the service is called. Any help is much appreciated. 

Like 1

Like

4 comments

Hi,

You can add replacing module to the schema BaseDataView and call your business-process in the method exportToExcel.

 define("BaseDataView", [], function() {
	return {
		messages: {},
		mixins: {},
		methods: {
			exportToExcel: function() {
				this.callParent(arguments);
 				console.log("Test!!!!");
			}
		},
		diff: /**SCHEMA_DIFF*/[]/**SCHEMA_DIFF*/
	};
});

Example of how to run a process you can find here.

Dmytro Vovchenko,

Thank you Dmytro! 

I already tried this. But the problem is that if the user does not have the Export Permission, this function still executes and the process runs to notify the admin that the user exported when in reality he could not. 

I saw the exportToExcelFile() in Data Utilities where the actual service ReportService is getting called. Will probably need to add the process call there to ensure the process is called only when the file is downloaded. But I'm not sure how to replace that module. I am unable to find that in the parent list in Replacing View Model. Please provide your insights. 

 

Regards,

Nirupama Mohan Latha,

 

hello! You can add your own operation permission check using the RightUtilities module and the checkCanExecuteOperations method inside the replaced exportToExcel method and trigger or not trigger the process as a result of this check.

Oleg Drobina,

Thank you Oleg! I can try that but will it also work when trying to export from Detail grids? When I tested I did not see this function getting executed. Let me know if I'm missing something.

Show all comments

How could I customize the Call action in the action panel to show Contacts from respective Account in Action panel of Account, Opportunity, Lead pages?

 

Like 0

Like

0 comments
Show all comments

Hi,

 

Is there a way to disenroll a contact from a campaign temporarily? The idea is to have the ability to disenroll a contact from a campaign (manually) and enroll them back at a later point. At that time, the contact should continue the campaign from were it previously stopped.

 

Like 0

Like

1 comments

I was able to achieve this with the help of 2 static folders (enroll and disenroll) specific for each campaign. I then added filtering condition to each conditional flow element to see if the contact is present in disenroll folder. (if yes, the contact will not proceed through the campaign). When the contact needs to be enrolled back, it is removed from the disenroll folder. Hence, the contact will proceed through the campaign as the filter condition is no longer met.

Show all comments

Hi,

Is there a way to add a notification in Communication panel to notify user when an initiated business process fails, indicating them to re-run the process or contact Sys admin?

Like 1

Like

2 comments
Best reply

Hello,



According to OOB logic, you cannot start a business process based on the SysProcessLog table. But there is a very simple workaround. You can create a view based on the SysProcessLog table and add this newly created object into your business process as a starting signal. Also, you can add different conditions for the records that can be added to your view so having it done you can manage the list of processes that will be added into your view.

You can find a way how to add a view on our Community.

 

Best regards,

Bogdan

Hello,



According to OOB logic, you cannot start a business process based on the SysProcessLog table. But there is a very simple workaround. You can create a view based on the SysProcessLog table and add this newly created object into your business process as a starting signal. Also, you can add different conditions for the records that can be added to your view so having it done you can manage the list of processes that will be added into your view.

You can find a way how to add a view on our Community.

 

Best regards,

Bogdan

Thanks, Bogdan! 

Show all comments

Hello,

 

In our Creatio CRM we have a number of email templates that display numbers related to currencies and other values. Our client has requested a specific format that requires to have certain thousand separator (10,000,000.00).

 

We haven't found any way to specify format in the email macros. Does anyone know of a way to achieve this in an email template?

 

Thanks, regards.

Like 0

Like

5 comments

Hello,

 

The macros take the actual value in the database. If you have 10,000,000.00 on UI, in the db you will have 10000000.00. That's why macro value has no separators. Currently it is not possible to add comma separators in macros. We have active task in our backlog to implement this logic for macros as well, but it will be available in future application versions.

 

Regards,

Dean

dean parrett,

Has there been a release to fix this issue?

 

As far as I can see it has not changed.

Kieron Moran,

We have checked this and this functionality has not been implemented yet. 

Mira Dmitruk,

Do you know when it will be implemented? The original question was asked 2.5 years ago.

Kieron Moran,

Hello,

 

Unfortunately, we do not have an exact ETA at the moment.

Once it is implemented, it will be mentioned in the Release Notes at https://academy.creatio.com/docs/release

 

Best regards,

Yuliya

Show all comments

Hello. Could you help us solve the next question: 

We have process, that is triggered by SavedStartMessage, it works corrctly when relevant record is saved from UI (added or updated)

 

What we need to do - when saving some changes from code (other process) to thrigger this starting message. We tried next aproach, but it doesn't trigger required start message:

 

We also tried getting Entity by EntitySchemaQuery, changing some field and tehn saving changes, but it also didn't work.

Could you suggest  some other approach? 

Like 0

Like

3 comments

Hello Iuliia,

 

You can also use the following code in your source code to call your process from it:

var manager = UserConnection.ProcessSchemaManager;
var processSchema = manager.GetInstanceByName("UsrProcess_bf15ef4");
var process = processSchema.CreateProcess(UserConnection);
process.Execute(UserConnection);

So in case your code completed its execution you can call the process using the code above and continue your business logic execution.

 

Best regards,

Oscar

Oscar Dylan,

thanks for this suggestion, but there is a complication. This particula process is set up on the table as this:

So I actually fo not kno the name of it. Is it still possible to start it the way that you suggested

 

Thanks in advance!

Iuliia Diakiv,

 

Event processes on objects also have their codes, please see the example:

So you can try using this name.

 

Best regards,

Oscar

Show all comments

Доброго дня.

Під час виконання операції створення індекса виникає помилка 'Could not check index exists' . На скріншоті показано стек помилки. Чи можете порадити вирішення цієї проблеми

Like 0

Like

1 comments

 Hello,

 

Could you please post your topic here: https://community.terrasoft.ua?

I believe you will receive the answer much faster.

 

Thank you!

Best regards,

Bogdan S.

Show all comments

I am unable to login to a local instance and nothing happens when clicking the login button. 

chrome console shows that the server responded with a status of 500 

(System.ServiceModel.ServiceActivationException)

 

Headers and request body

 

All features are enabled for the machine where IIS server is deployed .

I tryied to redeploy the site application from scratch still facing the same issue.

Like 0

Like

1 comments

Hello,

 

Please contact Creatio support directly (via email support@creatio.com) to check this issue. It will be easier to help you this way!

 

Best regards,

Angela

Show all comments

Hi Community,

Scenario : Age in the contact is calculated OOB based on the DOB

Question: How to add the age field in printable, as we off the existing Age field, “0” value is being printed in the printable

 

Like 0

Like

1 comments

Best route is likely to create a custom macro for the printable, you could pass it the DOB and it would return the age. See an example here: https://customerfx.com/article/creating-custom-macros-to-format-values-…

Ryan

Show all comments

Dear team, 

we have a field with type Time:  

How can we filter out some of the unnecessary values from this field (eg, time before 7am and after 7 pm)? 

Thanks in advance.

Like 0

Like

1 comments

I have a method outlined here, but it's a bit hacky https://customerfx.com/article/changing-the-allowed-time-selections-on-…

This method basically just hides values using CSS. You could use that same approach to just hide all the time values before 7am and after 7pm.

Ryan

Show all comments