RunProcessButton
Opportunity
7.15_()
-Sales_Creatio
enterprise_edition_()

Hi,

each opportunity  record has a button that is used to run different processes. This "Run Process" button, has a list of items, "Processes", and I would like to know how can I execute my method after the button is fully rendered, including its items.

For this problem I tried every solution that I found in this question "https://community.creatio.com/questions/method-called-after-page-render…", without success.

Thanks in advance.

Best regards,

Pedro Pinheiro

 

Like 1

Like

1 comments

Unfortunately, there is no method that is triggered after all elements on a page  is rendered. However, we recommend you to try to use onEntityInitialized method. It guarantees that HTML and all data for entity is already loaded. Also please take a look at the setTimeout function in js.

Show all comments
Run Process
Button
edit page
7.15_()
Studio_Creatio_()
-Sales_Creatio
enterprise_edition_()

Hi,

i would like to know how can i access the array of items inside this ProcessRun Button:

I've tried to use "EditPages" and "diff" from the page, but it didn't work.

Best Regards.

Thanks in advance.

 

 

Like 0

Like

1 comments

Dear Pedro, 

You can access the content of the list by getting the value of an attribute RunProcessButtonMenuItems:

 var processButtonMenuItems = this.get("RunProcessButtonMenuItems");

 

Show all comments
notifications
emails
Business Process
7.15_()
-Sales_Creatio
enterprise_edition_()

Hi,

I am wanting to create an email which is generated at the start of the week, which sends out a list of filtered activities my engineers have scheduled that week.

Logic will be:

  1. Read all Activity records which have a start date of This Week
  2. Only those that have a project connection (this I have already worked out)
  3. Send email to the Activity Owner
    1. Detail includes the following example content, where the format is Date - Activity Subject - Project Name and there are multiple entries according to how many activities that user has to perform that week.
      1. 16/12/2019 12:00pm - Create design document for installation - Project: Acme application 10 day consultancy
      2. 17/12/2019 9:00am - Onsite delivery for Kalamazoo - Kalamazoo Migration to O365
  4. Repeat each Sunday at 11pm

The issue I have is how to create the single email to be sent to each engineer with there weeks schedule in an email. I am hoping this can be done in a Process.

thanks

Mark

Like 0

Like

1 comments

Dear Mark,

The required functionality can be implemented through development. In order to do it please use the “Script task” business process element. Please find more information about the element in the article by the link below:

https://academy.creatio.com/documents/technic-bpms/7-15/script-task-process-element

In order to implement the functionality it is necessary to do the following: for each employee select all the activities, where he is the owner and create the body of the email. Then send the emails to every employee using the “EmailSendService” service. In order to cycle through all employees it is necessary that they all belong to the same group. Please find additional information in the articles by the links below:

https://community.creatio.com/questions/business-process-script-task

https://community.creatio.com/questions/business-process-script-task

https://academy.creatio.com/documents/technic-sdk/7-15/entityschemaquery-class-adding-columns-query

If you have any further question, please contact technical support.

Best regards,

Norton

Show all comments
7.15_()
-Sales_Creatio
enterprise_edition_()

How can I make a editable column in Detail with selection from lookup, after added a data in detail, all fields is read only, but I have a column Number, where I need to introduce Number of row.

Like 0

Like

1 comments

Hello Vladimir,

I did everything straight to the article https://academy.creatio.com/documents/technic-sdk/7-15/creating-detail-selection-lookup and both Order and Document fields became editable on my side (here are screenshots http://prntscr.com/qck8v1 and http://prntscr.com/qck98i). There are two cases when the field can be uneditable:

1) You have a business rule specified for this field in detail business rules

2) You have enabled:false specified for this field in detail schema

Please check both variants, one of them provokes your fields to be uneditable.

Best regards,

Oscar

Show all comments
7.15_()
-Sales_Creatio
enterprise_edition_()

I'm trying to upload photo via OData.

I've started with this code: https://community.creatio.com/questions/how-upload-attachments-odata

and this is where I'm stuck: picture is uploaded but nothing changes (product photo is still empty), as if nothing is saved...

 

This is the code that I'm using:                           

using (var fs = new FileStream("c:/temp/otter_tiny.jpg", FileMode.Open))
{
    DataServiceRequestArgs args = new DataServiceRequestArgs();
    //Define content type
    args.ContentType = "application/octet-stream";
 
    var productImage = new BPMSync.BpmService.SysImage();
    productImage.Id = Guid.NewGuid();
    productImage.Name = "produtImage.jpeg";
    productImage.MimeType = "image/jpeg";
 
    service.AddToSysImageCollection(productImage);
 
    existingProduct.PictureId = productImage.Id;
 
    //Save changes
    DataServiceResponse responces = service.SaveChanges();
    //Write file stream to activity file
    service.SetSaveStream(productImage, "Data", fs, true, args);
    //Save changes
    service.SaveChanges();
}

 

Like 0

Like

1 comments

We figured it out in the meantime, so maybe this will help others:

existingProduct was not actually saved because changing PictureId was not triggering change detection. Manually updating object solved the problem, like this:

