+
+
+
diff --git a/ej2-vue/code-snippet/grid/filter/excelfilter-custom-datasource/index.js b/ej2-vue/code-snippet/grid/filter/excelfilter-custom-datasource/index.js
new file mode 100644
index 000000000..d17cf62d3
--- /dev/null
+++ b/ej2-vue/code-snippet/grid/filter/excelfilter-custom-datasource/index.js
@@ -0,0 +1,44 @@
+
+import Vue from "vue";
+import { GridPlugin, Filter, Page } from "@syncfusion/ej2-vue-grids";
+import { DataManager, WebApiAdaptor } from '@syncfusion/ej2-data';
+import { data } from './datasource.js'
+Vue.use(GridPlugin);
+
+new Vue({
+ el: '#app',
+ template: `
+
+
+
+
+
+
+
+
+
+
`,
+
+ data() {
+ return {
+ data: data,
+ pageSettings: { pageSize: 12 },
+ filterOptions: { type: "Excel" },
+ hostUrl: 'https://services.syncfusion.com/vue/production/'
+ };
+ },
+ methods: {
+ actionBegin(args) {
+ if (args.requestType === "filterBeforeOpen") {
+ args.filterModel.options.dataSource = new DataManager({
+ url: this.hostUrl + 'api/Orders',
+ adaptor: new WebApiAdaptor(),
+ });
+ }
+ }
+ },
+ provide: {
+ grid: [Filter, Page],
+ },
+
+});
\ No newline at end of file
diff --git a/ej2-vue/code-snippet/grid/filter/excelfilter-custom-datasource/systemjs.config.js b/ej2-vue/code-snippet/grid/filter/excelfilter-custom-datasource/systemjs.config.js
new file mode 100644
index 000000000..f9a0e89dc
--- /dev/null
+++ b/ej2-vue/code-snippet/grid/filter/excelfilter-custom-datasource/systemjs.config.js
@@ -0,0 +1,40 @@
+System.config({
+ transpiler: "typescript",
+ typescriptOptions: {
+ compilerOptions: {
+ target: "umd",
+ module: "commonjs",
+ moduleResolution: "node",
+ emitDecoratorMetadata: true,
+ experimentalDecorators: true
+ }
+ },
+ paths: {
+ "syncfusion:": "https://cdn.syncfusion.com/ej2/28.2.3/"
+ },
+ map: {
+ typescript: "https://unpkg.com/typescript@2.2.2/lib/typescript.js",
+vue: "https://unpkg.com/vue@2.6.14/dist/vue.min.js",
+ "@syncfusion/ej2-base": "syncfusion:ej2-base/dist/ej2-base.umd.min.js",
+ "@syncfusion/ej2-buttons": "syncfusion:ej2-buttons/dist/ej2-buttons.umd.min.js",
+ "@syncfusion/ej2-data": "syncfusion:ej2-data/dist/ej2-data.umd.min.js",
+ "@syncfusion/ej2-popups": "syncfusion:ej2-popups/dist/ej2-popups.umd.min.js",
+ "@syncfusion/ej2-navigations": "syncfusion:ej2-navigations/dist/ej2-navigations.umd.min.js",
+ "@syncfusion/ej2-dropdowns":"syncfusion:ej2-dropdowns/dist/ej2-dropdowns.umd.min.js",
+ "@syncfusion/ej2-notifications":"syncfusion:ej2-notifications/dist/ej2-notifications.umd.min.js",
+ "@syncfusion/ej2-lists": "syncfusion:ej2-lists/dist/ej2-lists.umd.min.js",
+ "@syncfusion/ej2-inputs": "syncfusion:ej2-inputs/dist/ej2-inputs.umd.min.js",
+ "@syncfusion/ej2-grids": "syncfusion:ej2-grids/dist/ej2-grids.umd.min.js",
+ "@syncfusion/ej2-excel-export": "syncfusion:ej2-excel-export/dist/ej2-excel-export.umd.min.js",
+ "@syncfusion/ej2-pdf-export": "syncfusion:ej2-pdf-export/dist/ej2-pdf-export.umd.min.js",
+ "@syncfusion/ej2-file-utils": "syncfusion:ej2-file-utils/dist/ej2-file-utils.umd.min.js",
+ "@syncfusion/ej2-compression": "syncfusion:ej2-compression/dist/ej2-compression.umd.min.js",
+ "@syncfusion/ej2-calendars": "syncfusion:ej2-calendars/dist/ej2-calendars.umd.min.js",
+ "@syncfusion/ej2-splitbuttons": "syncfusion:ej2-splitbuttons/dist/ej2-splitbuttons.umd.min.js",
+
+ "@syncfusion/ej2-vue-base": "syncfusion:ej2-vue-base/dist/ej2-vue-base.umd.min.js",
+ "@syncfusion/ej2-vue-grids": "syncfusion:ej2-vue-grids/dist/ej2-vue-grids.umd.min.js",
+ }
+});
+
+System.import('index.js');
\ No newline at end of file
diff --git a/ej2-vue/grid/filtering/excel-like-filter.md b/ej2-vue/grid/filtering/excel-like-filter.md
index 3e5480e77..c88e7668e 100644
--- a/ej2-vue/grid/filtering/excel-like-filter.md
+++ b/ej2-vue/grid/filtering/excel-like-filter.md
@@ -395,6 +395,22 @@ The following example demonstrates how to remove the context menu option in the
{% previewsample "page.domainurl/code-snippet/grid/filter/excel-filter-cs6" %}
+## Bind custom remote datasource for excel/checkbox filtering
+
+The Syncfusion Vue Grid allows you to dynamically change the filter data source for the Excel or checkbox filter module using custom remote data as well. This can be done by either assigning a custom remote [DataManager](https://ej2.syncfusion.com/vue/documentation/data/vue-3-getting-started) as the [dataSource](https://ej2.syncfusion.com/vue/documentation/api/grid/column/#datasource) or by fetching the data initially and storing it in a global variable. This data can then be bound directly to the filter module's `dataSource` in the [actionBegin](https://ej2.syncfusion.com/vue/documentation/api/grid/#actionbegin) event for the `filterBeforeOpen` [requestType](https://ej2.syncfusion.com/vue/documentation/api/grid/filterEventArgs/#requesttype), as detailed in our [knowledge base](https://support.syncfusion.com/kb/article/10065/how-to-change-the-data-source-for-checkbox-filter-popup-in-grid).
+
+The following example demonstrates how to dynamically change the remote custom data source for all columns in the Excel or checkbox filter dialog using a `DataManager` with `WebApiAdaptor`.
+
+{% tabs %}
+{% highlight html tabtitle="Composition API (~/src/App.vue)" %}
+{% include code-snippet/grid/filter/excelfilter-custom-datasource/app-composition.vue %}
+{% endhighlight %}
+{% highlight html tabtitle="Options API (~/src/App.vue)" %}
+{% include code-snippet/grid/filter/excelfilter-custom-datasource/app.vue %}
+{% endhighlight %}
+{% endtabs %}
+
+{% previewsample "page.domainurl/code-snippet/grid/filter/excel-filter-cs6" %}
## Hide sorting option in filter dialog