sales
quote
quotes_for_opportunities_addon
Sales_Creatio
8.0

Hello,



I am using the "Creating quotes for opportunities" addon on Creatio 8.0.5.

I just noticed that quote products are not visible to standard users, only to system administrators...



Here is my test case :

- Creation of an opportunity with products as a standard user



- Launch of the "New quote" process



- Input of quote data and quote save

=> The products of the opportunity are not visible on the quote



- Reopening quote from the opportunity

=> The products of the opportunity are still not visible on the quote



- Launch of the quote edition with the default Word printable

=> The quote edition does not contain the product lines



- Modification of quote rights to make it accessible to "All employees"

=> The products of the opportunity are still not visible on the quote



- Standard user logout from Creatio



- Login as system administrator



- Reopening of the quote created by the standard user

=> The products of the opportunity are visible on the quote window

=> The quote Word printable contain the product lines



I did this same test case on an old Creatio test website in version 7.18.5 (I'm on a on-premise installation), as well as on a cloud trial version of Creatio in 8.0.6, I reproduce this same behavior .



Has this incident been observed before?

Is there a flaw in my test case?



Thanks in advance.



Vincent

Like 0

Like

2 comments
Best reply

Hello team,

 

I found the source of my problem!



The problem was at the level of an inheritance of rights on OpportunityProductInterest table, the rights were linked to the Opportunity table...

The archive rows being linked to the Quotes table, this was a problem...

I removed the inheritance and everything is back to normal.

 

Vincent

Hello

 

I'm still stuck with this problem...

Anyone have an idea?

 

Vincent

Hello team,

 

I found the source of my problem!



The problem was at the level of an inheritance of rights on OpportunityProductInterest table, the rights were linked to the Opportunity table...

The archive rows being linked to the Quotes table, this was a problem...

I removed the inheritance and everything is back to normal.

 

Vincent

Show all comments
quote
edit page
7.13_()
sales

I have a function in the Quote page that overrides generatePrintForm() from PrintReportUtilities (to automatically save the record prior to printing).  The overridden function only fires under certain circumstances; I've used console logging to confirm that it isn't called at all in others.  As best I can tell, this matches up to the difference between this mode (green button), when the record is opened from a link in another record or the page is refreshed after being opened from the section list:

And this mode (blue button), when the record is opened directly from the section list and not refreshed:

In the first mode, the function is called properly upon attempting to print; in the second, it isn't called at all.  What exactly is the difference between these two modes, and is there a way to tell from the backend?  (Or alternately, any way to ensure the record is always opened in the first mode?)

Like 0

Like

2 comments

Dear Darian,

You are correct regarding two different modes. There are two modes for the card: combined mode (blue save button) and add new record mode (green button save).

The main and most noticeable difference is top panel, where buttons and actions are. When you open a record from section, the page is working withing combined more, which means, that all buttons and actions are taken from section schema. Such mode enables you to unfold left panel and browse through other records from the section. 

If you follow a direct link to a record from other section, or refresh the page (F5) the record with be opened via add new record mode. This follows, that buttons and actions will be taken from the page schema.

Based on your description, I can suppose, that you have added overriden generatePrintForm() function to the page schema (lets say ContactPageV2). Therefore, the functionality works when opening direct link to the record, or page refresh.

In order for the functionality to work in combined mode, please add the logic to the section schema as well (e.g. ContactSectionV2).

Please see this article on adding button to the combined mode. You will find more information on functionality realization:

https://academy.bpmonline.com/documents/technic-sdk/7-13/how-add-button-edit-page-combined-mode

Regards,

Anastasia

Anastasia Botezat,

Very helpful information, thank you.

Show all comments
quote
products
message
7.13_()
sales

Hello,

I have a collection of OpportunityProductInterest objects on a quote, and I would like to immediately call a method of the OpportunityProductInterest class for each of them (to update price and discount information) when I change a particular field on the parent quote.

I have tried using messaging for this, but the broadcast message I send from the Quote object doesn't appear to be received.  Is there a more direct way of calling a method from each instance of a child object, or is there a way to make messaging work for this purpose?

Thank you.

Like 0

Like

6 comments

It's hard to understand what exactly you want to achieve. If you want to update all records after saving, then it's better to use a business process. If you want to update all records after changing a value in a field, then you need to use "dependencies of the calculated field", the "messages" property and the EntitySchemaQuery implementation on client. If you want to calculate all records separately it's better to write a web service. Anyway the task is not clear.

Eugene Podkovka,

The second, more or less.  I received some help from another source earlier and have the basic mechanics set up; however, it seems that the onEntityInitialized function is not being called on the detail object.  (I've put in debugger; and console.log(); statements to confirm, and neither shows up from that function in this object despite working in others.)

Is onEntityInitialized not called from a data grid, or is there another reason?  Is there somewhere else I could register the message, or do I need to update the records manually using an EntitySchemaQuery?

Darian Lewis,

Depends on the moment when you need to run the method. Anyway you still don't explain the task so it's not possible to help you. Please investigate the parents of the detail schema and debug all methods. This way you'll find the one that matches your needs. 

Eugene Podkovka,

Very well, then, in more detail:

We have a labQuote object, which contains a Price List column.  The page for quotes contains a detail showing a data grid of OpportunityProductInterest objects, these being the products on the quote.

Both the price and discount values of each product vary based on the price list of the parent quote; these values are calculated by a method of the OpportunityProductPageV2 object that is called when a Product is selected from the lookup in the data grid.  This part works fine.

What I wish to do is have these values recalculated if the user changes the Price List value of an open Quote, ideally immediately so that the user can see the effect of their changes.  Is it possible to do this through a method of the OpportunityProductPageV2 schema (i.e. the detail object), or is it necessary to make the changes from the quote (i.e. the parent object) manually using an EntitySchemaQuery?

Darian Lewis,

I recommend to create a web service that calculates the needed value for a single record. Additionally the service should be able to update a group of records using a server side EntitySchemaQuery. On the OpportunityProductPageV2 I recommend calling the service and setting up the value on a callback. This way you'll be able to update the product price in run time on the opportunity product page. 

If you need to update a group of records, then you call the same service and then call the reloadDetail (basepagev2) method on the service callback. 

Thank you.

Show all comments
printables
quote
7.13_()
sales

Hi Community,

Is it possible to rename the generated file from a printable?

My client wants a generated Quote doc file to be named using Number field instead of Quote#.doc (where # is the result of a counting).

Thanks.

Like 0

Like

3 comments

Dear Danilo,

The generated file name is the same as the name of the file which was uploaded to this printable record in the application. To rename the resulted file you need to rename a template and upload this new template to the printable record and after the next download it will be named as this template.

Best regards,

Oscar

 

Oscar Dylan,

Hi Oscar, thanks for your message.

I am actually refering to the generated file whom is attached to the object when selecting to Print it. For instance, the Quote object is currently generating files Quote1.doc , Quote2.doc on the Attachments and Notes tab. I would need it to be something like [Quote.NumberField]v1.doc. 

Is that possible? If so, how can I do this?

Thanks.

Hi guys, I found that the name I was looking for is being edited on the Save printable to quote Business Process. Thanks.

Show all comments