service.UpdateObject(existingProduct);
service.SaveChanges();

 

Show all comments
7.12_()
-Sales_Creatio
enterprise_edition_()

How can I ass a column for all users ?

Like 0

Like

1 comments
7.13_()
-Sales_Creatio
enterprise_edition_()

Hi,

I have created an Educational demo in Sales Enterprise. I have created "Institutions" section with the institutes names. I am creating a lookup in other sections by using existing lookup "Institutions". But I am getting Property "Displayed Value is not set in the selected lookup. You can't select values from this lookup without this property. Set this property in advanced settings section and try again". 

Please suggest me to solve this issue.

Thank you.

Like 0

Like

1 comments

Hello,

You can specify Displayed Value in configuration (System Designer -> advanced settings) in the object settings.

Best regards,

Angela

Show all comments
emails
Business Process
7.15_()
-Sales_Creatio
enterprise_edition_()

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
7.15_()
-Sales_Creatio
enterprise_edition_()

Hi all,

I found one inconvenients related to business process run on other tab than default tab on page. System changing this tab automatically after process ends.

My process has one step, which open Pre-configured page and after Save/Close back to the Project page. This process is invokend on Project/Structure detail tab. Everything works perfect but system initialize Project page with default General Information tab instead of Structure tab on which process was exectuted.

How to switch tab automatically after page is initialized after business process has ended ?

Regards,

Marcin Kott

 

Like 0

Like

2 comments

Hi Marcin,



Business process can communicate with the client side via Websockets. You can send a Websocket message to the page with the name of the tab that you want to open.



Here are the steps to follow:

1. Add usings in your business process https://prnt.sc/q6gknw:

Terrasoft.Configuration

Terrasoft.Messaging.Common

Newtonsoft.Json

2. Create a method under Methods tab:

 

public static void SendTabName(UserConnection userConnection, Guid recordId, string tabName) {
	string senderName = "TabSender";
	string message = JsonConvert.SerializeObject(new {
	    RecordId = recordId, 
	    TabName = tabName
	});
 
	MsgChannelUtilities.PostMessage(userConnection, senderName, message);
}

3. Add process parameters RecordId and PageTabName.

4. Add a script task that invokes a method with message:

 

SendTabName(Get<UserConnection>("UserConnection"), Get<Guid>("RecordId"), Get<string>("PageTabName"));
return true;

5. Subscribe for the message on the page:

define("MyPage", [],
function() {
	return {
		entitySchemaName: "MyObject",
		methods: {
			init: function() {
				this.callParent(arguments);
				this.Terrasoft.ServerChannel.on(Terrasoft.EventName.ON_MESSAGE, this.onTabMessageReceived, this);
			},
			destroy: function() {
				this.Terrasoft.ServerChannel.un(Terrasoft.EventName.ON_MESSAGE, this.onTabMessageReceived, this);
				this.callParent(arguments);
			},
			onTabMessageReceived: function(sender, message) {
				if (message && message.Header && message.Header.Sender === "TabSender") {
					var result = this.Ext.decode(message.Body);
					if (this.get("Id") === result.RecordId) {
						this.glbSetActiveTab(result.TabName);
					}
				}
			},
			glbSetActiveTab: function(tabName) {
				this.set("ActiveTabName", tabName);
			}
		}
	};
});



Regards,

Dmytro

Dmytro Smishchenko,

Thank You for complete clarification. Its works.

Not exactly fit to my case but was useful to take forward my implementation and fix problem.

In my solution, process runs "Pre-configured page" task, so "Script task" runs  after this steps sends message but before load "Project edit page" back then i can't handle this message.

My final solution is setting sessionStorage variable on "Pre-configured page" init method and read and destroy this variable on "Project Page 2 edit" initTab method like this ..

	methods: {
			initTabs: function() {
				//this.callParent(arguments);
				if(sessionStorage.getItem("SetStructureTab"))
				{
					this.set("ActiveTabName", "StructureTab");
					this.set("StructureTab", true);
					sessionStorage.removeItem("SetStructureTab");
				}
				else{
					this.callParent(arguments);
				}

Regards,

Marcin Kott

Show all comments
7.15_()
-Sales_Creatio
enterprise_edition_()

Hi,

I need to disable auto complete Owner functionality when Opportunity type is set to Partner Sale and Partner is selected from filtred lookup.

Thanks for help. 

Like 0

Like

3 comments

Hello,

You can create business process that will empty this field when opportunity is created. Please note that in OOB system Owner field is required so you should disable this condition for the field before creating process.

 

Hi Angela,

Indeed, the opportunity is created from a satisfied lead (through a custom BP). The Owner field is already filled in when the opportunity is created.

By choosing Partner Sale type, the Partner field is displayed. When I select a Partner, the Owner field becomes empty and the choice is limited to the Partner's Primary Contact.

I need to remove this link between the Partner field and the Owner field. I want to keep the original Owner of the opportunity unchanged.

Dear Mohamed,

There is no filtration on the Parent field based by the Owner field in OOB version of the application. The only filter is by the account type itself (account type = partner). You can turn it off in the business rules in the section wizard (http://prntscr.com/q4u7xe). 

Show all comments