Customer Tracker Grids not clearing

Hi, I have added in extra tabs on the Invoice Open, Closed and Order Open and Closed by embedding a BAQ as we require more information. We have retrieval buttons for all. I have included code so when a customer is changed or the clear button is used all grids will clear, this is not working and is holding on to the last record. Below is my code, can someone point me in the right direction of how i can best write the code for clearing/changing of a customer.

‘’'// **************************************************
// Custom code for CustomerTrackerForm
// Created: 11/10/2017 14:00:32
// **************************************************

extern alias Erp_Contracts_BO_Company;
extern alias Erp_Contracts_BO_ARAgingTracker;

extern alias Erp_Contracts_BO_Customer;
extern alias Erp_Contracts_BO_CreditManager;
extern alias Erp_Contracts_BO_ARInvoice;
extern alias Erp_Contracts_BO_Quote;
extern alias Erp_Contracts_BO_CustCnt;
extern alias Erp_Contracts_BO_ARLOC;
extern alias Erp_Contracts_BO_CashDtlSearch;
extern alias Erp_Contracts_BO_ServiceContract;
extern alias Erp_Contracts_BO_CustShip;
extern alias Erp_Contracts_BO_CashRecSearch;
extern alias Erp_Contracts_BO_ARPromissoryNotes;
extern alias Erp_Contracts_BO_SalesOrdHedDtl;
extern alias Erp_Contracts_BO_OrderDtlSearch;
extern alias Erp_Contracts_BO_ShipDtlSearch;
extern alias Ice_Contracts_BO_DynamicQuery;

using System;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Windows.Forms;
using Erp.Adapters;
using Erp.UI;
using Ice.Lib;
using Ice.Adapters;
using Ice.Lib.Customization;
using Ice.Lib.ExtendedProps;
using Ice.Lib.Framework;
using Ice.Lib.Searches;
using Ice.UI.FormFunctions;
using Ice.Lib.Broadcast;
using Infragistics.Win;
using Infragistics.Win.UltraWinGrid;
using System.Reflection;
using Ice.BO;

