diff --git a/SAS/TMSS/frontend/tmss_webapp/src/components/ViewTable.js b/SAS/TMSS/frontend/tmss_webapp/src/components/ViewTable.js
index 129b8232bf12d6353bc1507d27f1b17a1821b683..5a48bfde9bbc8f00ea9b3d945170a7ea5a2dbf59 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/components/ViewTable.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/components/ViewTable.js
@@ -414,7 +414,7 @@ function MultiSelectFilter({
 }) {
   const [value, setValue] = useState('');
   const [filtertype, setFiltertype] = useState('Any');
-  
+  const [filtered, setFiltered] = useState(false);
   React.useEffect(() => {
     if (!filterValue && value) {
       setValue('');
@@ -455,11 +455,27 @@ function MultiSelectFilter({
     return [...options.values()]
   }, [id, preFilteredRows]);
 
+    // Function to call the server side filtering
+    const callServerFilter = (event, isCleared) => {
+      hasFilters = true;
+      _.remove(tableOptionsState.filters, function(filter) { return filter.id === Header });
+      tableOptionsState.filters.push({id: Header, value: event.target.value});
+      if (isCleared) {
+          hasFilters = false;
+          if (filtered) {
+              _.remove(tableOptionsState.filters, function(filter) { return filter.id === Header });
+              filterCallback(tableOptionsState, setLoaderFunction);
+          }
+      }   else {
+          filterCallback(tableOptionsState, setLoaderFunction);
+      }
+  }; 
+
   // Render a multi-select box
   return (
     <div onClick={e => { e.stopPropagation() }} >
       <div style={{ position: 'relative' }} >
-        <MultiSelect data-testid="multi-select" id="multi-select-1" optionLabel="value" optionValue="value" filter={true}
+        <MultiSelect data-testid="multi-select" id="multi-select-1" optionLabel="name" optionValue="value" filter={true}
           value={value}
           options={options}
           onChange={e => {
@@ -472,6 +488,8 @@ function MultiSelectFilter({
                 TableUtil.clearColumnFilter(currentTableName, Header);
               }
             }
+            setFiltered(true);
+            callServerFilter(e);
           }}
           maxSelectedLabels="1"
           selectedItemsLabel="{0} Selected"
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Scheduling/SchedulingUnitList.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Scheduling/SchedulingUnitList.js
index 990c1afc455317df16cbb52108fedb0fa2825449..1f4d1bba9e3906b536a2070bb1489ac02c0870e3 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Scheduling/SchedulingUnitList.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Scheduling/SchedulingUnitList.js
@@ -34,7 +34,7 @@ class SchedulingUnitList extends Component{
        super(props);
        this. setToggleBySorting();
        this.defaultcolumns = {
-        status: {name: "Status",filter: "select"},
+        status: {name: "Status",filter: "multiselect-filter"},
         workflowStatus: {name: "Workflow Status",filter: "select"},
         suid: {name: "Scheduling Unit ID", tooltip: this.COMMA_SEPARATE_TOOLTIP},
         project:{name:"Project"},
@@ -406,9 +406,11 @@ class SchedulingUnitList extends Component{
      */
     getStatusList(suFilters) {
         if (suFilters.data.filters['status']) {
+            this.statusList = [];
             suFilters.data.filters['status'].choices.forEach(choice => {
-                this.statusList.push(choice.value);
-            })
+                const tmpVar = {name: _.startCase(choice.value), value: choice.value};
+                this.statusList.push(tmpVar);
+            });
         }
     }
 
@@ -1199,6 +1201,10 @@ class SchedulingUnitList extends Component{
                     // Since it is ModelChoiceFilter, it will allow single parameter, so use last parameter if contains multi parameter
                     const values = _.split(filter.value, ",");
                     this.filterQry += 'observation_strategy_template='+values[values.length-1]+"&";
+                }   else if (filter.id.toLowerCase() === 'status') {
+                    for ( const value of filter.value) {
+                        this.filterQry += 'status='+value+"&";
+                    }
                 }   else {
                     let columnDetails = _.find(this.state.columnMap, {displayName:filter.id});
                     if(columnDetails) {
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Task/list.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Task/list.js
index af675d1a59459e9251f0b09cf969471fe7d756db..b3700aed74ae14afcb6e57f5984a60ec8782765a 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Task/list.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Task/list.js
@@ -76,7 +76,7 @@ export class TaskList extends Component {
                 },
                 status: {
                     name: "Status",
-                    filter: "select"
+                    filter: "multiselect-filter"
                 },
                 scheduling_unit_draft: {
                     name:"Scheduling Unit ID",
@@ -651,9 +651,11 @@ export class TaskList extends Component {
      */
      getStatusList(taskFilters) {
         if (taskFilters.data.filters['status']) {
+            this.statusList = [];
             taskFilters.data.filters['status'].choices.forEach(choice => {
-                this.statusList.push(choice.value);
-            })
+                const tmpVar = {name:  _.startCase(choice.value), value: choice.value};
+                this.statusList.push(tmpVar);
+            });
         }
     }
 
@@ -843,6 +845,10 @@ export class TaskList extends Component {
                 let columnDetails = _.find(this.state.columnMap, {displayName:filter.id});
                 const values = UnitConverter.getSubbandOutput(filter.value);
                 this.filterQry +=  columnDetails.orgField+'='+values.toString()+"&";
+            }   else if (filter.id.toLowerCase() === 'status') {
+                for ( const value of filter.value) {
+                    this.filterQry += 'status='+value+"&";
+                }
             }    else {
                 let columnDetails = _.find(this.state.columnMap, {displayName:filter.id});
                 if(columnDetails) {
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/view.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/view.js
index 4cce86576d2feee1c0766a9b237886225ae14fb5..f4aa10939f13c61e325f96c780030bb69cb5e63a 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/view.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/view.js
@@ -1189,19 +1189,21 @@ export class TimelineView extends Component {
     /**
      * Get Status list for UI drop down list
      */
-     async getStatusList() {
+    async getStatusList() {
         let suStatusList = [];
         let taskStatusList = [];
         const suFilters = await ScheduleService.getSchedulingUnitFilterDefinition('blueprint');
         if (suFilters && suFilters.data.filters['status']) {
             suFilters.data.filters['status'].choices.forEach(choice => {
-                suStatusList.push(choice.value);
+                const tmpVar = {name:  _.startCase(choice.value), value: choice.value};
+                suStatusList.push(tmpVar);
             });
         }
         const taskFilters = await TaskService.getTaskFilterDefinition('blueprint');
         if (taskFilters && taskFilters.data.filters['status']) {
             taskFilters.data.filters['status'].choices.forEach(choice => {
-                taskStatusList.push(choice.value);
+                const tmpVar = {name:  _.startCase(choice.value), value: choice.value};
+                taskStatusList.push(tmpVar);
             });
         }
         this.setState({suStatusList: suStatusList, taskStatusList: taskStatusList});
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/week.view.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/week.view.js
index 14cecc28ade9d431a96f94a064f5d799490bad29..249cd9ef73a783579f91e34bbe6fc1c70a199fe1 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/week.view.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/week.view.js
@@ -902,19 +902,21 @@ export class WeekTimelineView extends Component {
      /**
      * Get Status list for UI drop down list
      */
-      async getStatusList() {
+    async getStatusList() {
         let suStatusList = [];
         let taskStatusList = [];
         const suFilters = await ScheduleService.getSchedulingUnitFilterDefinition('blueprint');
         if (suFilters && suFilters.data.filters['status']) {
             suFilters.data.filters['status'].choices.forEach(choice => {
-                suStatusList.push(choice.value);
+                const tmpVar = {name:  _.startCase(choice.value), value: choice.value};
+                suStatusList.push(tmpVar);
             });
         }
         const taskFilters = await TaskService.getTaskFilterDefinition('blueprint');
         if (taskFilters && taskFilters.data.filters['status']) {
             taskFilters.data.filters['status'].choices.forEach(choice => {
-                taskStatusList.push(choice.value);
+                const tmpVar = {name:  _.startCase(choice.value), value: choice.value};
+                taskStatusList.push(tmpVar);
             });
         }
         this.setState({suStatusList: suStatusList, taskStatusList: taskStatusList});
@@ -935,7 +937,6 @@ export class WeekTimelineView extends Component {
     }
 
     render() {
-        const  {dynamicScheduler}  = this.state.userrole.userRolePermission;
         if (this.state.redirect) {
             return <Redirect to={{ pathname: this.state.redirect }}></Redirect>
         }
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/shared/timeline.constants.js b/SAS/TMSS/frontend/tmss_webapp/src/shared/timeline.constants.js
index 65d51fe61b2805b6ef729f418282f41f35309a06..9c592d65eb1f14c42f82dc9562a73836edf054d3 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/shared/timeline.constants.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/shared/timeline.constants.js
@@ -4,7 +4,7 @@ const TimelineConstants = {
     SU_LIST_DEFAULT_COLUMNS: [{
         status: {
             name:"Status",
-            filter: "select",
+            filter: "multiselect-filter",
         },
         do_cancel: {
             name:"Cancelled"
@@ -82,7 +82,7 @@ const TimelineConstants = {
     }],
     TASK_LIST_DEFAULT_COLUMNS: [{
         status: {
-            name: "Status", filter: "select"
+            name: "Status", filter: "multiselect-filter"
         },
         do_cancel: {
             name: "Cancelled"