' Developer -> Jignesh Jitiya

Imports System
Imports System.Data
Imports System.Data.SqlClient
Imports System.Configuration
Imports System.Collections
Imports System.Web
Imports System.Web.Security
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Web.UI.WebControls.WebParts
Imports System.Web.UI.HtmlControls
Imports System.IO
Imports ModCommon
Imports Ajax



Partial Class BranchNetwork
    Inherits System.Web.UI.Page
    Shared sel_branch As String
    'Shared g_User As String
    'Shared g_Company As String
    'Shared g_FinYear As String
    Shared City_Kid As String
    Shared City_Code As String
    Shared Country_Kid As String
    Shared Country_Code As String
    Shared Category(10) As String
    Shared i As Integer
    Shared kid As String
    Shared code As String
    'Shared flgbtnsave As Boolean
    'Dim btnupdate As Button = New Button
    'Dim btndelete As Button = New Button
    Dim btnsearch As Button = New Button    'used only for all click function
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Ajax.Utility.RegisterTypeForAjax(GetType(BranchNetwork))
        lblerror1.Visible = False
        Try
            If Session("SupplierID") Is Nothing And Session("AdminID") = Nothing Then
                Response.Redirect("listproduct.aspx?sess=expire")
                Exit Sub
            End If
            If Not Page.IsPostBack Then
                If Session("SupplierID") Is Nothing Then ' check whether supplier is loged in or not
                    Response.Redirect("listproduct.aspx")
                    Exit Sub
                End If
                txtValidate.Value = 0
                ''If Session.Item("ProductID") Is Nothing Then
                ''    Response.Redirect("List_Product.aspx")
                ''    Exit Sub
                ''End If

                btnDelete.Attributes.Add("onclick", "return ConfrmMsg();")
                btnContactDelete.Attributes.Add("onclick", "return DeleteMsg();")
                btnUpdate.Attributes.Add("onclick", "return UpdateMsg();")
                btnContactUpdate.Attributes.Add("onclick", "return UpdateMsg();")
                btnContactSave.Attributes.Add("onclick", "return SaveConfirm();")

                txtTurnOver.Attributes.Add("onkeypress", "return numbersonly(event);")
                txtPhoneExtn.Attributes.Add("onkeypress", "return numbersonly(event);")
                txtPhoneNo.Attributes.Add("onkeypress", "return numbersonly(event);")
                txtCityCode.Attributes.Add("onkeypress", "return numbersonly(event);")
                txtCountryCode.Attributes.Add("onkeypress", "return numbersonly(event);")
                txtCountryCodee.Attributes.Add("onkeypress", "return numbersonly(event);")
                txtMobileNo.Attributes.Add("onkeypress", "return numbersonly(event);")
                txtPhoneExtn.Attributes.Add("onkeypress", "return numbersonly(event);")
                txtPhoneNo.Attributes.Add("onkeypress", "return numbersonly(event);")
                txtStaffStren.Attributes.Add("onkeypress", "return numbersonly(event);")
                'txtTurnOver.Attributes.Add("onkeypress", "return numbersonly(event);")
                'txtPCountryCode.Attributes.Add("onkeypress", "return numbersonly(event);")
                btnDelete.Attributes.Add("onclick", "return ConfrmMsg();")
                btnContactDelete.Attributes.Add("onclick", "return ConfrmMsg();")
                ClearFields()
                TABLE1.Visible = False
                TABLE2.Visible = True
                tabletitle2.Visible = False
                tabletitle1.Visible = True
                clearfields1()
                UnLockTextBox(False)
                unlocktextbox1(False)
                fillBranch(ddlBranches)
                fillBranch(ddlConFactoryName)
                '                flgbtnsave = True

                'fillgrid("select BranchNetworkContacts.BranchNetworkContacts_Kid, BranchNetworkContacts.BranchNetworkContacts_PersonDesignation, BranchNetworkContacts.BranchNetworkContacts_PersonTitle + ' ' + BranchNetworkContacts.BranchNetworkContacts_ContactPerson AS [Contact Name],BranchNetwork.BranchNetwork_BranchName  FROM  BranchNetwork INNER JOIN  BranchNetworkContacts ON BranchNetwork.BranchNetwork_Kid = BranchNetworkContacts.BranchNetworkContacts_BranchNetworkId WHERE (BranchNetworkContacts.BranchNetworkContacts_CompanyId = '" & Session("g_Company") & "') AND (BranchNetworkContacts.BranchNetworkContacts_UserId = '" & Session("g_User") & "') AND (BranchNetworkContacts.BranchNetworkContacts_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_SupplierId = '" & Session("SupplierID") & "')")
                fillgrid(ddlBranches.SelectedItem.Text)

                Call CancelClickVisible(Me, btnAdd, BtnSave, btnUpdate, btnDelete, btnCancel, btnsearch)
                Call CancelClickVisible(Me, btnContactAdd, btnContactSave, btnContactUpdate, btnContactDelete, btnContactCancel, btnsearch)

                Call CheckRights(Me, Session("g_User").ToString, "BranchNetwork")
                If Not Session("AdminID") Is Nothing Then
                    '   btnUpdate.Visible = True
                    ' btnDelete.Visible = True

                Else
                    btnUpdate.Visible = False
                    btnDelete.Visible = False
                    btnContactUpdate.Visible = False
                    btnContactDelete.Visible = False
                End If
                '    txtCity.Visible = False
                '  pnlBranch.Visible = False
                '    pnlBranchContact.Visible = False
                '                BtnCityAdd.Visible = False
                ScriptManager1.SetFocus(btnAdd)

                If Request.QueryString("BackId") = Nothing Then
                    If Session("Index") <> Nothing Then
                        btnBack.Visible = True
                    Else
                        Session("ProductID") = Nothing   ' Sessioon productid set nothing
                        btnBack.Visible = False
                    End If
                Else
                    Session("ProductID") = Nothing
                    Session("Index") = Nothing
                    btnBack.Visible = False
                End If
            End If
            ' ''If Session("AdminID") = Nothing Then
            ' ''    btnDelete.Visible = False
            ' ''    btnUpdate.Visible = False
            ' ''    btnContactDelete.Visible = False
            ' ''    btnContactUpdate.Visible = False

            ' ''End If
            BtnSave.Attributes.Add("onclick", "return SaveMsg('" & txtValidate.ClientID & "');")
            lblError.Visible = False
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")
        End Try
    End Sub
    Private Sub FillCombo()
        ' fill country, state and city ddl
        Try
            Fill_Combo("SELECT distinct Country_Kid, Country_Name FROM Country_Master where Country_IsDeleted='0'and Country_CompanyId='" & Session("g_Company").ToString & "' order by Country_Name", ddlCountry)
            ddlCountry.Items.FindByText("India").Selected = True
            txtCountryCode.Text = ReturnValue("Select Country_ISDCode from Country_Master where Country_Isdeleted ='0' and Country_Kid ='" & ddlCountry.SelectedItem.Value & "'and Country_CompanyId ='" & Session("g_Company").ToString & "'")
            txtCountryCodee.Text = ReturnValue("Select Country_ISDCode from Country_Master where Country_Isdeleted ='0' and Country_Kid ='" & ddlCountry.SelectedItem.Value & "'and Country_CompanyId ='" & Session("g_Company").ToString & "'")
            Fill_Combo("SELECT State_Master.State_Kid, State_Master.State_Name, Country_Master.Country_Name FROM Country_Master INNER JOIN State_Master ON Country_Master.Country_Kid = State_Master.State_CountryId WHERE State_Master.State_CompanyId = '" & Session("g_Company").ToString & "' AND State_Master.State_IsDeleted = '0' AND Country_Master.Country_Kid = '" & ddlCountry.SelectedItem.Value & "'", ddlState)

            ' ddlCity.Items.Add("Select")
            Fill_Combo("select distinct Unit_Kid,Unit_Name from Unit_Master where Unit_IsDeleted='0' and Unit_CompanyId='" & Session("g_Company").ToString.Trim & "'and unit_Flag like 'Amount%'", ddlTurnOverUnit)
            ddlTurnOverUnit.Items.FindByText("Rs.").Selected = True
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")
        End Try
    End Sub
    Public Sub ClearFields()
        Try
            txtBranchNetworkCode.Text = ""
            ddlCountry.ClearSelection()
            ddlCountry.SelectedIndex = -1
            ddlState.ClearSelection()
            ddlState.SelectedIndex = -1
            ddlCity.ClearSelection()
            ddlCity.Items.Clear()
            ddlCity.SelectedIndex = -1
            txtAddress.Text = ""
            txtPhoneNo.Text = ""
           
            txtStaffStren.Text = ""
            'txtProductName.Text = ""
            txtTurnOver.Text = ""
            txtCityCode.Text = ""
            txtBranchName.Text = ""
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")
        End Try
    End Sub
    Protected Sub clearfields1()
        Try
            txtContPerson.Text = ""
            txtCountryCodee.Text = ""
            txtDesigantion.Text = ""
            txtPhoneExtn.Text = ""
            txtMobileNo.Text = ""
            txtEmailId.Text = ""
            ' ddlConFactoryName.SelectedIndex = 0
            'ddlkcperson.SelectedIndex = 0
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")
        End Try
    End Sub
    Protected Sub unlocktextbox1(ByVal action As Boolean)
        Try
            txtContPerson.Enabled = action
            txtDesigantion.Enabled = action
            txtPhoneExtn.Enabled = action
            txtCountryCodee.Enabled = action
            txtMobileNo.Enabled = action
            txtEmailId.Enabled = action
            ddlConFactoryName.Enabled = action
            ddlkcperson.Enabled = action
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")
        End Try
    End Sub
    Public Sub UnLockTextBox(ByVal Action As Boolean)
        Try
            txtBranchName.Enabled = Action
            ddlCountry.Enabled = Action
            ddlState.Enabled = Action
            ddlCity.Enabled = Action
            txtCityCode.Enabled = Action
            txtTurnOver.Enabled = Action
            txtAddress.Enabled = Action
            
            txtPhoneNo.Enabled = Action
           
            txtStaffStren.Enabled = Action
            ddlTurnOverUnit.Enabled = Action
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")
        End Try
    End Sub
    Private Sub FillCombos()
        Try
            'Fill Country,State,City and Location
            Fill_Combo("SELECT DISTINCT Country_Kid,Country_Name FROM Country_Master where Country_IsDeleted='0'and Country_CompanyId='" & Session("g_Company") & "' order by Country_Name", ddlCountry)
            Fill_Combo("SELECT DISTINCT State_Kid, State_Name FROM State_Master WHERE (State_CompanyId = '" & Session("g_Company") & "') AND (State_IsDeleted = '0') ORDER BY State_Name", ddlState)
            Fill_Combo("SELECT DISTINCT City_Kid, City_Name FROM City_Master WHERE (City_CompanyId = '" & Session("g_Company") & "') AND (City_IsDeleted = '0') ORDER BY City_Name", ddlCity)
            'Fill_Combo("SELECT DISTINCT Location_Kid, Location_Name FROM Location_Master WHERE (Location_CompanyId = '" & Session("g_Company") & "') AND (Location_IsDeleted = '0') ORDER BY Location_Name", ddlBankDetails_LocationId)
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")
        End Try
    End Sub
    Protected Sub ddlCountry_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ddlCountry.SelectedIndexChanged
        Try

            txtCountryCode.Text = ReturnValue("Select Country_ISDCode from Country_Master where Country_Isdeleted ='0' and Country_Kid ='" & ddlCountry.SelectedItem.Value & "'and Country_CompanyId ='" & Session("g_Company").ToString & "'")
            If txtCountryCode.Text = "" Then
                txtCountryCode.Enabled = True
            Else
                txtCountryCode.Enabled = False
            End If
            txtCountryCodee.Text = ReturnValue("Select Country_ISDCode from Country_Master where Country_Isdeleted ='0' and Country_Kid ='" & ddlCountry.SelectedItem.Value & "'and Country_CompanyId ='" & Session("g_Company").ToString & "'")
            If txtCountryCodee.Text = "" Then
                txtCountryCodee.Enabled = True
            Else
                txtCountryCodee.Enabled = False
            End If
            Fill_Combo("Select Distinct State_Kid,State_Name from State_Master where state_isdeleted=0 and state_companyId='" & Session("g_Company").ToString & "' and State_CountryId = '" & ddlCountry.SelectedValue & "' order by State_Name", ddlState) '' Fill State DropDownList
            ddlCity.Visible = True
            ddlCity.Items.Clear()
            'ddlCity.Items.Add("Select")
            ScriptManager1.SetFocus(ddlState)
            'ddlState.Focus()
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")
        End Try
    End Sub
    Protected Sub ddlState_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ddlCountry.SelectedIndexChanged, ddlState.SelectedIndexChanged
        Try
            ddlCity.Visible = True
            ddlCity.Items.Clear()
            Fill_Combo("Select Distinct City_Kid,City_Name from City_Master where city_isdeleted=0 and city_companyId='" & Session("g_Company").ToString & "' and City_StateId = '" & ddlState.SelectedValue & "' order by City_Name", ddlCity) '' Fill City DropDownList
            '  ScriptManager1.SetFocus(ddlCity)
            'ddlCity.Focus()
            'ddlCity.Attributes.Add("onchange", "return checkCityddl(this,'" & ddlState.SelectedItem.Value.ToString & "','" & Session("g_Company").ToString & "','" & Session("g_User") & "','" & Session("g_FinYear") & "');")


        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")
        End Try
    End Sub
    'Protected Sub showmessage(ByVal msg As String)
    '    lblError.Visible = True
    '    lblError.Text = msg
    'End Sub
    Public Sub fillBranch(ByRef ddlbranch As DropDownList)
        Try
            'Fill Branch 
            Fill_Combo("SELECT distinct BranchNetwork_Kid, BranchNetwork_BranchName FROM BranchNetwork WHERE (BranchNetwork_IsDeleted = N'0') AND (BranchNetwork_CompanyId = '" & Session("g_Company").ToString & "') AND (BranchNetwork_UserId = '" & Session("g_User").ToString & "')", ddlBranch)
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")
        End Try
    End Sub
    Protected Sub btnAdd_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnAdd.Click
        Try
            ClearFields()                                       'Clears the TextFields
            UnLockTextBox(True)
            'txtBranchName.Focus()

            Call AddClickVisible(Me, btnAdd, BtnSave, btnUpdate, btnDelete, btnCancel, btnsearch)
            'txtBranchName.Focus()

            ddlBranches.Enabled = False
            FillCombo()
            ddlBranches.SelectedIndex = 0
            '  If Not Session("AdminID") Is Nothing Then
            'If ddlBranches.Items.Count > 1 Then
            'BtnSave.Visible = False
            'End If
            'End If

            txtBranchName.Focus()

            ScriptManager1.SetFocus(txtBranchName) 'Put the Focus to branchName TextField
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")     'Display the Error Message
        End Try
    End Sub
    Private Sub FillCountryBank()
        Try
            'Fill Bank Name,Country
            'FillComboWithOthers("SELECT DISTINCT Bank_Kid, Bank_Name FROM Bank_Master WHERE Bank_CompanyId = '" & Session("g_Company") & "' AND (Bank_IsDeleted = '0') order by Bank_Name", ddlBankDetails_PrimaryBankId)
            Fill_Combo("SELECT Country_Kid,Country_Name FROM Country_Master where Country_IsDeleted='0'and Country_CompanyId='" & Session("g_Company") & "' order by Country_Name", ddlCountry)
            ddlCountry.Items.FindByText("India").Selected = True
            Dim sender As Object = Nothing
            Dim e As System.EventArgs = Nothing
            ddlCountry_SelectedIndexChanged(sender, e)
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")
        End Try
    End Sub
    Protected Sub BtnSave_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles BtnSave.Click
        ' Save Process
        Try
            'If CheckValid() = True Then

            ' If txtValidate.Value = 0 Then

            Dim con As New SqlConnection
            con.ConnectionString = System.Configuration.ConfigurationManager.AppSettings("ConnectionString")
            Dim cmd As New SqlCommand
            cmd.CommandType = CommandType.StoredProcedure
            cmd.CommandText = "BranchNetwork_Proc" ' storeprocedure
            cmd.Connection = con
            If IsAlreadyPresent("SELECT COUNT(*) FROM BranchNetwork WHERE (BranchNetwork_IsDeleted = 0) AND (BranchNetwork_BranchName = '" & txtBranchName.Text.Trim & "')") Then
                showmessage("Branch Network Name Already Present.", lblError)
                txtBranchName.Text = "" : txtBranchName.Focus()
                ScriptManager1.SetFocus(txtBranchName) 'Put the Focus to branchName TextField
                Exit Sub
            End If
            Call GenerateCode()
            If txtStaffStren.Text.Trim = "" Then
                txtStaffStren.Text = 0
            End If
            If txtTurnOver.Text.Trim = "" Then
                txtTurnOver.Text = 0
            End If
            hf1.Value = txtBranchName.Text

            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_Kid", SqlDbType.NVarChar, 10)).Value = RemoveLiterals(txtBranchNetworkKid.Text.Trim)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_Code", SqlDbType.NVarChar, 25)).Value = Trim(txtBranchNetworkCode.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_BranchName", SqlDbType.NVarChar, 50)).Value = Trim(txtBranchName.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_LocationId", SqlDbType.NVarChar, 10)).Value = RemoveLiterals(ddlCity.SelectedItem.Value)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_Address", SqlDbType.NVarChar, 150)).Value = Trim(txtAddress.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_StaffStrength", SqlDbType.Int, 10)).Value = CType(Trim(txtStaffStren.Text), Integer)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_TurnOverUnit", SqlDbType.NVarChar, 10)).Value = Trim(ddlTurnOverUnit.SelectedItem.Value)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_TurnOver", SqlDbType.Decimal, 20)).Value = Convert.ToDecimal(Trim(txtTurnOver.Text))
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_CCPhone", SqlDbType.NVarChar, 10)).Value = Trim(txtCountryCode.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_CtyCPhone", SqlDbType.NVarChar, 10)).Value = Trim(txtCityCode.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_PhoneNo", SqlDbType.NVarChar, 10)).Value = Trim(txtPhoneNo.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_SupplierId", SqlDbType.NVarChar, 10)).Value = Session("SupplierID").ToString
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_FinancialYearId", SqlDbType.NVarChar, 10)).Value = Session("g_FinYear").ToString
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_CompanyId", SqlDbType.NVarChar, 10)).Value = Session("g_Company").ToString
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_UserId", SqlDbType.NVarChar, 10)).Value = Session("g_User").ToString
            cmd.Parameters.Add(New SqlParameter("@FormName", SqlDbType.NVarChar, 50)).Value = "Branch Network"
            cmd.Parameters.Add(New SqlParameter("@Mode", SqlDbType.NVarChar, 10)).Value = "Insert" ' mode
            If con.State <> ConnectionState.Open Then
                con.Open()
            End If
            cmd.ExecuteNonQuery()
            If con.State = ConnectionState.Open Then
                con.Close() ' close connection
            End If
            con.Dispose()
            cmd.Dispose()

            CreateMessageAlert(Me, "Branch Information Saved Successfully.\n" + "\n Add Contact Information Click on Add Contact Button.", "StrKeyVal")
            showmessage("Record Saved Successfully.", lblError)             'Display the Message
            fillBranch(ddlBranches)                                                                   'Fill the Grid
            fillBranch(ddlConFactoryName)
            ClearFields()                                                                   'Clear the TextFields
            UnLockTextBox(False)
            Call SaveClickVisible(Me, btnAdd, BtnSave, btnUpdate, btnDelete, btnCancel, btnsearch)
            ddlBranches.Enabled = True
         

            '' java script code starts here 
            'Dim sString As System.Text.StringBuilder
            'sString = New System.Text.StringBuilder
            'sString.Append("<script language='Javascript'>")
            'sString.Append("JJTest();" & vbCrLf)
            'sString.Append("</script>")
            'ScriptManager.RegisterStartupScript(Me, Me.GetType, "ClientScript", "JJTest();", True)
            ''  Call SaveClickVisible(Me, btnAdd, BtnSave, btnUpdate, btnDelete, btnCancel, btnsearch)
            'ElseIf txtValidate.Value = 1 Then

            'sel_branch = txtBranchName.Text
            'TABLE1.Visible = True
            'TABLE2.Visible = False
            'tabletitle2.Visible = True
            'tabletitle1.Visible = False
            'clearfields1()
            'unlocktextbox1(True)
            'ddlConFactoryName.ClearSelection()
            'ddlConFactoryName.Items.FindByText(hf1.Value).Selected = True
            'ddlConFactoryName.Enabled = False
            'Call AddClickVisible(Me, btnContactAdd, btnContactSave, btnContactUpdate, btnContactDelete, btnContactCancel)
            'txtValidate.Value = 0
            'Else
            'Call SaveClickVisible(Me, btnAdd, BtnSave, btnUpdate, btnDelete, btnCancel, btnsearch)
            'End If
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")                                'Display the Error Message
        End Try
    End Sub
    Protected Sub btnUpdate_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnUpdate.Click
        ' Updation process
        Try
            If txtStaffStren.Text.Trim = "" Then
                txtStaffStren.Text = 0
            End If
            If txtTurnOver.Text.Trim = "" Then
                txtTurnOver.Text = 0
            End If
            'If CheckValid() = True Then
            Dim con As New SqlConnection
            con.ConnectionString = System.Configuration.ConfigurationManager.AppSettings("ConnectionString")
            Dim cmd As New SqlCommand
            cmd.CommandType = CommandType.StoredProcedure
            cmd.CommandText = "BranchNetwork_Proc" ' storeprocedure
            cmd.Connection = con
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_Kid", SqlDbType.NVarChar, 10)).Value = RemoveLiterals(txtBranchNetworkKid.Text.Trim)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_Code", SqlDbType.NVarChar, 25)).Value = Trim(txtBranchNetworkCode.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_BranchName", SqlDbType.NVarChar, 50)).Value = Trim(txtBranchName.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_LocationId", SqlDbType.NVarChar, 10)).Value = RemoveLiterals(ddlCity.SelectedItem.Value)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_Address", SqlDbType.NVarChar, 150)).Value = Trim(txtAddress.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_StaffStrength", SqlDbType.Int, 10)).Value = CType(Trim(txtStaffStren.Text), Integer)

            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_TurnOverUnit", SqlDbType.NVarChar, 10)).Value = Trim(ddlTurnOverUnit.SelectedItem.Value)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_TurnOver", SqlDbType.Decimal, 20)).Value = Convert.ToDecimal(Trim(txtTurnOver.Text))

            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_CCPhone", SqlDbType.NVarChar, 10)).Value = Trim(txtCountryCode.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_CtyCPhone", SqlDbType.NVarChar, 10)).Value = Trim(txtCityCode.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_PhoneNo", SqlDbType.NVarChar, 10)).Value = Trim(txtPhoneNo.Text)

            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_SupplierId", SqlDbType.NVarChar, 10)).Value = Session("SupplierID").ToString
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_FinancialYearId", SqlDbType.NVarChar, 10)).Value = Session("g_FinYear").ToString
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_CompanyId", SqlDbType.NVarChar, 10)).Value = Session("g_Company").ToString
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_UserId", SqlDbType.NVarChar, 10)).Value = Session("g_User").ToString
            cmd.Parameters.Add(New SqlParameter("@FormName", SqlDbType.NVarChar, 50)).Value = "Branch Network"
            cmd.Parameters.Add(New SqlParameter("@Mode", SqlDbType.NVarChar, 10)).Value = "Update" ' mode
            If con.State <> ConnectionState.Open Then
                con.Open()
            End If
            cmd.ExecuteNonQuery()
            If con.State = ConnectionState.Open Then
                con.Close() ' close connection
            End If
            con.Dispose()
            cmd.Dispose()

            CreateMessageAlert(Me, "Branch Information Updated Successfully.", "StrKeyVal")
            showmessage("Record Updated Successfully.", lblError)             'Display the Message
            fillBranch(ddlBranches)
            fillBranch(ddlConFactoryName) 'Fill the Grid
            ClearFields()                                                                   'Clear the TextFields
            UnLockTextBox(False)
            ddlBranches.Enabled = True
            'ddlState.ClearSelection()
            'ddlCity.Items.Clear()
            Call EditClickVisible(Me, btnAdd, BtnSave, btnUpdate, btnDelete, btnCancel, btnsearch)
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")                                 'Display the Error Message
        End Try
    End Sub
    Protected Sub btnDelete_Click(ByVal sender As Object, ByVal e As System.EventArgs)
        Try
            'If Trim(txtBranchName.Text) = "" Then                                         'If txtbranchName TextField is Null then
            '    showmessage("Branch Name Cannot be Null.", lblError)        'Display the Message
            '    txtBranchName.Focus()
            '    Exit Sub
            'End If
            'If CheckValid() = True Then
            Dim con As New SqlConnection
            con.ConnectionString = System.Configuration.ConfigurationManager.AppSettings("ConnectionString")
            Dim cmd As New SqlCommand
            cmd.CommandType = CommandType.StoredProcedure
            cmd.CommandText = "BranchNetwork_Proc" ' storeprocedure
            cmd.Connection = con
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_Kid", SqlDbType.NVarChar, 10)).Value = RemoveLiterals(txtBranchNetworkKid.Text.Trim)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_Code", SqlDbType.NVarChar, 25)).Value = Trim(txtBranchNetworkCode.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_BranchName", SqlDbType.NVarChar, 50)).Value = Trim(txtBranchName.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_LocationId", SqlDbType.NVarChar, 10)).Value = RemoveLiterals(ddlCity.SelectedItem.Value)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_Address", SqlDbType.NVarChar, 150)).Value = Trim(txtAddress.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_StaffStrength", SqlDbType.Int, 10)).Value = CType(Trim(txtStaffStren.Text), Integer)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_TurnOverUnit", SqlDbType.NVarChar, 10)).Value = Trim(ddlTurnOverUnit.SelectedItem.Value)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_TurnOver", SqlDbType.Decimal, 20)).Value = Convert.ToDecimal(Trim(txtTurnOver.Text))
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_CCPhone", SqlDbType.NVarChar, 10)).Value = Trim(txtCountryCode.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_CtyCPhone", SqlDbType.NVarChar, 10)).Value = Trim(txtCityCode.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_PhoneNo", SqlDbType.NVarChar, 10)).Value = Trim(txtPhoneNo.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_SupplierId", SqlDbType.NVarChar, 10)).Value = Session("SupplierID").ToString
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_FinancialYearId", SqlDbType.NVarChar, 10)).Value = Session("g_FinYear").ToString
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_CompanyId", SqlDbType.NVarChar, 10)).Value = Session("g_Company").ToString
            cmd.Parameters.Add(New SqlParameter("@BranchNetwork_UserId", SqlDbType.NVarChar, 10)).Value = Session("g_User").ToString
            cmd.Parameters.Add(New SqlParameter("@FormName", SqlDbType.NVarChar, 50)).Value = "Branch Network"
            cmd.Parameters.Add(New SqlParameter("@Mode", SqlDbType.NVarChar, 10)).Value = "Delete" ' mode
            If con.State <> ConnectionState.Open Then
                con.Open()
            End If
            cmd.ExecuteNonQuery()
            If con.State = ConnectionState.Open Then
                con.Close() ' close connection
            End If
            con.Dispose()
            cmd.Dispose()
            ExecuteQuery("delete from BranchNetworkContacts where BranchNetworkContacts_BranchNetworkId='" & txtBranchNetworkKid.Text & "'")
            ' fillgrid("select BranchNetworkContacts.BranchNetworkContacts_Kid, BranchNetworkContacts.BranchNetworkContacts_PersonDesignation, BranchNetworkContacts.BranchNetworkContacts_PersonTitle + ' ' + BranchNetworkContacts.BranchNetworkContacts_ContactPerson AS [Contact Name],BranchNetwork.BranchNetwork_BranchName  FROM  BranchNetwork INNER JOIN  BranchNetworkContacts ON BranchNetwork.BranchNetwork_Kid = BranchNetworkContacts.BranchNetworkContacts_BranchNetworkId WHERE (BranchNetworkContacts.BranchNetworkContacts_CompanyId = '" & Session("g_Company") & "') AND (BranchNetworkContacts.BranchNetworkContacts_UserId = '" & Session("g_User") & "') AND (BranchNetworkContacts.BranchNetworkContacts_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_SupplierId = '" & Session("SupplierID") & "')")
            fillgrid(ddlBranches.SelectedItem.Text)

            CreateMessageAlert(Me, "Branch Information Deleted Successfully.", "StrKeyVal")
            showmessage("Record Deleted Successfully.", lblError)             'Display the Message
            fillBranch(ddlBranches)                                                                   'Fill the Grid
            fillBranch(ddlConFactoryName)
            ClearFields()                                                                   'Clear the TextFields
            UnLockTextBox(False)
            ddlBranches.Enabled = True
            'ddlState.ClearSelection()
            'ddlCity.Items.Clear()
            Call DeleteClickVisible(Me, btnAdd, BtnSave, btnUpdate, btnDelete, btnCancel, btnsearch)
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")                                 'Display the Error Message
        End Try
        ' pnlBranch.Visible = True
    End Sub
    Protected Sub btnCancel_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnCancel.Click
        Try
            txtBranchName.AutoPostBack = False
            ClearFields()                                       'Clears the TextFields
            UnLockTextBox(False)                                'Disable the TextFields
            Call CancelClickVisible(Me, btnAdd, BtnSave, btnUpdate, btnDelete, btnCancel, btnsearch)
            ddlState.ClearSelection()
            Call fillBranch(ddlBranches)

            sel_branch = ddlBranches.SelectedItem.Text
            fillgrid(sel_branch.ToString)
            'If (sel_branch = "Select") Then
            'fillgrid("select BranchNetworkContacts.BranchNetworkContacts_Kid, BranchNetworkContacts.BranchNetworkContacts_PersonDesignation, BranchNetworkContacts.BranchNetworkContacts_PersonTitle + ' ' + BranchNetworkContacts.BranchNetworkContacts_ContactPerson AS [Contact Name],BranchNetwork.BranchNetwork_BranchName  FROM  BranchNetwork INNER JOIN  BranchNetworkContacts ON BranchNetwork.BranchNetwork_Kid = BranchNetworkContacts.BranchNetworkContacts_BranchNetworkId WHERE (BranchNetworkContacts.BranchNetworkContacts_CompanyId = '" & Session("g_Company") & "') AND (BranchNetworkContacts.BranchNetworkContacts_UserId = '" & Session("g_User") & "') AND (BranchNetworkContacts.BranchNetworkContacts_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_SupplierId = '" & Session("SupplierID") & "')")
            'Else
            'fillgrid("select BranchNetworkContacts.BranchNetworkContacts_Kid, BranchNetworkContacts.BranchNetworkContacts_PersonDesignation,   BranchNetworkContacts.BranchNetworkContacts_PersonTitle + ' ' + BranchNetworkContacts.BranchNetworkContacts_ContactPerson AS [Contact Name],BranchNetwork.BranchNetwork_BranchName  FROM         BranchNetwork INNER JOIN    BranchNetworkContacts ON BranchNetwork.BranchNetwork_Kid = BranchNetworkContacts.BranchNetworkContacts_BranchNetworkId WHERE  (BranchNetwork.BranchNetwork_BranchName='" & sel_branch & "') AND  (BranchNetworkContacts.BranchNetworkContacts_CompanyId = '" & Session("g_Company") & "') AND (BranchNetworkContacts.BranchNetworkContacts_UserId = '" & Session("g_User") & "') AND (BranchNetworkContacts.BranchNetworkContacts_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_SupplierId = '" & Session("SupplierID") & "')")
            'End If
            ddlBranches.Enabled = True
            If Session("AdminID") = Nothing Then
                btnDelete.Visible = False
                btnUpdate.Visible = False
                btnContactDelete.Visible = False
                btnContactUpdate.Visible = False

            End If
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")      'Display the Error Message
        End Try
    End Sub
    
    Private Sub GenerateCode()
        'Generate kid and code
        Try
            Dim i As String
            Dim qry As String
            Dim code As String
            txtBranchNetworkKid.Text = Trim(NewPrimaryKey(Me))
            i = "1"
            i = Format(Val(i), "000")
            While True
                code = "BN" & "/" & Year(Date.Today) & "/" & Format(Month(Date.Today), "00") & "/" & Day(Date.Today) & "/" & i
                qry = "Select count(*) from BranchNetwork where BranchNetwork_Code='" & code & "'"
                If IsAlreadyPresent(qry) Then
                    i = (Val(i) + 1).ToString
                    i = Format(Val(i), "000")
                Else
                    txtBranchNetworkCode.Text = code
                    Exit Sub
                End If
            End While
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")     'Display the Error Message
        End Try
    End Sub

    Private Sub GenerateContactCode()
        'Generate kid and code
        Try
            Dim i As String
            Dim qry As String
            Dim code As String
            txtBNContactKid.Text = Trim(NewPrimaryKey(Me))
            i = "1"
            i = Format(Val(i), "000")
            While True
                code = "BNC" & "/" & Year(Date.Today) & "/" & Format(Month(Date.Today), "00") & "/" & Day(Date.Today) & "/" & i
                qry = "Select count(*) from BranchNetworkContacts where BranchNetworkContacts_Code='" & code & "'"
                If IsAlreadyPresent(qry) Then
                    i = (Val(i) + 1).ToString
                    i = Format(Val(i), "000")
                Else
                    txtBNContactCode.Text = code
                    Exit Sub
                End If
            End While
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")     'Display the Error Message
        End Try
    End Sub
    'Protected Sub ddlCity_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ddlCity.SelectedIndexChanged
    '    If ddlCity.SelectedItem.Text = "Others" Then
    '        'Add new city
    '        '  txtCity.Visible = True
    '        '            BtnCityAdd.Visible = True
    '        ddlCity.Enabled = False
    '        BtnSave.Enabled = False
    '        btnCancel.Enabled = False
    '        '     txtCity.Focus()
    '        '   ScriptManager1.SetFocus(txtCity)
    '    Else
    '        '   txtCity.Visible = False
    '        '            BtnCityAdd.Visible = False
    '        ScriptManager1.SetFocus(txtAddress)
    '    End If
    'End Sub

    
    Protected Sub ddlBranches_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ddlBranches.SelectedIndexChanged
        Try
            sel_branch = ddlBranches.SelectedItem.Text
            fillgrid(sel_branch.ToString)
            'If (sel_branch = "Select") Then
            ' fillgrid("select BranchNetworkContacts.BranchNetworkContacts_Kid, BranchNetworkContacts.BranchNetworkContacts_PersonDesignation,   BranchNetworkContacts.BranchNetworkContacts_PersonTitle + ' ' + BranchNetworkContacts.BranchNetworkContacts_ContactPerson AS [Contact Name],BranchNetwork.BranchNetwork_BranchName  FROM         BranchNetwork INNER JOIN    BranchNetworkContacts ON BranchNetwork.BranchNetwork_Kid = BranchNetworkContacts.BranchNetworkContacts_BranchNetworkId WHERE    (BranchNetworkContacts.BranchNetworkContacts_CompanyId = '" & Session("g_Company") & "') AND (BranchNetworkContacts.BranchNetworkContacts_UserId = '" & Session("g_User") & "') AND (BranchNetworkContacts.BranchNetworkContacts_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_SupplierId = '" & Session("SupplierID") & "')")
            ' Else
            ' fillgrid("select BranchNetworkContacts.BranchNetworkContacts_Kid, BranchNetworkContacts.BranchNetworkContacts_PersonDesignation,   BranchNetworkContacts.BranchNetworkContacts_PersonTitle + ' ' + BranchNetworkContacts.BranchNetworkContacts_ContactPerson AS [Contact Name],BranchNetwork.BranchNetwork_BranchName  FROM         BranchNetwork INNER JOIN    BranchNetworkContacts ON BranchNetwork.BranchNetwork_Kid = BranchNetworkContacts.BranchNetworkContacts_BranchNetworkId WHERE  (BranchNetwork.BranchNetwork_BranchName='" & sel_branch & "') AND  (BranchNetworkContacts.BranchNetworkContacts_CompanyId = '" & Session("g_Company") & "') AND (BranchNetworkContacts.BranchNetworkContacts_UserId = '" & Session("g_User") & "') AND (BranchNetworkContacts.BranchNetworkContacts_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_SupplierId = '" & Session("SupplierID") & "')")
            'End If


            FillCombo()
            If ddlBranches.SelectedIndex > 0 Then
                Dim qry As String
                qry = "SELECT BranchNetwork.BranchNetwork_Kid, BranchNetwork.BranchNetwork_Code, BranchNetwork.BranchNetwork_BranchName,Country_Master.Country_Kid, Country_Master.Country_Name,State_Master.State_Kid, State_Master.State_Name,City_Master.City_Kid, City_Master.City_Name, BranchNetwork.BranchNetwork_Address, BranchNetwork.BranchNetwork_StaffStrength, BranchNetwork.BranchNetwork_TurnOver, BranchNetwork.BranchNetwork_TurnOverUnit, BranchNetwork.BranchNetwork_CCPhone, BranchNetwork.BranchNetwork_CtyCPhone, BranchNetwork.BranchNetwork_PhoneNo FROM         State_Master INNER JOIN Country_Master ON State_Master.State_CountryId = Country_Master.Country_Kid INNER JOIN City_Master ON State_Master.State_Kid = City_Master.City_StateId INNER JOIN BranchNetwork ON City_Master.City_Kid = BranchNetwork.BranchNetwork_LocationId WHERE (BranchNetwork.BranchNetwork_IsDeleted = N'0') AND (Country_Master.Country_IsDeleted = N'0') AND (State_Master.State_IsDeleted = N'0') AND  (City_Master.City_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_CompanyId = '" & Session("g_Company").ToString & "') AND  (BranchNetwork.BranchNetwork_UserId = '" & Session("g_User").ToString & "') AND (BranchNetwork.BranchNetwork_Kid = '" & ddlBranches.SelectedValue & "')"
                'Dim dt As DataTable = getTable("Select * from BranchNetwork where BranchNetwork_Kid='" & RemoveLiterals(txtBranchNetworkKid.Text.Trim) & "' and BranchNetwork_IsDeleted='0' and BranchNetwork_CompanyID='" & Session("g_Company").ToString.Trim & "'", "BN")
                Dim dt As DataTable = getTable(qry, "BN")
                If dt.Rows.Count > 0 Then
                    txtBranchNetworkKid.Text = dt.Rows(0).Item("BranchNetwork_Kid").ToString()
                    txtBranchNetworkCode.Text = dt.Rows(0).Item("BranchNetwork_Code").ToString()
                    txtBranchName.Text = dt.Rows(0).Item("BranchNetwork_BranchName").ToString()
                    txtAddress.Text = dt.Rows(0).Item("BranchNetwork_Address").ToString
                    txtStaffStren.Text = dt.Rows(0).Item("BranchNetwork_StaffStrength").ToString
                    txtTurnOver.Text = dt.Rows(0).Item("BranchNetwork_TurnOver").ToString
                    ddlTurnOverUnit.ClearSelection()
                    ddlTurnOverUnit.Items.FindByValue(dt.Rows(0).Item("BranchNetwork_TurnOverUnit").ToString()).Selected = True
                    txtCountryCode.Text = dt.Rows(0).Item("BranchNetwork_CCPhone").ToString
                    txtCityCode.Text = dt.Rows(0).Item("BranchNetwork_CtyCPhone").ToString
                    txtPhoneNo.Text = dt.Rows(0).Item("BranchNetwork_PhoneNo").ToString
                    ddlCountry.SelectedIndex = ddlCountry.Items.IndexOf(ddlCountry.Items.FindByValue(dt.Rows(0).Item("Country_Kid").ToString))  'Assign the DataTable Item value to the textField
                    ddlCountry_SelectedIndexChanged(sender, e)
                    ddlState.SelectedIndex = ddlState.Items.IndexOf(ddlState.Items.FindByValue(dt.Rows(0).Item("State_Kid").ToString))          'Assign the DataTable Item value to the textField
                    ddlState_SelectedIndexChanged(sender, e)
                    ddlCity.SelectedIndex = ddlCity.Items.IndexOf(ddlCity.Items.FindByValue(dt.Rows(0).Item("City_Kid").ToString))              'Assign the DataTable Item value to the textField
                    'ddlCity_SelectedIndexChanged(sender, e)



                End If
                Call GridClickVisible(Me, btnAdd, BtnSave, btnUpdate, btnDelete, btnCancel, btnsearch)
                txtBranchName.Focus()
                ScriptManager1.SetFocus(txtBranchName)
                UnLockTextBox(False)                                             'Enable the TextFields
                dt.Dispose()
            Else
                ClearFields()
                UnLockTextBox(True)
            End If


            'If Session("AdminID") = Nothing Then
            '    btnUpdate.Visible = False
            '    btnDelete.Visible = False
            '    btnAdd.Visible = True
            '    btnCancel.Visible = False
            'Else
            UnLockTextBox(True)
            btnCancel.Visible = True
            'End If



        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")
        End Try
    End Sub

    'Protected Sub BtnCityAdd_Click(ByVal sender As Object, ByVal e As System.EventArgs)
    '    Try
    '        GenerateCityCode()
    '        Dim Con As New SqlConnection
    '        Dim cmd As New SqlCommand
    '        Con.ConnectionString = System.Configuration.ConfigurationManager.AppSettings("ConnectionString")
    '        cmd.Connection = Con
    '        cmd.CommandText = "City_Master_Proc"
    '        cmd.CommandType = CommandType.StoredProcedure
    '        cmd.Parameters.Add(New SqlParameter("@City_Kid", Data.SqlDbType.NVarChar, 10)).Value = City_Kid
    '        cmd.Parameters.Add(New SqlParameter("@City_Code", Data.SqlDbType.NVarChar, 25)).Value = City_Code
    '        cmd.Parameters.Add(New SqlParameter("@City_Name", Data.SqlDbType.NVarChar, 100)).Value = txtCity.Text
    '        cmd.Parameters.Add(New SqlParameter("@City_StateID", Data.SqlDbType.NVarChar, 10)).Value = ddlState.SelectedValue
    '        cmd.Parameters.Add(New SqlParameter("@City_CompanyID", Data.SqlDbType.NVarChar, 10)).Value = Session("g_Company")
    '        cmd.Parameters.Add(New SqlParameter("@City_FinancialYearId", Data.SqlDbType.NVarChar, 10)).Value = Session("g_FinYear")
    '        cmd.Parameters.Add(New SqlParameter("@City_UserID", Data.SqlDbType.NVarChar, 10)).Value = Session("g_User")
    '        cmd.Parameters.Add(New SqlParameter("@FormName", Data.SqlDbType.NVarChar, 0)).Value = Me.Title.ToString
    '        cmd.Parameters.Add(New SqlParameter("@Mode", Data.SqlDbType.Char, 15)).Value = "Insert"
    '        Con.Open()
    '        cmd.ExecuteNonQuery()
    '        ddlCity.Visible = True
    '        Fill_Combo("Select City_KId, City_Name from City_Master where City_Isdeleted='0' and  City_StateId ='" & ddlState.SelectedItem.Value & "' and City_CompanyId ='" & Session("g_Company") & "'  order by City_Name", ddlCity)
    '        ddlCity.Items.FindByText(txtCity.Text).Selected = True
    '        cmd.Dispose()
    '        Con.Dispose()
    '        BtnCityAdd.Visible = False
    '        txtCity.Visible = False
    '        txtCity.Text = ""
    '        ddlCity.Enabled = True
    '        BtnSave.Enabled = True
    '        btnCancel.Enabled = True
    '    Catch ex As Exception
    '        CreateMessageAlert(Me, ex.Message, "StrKeyVal")     'Display the Error Message
    '    End Try

    'End Sub
    Protected Sub GenerateCityCode()
        Try
            Dim i As String
            Dim qry As String
            Dim code As String
            City_Kid = NewPrimaryKey(Me)
            i = "1"
            i = Format(Val(i), "000")
            While True
                code = "CC" & "/" & Year(Date.Today) & "/" & Format(Month(Date.Today), "00") & "/" & Day(Date.Today) & "/" & i
                qry = "select count(*) from CityMaster where City_Code='" & code & "'"
                If IsAlreadyPresent(qry) Then
                    i = Val(i) + 1
                    i = Format(Val(i), "000")
                Else
                    City_Code = code
                    Exit Sub
                End If
            End While
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")     'Display the Error Message
        End Try
    End Sub


    ''Start coding of branch Contact
    Protected Sub btnContactSearch_Click(ByVal sender As Object, ByVal e As System.EventArgs)

    End Sub

    Protected Sub btnContactAdd_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnContactAdd.Click
        Try
          
            clearfields1()                                       'Clears the TextFields
            unlocktextbox1(True)
        
            Call AddClickVisible(Me, btnContactAdd, btnContactSave, btnContactUpdate, btnContactDelete, btnContactCancel, btnsearch)

            btnContactSave.Visible = True
            btnContactAdd.Visible = False
            ddlConFactoryName.Focus()
            txtContPerson.Focus()

            If ddlConFactoryName.SelectedIndex > 0 Then
                ddlConFactoryName.Enabled = False
            Else
                ddlConFactoryName.Enabled = True
            End If


            ' txtBranchName.Focus()                               'Put the Focus to branchName TextField
          

            'FillCombo()
            'If Not Session("AdminID") Is Nothing Then
            '    If flgbtnsave = False Then
            '        btnContactSave.Visible = False
            '    End If
            'End If
            'If txtCountryCodee.Text = "" Then
            '    txtCountryCodee.Text = 91
            '    txtCountryCodee.Enabled = True
            'End If
            'txtCountryCodee.Text = ReturnValue("Select Country_ISDCode from Country_Master where Country_Isdeleted ='0' and Country_Kid ='" & ddlCountry.SelectedItem.Value & "'and Country_CompanyId ='" & Session("g_Company").ToString & "'")
            'If txtCountryCodee.Text = "" Then
            '    txtCountryCodee.Enabled = True
            'Else
            '    txtCountryCodee.Enabled = False
            'End If
            '  ddlConFactoryName.Focus()
            ' ScriptManager1.SetFocus(ddlConFactoryName)
            ' ddlConFactoryName.Items.FindByText(sel_branch.ToString).Selected = True
            ' ddlConFactoryName.Enabled = False
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")      'Display the Error Message
        End Try
    End Sub

    Protected Sub ddlConFactoryName_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ddlConFactoryName.SelectedIndexChanged

        sel_branch = ddlConFactoryName.SelectedItem.Text
        fillgrid(sel_branch.ToString)
        'If (sel_branch = "Select") Then
        ' fillgrid("select BranchNetworkContacts.BranchNetworkContacts_Kid, BranchNetworkContacts.BranchNetworkContacts_PersonDesignation,   BranchNetworkContacts.BranchNetworkContacts_PersonTitle + ' ' + BranchNetworkContacts.BranchNetworkContacts_ContactPerson AS [Contact Name],BranchNetwork.BranchNetwork_BranchName  FROM         BranchNetwork INNER JOIN    BranchNetworkContacts ON BranchNetwork.BranchNetwork_Kid = BranchNetworkContacts.BranchNetworkContacts_BranchNetworkId WHERE    (BranchNetworkContacts.BranchNetworkContacts_CompanyId = '" & Session("g_Company") & "') AND (BranchNetworkContacts.BranchNetworkContacts_UserId = '" & Session("g_User") & "') AND (BranchNetworkContacts.BranchNetworkContacts_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_SupplierId = '" & Session("SupplierID") & "')")'

        'Else
        'fillgrid("select BranchNetworkContacts.BranchNetworkContacts_Kid, BranchNetworkContacts.BranchNetworkContacts_PersonDesignation,   BranchNetworkContacts.BranchNetworkContacts_PersonTitle + ' ' + BranchNetworkContacts.BranchNetworkContacts_ContactPerson AS [Contact Name],BranchNetwork.BranchNetwork_BranchName  FROM         BranchNetwork INNER JOIN    BranchNetworkContacts ON BranchNetwork.BranchNetwork_Kid = BranchNetworkContacts.BranchNetworkContacts_BranchNetworkId WHERE  (BranchNetwork.BranchNetwork_BranchName='" & sel_branch & "') AND  (BranchNetworkContacts.BranchNetworkContacts_CompanyId = '" & Session("g_Company") & "') AND (BranchNetworkContacts.BranchNetworkContacts_UserId = '" & Session("g_User") & "') AND (BranchNetworkContacts.BranchNetworkContacts_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_SupplierId = '" & Session("SupplierID") & "')")

        'End If

    End Sub

   
    Protected Sub fillgrid(ByVal Str As String)

        Try
            gvBranchDetails.Columns(1).Visible = True
            Dim dt As New DataTable
            If Str.ToString = "Select" Then
                dt = ReturnDataTable("select BranchNetworkContacts.BranchNetworkContacts_Kid, BranchNetworkContacts.BranchNetworkContacts_PersonDesignation,   BranchNetworkContacts.BranchNetworkContacts_PersonTitle + ' ' + BranchNetworkContacts.BranchNetworkContacts_ContactPerson AS [Contact Name],BranchNetwork.BranchNetwork_BranchName  FROM         BranchNetwork INNER JOIN    BranchNetworkContacts ON BranchNetwork.BranchNetwork_Kid = BranchNetworkContacts.BranchNetworkContacts_BranchNetworkId WHERE    (BranchNetworkContacts.BranchNetworkContacts_CompanyId = '" & Session("g_Company") & "') AND (BranchNetworkContacts.BranchNetworkContacts_UserId = '" & Session("g_User") & "') AND (BranchNetworkContacts.BranchNetworkContacts_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_SupplierId = '" & Session("SupplierID") & "')")

                If dt.Rows.Count < 1 Then
                    tblgrid.Visible = False
                    Table3.Visible = False
                    gvBranchDetails.Visible = False
                Else

                    tblgrid.Visible = True
                    Table3.Visible = True
                    gvBranchDetails.Visible = True

                End If
            Else
                dt = ReturnDataTable("select BranchNetworkContacts.BranchNetworkContacts_Kid, BranchNetworkContacts.BranchNetworkContacts_PersonDesignation,   BranchNetworkContacts.BranchNetworkContacts_PersonTitle + ' ' + BranchNetworkContacts.BranchNetworkContacts_ContactPerson AS [Contact Name],BranchNetwork.BranchNetwork_BranchName  FROM         BranchNetwork INNER JOIN    BranchNetworkContacts ON BranchNetwork.BranchNetwork_Kid = BranchNetworkContacts.BranchNetworkContacts_BranchNetworkId WHERE  (BranchNetwork.BranchNetwork_BranchName='" & Str & "') AND  (BranchNetworkContacts.BranchNetworkContacts_CompanyId = '" & Session("g_Company") & "') AND (BranchNetworkContacts.BranchNetworkContacts_UserId = '" & Session("g_User") & "') AND (BranchNetworkContacts.BranchNetworkContacts_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_SupplierId = '" & Session("SupplierID") & "')")
                tblgrid.Visible = True
                Table3.Visible = True
                gvBranchDetails.Visible = True

            End If
            gvBranchDetails.Columns(1).Visible = False
            gvBranchDetails.DataSource = dt
            gvBranchDetails.DataBind()
            gvBranchDetails.SelectedIndex = -1
            gvBranchDetails.PageIndex = 0

        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")
        End Try

        'Try
        '    Dim con As New SqlConnection()
        '    con.ConnectionString = System.Configuration.ConfigurationManager.AppSettings("ConnectionString")
        '    gvBranchDetails.Columns(1).Visible = True
        '    'gvBranchDetails.Columns(6).Visible = True
        '    ' Dim str As String = "SELECT  * FROM V_SRMPersonalInfo_Master where PersonalInfo_Kid='" & Session("PersonalId") & 

        '    'Dim str As String = "SELECT     BranchNetworkContacts.BranchNetworkContacts_Kid, BranchNetworkContacts.BranchNetworkContacts_PersonDesignation,   BranchNetworkContacts.BranchNetworkContacts_PersonTitle + ' ' + BranchNetworkContacts.BranchNetworkContacts_ContactPerson AS [Contact Name],BranchNetwork.BranchNetwork_BranchName  FROM         BranchNetwork INNER JOIN    BranchNetworkContacts ON BranchNetwork.BranchNetwork_Kid = BranchNetworkContacts.BranchNetworkContacts_BranchNetworkId WHERE     (BranchNetworkContacts.BranchNetworkContacts_CompanyId = '" & Session("g_Company") & "') AND (BranchNetworkContacts.BranchNetworkContacts_UserId = '" & Session("g_User") & "') AND (BranchNetworkContacts.BranchNetworkContacts_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_SupplierId = '" & Session("SupplierID") & "')"
        '    Dim da As New SqlDataAdapter(Str, con)
        '    Dim ds As New DataSet
        '    da.Fill(ds)
        '    If ds.Tables(0).Rows.Count < 1 Then
        '        tblgrid.Visible = False
        '        Table3.Visible = False
        '        gvBranchDetails.Visible = False
        '        ' gvBranchDetails.Visible = False
        '        If Session("AdminID") <> Nothing or Session("AdminID") = Nothing Then
        '            flgbtnsave = True
        '        End If
        '        'BtnSave.Enabled = True
        '    Else
        '        If Session("AdminID") <> Nothing or Session("AdminID") = Nothing Then
        '            flgbtnsave = False
        '        End If

        '        tblgrid.Visible = True
        '        Table3.Visible = True
        '        gvBranchDetails.Visible = True
        '        gvBranchDetails.DataSource = ds.Tables(0)
        '        gvBranchDetails.DataBind()
        '        gvBranchDetails.Columns(1).Visible = False
        '        ' gvBranchDetails.Columns(6).Visible = False
        '        ds.Dispose()
        '        da.Dispose()
        '        con.Dispose()

        '    End If


        'Catch ex As Exception
        '    CreateMessageAlert(Me, ex.Message, "StrKeyVal")
        'End Try
    End Sub

  
    Protected Sub gvBranchDetails_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles gvBranchDetails.SelectedIndexChanged
        Try
            tabletitle2.Visible = True
            tabletitle1.Visible = False
            Dim str As String = "SELECT distinct    BranchNetworkContacts_Kid, BranchNetworkContacts_Code, BranchNetworkContacts_PersonTitle, BranchNetworkContacts_ContactPerson,   BranchNetworkContacts_PersonDesignation, BranchNetworkContacts_PhoneExtn, BranchNetworkContacts_MobileNo, BranchNetworkContacts_EmailId,     BranchNetworkContacts_BranchNetworkId,BranchNetworkContacts_MobCountryCode    FROM BranchNetworkContacts WHERE     BranchNetworkContacts_IsDeleted = N'0' AND BranchNetworkContacts_Kid = '" & gvBranchDetails.SelectedDataKey.Value.ToString & "'"
            Dim dt As DataTable = getTable(str, "BNC")
            fillBranch(ddlConFactoryName)
            If dt.Rows.Count > 0 Then
                txtBNContactKid.Text = dt.Rows(0).Item("BranchNetworkContacts_Kid").ToString()
                txtBNContactCode.Text = dt.Rows(0).Item("BranchNetworkContacts_Code").ToString()
                ddlkcperson.Items.FindByText(dt.Rows(0).Item("BranchNetworkContacts_PersonTitle")).Selected = True
                txtContPerson.Text = dt.Rows(0).Item("BranchNetworkContacts_ContactPerson").ToString()
                ddlConFactoryName.Items.FindByValue(dt.Rows(0).Item("BranchNetworkContacts_BranchNetworkId")).Selected = True
                txtDesigantion.Text = dt.Rows(0).Item("BranchNetworkContacts_PersonDesignation").ToString
                txtPhoneExtn.Text = dt.Rows(0).Item("BranchNetworkContacts_PhoneExtn").ToString
                txtCountryCodee.Text = dt.Rows(0).Item("BranchNetworkContacts_MobCountryCode").ToString
                txtMobileNo.Text = dt.Rows(0).Item("BranchNetworkContacts_MobileNo").ToString
                'ddlTurnOverUnit.ClearSelection()
                'ddlTurnOverUnit.Items.FindByValue(dt.Rows(0).Item("BranchNetwork_TurnOverUnit").ToString()).Selected = True
                txtEmailId.Text = dt.Rows(0).Item("BranchNetworkContacts_EmailId").ToString
                txtCountryCodee.Enabled = True
                'txtCityCode.Text = dt.Rows(0).Item("BranchNetwork_CtyCPhone").ToString
                'txtPhoneNo.Text = dt.Rows(0).Item("BranchNetwork_PhoneNo").ToString
                'ddlCountry.SelectedIndex = ddlCountry.Items.IndexOf(ddlCountry.Items.FindByValue(dt.Rows(0).Item("Country_Kid").ToString))  'Assign the DataTable Item value to the textField
                'ddlCountry_SelectedIndexChanged(sender, e)
                'ddlState.SelectedIndex = ddlState.Items.IndexOf(ddlState.Items.FindByValue(dt.Rows(0).Item("State_Kid").ToString))          'Assign the DataTable Item value to the textField
                'ddlState_SelectedIndexChanged(sender, e)
                'ddlCity.SelectedIndex = ddlCity.Items.IndexOf(ddlCity.Items.FindByValue(dt.Rows(0).Item("City_Kid").ToString))              'Assign the DataTable Item value to the textField
                ''ddlCity_SelectedIndexChanged(sender, e)
            End If
            Call GridClickVisible(Me, btnContactAdd, btnContactSave, btnContactUpdate, btnContactDelete, btnContactCancel, btnsearch)
            ' txtBranchName.Focus()

            unlocktextbox1(True)                                             'Enable the TextFields
            dt.Dispose()

            TABLE1.Visible = True
            TABLE2.Visible = False
            ScriptManager1.SetFocus(ddlConFactoryName)

            ' ''If Session("AdminID") = Nothing Then
            ' ''    btnUpdate.Visible = False
            ' ''    btnDelete.Visible = False
            ' ''    btnContactDelete.Visible = False
            ' ''    btnContactUpdate.Visible = False
            ' ''    unlocktextbox1(False)
            ' ''    btnContactAdd.Visible = True
            ' ''End If



            btnContactCancel.Visible = False
            ddlConFactoryName.Enabled = True

        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")
        End Try
    End Sub

    Protected Sub btnContactSave_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnContactSave.Click
        Try
            'If CheckValid() = True Then
            Dim con As New SqlConnection
            con.ConnectionString = System.Configuration.ConfigurationManager.AppSettings("ConnectionString")
            Dim cmd As New SqlCommand
            cmd.CommandType = CommandType.StoredProcedure
            cmd.CommandText = "BranchNetworkContacts_Proc" ' storeprocedure
            cmd.Connection = con
            'If IsAlreadyPresent("SELECT COUNT(*) FROM BranchNetwork WHERE (BranchNetwork_IsDeleted = 0) AND (BranchNetwork_BranchName = '" & txtBranchName.Text.Trim & "')") Then
            '    showmessage("Branch Network Name Already Present.")
            '    txtBranchName.Text = "" : txtBranchName.Focus()
            '    Exit Sub
            'End If
            Call GenerateContactCode()
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_Kid", SqlDbType.NVarChar, 10)).Value = RemoveLiterals(txtBNContactKid.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_Code", SqlDbType.NVarChar, 25)).Value = Trim(txtBNContactCode.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_PersonTitle", SqlDbType.NVarChar, 10)).Value = Trim(ddlkcperson.SelectedItem.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_ContactPerson", SqlDbType.NVarChar, 100)).Value = txtContPerson.Text
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_PersonDesignation", SqlDbType.NVarChar, 100)).Value = Trim(txtDesigantion.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_PhoneExtn", SqlDbType.NVarChar, 15)).Value = (Trim(txtPhoneExtn.Text))
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_MobCountryCode", SqlDbType.NVarChar, 10)).Value = (Trim(txtCountryCodee.Text))
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_MobileNo", SqlDbType.NVarChar, 15)).Value = Trim(txtMobileNo.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_EmailId", SqlDbType.NVarChar, 200)).Value = Trim(txtEmailId.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_BranchNetworkId", SqlDbType.NVarChar, 15)).Value = Trim(ddlConFactoryName.SelectedValue)
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_FinancialYearId", SqlDbType.NVarChar, 10)).Value = Session("g_FinYear").ToString
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_CompanyId", SqlDbType.NVarChar, 10)).Value = Session("g_Company").ToString
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_UserId", SqlDbType.NVarChar, 10)).Value = Session("g_User").ToString
            cmd.Parameters.Add(New SqlParameter("@FormName", SqlDbType.NVarChar, 50)).Value = "Branch Network Contact"
            cmd.Parameters.Add(New SqlParameter("@Mode", SqlDbType.NVarChar, 10)).Value = "Insert" ' mode
            If con.State = ConnectionState.Open Then
                con.Close() ' close connection
            End If
            con.Open()
            cmd.ExecuteNonQuery()
            con.Close()
            con.Dispose()
            cmd.Dispose()

            CreateMessageAlert(Me, "Branch Contact Saved Successfully.", "StrKeyVal")
            showmessage("Record Saved Successfully.", lblerror1)             'Display the Message

            clearfields1()                                                                   'Clear the TextFields
            unlocktextbox1(False)

            fillgrid(ddlConFactoryName.SelectedItem.Text)
            'fillgrid("select BranchNetworkContacts.BranchNetworkContacts_Kid, BranchNetworkContacts.BranchNetworkContacts_PersonDesignation,   BranchNetworkContacts.BranchNetworkContacts_PersonTitle + ' ' + BranchNetworkContacts.BranchNetworkContacts_ContactPerson AS [Contact Name],BranchNetwork.BranchNetwork_BranchName  FROM         BranchNetwork INNER JOIN    BranchNetworkContacts ON BranchNetwork.BranchNetwork_Kid = BranchNetworkContacts.BranchNetworkContacts_BranchNetworkId WHERE  (BranchNetwork.BranchNetwork_BranchName='" & ddlConFactoryName.SelectedItem.Text & "') AND  (BranchNetworkContacts.BranchNetworkContacts_CompanyId = '" & Session("g_Company") & "') AND (BranchNetworkContacts.BranchNetworkContacts_UserId = '" & Session("g_User") & "') AND (BranchNetworkContacts.BranchNetworkContacts_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_SupplierId = '" & Session("SupplierID") & "')")
            hf1.Value = ""

            Call SaveClickVisible(Me, btnContactAdd, btnContactSave, btnContactUpdate, btnContactDelete, btnContactCancel, btnsearch)
            ' ddlBranches.Enabled = True
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")                                 'Display the Error Message
        End Try
    End Sub

    Protected Sub btnContactUpdate_Click(ByVal sender As Object, ByVal e As System.EventArgs)
        Try
            Dim con As New SqlConnection
            con.ConnectionString = System.Configuration.ConfigurationManager.AppSettings("ConnectionString")
            Dim cmd As New SqlCommand
            cmd.CommandType = CommandType.StoredProcedure
            cmd.CommandText = "BranchNetworkContacts_Proc" ' storeprocedure
            cmd.Connection = con
            'If IsAlreadyPresent("SELECT COUNT(*) FROM BranchNetwork WHERE (BranchNetwork_IsDeleted = 0) AND (BranchNetwork_BranchName = '" & txtBranchName.Text.Trim & "')") Then
            '    showmessage("Branch Network Name Already Present.")
            '    txtBranchName.Text = "" : txtBranchName.Focus()
            '    Exit Sub
            'End If
            ' Call GenerateContactCode()
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_Kid", SqlDbType.NVarChar, 10)).Value = RemoveLiterals(txtBNContactKid.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_Code", SqlDbType.NVarChar, 25)).Value = Trim(txtBNContactCode.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_PersonTitle", SqlDbType.NVarChar, 10)).Value = Trim(ddlkcperson.SelectedItem.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_ContactPerson", SqlDbType.NVarChar, 100)).Value = txtContPerson.Text
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_PersonDesignation", SqlDbType.NVarChar, 100)).Value = Trim(txtDesigantion.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_PhoneExtn", SqlDbType.NVarChar, 15)).Value = (Trim(txtPhoneExtn.Text))
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_MobCountryCode", SqlDbType.NVarChar, 10)).Value = (Trim(txtCountryCodee.Text))
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_MobileNo", SqlDbType.NVarChar, 15)).Value = Trim(txtMobileNo.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_EmailId", SqlDbType.NVarChar, 200)).Value = Trim(txtEmailId.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_BranchNetworkId", SqlDbType.NVarChar, 15)).Value = RemoveLiterals(Trim(ddlConFactoryName.SelectedValue))
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_FinancialYearId", SqlDbType.NVarChar, 10)).Value = Session("g_FinYear").ToString
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_CompanyId", SqlDbType.NVarChar, 10)).Value = Session("g_Company").ToString
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_UserId", SqlDbType.NVarChar, 10)).Value = Session("g_User").ToString
            cmd.Parameters.Add(New SqlParameter("@FormName", SqlDbType.NVarChar, 50)).Value = "Branch Network Contact"
            cmd.Parameters.Add(New SqlParameter("@Mode", SqlDbType.NVarChar, 10)).Value = "Update" ' mode
            If con.State = ConnectionState.Open Then
                con.Close() ' close connection
            End If
            con.Open()
            cmd.ExecuteNonQuery()
            con.Close()
            con.Dispose()
            cmd.Dispose()

            CreateMessageAlert(Me, "Branch Contact Updated Successfully.", "StrKeyVal")
            showmessage("Record Updated Successfully.", lblerror1)             'Display the Message
            clearfields1()                                                                   'Clear the TextFields
            unlocktextbox1(False)

            fillgrid(ddlConFactoryName.SelectedItem.Text)
            'fillgrid("select BranchNetworkContacts.BranchNetworkContacts_Kid, BranchNetworkContacts.BranchNetworkContacts_PersonDesignation,   BranchNetworkContacts.BranchNetworkContacts_PersonTitle + ' ' + BranchNetworkContacts.BranchNetworkContacts_ContactPerson AS [Contact Name],BranchNetwork.BranchNetwork_BranchName  FROM         BranchNetwork INNER JOIN    BranchNetworkContacts ON BranchNetwork.BranchNetwork_Kid = BranchNetworkContacts.BranchNetworkContacts_BranchNetworkId WHERE    (BranchNetworkContacts.BranchNetworkContacts_CompanyId = '" & Session("g_Company") & "') AND (BranchNetworkContacts.BranchNetworkContacts_UserId = '" & Session("g_User") & "') AND (BranchNetworkContacts.BranchNetworkContacts_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_SupplierId = '" & Session("SupplierID") & "')")
            Call EditClickVisible(Me, btnContactAdd, btnContactSave, btnContactUpdate, btnContactDelete, btnContactCancel, btnsearch)
            ' ddlBranches.Enabled = True
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")                                 'Display the Error Message
        End Try
    End Sub

    Protected Sub btnContactDelete_Click(ByVal sender As Object, ByVal e As System.EventArgs)
        Try
            Dim con As New SqlConnection
            con.ConnectionString = System.Configuration.ConfigurationManager.AppSettings("ConnectionString")
            Dim cmd As New SqlCommand
            cmd.CommandType = CommandType.StoredProcedure
            cmd.CommandText = "BranchNetworkContacts_Proc" ' storeprocedure
            cmd.Connection = con
            'If IsAlreadyPresent("SELECT COUNT(*) FROM BranchNetwork WHERE (BranchNetwork_IsDeleted = 0) AND (BranchNetwork_BranchName = '" & txtBranchName.Text.Trim & "')") Then
            '    showmessage("Branch Network Name Already Present.")
            '    txtBranchName.Text = "" : txtBranchName.Focus()
            '    Exit Sub
            'End If
            ' Call GenerateContactCode()
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_Kid", SqlDbType.NVarChar, 10)).Value = RemoveLiterals(txtBNContactKid.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_Code", SqlDbType.NVarChar, 25)).Value = Trim(txtBNContactCode.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_PersonTitle", SqlDbType.NVarChar, 10)).Value = Trim(ddlkcperson.SelectedItem.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_ContactPerson", SqlDbType.NVarChar, 100)).Value = txtContPerson.Text
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_PersonDesignation", SqlDbType.NVarChar, 100)).Value = Trim(txtDesigantion.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_PhoneExtn", SqlDbType.NVarChar, 15)).Value = (Trim(txtPhoneExtn.Text))
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_MobCountryCode", SqlDbType.NVarChar, 10)).Value = (Trim(txtCountryCodee.Text))
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_MobileNo", SqlDbType.NVarChar, 15)).Value = Trim(txtMobileNo.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_EmailId", SqlDbType.NVarChar, 200)).Value = Trim(txtEmailId.Text)
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_BranchNetworkId", SqlDbType.NVarChar, 15)).Value = Trim(ddlConFactoryName.SelectedValue)
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_FinancialYearId", SqlDbType.NVarChar, 10)).Value = Session("g_FinYear").ToString
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_CompanyId", SqlDbType.NVarChar, 10)).Value = Session("g_Company").ToString
            cmd.Parameters.Add(New SqlParameter("@BranchNetworkContacts_UserId", SqlDbType.NVarChar, 10)).Value = Session("g_User").ToString
            cmd.Parameters.Add(New SqlParameter("@FormName", SqlDbType.NVarChar, 50)).Value = "Branch Network Contact"
            cmd.Parameters.Add(New SqlParameter("@Mode", SqlDbType.NVarChar, 10)).Value = "Delete" ' mode
            If con.State = ConnectionState.Open Then
                con.Close() ' close connection
            End If
            con.Open()
            cmd.ExecuteNonQuery()
            con.Close()
            con.Dispose()
            cmd.Dispose()

            CreateMessageAlert(Me, "Branch Contact Deleted Successfully.", "StrKeyVal")
            showmessage("Record Deleted Successfully.", lblerror1)             'Display the Message
            clearfields1()                                                                   'Clear the TextFields
            unlocktextbox1(False)
            fillgrid(ddlConFactoryName.SelectedItem.Text)
            'fillgrid("select BranchNetworkContacts.BranchNetworkContacts_Kid, BranchNetworkContacts.BranchNetworkContacts_PersonDesignation,   BranchNetworkContacts.BranchNetworkContacts_PersonTitle + ' ' + BranchNetworkContacts.BranchNetworkContacts_ContactPerson AS [Contact Name],BranchNetwork.BranchNetwork_BranchName  FROM         BranchNetwork INNER JOIN    BranchNetworkContacts ON BranchNetwork.BranchNetwork_Kid = BranchNetworkContacts.BranchNetworkContacts_BranchNetworkId WHERE    (BranchNetworkContacts.BranchNetworkContacts_CompanyId = '" & Session("g_Company") & "') AND (BranchNetworkContacts.BranchNetworkContacts_UserId = '" & Session("g_User") & "') AND (BranchNetworkContacts.BranchNetworkContacts_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_SupplierId = '" & Session("SupplierID") & "')")
            Call DeleteClickVisible(Me, btnContactAdd, btnContactSave, btnContactUpdate, btnContactDelete, btnContactCancel, btnsearch)
            ' ddlBranches.Enabled = True
            'pnlBranchContact.Visible = True
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")                                 'Display the Error Message
        End Try
    End Sub

    Protected Sub btnContactCancel_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnContactCancel.Click
        Try
            gvBranchDetails.SelectedIndex = -1
            'txtBranchName.AutoPostBack = False
            clearfields1()                                       'Clears the TextFields
            unlocktextbox1(False)                                'Disable the TextFields
            'ddlState.ClearSelection()
            'Call fillBranch(ddlBranches)
            'ddlBranches.Enabled = True
            fillgrid(ddlConFactoryName.SelectedItem.Text)
            'fillgrid("select BranchNetworkContacts.BranchNetworkContacts_Kid, BranchNetworkContacts.BranchNetworkContacts_PersonDesignation,   BranchNetworkContacts.BranchNetworkContacts_PersonTitle + ' ' + BranchNetworkContacts.BranchNetworkContacts_ContactPerson AS [Contact Name],BranchNetwork.BranchNetwork_BranchName  FROM         BranchNetwork INNER JOIN    BranchNetworkContacts ON BranchNetwork.BranchNetwork_Kid = BranchNetworkContacts.BranchNetworkContacts_BranchNetworkId WHERE    (BranchNetworkContacts.BranchNetworkContacts_CompanyId = '" & Session("g_Company") & "') AND (BranchNetworkContacts.BranchNetworkContacts_UserId = '" & Session("g_User") & "') AND (BranchNetworkContacts.BranchNetworkContacts_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_SupplierId = '" & Session("SupplierID") & "')")
            Call CancelClickVisible(Me, btnContactAdd, btnContactSave, btnContactUpdate, btnContactDelete, btnContactCancel, btnsearch)
            If Session("AdminID") = Nothing Then
                btnDelete.Visible = False
                btnUpdate.Visible = False
                btnContactDelete.Visible = False
                btnContactUpdate.Visible = False

            End If
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")      'Display the Error Message
        End Try
    End Sub

    Protected Sub btnClose_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnClose.Click
        Try
            gvBranchDetails.SelectedIndex = -1
            TABLE1.Visible = False
            TABLE2.Visible = True
            tabletitle2.Visible = False
            tabletitle1.Visible = True
            ddlBranches.Visible = True
            ddlCity.Visible = True
            ddlState.Visible = True
            ddlCountry.Visible = True
            ddlTurnOverUnit.Visible = True
            btnAdd.Visible = True
            'BtnSave.Enabled = True
            btnUpdate.Visible = True
            btnCancel.Visible = False
            btnDelete.Visible = True
            '  Label6.Visible = True
            txtAddress.Visible = True
            Call btnContactCancel_Click(sender, e)
            'If Session("AdminID") = Nothing Then
            btnDelete.Visible = False
            btnUpdate.Visible = False
            btnContactDelete.Visible = False
            btnContactUpdate.Visible = False
            BtnSave.Visible = False
            'End If
            hf1.Value = ""
            ScriptManager1.SetFocus(btnAdd)
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")      'Display the Error Message
        End Try
    End Sub

    Protected Sub lnkBranchContact_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnNewContact.Click
        Try
            TABLE1.Visible = True
            TABLE2.Visible = False

            tabletitle2.Visible = True
            tabletitle1.Visible = False
            ddlBranches.Visible = False
            ddlCity.Visible = False
            ddlState.Visible = False
            ddlCountry.Visible = False
            ddlTurnOverUnit.Visible = False
            btnAdd.Visible = False
            'BtnSave.Enabled = False
            btnUpdate.Visible = False
            btnCancel.Visible = False
            btnDelete.Visible = False
            '   Label6.Visible = False
            txtAddress.Visible = False
            btnContactAdd.Focus()
            ddlConFactoryName.ClearSelection()

            '  fillBranch(ddlConFactoryName)
            If ddlBranches.SelectedIndex > 0 Then
                ddlConFactoryName.Items.FindByValue(RemoveLiterals(ddlBranches.SelectedItem.Value.ToString)).Selected = True
                ddlConFactoryName.Enabled = False

            Else
                If hf1.Value <> "" Then
                    ddlConFactoryName.Items.FindByText(RemoveLiterals(hf1.Value.ToString)).Selected = True
                    ddlConFactoryName.Enabled = False
                Else
                    ddlConFactoryName.Enabled = True
                End If

            End If

            Call btnCancel_Click(sender, e)

            ScriptManager1.SetFocus(btnContactAdd)
            sel_branch = ddlConFactoryName.SelectedItem.Text
            fillgrid(sel_branch.ToString)
            '  If (sel_branch = "Select") Then
            'fillgrid("select BranchNetworkContacts.BranchNetworkContacts_Kid, BranchNetworkContacts.BranchNetworkContacts_PersonDesignation,   BranchNetworkContacts.BranchNetworkContacts_PersonTitle + ' ' + BranchNetworkContacts.BranchNetworkContacts_ContactPerson AS [Contact Name],BranchNetwork.BranchNetwork_BranchName  FROM         BranchNetwork INNER JOIN    BranchNetworkContacts ON BranchNetwork.BranchNetwork_Kid = BranchNetworkContacts.BranchNetworkContacts_BranchNetworkId WHERE    (BranchNetworkContacts.BranchNetworkContacts_CompanyId = '" & Session("g_Company") & "') AND (BranchNetworkContacts.BranchNetworkContacts_UserId = '" & Session("g_User") & "') AND (BranchNetworkContacts.BranchNetworkContacts_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_SupplierId = '" & Session("SupplierID") & "')")
            'Else
            'fillgrid("select BranchNetworkContacts.BranchNetworkContacts_Kid, BranchNetworkContacts.BranchNetworkContacts_PersonDesignation,   BranchNetworkContacts.BranchNetworkContacts_PersonTitle + ' ' + BranchNetworkContacts.BranchNetworkContacts_ContactPerson AS [Contact Name],BranchNetwork.BranchNetwork_BranchName  FROM         BranchNetwork INNER JOIN    BranchNetworkContacts ON BranchNetwork.BranchNetwork_Kid = BranchNetworkContacts.BranchNetworkContacts_BranchNetworkId WHERE  (BranchNetwork.BranchNetwork_BranchName='" & sel_branch & "') AND  (BranchNetworkContacts.BranchNetworkContacts_CompanyId = '" & Session("g_Company") & "') AND (BranchNetworkContacts.BranchNetworkContacts_UserId = '" & Session("g_User") & "') AND (BranchNetworkContacts.BranchNetworkContacts_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_SupplierId = '" & Session("SupplierID") & "')")
            'End If

            ddlConFactoryName.Enabled = True

        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")      'Display the Error Message
        End Try
    End Sub

    Protected Sub gvBranchDetails_PageIndexChanging(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewPageEventArgs) Handles gvBranchDetails.PageIndexChanging
        Try
            gvBranchDetails.PageIndex = e.NewPageIndex
            'If (sel_branch = "Select" Or sel_branch = Nothing) Then
            fillgrid(sel_branch.ToString)
            '       fillgrid("select BranchNetworkContacts.BranchNetworkContacts_Kid, BranchNetworkContacts.BranchNetworkContacts_PersonDesignation,   BranchNetworkContacts.BranchNetworkContacts_PersonTitle + ' ' + BranchNetworkContacts.BranchNetworkContacts_ContactPerson AS [Contact Name],BranchNetwork.BranchNetwork_BranchName  FROM         BranchNetwork INNER JOIN    BranchNetworkContacts ON BranchNetwork.BranchNetwork_Kid = BranchNetworkContacts.BranchNetworkContacts_BranchNetworkId WHERE    (BranchNetworkContacts.BranchNetworkContacts_CompanyId = '" & Session("g_Company") & "') AND (BranchNetworkContacts.BranchNetworkContacts_UserId = '" & Session("g_User") & "') AND (BranchNetworkContacts.BranchNetworkContacts_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_SupplierId = '" & Session("SupplierID") & "')")
            'Else
            '      fillgrid("select BranchNetworkContacts.BranchNetworkContacts_Kid, BranchNetworkContacts.BranchNetworkContacts_PersonDesignation,   BranchNetworkContacts.BranchNetworkContacts_PersonTitle + ' ' + BranchNetworkContacts.BranchNetworkContacts_ContactPerson AS [Contact Name],BranchNetwork.BranchNetwork_BranchName  FROM         BranchNetwork INNER JOIN    BranchNetworkContacts ON BranchNetwork.BranchNetwork_Kid = BranchNetworkContacts.BranchNetworkContacts_BranchNetworkId WHERE  (BranchNetwork.BranchNetwork_BranchName='" & sel_branch & "') AND  (BranchNetworkContacts.BranchNetworkContacts_CompanyId = '" & Session("g_Company") & "') AND (BranchNetworkContacts.BranchNetworkContacts_UserId = '" & Session("g_User") & "') AND (BranchNetworkContacts.BranchNetworkContacts_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_IsDeleted = N'0') AND (BranchNetwork.BranchNetwork_SupplierId = '" & Session("SupplierID") & "')")
            'End If
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")      'Display the Error Message
        End Try
    End Sub

    Protected Sub btnBack_Click(ByVal sender As Object, ByVal e As System.EventArgs)
        Response.Redirect("other-details.aspx")
    End Sub


    <Ajax.AjaxMethod()> _
   Public Function AddCity(ByVal strCity As String, ByVal strStateID As String, ByVal strCompanyID As String, ByVal strUserID As String, ByVal strFinancialYearID As String) As String
        Dim KID As String
        KID = NewPrimaryKey(Me)

        If IsAlreadyPresent("Select count(*) from City_Master where City_Name='" & strCity.Trim & "' and City_StateId ='" & strStateID.ToString & "'") Then
            Return "false"
        End If

        Dim con As New SqlConnection()
        con.ConnectionString = System.Configuration.ConfigurationManager.AppSettings("ConnectionString")        'Read the connection string from web.config
        Dim cmd As New SqlCommand()
        cmd.CommandType = CommandType.StoredProcedure
        cmd.CommandText = "City_Master_Proc"
        cmd.Connection = con
        cmd.Parameters.Add(New SqlParameter("@City_Kid", SqlDbType.NVarChar, 10)).Value = KID
        cmd.Parameters.Add(New SqlParameter("@City_Code", SqlDbType.NVarChar, 25)).Value = Generate_Code("Select count(*) from City_Master where City_Code='", "CC").ToString()
        cmd.Parameters.Add(New SqlParameter("@City_Name", SqlDbType.NVarChar, 100)).Value = strCity.Trim
        cmd.Parameters.Add(New SqlParameter("@City_StateId", SqlDbType.NVarChar, 10)).Value = strStateID.Trim
        cmd.Parameters.Add(New SqlParameter("@City_CompanyId", SqlDbType.NVarChar, 10)).Value = Trim(strCompanyID)
        cmd.Parameters.Add(New SqlParameter("@City_UserId", SqlDbType.NVarChar, 10)).Value = Trim(strUserID)
        cmd.Parameters.Add(New SqlParameter("@City_FinancialYearId", SqlDbType.NVarChar, 10)).Value = strFinancialYearID.Trim
        cmd.Parameters.Add(New SqlParameter("@FormName", SqlDbType.NVarChar, 50)).Value = "SupplierRegistration1"
        cmd.Parameters.Add(New SqlParameter("@Mode", SqlDbType.VarChar, 10)).Value = "Insert"
        Try
            con.Open()
            cmd.ExecuteNonQuery()
            con.Close()
            Return KID
        Catch ex As Exception
            con.Close()
            Return "false"
        End Try
        Return True

    End Function

    Protected Sub iCLose_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs)
        Try
            gvBranchDetails.SelectedIndex = -1
            TABLE1.Visible = False
            TABLE2.Visible = True
            tabletitle2.Visible = False
            tabletitle1.Visible = True
            ddlBranches.Visible = True
            ddlCity.Visible = True
            ddlState.Visible = True
            ddlCountry.Visible = True
            ddlTurnOverUnit.Visible = True
            btnAdd.Visible = True
            btnUpdate.Visible = True
            btnCancel.Visible = False
            btnDelete.Visible = True
            txtAddress.Visible = True
            Call btnContactCancel_Click(sender, e)
            btnDelete.Visible = False
            btnUpdate.Visible = False
            btnContactDelete.Visible = False
            btnContactUpdate.Visible = False
            BtnSave.Visible = False
            hf1.Value = ""
            ScriptManager1.SetFocus(btnAdd)
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")      'Display the Error Message
        End Try
    End Sub
End Class
