# Looking into options to filter out the customer orders based on items

**URL:** <https://www.virtocommerce.org/t/looking-into-options-to-filter-out-the-customer-orders-based-on-items/533>\
**Category:** dev\
**Tags:** module\
**Created:** [January 3, 2023, 6:48am UTC](https://www.virtocommerce.org/t/looking-into-options-to-filter-out-the-customer-orders-based-on-items/533 "2023-01-03T06:48:58Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Aman](https://avatars.discourse-cdn.com/v4/letter/a/90ced4/32.png) [@Aman](https://www.virtocommerce.org/u/Aman)\
**Post date:** [January 3, 2023, 6:48am UTC](https://www.virtocommerce.org/t/looking-into-options-to-filter-out-the-customer-orders-based-on-items/533/1 "2023-01-03T06:48:58Z")

</div>

Hi ,  
I am trying to extend a field for the customer orders and add more filter for order which are based on OrderLineItems. Filter or field would be based on OrderLineItems properties and Catalogue Properties  
e.g- if we have “Product A” in “OrderLineItems” then based on its properties and its catalogue property. we have to extend field and apply the filter.  
So Can you suggest what would be the best way to implement this?

---

<div class="post-metadata">

**Author:** ![OlegoO](https://yyz2.discourse-cdn.com/flex032/user_avatar/www.virtocommerce.org/olegoo/32/27_2.png) [@OlegoO](https://www.virtocommerce.org/u/OlegoO)\
**Post date:** [January 9, 2023, 10:37am UTC](https://www.virtocommerce.org/t/looking-into-options-to-filter-out-the-customer-orders-based-on-items/533/2 "2023-01-09T10:37:40Z")

</div>

The best way to implement this is using Virto Commerce Native Extensibility Framework.

1. Read [Extensibility - Overview](https://docs.virtocommerce.org/new/dev_docs/Extensibility/overview/#native-extensions)
2. You will need to create a new extension module and then based on your requirements. For example, you can extend default [vc-module-catalog/ProductDocumentBuilder.cs](https://github.com/VirtoCommerce/vc-module-catalog/blob/dev/src/VirtoCommerce.CatalogModule.Data/Search/Indexing/ProductDocumentBuilder.cs#L83) with new attributes and used them as filters.
3. Here you can find sample code of some common extensions: [vc-module-catalog/samples/VirtoCommerce.CatalogModule2.Web](https://github.com/VirtoCommerce/vc-module-catalog/tree/dev/samples/VirtoCommerce.CatalogModule2.Web)

---

<div class="post-metadata">

**Author:** ![Aman](https://avatars.discourse-cdn.com/v4/letter/a/90ced4/32.png) [@Aman](https://www.virtocommerce.org/u/Aman)\
**Post date:** [January 12, 2023, 7:00am UTC](https://www.virtocommerce.org/t/looking-into-options-to-filter-out-the-customer-orders-based-on-items/533/3 "2023-01-12T07:00:25Z")

</div>

Thank you for your response, will get back to you if we have any further questions.

---

<div class="post-metadata">

**Author:** ![Aman](https://avatars.discourse-cdn.com/v4/letter/a/90ced4/32.png) [@Aman](https://www.virtocommerce.org/u/Aman)\
**Post date:** [January 16, 2023, 6:41am UTC](https://www.virtocommerce.org/t/looking-into-options-to-filter-out-the-customer-orders-based-on-items/533/4 "2023-01-16T06:41:26Z")

</div>

Hi @OlegoO , adding to the above question how can we add new options like filter by Category & Products in Customer Orders Advance Filter ?

---

<div class="post-metadata">

**Author:** ![OlegoO](https://yyz2.discourse-cdn.com/flex032/user_avatar/www.virtocommerce.org/olegoo/32/27_2.png) [@OlegoO](https://www.virtocommerce.org/u/OlegoO)\
**Post date:** [January 16, 2023, 11:57am UTC](https://www.virtocommerce.org/t/looking-into-options-to-filter-out-the-customer-orders-based-on-items/533/5 "2023-01-16T11:57:49Z")

</div>

Order Filter blade built with [Extensibility Points - Metaform](https://docs.virtocommerce.org/new/dev_docs/Platform-Manager/Extensibility-Points/metaform/#registering-meta-fields).

So, yes, it is possible to add new options like filter by Category & Products in Customer Orders Advance Filter.

Meta Form definitions:

1. [vc-module-order/filter-detail.js at dev · VirtoCommerce/vc-module-order (github.com)](https://github.com/VirtoCommerce/vc-module-order/blob/dev/src/VirtoCommerce.OrdersModule.Web/Scripts/blades/filter-detail.js#L6)
2. [vc-module-order/order.js at dev · VirtoCommerce/vc-module-order (github.com)](https://github.com/VirtoCommerce/vc-module-order/blob/dev/src/VirtoCommerce.OrdersModule.Web/Scripts/order.js#L430)

And sample my-module-order\MyExtension.OrderModule.Web\Scripts\module.js

```plaintext
angular.module(moduleName, [])
    .run([
....
            metaFormsService.registerMetaFields('orderFilterDetail', [
                {
                    name: 'currency',
                    templateUrl: 'Modules/$(MyExtension.Order)/Scripts/components/currency.html'
                },
                {
                    name: 'sector',
                    templateUrl: 'Modules/$(MyExtension.Order)/Scripts/components/sector.html'
                },
...

```
