Solved

Insert Dropdown, DateSelector, Column from Gridview into SQL Server

Posted on 2014-11-17
2
75 Views
Last Modified: 2015-07-29
I previously asked a question regarding a date field in a gridview to be inserted into my sql server. I realized that that the date was being selected from a dateselector, the next column is a dropdown selector field, the third is a value from my select query. I can insert the data if it were populated from the select statement but i'm having trouble inserting the dateselector and the dropdown box value from the gridview. My markup seems to fine since I'm able to view the gridview with the objects but can't seem to insert it in my SQL server in the code behind. Any help would be appreciated.

My Markup:

<asp:GridView ID="gvPrint" runat="server" AutoGenerateColumns="False" DataKeyNames="OrderID" DataSourceID="gvAll" Font-Names="Calibri" Font-Size="X-Small" Width="100%">
                    <Columns>
                        <asp:TemplateField HeaderText="Select">
                            <ItemTemplate>
                                <asp:CheckBox ID="chk" runat="server" />
                            </ItemTemplate>
                            <HeaderStyle HorizontalAlign="Center" />
                        </asp:TemplateField>
                        <asp:TemplateField HeaderText="Print Date">
                            <ItemTemplate>
                                <dx:ASPxDateEdit ID="ASPxDateEdit1" runat="server" Theme="DevEx" Width="80px" AutoPostBack="true">
                                </dx:ASPxDateEdit>
                            </ItemTemplate>
                            <HeaderStyle HorizontalAlign="Center" />
                        </asp:TemplateField>
                        <asp:TemplateField HeaderText="Printer">
                            <ItemTemplate>
                                <asp:DropDownList ID="DropDownList1" runat="server" DataSourceID="sqlPrinters" DataTextField="Printer" DataValueField="Printer" AutoPostBack="true">
                                </asp:DropDownList>
                                <asp:SqlDataSource ID="sqlPrinters" runat="server" ConnectionString="<%$ ConnectionStrings:ApplicationServices %>" SelectCommand="SELECT [Printer] FROM [Printer]" ></asp:SqlDataSource>
                            </ItemTemplate>
                            <HeaderStyle HorizontalAlign="Center" />
                        </asp:TemplateField>
                        <asp:BoundField DataField="OrderID" HeaderText="OrderID" ReadOnly="True" SortExpression="OrderID" >
                        <HeaderStyle HorizontalAlign="Center" />
                        <ItemStyle HorizontalAlign="Center" />
                        </asp:BoundField>

Open in new window


My Code Behind:

Protected Sub btnSchedule_Click(sender As Object, e As EventArgs) Handles btnSchedule.Click
        Dim dt As New DataTable()
        dt.Columns.AddRange(New DataColumn(2) {New DataColumn("PrintDate", GetType(DateTime)), New DataColumn("Printer", GetType(String)), New DataColumn("OrderID", GetType(Integer))})
        For Each Row As GridViewRow In gvPrint.Rows
            If TryCast(Row.FindControl("chk"), CheckBox).Checked Then
                Dim PrintDate As DateTime
                Dim DateValid As [Boolean] = DateTime.TryParse(Row.Cells(1).Text, PrintDate)
                Dim Printer As String = Row.Cells(2).Text
                Dim OrderID As Integer = Integer.Parse(Row.Cells(3).Text)
                dt.Rows.Add(PrintDate, Printer, OrderID)
            End If
        Next
        If dt.Rows.Count > 0 Then
            Dim conString As String = ConfigurationManager.ConnectionStrings("ApplicationServices").ConnectionString
            Using con As New SqlConnection(conString)

                Using BulkCopy As New SqlBulkCopy(con)

                    BulkCopy.DestinationTableName = "dbo.PrinterSchedule"

                    BulkCopy.ColumnMappings.Add("PrintDate", "PrintDate")
                    BulkCopy.ColumnMappings.Add("Printer", "Printer")
                    BulkCopy.ColumnMappings.Add("OrderID", "OrderID")
                    con.Open()
                    BulkCopy.WriteToServer(dt)
                    con.Close()
                End Using
            End Using
        End If
    End Sub

Open in new window

0
Comment
Question by:Southern_Gentleman
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
2 Comments
 
LVL 4

Accepted Solution

by:
ItWorked earned 500 total points
ID: 40449516
Are you talking about example as of such? Here
0
 

Author Comment

by:Southern_Gentleman
ID: 40456430
Sort of what I was looking for. I'm looking at taking three columns from my gridview and inserting it in a table that I created. The first column has checkboxes. This selects which rows to be bulk inserted into my table. The second column has a date select. the third is a dropdown box. the forth column is the order number. On a click event button, any checkbox selected will have the dateselect value, dropdown box value and ordered inserted into my table. I'm able to Insert the order number since that is from my select statement. I just can't seem to insert the values from my dateselect and dropdown box. So i'm not really wanting to update or edit any information from my gridview. I'm just looking to insert it into my table.
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In an ASP.NET application, I faced some technical problems. In this article, I list them out and show the solutions that I found.  I hope it will be useful. Problem: After closing a pop-up window, the parent page should be refreshed automaticall…
ASP.Net to Oracle Connectivity Recently I had to develop an ASP.NET application connecting to an Oracle database.As I am doing it first time ,I had to solve several problems. This article will help to such developers  to develop an ASP.NET client…
Michael from AdRem Software outlines event notifications and Automatic Corrective Actions in network monitoring. Automatic Corrective Actions are scripts, which can automatically run upon discovery of a certain undesirable condition in your network.…
In this video you will find out how to export Office 365 mailboxes using the built in eDiscovery tool. Bear in mind that although this method might be useful in some cases, using PST files as Office 365 backup is troublesome in a long run (more on t…

622 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question