From the /ServiceModel/AuthService.svc/Login authorization API respond with 4 Set-Cookie headers in the response. But according to the spec [https://datatracker.ietf.org/doc/html/rfc6265#section-4.1] , "Servers SHOULD NOT include more than one Set-Cookie header field in the same response with the same cookie-name."  From the client application, it can't get the all 4 header values, only first one retrievable. Could you please give a fix or suitable workaround for this.

Like 0

Like

2 comments
Best reply

Hi Anusha, 

 

it's now allowed in HTTP/2 (https://datatracker.ietf.org/doc/html/rfc7540#section-8.1.2.5), which specifies: 

 

8.1.2.5.  Compressing the Cookie Header Field
 
   The Cookie header field [COOKIE] uses a semi-colon (";") to delimit
   cookie-pairs (or "crumbs").  This header field doesn't follow the
   list construction rules in HTTP (see [RFC7230], Section 3.2.2), which
   prevents cookie-pairs from being separated into different name-value
   pairs.  This can significantly reduce compression efficiency as
   individual cookie-pairs are updated.
 
   To allow for better compression efficiency, the Cookie header field
   MAY be split into separate header fields, each with one or more
   cookie-pairs.  If there are multiple Cookie header fields after
   decompression, these MUST be concatenated into a single octet string
   using the two-octet delimiter of 0x3B, 0x20 (the ASCII string "; ")
   before being passed into a non-HTTP/2 context, such as an HTTP/1.1
   connection, or a generic HTTP server application.
 
   Therefore, the following two lists of Cookie header fields are
   semantically equivalent.
 
     cookie: a=b; c=d; e=f
 
     cookie: a=b
     cookie: c=d
     cookie: e=f

Please also check out this article:

 

https://datatracker.ietf.org/doc/html/rfc6265#page-7

 

Best Regards, 

 

Bogdan L.

 

Hi Anusha, 

 

it's now allowed in HTTP/2 (https://datatracker.ietf.org/doc/html/rfc7540#section-8.1.2.5), which specifies: 

 

8.1.2.5.  Compressing the Cookie Header Field
 
   The Cookie header field [COOKIE] uses a semi-colon (";") to delimit
   cookie-pairs (or "crumbs").  This header field doesn't follow the
   list construction rules in HTTP (see [RFC7230], Section 3.2.2), which
   prevents cookie-pairs from being separated into different name-value
   pairs.  This can significantly reduce compression efficiency as
   individual cookie-pairs are updated.
 
   To allow for better compression efficiency, the Cookie header field
   MAY be split into separate header fields, each with one or more
   cookie-pairs.  If there are multiple Cookie header fields after
   decompression, these MUST be concatenated into a single octet string
   using the two-octet delimiter of 0x3B, 0x20 (the ASCII string "; ")
   before being passed into a non-HTTP/2 context, such as an HTTP/1.1
   connection, or a generic HTTP server application.
 
   Therefore, the following two lists of Cookie header fields are
   semantically equivalent.
 
     cookie: a=b; c=d; e=f
 
     cookie: a=b
     cookie: c=d
     cookie: e=f

Please also check out this article:

 

https://datatracker.ietf.org/doc/html/rfc6265#page-7

 

Best Regards, 

 

Bogdan L.

 

Bogdan Lesyk,

Thanks Bogdan. It was really helpfull, will check alternative way to process from the client API side.

Show all comments

Hi, community.

I have custom activity types besides the factory ones (Call, Email, etc):

 

 

But in the case manager of sections, when trying to set up activities tied to the stages, I can only see these:

 

 

Why can't I see my other activity types?

 

And also, how can I add the activity category field to this view? Or any other field, for that matter? Which schema must I modify and how?

 

Thank you!

Like 0

Like

1 comments

Hi Juan, 

 

"Tipos de actividades" I believe that's "Activity types", but the values you may choose in "Task category" ("Categoria de tarea") are fields from "Activity Category" lookup. 

 

So please add required values to this Lookup and you will be able to select them.

 

Best Regards, 

 

Bogdan L. 

Show all comments

Dear mates,

Can i close the opportunity page in a process  ?

When an opportunity is closed and won, an order page opens automatically.

As soon as the user save the order, the order page close and the user returns to the opportunity.

I would like he stays on the order when he save it and i would like to close the opportunity too.

How can i do this ?

Thank you

Nicolas

Like 0

Like

8 comments

Dear Nicolas,

 

As of now, this can be achieved only via development. You can find examples of this implementation on community: https://community.creatio.com/questions/how-stop-redirection-new-order-section-opportunity

https://community.creatio.com/questions/stay-child-record-while-creating-it-parent

 

Best regards,

Max.

Dear Max,

 

i override  the Save method and i modify my autosave method and it works fine i stay on the order where the order is saved.

 

But when i add a product to the order, the order is saved and it go back to the opportunity.

 

Do you know where the save method is call in this case ?

In my orderproduct detail, there is a save button:

 

Shall i override the save method of the orderproduct detail ?

 

Thank you !

Nicolas

 

 

LÉZORAY Nicolas,

 

Hi,

 

You will need to override the _navigateBack method (that is called by the afterSave method) of the ProductSelectionSchema schema. This method publishes the "BackHistoryState" message via sandbox and is responsible for pushing the user back in the history.

 

Best regards,

Oscar

Oscar Dylan,

Hi Oscar,

So i have to replace the ProductSelectionSchema.

In the documentation, i have to used "Replacing Client Module":

 

But i cann't find it in my system:

 

What must i used to replace ProductSelectionSchema ?

 

Thank you !

Nicolas

LÉZORAY Nicolas,

 

You need to use a replacing view model.

 

Best regards,

Oscar

Oscar Dylan,

Thank you Oscar,

 

i overrided the ProductSelectionSchema _navigateBack method.

i commented the line: this.sandbox.publish("BackHistoryState");

 

Now when i save the product in my orderproduct detail, i stay on the orderproduct selection page. how can i close the detail page to go back into the order ?

Oscar Dylan,

by overloading the _navigateBack method, I haven't found a way to close the product details page without the order also closing.

LÉZORAY Nicolas,

Override de productselectionschema:

 

            methods: {

                /**

                 * Additional processing after products saving.

                 * @protected

                 */

                afterSave: function(args) {

                    this.sandbox.publish("ProductSelectionSave", this.findSelectedProducts(), [this.sandbox.id]);

                    this.UsrnavigateBack();

                    this.hideBodyMask();

                },

                /**

                 * @protected

                 */

                UsrnavigateBack: function() {

                    var isOpportunityPage = window.location.href.indexOf("OpportunityPageV2") > 0;

                    if(!isOpportunityPage) {

                        this.sandbox.publish("BackHistoryState");                        

                        this.set("IsPageClosed", true);

                    } else {

                        this.config = this.sandbox.publish("ProductSelectionInfo", null, [this.sandbox.id]) || {};

                        window.location.assign("ViewModule.aspx#CardModuleV2/OrderPageV2/edit/"  + this.config.masterRecordId);

                    }

                },

            }

 

and it works !

even if at the end the user pust close two times the opportunity

Show all comments

I would like to get all the accounts that hadn't got an email titled "Hey we missed you...".

For instance, this contact has got the email:

 

But I haven't got a clue where the Emails are stored. I try a filter:

The Response object seems useless - there's no Subject field. Email message object too:

Could someone advise?

Like 0

Like

4 comments

Hello Yuriy,

 

For example, in my system I have only one account with the following email:



In order to filter all the accounts that received such email there is a need for below filter:

And in order to filter all the accounts that hadn’t receive this email (including those that have no email at all) please refer to the below filter:

Best regards,

Anastasiia

Anastasiia Zhuravel,

Thank you. Could you explain to me why this is not working?

The contact has got the emails, yet he's not filtered:

 

 

 

Yuriy Konstantinov,

 

Try to set the filter the following way:

 

[Subject contains %hey%missed%you%] or any other appropriate key words. 

 

Best regards, 

Anastasiia

Anastasiia Zhuravel,

it's the same. I tried:

It doesn't help.

Show all comments

For syncing with an external app, I created a user called SyncerConnection.

 

I use DataService to connect with Creatio and I try to get AccountCommunication.

 

401 - Unauthorized: Access is denied due to invalid credentials.



 

You do not have permission to view this directory or page using the credentials that you supplied.



  

But it works for another user.

What is needed for the user SyncerConnection to get data with DataService?

 

Like 0

Like

3 comments

Hello Yuriy,



You can try to add the role of system administrator to your user and see how it will be after that. In case if it doesn't help please mail us on support@creatio.com and give us the external access under the supervisor, credentials of your user and the example of your request. 

We couldn't get the error on our side when we tried to reproduce it with access rights on the operation for the AccountCommunication object and with the restrictions on the CanUseODataService operation (that theoretically might limit the access). In addition, maybe something went wrong with BRMCSRF cookies in Postman when the request was sent on your side, but again it's only our assumption, since we need a full description of the problem. 



Best Regards,

Tetiana

Well, I removed the sales creatio commerce edition cloud license from one user and gave it to the SyncerConnection user and it worked.

But the number of licenses is limited, is it necessary?

Hello,



Yes, that's true that the marketing active contacts license doesn't give a right to work in the system in usual mode and it is used mostly for checking the ability of sending mails from the system.

 

Here are all the rights that the license gives:



Active marketing contact licenses ("marketing creatio 1000 active contacts"). The licenses are used for creating records in the [ Email ], [ Campaigns ], and [ Events ] sections. The number of licenses must not be less than the number of active contacts who receive marketing communications (emails, campaigns, or events).



Best Regards,

Tetiana

Show all comments

If I Click on link Button in Homepage getting new homepage window,

How to ignore opening new window

For Link button Code is

{

                    "operation": "insert",

                    "propertyName": "items",

                    "parentName": "ToolsTile",

                    "name": "",

                    "values": {

                        "itemType": Terrasoft.ViewItemType.BUTTON,

                        "caption": {"bindTo": "Resources.Strings.CalculatorCaption"},

                        "click": {"bindTo": "onNavigateTocalculators"}

                    }

                },

Can you Suggest how to resolve this issue

Like 0

Like

3 comments

Dear Danyil Onoprienko,

My Question is not related to Creation of Button, It is related to LinkButton(Calculators) under SalesToolkit in HomePage,  Shown in below image.

 

Issue facing:- When click on Calculators(LinkButton), a new Homepage window is opening,  which is shown in the below image.

Please suggest me, How to ignore/Stop opening a new window Tab clicking on LinkButton(Calculators)

 

Using Link button Code is

{

                    "operation": "insert",

                    "propertyName": "items",

                    "parentName": "ToolsTile",

                    "name": "",

                    "values": {

                        "itemType": Terrasoft.ViewItemType.BUTTON,

                        "caption": {"bindTo": "Resources.Strings.CalculatorCaption"},

                        "click": {"bindTo": "onNavigateTocalculators"}

                    }

                },

 

Dear Community,

 

Is there any update on this issue.

 

Thank you in advance.

Mansoor.

Show all comments

We have a multitude of old instances of same business process with status Error. In the Process Log, I tried to select them all and then press ACTIONS(175930) → Cancel execution, but it just didn't work. I gave them some time, but the next day they were all there. Canceling them by 200-400 works, with some delays. Canceling by a couple of thousands doesn't work - a few hundreds become canceled, others remain with the status "Error". It would take too much time to cancel them in such small portions. Is there a quicker way?

Our site is in the cloud.

Like 0

Like

4 comments

Hello Yuriy. 

 

Alternatively to cancelling execution of each instance of the process manually, you can find this process in the Process library and deactivate it:

By answering "Yes" to the clarifying  questions, all the instances of the process will be cancelled:



 

Should you have any questions, please let us know. 

Best regards, 

Anastasiia

 

 

Anastasiia Zhuravel,

Thank you. I deactivated it, yet they remain with the "Error" status, and there was no dialog "...Cancel them?", unfortunately

 

Yuriy,

 

Have you tried OOB tools that cancel the process instances in Error status? It also deletes the data according the parameters you set here: 

 

You can find the description of all the settings on our Academy.

This probably will take some time but at least the system will do everything automatically.

 

Best regards,

Bogdan S.

Bogdan Spasibov,

Thank you, I tried this way. I changed the Allowed time for process instances in the "Error" state (days) setting from 0 to 1. The system started lagging, it canceled the processes with an average speed of 500 processes per hour. Users could not enter the system because of lags, and I too, only from time to time I could enter. It could take 2 weeks to wait until all the processes close, so I asked the Support to solve it. At last, as I see it, they plainly cleaned the Error instances from the Log and the slowness stopped. That's our experience.

I conclude that in our case, this method works for a low number of processes in the Error state.

Show all comments

Hi everyone

I am having a warning when i'am editing my template, the warning is 

"Email template contains tags "u" not supported in HTML5. This can lead to incorrect display of email template in some email clients. Please change the template using css styles"

but really i am not using any tag "u" .

Is there any way to debug this?

Like 1

Like

2 comments
Best reply

Dear Carlos,



This warning should not influence anything, you can still send these bulk emails but there can be some issues with displaying them in different mail providers as the tag "u" (underline) which is used in your bulk email is deprecated.

Our recommendation is to use the CSS "text-decoration-line:underline" style instead of in places where underline is needed.



In case you didn't add any HTML blocks manually, a block with this tag could be generated automatically, and if you didn't add unsubscribe link and clicked on add it after trying to save the template and receiving the notification message about it.  

In that case, simply delete the automatically added block with unsubscribe link and replace it with the one available in the block library.

 

Best Regards,

Ivanna.

Dear Carlos,



This warning should not influence anything, you can still send these bulk emails but there can be some issues with displaying them in different mail providers as the tag "u" (underline) which is used in your bulk email is deprecated.

Our recommendation is to use the CSS "text-decoration-line:underline" style instead of in places where underline is needed.



In case you didn't add any HTML blocks manually, a block with this tag could be generated automatically, and if you didn't add unsubscribe link and clicked on add it after trying to save the template and receiving the notification message about it.  

In that case, simply delete the automatically added block with unsubscribe link and replace it with the one available in the block library.

 

Best Regards,

Ivanna.

Ivanna Yatsura,

Hi Ivanna 

the html editor embedded into the email designer allows the user to use the unsupported "u" tag.

This fact disorient the end-user

 

Show all comments

For example, how many records of products can have? Or how many records of activities/projects/contacts/... can have? Thank you.

Like 0

Like

1 comments

Dear Andrew,



We do not have any limitations on that, you can have as many records as you want.



Best Regards,

Ivanna.

Show all comments

I need to make a dropdown field with option items from external system. What should I do? Thank you!

Like 0

Like

2 comments

Dear Andrew,



Unfortunately, we do not have any base tools to implement this, it can be achieved only by hard development.



Best Regards,

Ivanna.

If you use on-site, you can try to make VIEW from another database. Then create an object based on that VIEW and use this for your lookup fields

Show all comments