Expand my Community achievements bar.

Guidelines for the Responsible Use of Generative AI in the Experience Cloud Community.
SOLVED

OrderHistory Component E-Commerce

Avatar

Level 5

Hi, 

I have the requirement to implement the functionality similar like orderhistory component of Commerce component-group. Under Geomatrixx-outdoors, under My Account there are two options Open Orders & Order History. Order History is to show last 12 months orders. But its not in actual if i see as below :[img]orderhistory.png[/img]

When i looked into i found inside component script some code is written as : 

//Removed CodeQ1 : At line 4, the session.getPlacedOrders(predicate, 0, 0, null);  fetches the orders. Here predicate is the property with value openOrders in case of Open Orders page but not for Order History. I dropped the same component again in Open Order page, node gets create for component but predicate property not set even if i use the same values as other. So no idea from where its coming.

Q2 : Show Order History is shows more that 1 yrs old record. When i de-compiled the e-commerce library i found the below snippet :

//Removed Code

Where  getPredicate always return null. Any Idea how can we get the records of 12 months old using the same apis. From here it seems there is no use of predicate that we are passing.

Thanks

1 Accepted Solution

Avatar

Correct answer by
Employee

The actual impl class which extends from this will implement this. So dont mind the null returns in the abstract class

View solution in original post

6 Replies

Avatar

Employee

You must have decompiled an abstract base class. The actual implementation will make use of the predicate. If you think otherwise, please raise a day care ticket.

Avatar

Level 5

kalyanar wrote...

You must have decompiled an abstract base class. The actual implementation will make use of the predicate. If you think otherwise, please raise a day care ticket.

 

 

Yes, I de-compiled the class AbstractJcrCommerceSession. & the code written in Q2 is the decompiled code.

Avatar

Correct answer by
Employee

The actual impl class which extends from this will implement this. So dont mind the null returns in the abstract class

Avatar

Level 5

kalyanar wrote...

The actual impl class which extends from this will implement this. So dont mind the null returns in the abstract class

 

Using JAD-UI I searched & found this method only in AbstractJcrCommerceSession class.

Avatar

Level 5

vdhim23 wrote...

kalyanar wrote...

The actual impl class which extends from this will implement this. So dont mind the null returns in the abstract class

 

Using JAD-UI I searched & found this method only in AbstractJcrCommerceSession class.

 

 Ok, I try to override the abstract class and put my implementations inside it.