public class Script
{
/*
Epacsys epac_sr 9 Sept 2021 Upgrade to Kinetic 2021.1.8. Tidied fields on Customer - Atributes tab
*/
// ** Wizard Insert Location - Do Not Remove ‘Begin/End Wizard Added Module Level Variables’ Comments! **
// Begin Wizard Added Module Level Variables **
private BAQDataView bdvCustomer;
private BAQDataView bdvInvClosed;
private BAQDataView bdvOrderOpen;
private BAQDataView bdvOrderClosed;

private DataView Customer_DataView;
private EpiBaseAdapter oTrans_customerAdapter;
// End Wizard Added Module Level Variables **

// Add Custom Module Level Variables Here **


public void InitializeCustomCode()
{
	// ** Wizard Insert Location - Do not delete 'Begin/End Wizard Added Variable Initialization' lines **
	// Begin Wizard Added Variable Initialization

	
	this.Customer_DataView = this.Customer_Row.dataView;
	this.oTrans_customerAdapter = ((EpiBaseAdapter)(this.csm.TransAdaptersHT["oTrans_customerAdapter"]));

this.Customer_DataView.ListChanged += new ListChangedEventHandler(this.Customer_DataView_ListChanged);
// End Wizard Added Variable Initialization

	// Begin Wizard Added Custom Method Calls
	
	bdvCustomer = new BAQDataView("InvoiceHedCustTracker");
	oTrans.Add("InvoiceHedCustTrackerBAQ", bdvCustomer);

	bdvInvClosed= new BAQDataView("InvoiceHedCustTracker(closed)");
	oTrans.Add("InvoiceHedCustTrackerClosedBAQ", bdvInvClosed);

	bdvOrderOpen= new BAQDataView("CustomerTrackerOpenOrders");
	oTrans.Add("CustomerTrackerOpenOrdersBAQ", bdvOrderOpen);

	bdvOrderClosed= new BAQDataView("CustomerTrackerClosedOrders");
	oTrans.Add("CustomerTrackerOpenClosedBAQ", bdvOrderClosed);

this.btnRun.Click += new System.EventHandler(this.btnRun_Click);

	CreateRowRuleInvoiceHedCustTrackerBAQHDCase2_HDCaseStatusContains_CLOSED();;
	CreateRowRuleInvoiceHedCustTrackerBAQHDCase2_HDCaseStatusContains_OPEN();;
	this.btnRtv.Click += new System.EventHandler(this.btnRtv_Click);
	this.btnRunOrder.Click += new System.EventHandler(this.btnRunOrder_Click);
	this.btnRunOrderClose.Click += new System.EventHandler(this.btnRunOrderClose_Click);
	CreateRowRuleInvoiceHedCustTrackerClosedBAQHDCase2_HDCaseStatusContains_OPEN();;
	CreateRowRuleInvoiceHedCustTrackerClosedBAQHDCase2_HDCaseStatusContains_CLOSED();;
	CreateRowRuleCustomerWebCust_cEquals_false();;
	

	// End Wizard Added Custom Method Calls
}

public void DestroyCustomCode()
{
	// ** Wizard Insert Location - Do not delete 'Begin/End Wizard Added Object Disposal' lines **
	// Begin Wizard Added Object Disposal

	bdvCustomer = null;
	bdvInvClosed = null;
	bdvOrderOpen = null;
	bdvOrderClosed = null;



	this.btnRun.Click -= new System.EventHandler(this.btnRun_Click);
	this.Customer_DataView = null;
	this.oTrans_customerAdapter = null;
	this.Customer_DataView.ListChanged -= new ListChangedEventHandler(this.Customer_DataView_ListChanged);
	this.btnRtv.Click -= new System.EventHandler(this.btnRtv_Click);
	this.btnRunOrder.Click -= new System.EventHandler(this.btnRunOrder_Click);
	this.btnRunOrderClose.Click -= new System.EventHandler(this.btnRunOrderClose_Click);


	// End Wizard Added Object Disposal

	// Begin Custom Code Disposal



	// End Custom Code Disposal
}

private void CustomerTrackerForm_Load(object sender, EventArgs args)
{
	// Add Event Handler Code
	EpiBasePanel detailPanel1;
	detailPanel1 = (EpiBasePanel)(csm.GetNativeControlReference("8fd5b1fa-db9e-423c-baca-4656696c859b"));
	detailPanel1.Focus();
}


private void btnRun_Click(object sender, System.EventArgs args)
{
	// ** Place Event Handling Code Here **
	InvoiceHedCustTrackerBAQ();
	EpiUltraGrid OpenInv1;
	OpenInv1 = (EpiUltraGrid )(csm.GetNativeControlReference("35897ae0-bf81-4358-beaa-7b6b41599fa1"));
	OpenInv1.Focus();

}

private void btnRtv_Click(object sender, System.EventArgs args)
{
	// ** Place Event Handling Code Here **

	InvoiceHedCustTrackerClosedBAQ();
	EpiUltraGrid ClosedInv1;
	ClosedInv1 = (EpiUltraGrid )(csm.GetNativeControlReference("95743524-42ab-4dbd-ad74-e6e2b347abc6"));
	ClosedInv1.Focus();
}


private void btnRunOrder_Click(object sender, System.EventArgs args)
{
	// ** Place Event Handling Code Here **
	CustomerTrackerOpenOrdersBAQ();
	EpiUltraGrid OpenOrder;
	OpenOrder = (EpiUltraGrid )(csm.GetNativeControlReference("dd916e1c-3eb9-45c0-b65c-b6e1cf195da1"));
	OpenOrder.Focus();

}	

private void btnRunOrderClose_Click(object sender, System.EventArgs args)
{
	// ** Place Event Handling Code Here **
	CustomerTrackerClosedOrdersBAQ();
	EpiUltraGrid OpenOrderClose;
	OpenOrderClose = (EpiUltraGrid )(csm.GetNativeControlReference("9a779f20-a697-47de-b083-b045c723c111"));
	OpenOrderClose.Focus();

}	


private void InvoiceHedCustTrackerBAQ()
{

EpiUltraGrid grdOpenInv = (EpiUltraGrid)csm.GetNativeControlReference(“35897ae0-bf81-4358-beaa-7b6b41599fa1”);

	int CustNum = 0;
	if (Customer_Row.CurrentDataRow != null)
		CustNum = (int)Customer_Row.CurrentDataRow["CustNum"];
	string filter = "1 = 2";

	bdvCustomer.dataView.RowFilter = filter;


	using (DynamicQueryAdapter queryAdapter = new DynamicQueryAdapter(this.oTrans))
	{
		queryAdapter.BOConnect();
		QueryExecutionDataSet dsExecute = new QueryExecutionDataSet();

		dsExecute.ExecutionFilter.Clear();
		dsExecute.ExecutionParameter.Clear();
		dsExecute.ExecutionFilter.AddExecutionFilterRow("Customer", "CustNum", false, "=", CustNum.ToString(), Guid.Empty, null);

		queryAdapter.QueryResults.Tables["Results"].Clear();
		queryAdapter.ExecuteByID("InvoiceHedCustTracker", dsExecute);
		bdvCustomer.dataView.Table = queryAdapter.QueryResults.Tables["Results"].Copy();

		try //added

{
// table named results has results
grdOpenInv.DataSource = queryAdapter.QueryResults.Tables[“Results”]; // vData is a pointer to my Grid
grdOpenInv.EpiAutoFit = true; // not sure this works!
// Cleanup Adapter Reference
queryAdapter.Dispose();
}
catch (System.Exception ex)
{
MessageBox.Show(ex.ToString());
}
} //ends
}

private void InvoiceHedCustTrackerClosedBAQ()
{
	EpiUltraGrid grdClosedInv = (EpiUltraGrid)csm.GetNativeControlReference("95743524-42ab-4dbd-ad74-e6e2b347abc6");

	int CustNum = 0;
	if (Customer_Row.CurrentDataRow != null)
		CustNum = (int)Customer_Row.CurrentDataRow["CustNum"];
	string filter = "1 = 2";

	bdvInvClosed.dataView.RowFilter = filter;


	using (DynamicQueryAdapter queryAdapter = new DynamicQueryAdapter(this.oTrans))
	{
		queryAdapter.BOConnect();
		QueryExecutionDataSet dsExecute = new QueryExecutionDataSet();

		dsExecute.ExecutionFilter.Clear();
		dsExecute.ExecutionParameter.Clear();
		dsExecute.ExecutionFilter.AddExecutionFilterRow("Customer", "CustNum", false, "=", CustNum.ToString(), Guid.Empty, null);

		queryAdapter.QueryResults.Tables["Results"].Clear();
		queryAdapter.ExecuteByID("InvoiceHedCustTracker(closed)", dsExecute);
		bdvInvClosed.dataView.Table = queryAdapter.QueryResults.Tables["Results"].Copy();

		try 

{
// table named results has results
grdClosedInv.DataSource = queryAdapter.QueryResults.Tables[“Results”]; // grdClosedInv is a pointer to my Grid
grdClosedInv.EpiAutoFit = true; // not sure this works!
// Cleanup Adapter Reference
queryAdapter.Dispose();
}
catch (System.Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
}

private void CustomerTrackerOpenOrdersBAQ()
{
	EpiUltraGrid grdOrderOpen = (EpiUltraGrid)csm.GetNativeControlReference("dd916e1c-3eb9-45c0-b65c-b6e1cf195da1");

	int CustNum = 0;
	if (Customer_Row.CurrentDataRow != null)
		CustNum = (int)Customer_Row.CurrentDataRow["CustNum"];
	string filter = "1 = 2";

	bdvOrderOpen.dataView.RowFilter = filter;


	using (DynamicQueryAdapter queryAdapter = new DynamicQueryAdapter(this.oTrans))
	{
		queryAdapter.BOConnect();
		QueryExecutionDataSet dsExecute = new QueryExecutionDataSet();

		dsExecute.ExecutionFilter.Clear();
		dsExecute.ExecutionParameter.Clear();
		dsExecute.ExecutionFilter.AddExecutionFilterRow("Customer", "CustNum", false, "=", CustNum.ToString(), Guid.Empty, null);

		queryAdapter.QueryResults.Tables["Results"].Clear();
		queryAdapter.ExecuteByID("CustomerTrackerOpenOrders", dsExecute);
		bdvOrderOpen.dataView.Table = queryAdapter.QueryResults.Tables["Results"].Copy();

		try 

{
// table named results has results
grdOrderOpen.DataSource = queryAdapter.QueryResults.Tables[“Results”]; // grdOrderOpen is a pointer to my Grid
grdOrderOpen.EpiAutoFit = true; // not sure this works!
// Cleanup Adapter Reference
queryAdapter.Dispose();
}
catch (System.Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
}

private void CustomerTrackerClosedOrdersBAQ()
{
	EpiUltraGrid grdOrderClosed = (EpiUltraGrid)csm.GetNativeControlReference("9a779f20-a697-47de-b083-b045c723c111");

	int CustNum = 0;
	if (Customer_Row.CurrentDataRow != null)
		CustNum = (int)Customer_Row.CurrentDataRow["CustNum"];
	string filter = "1 = 2";

	bdvOrderClosed.dataView.RowFilter = filter;


	using (DynamicQueryAdapter queryAdapter = new DynamicQueryAdapter(this.oTrans))
	{
		queryAdapter.BOConnect();
		QueryExecutionDataSet dsExecute = new QueryExecutionDataSet();

		dsExecute.ExecutionFilter.Clear();
		dsExecute.ExecutionParameter.Clear();
		dsExecute.ExecutionFilter.AddExecutionFilterRow("Customer", "CustNum", false, "=", CustNum.ToString(), Guid.Empty, null);

		queryAdapter.QueryResults.Tables["Results"].Clear();
		queryAdapter.ExecuteByID("CustomerTrackerClosedOrders", dsExecute);
		bdvOrderClosed.dataView.Table = queryAdapter.QueryResults.Tables["Results"].Copy();

		try 

{
// table named results has results
grdOrderClosed.DataSource = queryAdapter.QueryResults.Tables[“Results”]; // vData is a pointer to my Grid
grdOrderClosed.EpiAutoFit = true; // not sure this works!
// Cleanup Adapter Reference
queryAdapter.Dispose();
}
catch (System.Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
}

private void CreateRowRuleCustomerWebCust_cEquals_false()
{
	// Description: WebCustUnchecked
	// **** begin autogenerated code ****
	RuleAction disabledCustomer_AccountConfirmed_c = RuleAction.AddControlSettings(this.oTrans, "Customer.WebCustShape", SettingStyle.Disabled);
	RuleAction[] ruleActions = new RuleAction[] {
			disabledCustomer_AccountConfirmed_c};
	// Create RowRule and add to the EpiDataView.
	RowRule rrCreateRowRuleCustomerWebCust_cEquals_false = new RowRule("Customer.WebCust_c", RuleCondition.Equals, false, ruleActions);
	((EpiDataView)(this.oTrans.EpiDataViews["Customer"])).AddRowRule(rrCreateRowRuleCustomerWebCust_cEquals_false);
	// **** end autogenerated code ****
}


		 

private void CreateRowRuleInvoiceHedCustTrackerClosedBAQHDCase2_HDCaseStatusContains_CLOSED()
{
	// Description: ClosedInvoicesClosedcase
	// **** begin autogenerated code ****
	ControlSettings myControlSettings = new ControlSettings();
	myControlSettings.BackColor = System.Drawing.Color.LightGreen;
	RuleAction errorInvoiceHedCustTrackerClosedBAQ_RowAction = RuleAction.AddRowSettings(this.oTrans, "InvoiceHedCustTrackerClosedBAQ", false, myControlSettings);
	RuleAction[] ruleActions = new RuleAction[] {
			errorInvoiceHedCustTrackerClosedBAQ_RowAction};
	// Create RowRule and add to the EpiDataView.
	RowRule rrCreateRowRuleInvoiceHedCustTrackerClosedBAQHDCase2_HDCaseStatusContains_CLOSED = new RowRule("InvoiceHedCustTrackerClosedBAQ.HDCase2_HDCaseStatus", RuleCondition.Contains, "CLOSED", ruleActions);
	((EpiDataView)(this.oTrans.EpiDataViews["InvoiceHedCustTrackerClosedBAQ"])).AddRowRule(rrCreateRowRuleInvoiceHedCustTrackerClosedBAQHDCase2_HDCaseStatusContains_CLOSED);
	// **** end autogenerated code ****
}



private void CreateRowRuleInvoiceHedCustTrackerClosedBAQHDCase2_HDCaseStatusContains_OPEN()
{
	// Description: ClosedInvoiceOpencase
	// **** begin autogenerated code ****
	
	RuleAction errorInvoiceHedCustTrackerClosedBAQ_RowAction = RuleAction.AddRowSettings(this.oTrans, "InvoiceHedCustTrackerClosedBAQ", false, SettingStyle.Error);
	RuleAction[] ruleActions = new RuleAction[] {
			errorInvoiceHedCustTrackerClosedBAQ_RowAction};
	// Create RowRule and add to the EpiDataView.
	RowRule rrCreateRowRuleInvoiceHedCustTrackerClosedBAQHDCase2_HDCaseStatusContains_OPEN = new RowRule("InvoiceHedCustTrackerClosedBAQ.HDCase2_HDCaseStatus", RuleCondition.Contains, "OPEN", ruleActions);
	((EpiDataView)(this.oTrans.EpiDataViews["InvoiceHedCustTrackerClosedBAQ"])).AddRowRule(rrCreateRowRuleInvoiceHedCustTrackerClosedBAQHDCase2_HDCaseStatusContains_OPEN);
	// **** end autogenerated code ****
}




private void Customer_DataView_ListChanged(object sender, ListChangedEventArgs args)

{

	// ** Argument Properties and Uses **
	// Customer_DataView[0]["FieldName"]
	// args.ListChangedType, args.NewIndex, args.OldIndex
	// ListChangedType.ItemAdded, ListChangedType.ItemChanged, ListChangedType.ItemDeleted, ListChangedType.ItemMoved, ListChangedType.Reset
	// Add Event Handler Code
	if (grdOrderClosed.DataSource != null)
((DataTable)grdOrderClosed.DataSource).Clear();
	else
grdOrderClosed.DataSource = new DataTable();

	if (grdOrderOpen.DataSource != null)
((DataTable)grdOrderOpen.DataSource).Clear();
	else
grdOrderOpen.DataSource = new DataTable();

	if (grdClosedInv.DataSource != null)
((DataTable)grdClosedInv.DataSource).Clear();

	else
grdClosedInv.DataSource = new DataTable();

	if (grdOpenInv.DataSource != null)
((DataTable)grdOpenInv.DataSource).Clear();

	else
grdOpenInv.DataSource = new DataTable();
	

}



private void CreateRowRuleInvoiceHedCustTrackerBAQHDCase2_HDCaseStatusContains_CLOSED()
{
	// Description: Open Invoices
	// **** begin autogenerated code ****
	ControlSettings myControlSettings = new ControlSettings();
	myControlSettings.BackColor = System.Drawing.Color.LightGreen;
	RuleAction okInvoiceHedCustTrackerBAQ_RowAction = RuleAction.AddRowSettings(this.oTrans, "InvoiceHedCustTrackerBAQ", false, myControlSettings);
	RuleAction[] ruleActions = new RuleAction[] {
			okInvoiceHedCustTrackerBAQ_RowAction};
	// Create RowRule and add to the EpiDataView.
	RowRule rrCreateRowRuleInvoiceHedCustTrackerBAQHDCase2_HDCaseStatusContains_CLOSED = new RowRule("InvoiceHedCustTrackerBAQ.HDCase2_HDCaseStatus", RuleCondition.Contains, "CLOSED", ruleActions);
	((EpiDataView)(this.oTrans.EpiDataViews["InvoiceHedCustTrackerBAQ"])).AddRowRule(rrCreateRowRuleInvoiceHedCustTrackerBAQHDCase2_HDCaseStatusContains_CLOSED);
	// **** end autogenerated code ****
}


private void CreateRowRuleInvoiceHedCustTrackerBAQHDCase2_HDCaseStatusContains_OPEN()
{
	// Description: Open Invoices OpenCase
	// **** begin autogenerated code ****
	RuleAction errorInvoiceHedCustTrackerBAQ_RowAction = RuleAction.AddRowSettings(this.oTrans, "InvoiceHedCustTrackerBAQ", false, SettingStyle.Error);
	RuleAction[] ruleActions = new RuleAction[] {
			errorInvoiceHedCustTrackerBAQ_RowAction};
	// Create RowRule and add to the EpiDataView.
	RowRule rrCreateRowRuleInvoiceHedCustTrackerBAQHDCase2_HDCaseStatusContains_OPEN = new RowRule("InvoiceHedCustTrackerBAQ.HDCase2_HDCaseStatus", RuleCondition.Contains, "OPEN", ruleActions);
	((EpiDataView)(this.oTrans.EpiDataViews["InvoiceHedCustTrackerBAQ"])).AddRowRule(rrCreateRowRuleInvoiceHedCustTrackerBAQHDCase2_HDCaseStatusContains_OPEN);
	// **** end autogenerated code ****
}
}

‘’’