Imports System.Data.SqlClient
Imports System.Data
Imports ModCommon

Partial Class Admin_inquiry_master
    Inherits System.Web.UI.Page

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        If Session("AdminID") Is Nothing Then
            Response.Redirect("AdminLogin.aspx?sesn=expire")
            Exit Sub
        End If
        If Page.IsPostBack = False Then
            If Session("AdminID") = Nothing Then
                Response.Redirect("AdminLogin.aspx")
            End If
            LockUnlockBox(False)
            'gridFill()
            FillDataGrid()
        End If

    End Sub

    Public Sub gridFill()
        Fill_Grid("Select * From Inquiry_Master where Inquiry_IsDeleted='0'", gvInquiryMaster)
        'getTableData()
    End Sub

    'Public Sub getTableData()
    '    Dim dt As DataTable = ReturnDataTable("Select * From Inquiry_Master where Inquiry_IsDeleted='0'")
    '    Dim i As Integer
    '    For i = 0 To dt.Rows.Count - 1
    '        'Dim Div1 As HtmlControls = CType(gvInquiry.Rows(i).FindControl("Panel1"), div)
    '        '   = dt.Rows(0).Item("Inquiry_description").ToString
    '    Next
    '    dt.Clear()
    'End Sub

    Protected Sub btnAdd_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnAdd.Click
        txtInquiryName.Enabled = True
        txtInquiryDesc.Enabled = True
        InquiryClear()
        txtInquiryName.Focus()
        'Call InquiryAddClick(Me, btnAdd, btnSave, btnDelete, btnCancel)
    End Sub

    'Public Sub InquiryAddClick(ByRef aspxPage As System.Web.UI.Page, ByRef btnAdd As Button, ByRef btnSave As Button, ByRef btndelete As Button, ByRef btnCancel As Button)
    '    Try
    '        btnAdd.Enabled = False                              'Disable the Add Button
    '        btnSave.Enabled = True                              'Enable the Save Button
    '        btndelete.Enabled = False                           'Disable the Delete Button
    '        btnUpdate.Enabled = False
    '        btnCancel.Enabled = True                            'Enable the Cancel Button
    '    Catch ex As Exception
    '        CreateMessageAlert(aspxPage, ex.Message, "StrKeyVal")     'Display the Error Message
    '    End Try
    'End Sub

    Public Sub InquiryClear()
        txtInquiryName.Text = ""
        txtInquiryDesc.Text = ""
    End Sub

    Protected Sub btnSave_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnSave.Click

        Dim Con As New SqlConnection
        Dim cmd As New SqlCommand
        Con.ConnectionString = System.Configuration.ConfigurationManager.AppSettings("ConnectionString")
        cmd.Connection = Con
        cmd.CommandText = "Inquiry_Master_Proc"   ' store procedure
        cmd.CommandType = CommandType.StoredProcedure
        cmd.Parameters.Add(New SqlParameter("@Inquiry_Kid", Data.SqlDbType.NVarChar, 10)).Value = NewPrimaryKey(Me)
        cmd.Parameters.Add(New SqlParameter("@Inquiry_code", Data.SqlDbType.NVarChar, 25)).Value = GenerateInquiryCode().ToString
        cmd.Parameters.Add(New SqlParameter("@Inquiry_Name", Data.SqlDbType.NVarChar, 200)).Value = txtInquiryName.Text
        cmd.Parameters.Add(New SqlParameter("@Inquiry_description", Data.SqlDbType.NVarChar, 500)).Value = txtInquiryDesc.Text
        cmd.Parameters.Add(New SqlParameter("@Inquiry_FinancialYearId", Data.SqlDbType.NVarChar, 10)).Value = Session("g_FinYear").ToString
        cmd.Parameters.Add(New SqlParameter("@Inquiry_CompanyId", Data.SqlDbType.NVarChar, 10)).Value = Session("g_Company").ToString
        cmd.Parameters.Add(New SqlParameter("@Inquiry_UserId", Data.SqlDbType.NVarChar, 10)).Value = Session("g_User").ToString
        cmd.Parameters.Add(New SqlParameter("@FormName", Data.SqlDbType.NVarChar, 50)).Value = "Inquiry Master"
        cmd.Parameters.Add(New SqlParameter("@Mode", Data.SqlDbType.Char, 15)).Value = "Insert"
        If Con.State = ConnectionState.Open Then ' check whether connection is opened 
            Con.Close()
        End If
        Con.Open()
        cmd.ExecuteNonQuery()
        Con.Close() ' close connection
        Con.Dispose()
        'gridFill()
        FillDataGrid()
        InquiryClear()
        LockUnlockBox(False)

        'Call InquirySaveClick(Me, btnAdd, btnSave, btnDelete, btnUpdate, btnCancel)

    End Sub

    'Public Sub InquirySaveClick(ByRef aspxPage As System.Web.UI.Page, ByRef btnAdd As Button, ByRef btnSave As Button, ByRef btnDelete As Button, ByRef btnupdate As Button, ByRef btnCancel As Button)
    '    Try
    '        btnAdd.Enabled = True                                                           'Enable the Add Button
    '        btnSave.Enabled = False                                                         'Disable the Save Button
    '        btnDelete.Enabled = False                                                       'Disable the Delete Button
    '        btnCancel.Enabled = False                                                       'Disable the Cancel Button
    '        btnupdate.Enabled = False                                                         'Enable the Search Button
    '    Catch ex As Exception
    '        CreateMessageAlert(aspxPage, ex.Message, "StrKeyVal")     'Display the Error Message
    '    End Try
    'End Sub


    Protected Function GenerateInquiryCode() As String
        Try
            Dim i As String
            Dim qry As String
            Dim code As String
            i = "1"
            i = Format(Val(i), "000")
            While True
                code = "ASS" & "/" & Year(Date.Today) & "/" & Format(Month(Date.Today), "00") & "/" & Day(Date.Today) & "/" & i
                qry = "select count(*) from Inquiry_Master where Inquiry_code='" & code & "'"
                If IsAlreadyPresent(qry) Then
                    i = Val(i) + 1
                    i = Format(Val(i), "000")
                Else
                    Return code
                    Exit Function
                End If
            End While
        Catch ex As Exception
            CreateMessageAlert(Me, ex.Message, "StrKeyVal")     'Display the Error Message
        End Try
    End Function

    Protected Sub gvInquiryMaster_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles gvInquiryMaster.SelectedIndexChanged

        Dim dt As DataTable = ReturnDataTable("Select * From Inquiry_Master where Inquiry_IsDeleted='0' and Inquiry_Kid = '" & gvInquiryMaster.SelectedDataKey.Value.ToString & "'")

        txtInquiryName.Text = dt.Rows(0).Item("Inquiry_Name").ToString
        txtInquiryDesc.Text = dt.Rows(0).Item("Inquiry_description").ToString

        LockUnlockBox(True)

        dt.Clear()

    End Sub

    Public Sub LockUnlockBox(ByVal Action As Boolean)
        txtInquiryName.Enabled = Action
        txtInquiryDesc.Enabled = Action
    End Sub

    Protected Sub btnUpdate_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnUpdate.Click

        Dim dt As DataTable = ReturnDataTable("Select * From Inquiry_Master where Inquiry_IsDeleted='0' and Inquiry_Kid = '" & gvInquiryMaster.SelectedDataKey.Value.ToString & "'")

        Dim Con As New SqlConnection
        Dim cmd As New SqlCommand
        Con.ConnectionString = System.Configuration.ConfigurationManager.AppSettings("ConnectionString")
        cmd.Connection = Con
        cmd.CommandText = "Inquiry_Master_Proc"   ' store procedure
        cmd.CommandType = CommandType.StoredProcedure
        cmd.Parameters.Add(New SqlParameter("@Inquiry_Kid", Data.SqlDbType.NVarChar, 10)).Value = dt.Rows(0).Item("Inquiry_Kid").ToString
        cmd.Parameters.Add(New SqlParameter("@Inquiry_code", Data.SqlDbType.NVarChar, 25)).Value = dt.Rows(0).Item("Inquiry_code").ToString
        cmd.Parameters.Add(New SqlParameter("@Inquiry_Name", Data.SqlDbType.NVarChar, 200)).Value = txtInquiryName.Text
        cmd.Parameters.Add(New SqlParameter("@Inquiry_description", Data.SqlDbType.NVarChar, 500)).Value = txtInquiryDesc.Text
        cmd.Parameters.Add(New SqlParameter("@Inquiry_FinancialYearId", Data.SqlDbType.NVarChar, 10)).Value = dt.Rows(0).Item("Inquiry_FinancialYearId").ToString
        cmd.Parameters.Add(New SqlParameter("@Inquiry_CompanyId", Data.SqlDbType.NVarChar, 10)).Value = dt.Rows(0).Item("Inquiry_CompanyId").ToString
        cmd.Parameters.Add(New SqlParameter("@Inquiry_UserId", Data.SqlDbType.NVarChar, 10)).Value = dt.Rows(0).Item("Inquiry_UserId").ToString
        cmd.Parameters.Add(New SqlParameter("@FormName", Data.SqlDbType.NVarChar, 50)).Value = "Inquiry Master"
        cmd.Parameters.Add(New SqlParameter("@Mode", Data.SqlDbType.Char, 15)).Value = "Update"
        If Con.State = ConnectionState.Open Then ' check whether connection is opened 
            Con.Close()
        End If
        Con.Open()
        cmd.ExecuteNonQuery()
        Con.Close() ' close connection
        Con.Dispose()
        dt.Clear()
        'gridFill()
        FillDataGrid()
        InquiryClear()
        LockUnlockBox(False)

    End Sub

    Protected Sub btnConDelete_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnConDelete.Click
        Dim dt As DataTable = ReturnDataTable("Select * From Inquiry_Master where Inquiry_IsDeleted='0' and Inquiry_Kid = '" & gvInquiryMaster.SelectedDataKey.Value.ToString & "'")

        Dim Con As New SqlConnection
        Dim cmd As New SqlCommand
        Con.ConnectionString = System.Configuration.ConfigurationManager.AppSettings("ConnectionString")
        cmd.Connection = Con
        cmd.CommandText = "Inquiry_Master_Proc"   ' store procedure
        cmd.CommandType = CommandType.StoredProcedure
        cmd.Parameters.Add(New SqlParameter("@Inquiry_Kid", Data.SqlDbType.NVarChar, 10)).Value = dt.Rows(0).Item("Inquiry_Kid").ToString
        cmd.Parameters.Add(New SqlParameter("@Inquiry_code", Data.SqlDbType.NVarChar, 25)).Value = dt.Rows(0).Item("Inquiry_code").ToString
        cmd.Parameters.Add(New SqlParameter("@Inquiry_Name", Data.SqlDbType.NVarChar, 200)).Value = dt.Rows(0).Item("Inquiry_Name").ToString
        cmd.Parameters.Add(New SqlParameter("@Inquiry_description", Data.SqlDbType.NVarChar, 500)).Value = dt.Rows(0).Item("Inquiry_description").ToString
        cmd.Parameters.Add(New SqlParameter("@Inquiry_FinancialYearId", Data.SqlDbType.NVarChar, 10)).Value = dt.Rows(0).Item("Inquiry_FinancialYearId").ToString
        cmd.Parameters.Add(New SqlParameter("@Inquiry_CompanyId", Data.SqlDbType.NVarChar, 10)).Value = dt.Rows(0).Item("Inquiry_CompanyId").ToString
        cmd.Parameters.Add(New SqlParameter("@Inquiry_UserId", Data.SqlDbType.NVarChar, 10)).Value = dt.Rows(0).Item("Inquiry_UserId").ToString
        cmd.Parameters.Add(New SqlParameter("@FormName", Data.SqlDbType.NVarChar, 50)).Value = "Inquiry Master"
        cmd.Parameters.Add(New SqlParameter("@Mode", Data.SqlDbType.Char, 15)).Value = "Delete"
        If Con.State = ConnectionState.Open Then ' check whether connection is opened 
            Con.Close()
        End If
        Con.Open()
        cmd.ExecuteNonQuery()
        Con.Close() ' close connection
        Con.Dispose()
        dt.Clear()
        'gridFill()
        FillDataGrid()
        InquiryClear()
        LockUnlockBox(False)
    End Sub

    Protected Sub btnConCancel_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnConCancel.Click
        InquiryClear()
        LockUnlockBox(False)
    End Sub

    Public Sub FillDataGrid()
        Try
            Dim con As New SqlConnection
            con.ConnectionString = System.Configuration.ConfigurationManager.AppSettings("ConnectionString")
            Dim myString As String = "Select * From Inquiry_Master where Inquiry_IsDeleted='0'"
            Dim myCommand As SqlCommand = New SqlCommand(myString, con)

            Dim myAdapter As New SqlDataAdapter
            myAdapter.SelectCommand = myCommand

            Dim myDataSet As New DataSet
            myAdapter.Fill(myDataSet)

            gvInquiryMaster.DataSource = myDataSet
            gvInquiryMaster.DataBind()

            con.Close()

        Catch
        End Try

    End Sub

   
    Protected Sub gvInquiryMaster_PageIndexChanging(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewPageEventArgs) Handles gvInquiryMaster.PageIndexChanging
        gvInquiryMaster.PageIndex = e.NewPageIndex
        FillDataGrid()
    End Sub
End Class

