Hello,

 

I have a business process that at some point sends an automated email. Till some updates ago, I've seen that those emails generate activities with type = Email and I could display those emails in a detail or do some statistics based on those activities. 

But now those activities are no longer generated. Are those emails stored somewhere else? Or do I need to setup something extra at that "Send email" task in order to generate that activity.

 

Thank you,

Cristian Galatan.

Like 0

Like

2 comments

Hello Cristian,

When sending email automatically no activity record is created in the system, therefore this email can't be linked to a case as it is not in the system. That is why it doesn't allow you to bind any record to Send email element in advanced settings. As a workaround you can whether use manual send or send email from a script task. Here is and example:

https://community.bpmonline.com/questions/email-attachments-business-pr…

Best regards,

Oscar

Oscar Dylan,

Thank you Oscar.

I wanted to confirm that was the issue. I'll do a workaround.

Thanks again,

Cristian Galatan.

Show all comments

Hi

I have been struggling to come up with the necessary process logic to cater for moving on to an action only when it is a weekday and during business hours 08:00 to 18:00.

The following is my current process flow, to which I added the Wait for 6 hours Exclusive Gateway, but my formula is not working:  DayOfWeek([#System variable.Current Date#]) != 6 || DayOfWeek([#System variable.Current Date#]) != 7

Some guidance on how to only proceed to sending the emails during business hours would be appreciated.

thanks

Like 0

Like

7 comments

DayOfWeek is a method on DateTime. What you need is to use a DateTime value for the current date that you can use to determine if that date (the current date) is a weekend or not.

To do this, you can use the "Current Date" system variable (you'll see this on the System Variables tab when creating the formula)

Your formula to determine if it is not a weekend would look like this:

[#System variable.Current Date#].DayOfWeek.ToString() != "Saturday" && [#System variable.Current Date#].DayOfWeek.ToString() != "Sunday"

Ryan

Ryan Farley,

Hi Ryan

Many thanks for this. I have applied and will hope come this Saturday no more reminders are sent out. I will use same approach for dealing with out of hours.

thanks again

Mark

Hi, I have a similar process, but this needs to only perform the actions defined during business hours. Therefore, I created a gateway which will add a 2 hour timer and go back to criteria lookup before allowing progress to the action section if the time is past 18:00 or before 08:00. I therefore took the above and added the following:



[#System variable.Current Date#].DayOfWeek.ToString() == "Saturday" || [#System variable.Current Date#].DayOfWeek.ToString() == "Sunday" || ([#System variable.Current Time#].Hour >=18 && [#System variable.Current Time#].Hour <= 8)

 

This is only interested in the current time/day and I thought a parenthesised AND statement would do the job. However, I am finding this is executing the actions out of business hours, when it should not.

 

What is wrong with the Time statement to match out of hours?

Hi Mark,

 

Your process flow will be executed each Saturday or Sunday or between 18:00 and 8:00 due to the logic of the formula. In case you need the flow to be executed during business days and hours please use this formula:

 

 ([#System variable.Current Time#].Hour <=18 && [#System variable.Current Time#].Hour >= 8) && [#System variable.Current Date#].DayOfWeek.ToString() != "Saturday" && [#System variable.Current Date#].DayOfWeek.ToString() != "Sunday"

 

Best regards,

Oscar

Hello! Can anyone tell me why this code is giving me an error?

 

Hello,

Correct syntax is [#System variable.Current Date#].DayOfWeek.ToString() == "Thursday"

Franck Lehmann writes:

Hello,

Correct syntax is [#System variable.Current Date#].DayOfWeek.ToString() == "Thursday"

Hello. I mean like in C# code: https://learn.microsoft.com/ru-ru/dotnet/api/system.dayofweek?view=net-8.0

Show all comments



Dear mates,

I'd like to set a date to null in a process. I tryed several ways but it never worked.

Is it possible to do this in a process or should i do it in JS ?

Thanks,

Nicolas

Like 0

Like

3 comments

Well i did it in js:

            onEntityInitialized: function() {

               

                this.callParent(arguments);

                

                if (this.get("Stage").value === "991d70f4-7a10-42b8-bb9c-fd8096d05d9b") {

                    this.showInformationDialog("Set the new Date to call");

                    this.set("DateToCall", null);

                }

            }

If someone knows how to set a Date to Null in a process, i m interested with

LÉZORAY Nicolas,

You can create date parameter and leave it empty. Then specify this parameter as a value that must be inserted to date field. It will leave this field empty or make it empty if it was filled in.

Best regards,

Angela

Thank you it works !

Show all comments



Dear mates,

When i save my process, after modifying an opportunity record step, i ve got the following error:

It wants to mean that the system does not found the "Demande de devis" step and so it refused to save my process.

However, if i change my default language from french to english, the error does not appear.

I called my support and they compile our plateform but the error is still present.

Does anybody have an idea to correct this problem ?

Where can i find the opportunity step lookup traduction ?

Thanks,

Nicolas

 

Like 0

Like

3 comments

Hello!

Can you please contact our support team directly with the question you described above? We might need to have an access to the system where you face this behavior.

I will add details here after we finish with the investigation.

Thank you!

Hello Nicolas,

Thank you for reporting this issue to us! It helped to solve the problem in an out-of-the-box logic of 7.15.2 version of the application. The reason of this error was in fact that in base logic of 7.15.1 version "OpportunityInStage" and "OpportunityStage" objects have the same title in french localization https://prnt.sc/q0jozy and it provokes an error when choosing an object in formula or via lookup value in process elements. To resolve this issue we've renamed OpportunityInStage object title to "Etape dans l'opportunité" and it solved the error.

Best regards,

Oscar

It works !

Thank you !

Show all comments

Hi Community,

Currently I am not able to cancel a running subprocess, it is giving me this warning message. "The process can not be cancelled", becasue it was started as a subprocess".

 

Like 0

Like

1 comments

Hello Fulgn,

This is an out-of-the-box logic that prevents canceling the process if it was started a sub-process in another process and we do not recommend canceling such processes. But in case you still want to do that you can run these queries:

update SysProcessElementLog set StatusId = '1BE78F3E-234D-4D6A-869A-DC07253FD2F3' where StatusId = 'F942C08D-B6E2-DF11-971B-001D60E938C6' and SysProcessID in (select ID from SysProcessLog where StatusId = '1BE78F3E-234D-4D6A-869A-DC07253FD2F3' and Name = 'Name of your sub-process')

Please modify:

F942C08D-B6E2-DF11-971B-001D60E938C6 - status of the last element in your sub-process (if all elements were completed and the process is still in running mode you can execute: update SysProcessLog set StatusId = '1BE78F3E-234D-4D6A-869A-DC07253FD2F3' where StatusId = 'F942C08D-B6E2-DF11-971B-001D60E938C6' and Name = 'Name of your sub-process')

where F942C08D-B6E2-DF11-971B-001D60E938C6 - process status ID taken from SysProcessStatus table. Running status ID is ED2AE277-B6E2-DF11-971B-001D60E938C6. So if your process is in running status you need to run:

update SysProcessLog set StatusId = '1BE78F3E-234D-4D6A-869A-DC07253FD2F3' where StatusId = 'ED2AE277-B6E2-DF11-971B-001D60E938C6' and Name = 'Name of your process'

so to 'Cancel' all processes in 'Running' status with name 'Name of your process'.

Best regards,

Oscar

Show all comments

I created a business process.

Firstly, I add a signal when a record was deleted.

Then, I read the data of that record.

Then, I read all record which was created after the deleted record.

Last, I modify the record on the previous step.

But When I active the business and do testing, I deleted a record but other records were not modified.

Can someone help me?

 

 

 

 

 

Like 0

Like

2 comments

Dear Nghiêm



Unfortunately, there is no possibility of using the information deleted to trigger the business process signal.  

This is the known issue when the process created upon deleting some object cannot use the information from the deleted object in future. 



We already have a suggestion registered for our R&D team to add the functionality which allows you to work with the deleted data in business process. 



Best regards, 

Roman. 

Hi Roman,

Thanks for your answer.

In my picture, I forget to change "Which event should trigger the signal?" to "Record deleted", but you get my issue exactly. 

Best Regards,

 

Show all comments

Hi-

I was told that you could forward links to reports in emails from BPM. I'm assuming that is through business processes. I see how to send the email- but how do I link the report? The link I'm am sending is just bringing my users to the account page instead of the folder I set up for them in the account page. 

(yes they all have access to the folder)

Like 0

Like

3 comments

Hello Heather,

Unfortunately there is no way to form a direct link that will open a folder in a section when clicking on this link. If I understood you right this should be some internal email to your colleagues. As a workaround you can ask to open some specific folder in the template directly and provide the link to a section. But direct link to open the folder cannot be formed. I will ask our R&D team to create some logic that allows doing it. Thank you for reporting this issue to us!

Best regards,

Oscar

i made folders in my gmail account to filter incoming emails and i did synchronized it with created but Is there a way to recieve the information like applied filters with email object received ?

Hello Werdien,

 

Thank you for your question! Could you please clarify your business task? 

 

Looking forward to your reply!

Olga. 

Show all comments

I have been struggling very much with handling collection type response parameters in web services.

When response parameters are or normal type they are very easy to handle in the business processes. Here we are able to handle them as parameters on the Call web service process element. And use these in the process right away.

When there is a Collection which is returned, this is very different. Now the Call web service element parameter is of type Collection of Objects with attributes.

It seems to me that this parameter-type is very difficult to handle in the business process. I can't seem to find documentation in the Academy about how to extract and loop through the contents of the Collection of Objects with attributes.

What I have found in the academy is this article about setting up the Web service.

https://academy.bpmonline.com/documents/administration/7-14/adding-resp…

What I need to learn is how to handle them in bpm'online business processes.

Is there something about this in the Academy?

Is writing source code the only option? It's difficult to debug.

Like 0

Like

6 comments

Dear Julius,

Unfortunately, it is impossible to handle parameters that have the “collection of object” type without using the source code.

Therefore, in this case we recommend using “ScriptTask” element for both calling the web-service and processing the results of call.

For more detailed assistance, please contact technical support.

Best regards,

Norton

Norton Lingard, Thank you. Is there anything like this in the academy? Because there is a special bpm'online syntax to go by in the source-code.

Dear Julius,



The service call in a "Script task” business process element can be implemented via native C#. Please find a lot of examples on how to do that in Google. For example, several links below:



https://stackoverflow.com/questions/9620278/how-do-i-make-calls-to-a-rest-api-using-c



https://code-maze.com/different-ways-consume-restful-api-csharp/

Please note that it is possible to use the native C# collections instead of working with the the special bpmonline collections.

Best regards,

Norton

Hi Julius,

 

Did you manage to solve this?

 

I'm struggling with the same issue and didn't manage to get it to work.

 

Looking forward to having Your answer.

 

Raz

Norton Lingard,

Hi Norton,

 

Is there another example on how to do it in the script task?

 

I tried implementing it based on the links you posted and I'm getting many error messages when posting the code.

 

Thanks,

Raz

Dear Raz,

 

Please find another example in the article by the link below:

 

https://stackoverflow.com/questions/3900371/how-can-i-call-a-webservice-from-c-sharp-with-http-post

 

If you still can’t resolve the issue please provide us with a source code that you wrote and errors that you got.

 

Best regards,

Norton

Show all comments

I created a Business Process and when calling the service externally by Postman for example I can not receive the returned data. I need to return customer data. I am using the object "Read Data".

File attachments
Like 0

Like

1 comments

Hello, 

Regarding to the read data part, we would recommend you to use script task as in example on the academy. 

https://academy.bpmonline.com/documents/technic-sdk/7-13/how-run-bpmonline-processes-web-service



The call of the process with script task returns nothing as you haven't specified return parameter, that is why it returns 1 stating that the process was called. Please try calling the process with the link http[s]://<bpm'online_application_address>/0/ServiceModel/ProcessEngineService.svc/UsrGetCustomer/Execute?ResultParameterName=ParameterReturn

Best regards,

Dennis 

Show all comments

I created a Business Process and when calling the service externally by Postman for example I can not receive the returned data. I need to return customer data.

 

 

 

File attachments
Like 0

Like

3 comments

Dear Marcelo,



In this case, we recommend using “ScriptTask” instead of the “ReadData” element. Also, please note that we recommend calling the service via C#.

For more detailed assistance, please contact technical support.



Best regards,

Norton

Norton Lingard,

 

I tried with Script Task but still the service returns null

Best Regars,

Marcelo

Dear Marcelo,



After a further investigation, we have found out that since version 7.13 this service is no longer able to return the parameter value. It was possible only in compiled processes, however, since version 7.13 all processes are interpreted. As a workaround, you can integrate with bpm and do all the needed logic with the integration instead of business process. Please find more information by the link below:



https://academy.bpmonline.com/documents/technic-sdk/7-13/integration-bp…



Best regards,

Norton

Show all comments