<asp:Panel ID="ConsumptionPanel" runat="server" BackColor="White" Height="350px"
ScrollBars="Vertical" Style="width: 80%; margin-left: 10%">
<table style="width: 100%; table-layout: fixed;">
<tr>
<td align="left"> *請選擇導入項目
</td>
<td align="right">
<asp:LinkButton ID="CancelLinkButton" runat="server" Font-Size="Small" ForeColor="Gray">關閉</asp:LinkButton>
</td>
</tr>
</table>
<asp:UpdatePanel ID="UpdatePanel13" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div style="margin-top: 5px; margin-left: 10px;">
<asp:GridView ID="ConsumptionGridView" runat="server" AutoGenerateColumns="False"
table-layout="fixed" Width="100%">
<Columns>
<asp:TemplateField>
<HeaderTemplate>
<asp:CheckBox ID="CheckBox2" runat="server" AutoPostBack="True" />
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" οnclick="getgridview()" Text='<%# Bind("Consumption_ID") %>' />
</ItemTemplate>
<ItemStyle Font-Size="XX-Small" Width="1%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="廠款號"
SortExpression="Factory_Style_No">
<ItemTemplate>
<asp:TextBox ID="Consumption_Factory_Style_NoTextBox" runat="server"
Text='<%# Bind("Factory_Style_No") %>' Width="97%" BorderStyle="None" Style="overflow: auto" TextMode="MultiLine" Font-Size="8" ReadOnly="True"></asp:TextBox>
</ItemTemplate>
<HeaderStyle Width="10%" />
<ItemStyle Width="10%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="客款號"
SortExpression="Customer_Style_No">
<ItemTemplate>
<asp:TextBox ID="Consumption_Customer_Style_NoTextBox" runat="server"
Text='<%# Bind("Customer_Style_No") %>' Width="97%" BorderStyle="None" Style="overflow: auto" TextMode="MultiLine" Font-Size="8" ReadOnly="True"></asp:TextBox>
</ItemTemplate>
<HeaderStyle Width="10%" />
<ItemStyle Width="10%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="排料類別"
SortExpression="Sample_Type">
<ItemTemplate>
<asp:TextBox ID="Consumption_Sample_TypeTextBox" runat="server"
Text='<%# Bind("Sample_Type") %>' Width="97%" BorderStyle="None" Style="overflow: auto" TextMode="MultiLine" Font-Size="8" ReadOnly="True"></asp:TextBox>
</ItemTemplate>
<HeaderStyle Width="10%" />
<ItemStyle Width="10%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="布名"
SortExpression="Fabric_Name">
<ItemTemplate>
<asp:TextBox ID="Consumption_Fabric_NameTextBox" runat="server"
Text='<%# Bind("Fabric_Name") %>' Width="97%" BorderStyle="None" Style="overflow: auto" TextMode="MultiLine" Font-Size="8" ReadOnly="True"></asp:TextBox>
</ItemTemplate>
<HeaderStyle Width="22%" />
<ItemStyle Width="22%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="布種"
SortExpression="Fabric_Type">
<ItemTemplate>
<asp:TextBox ID="Consumption_Fabric_TypeTextBox" runat="server"
Text='<%# Bind("Fabric_Type") %>' Width="97%" BorderStyle="None" Style="overflow: auto" TextMode="MultiLine" Font-Size="8" ReadOnly="True"></asp:TextBox>
</ItemTemplate>
<HeaderStyle Width="5%" />
<ItemStyle Width="5%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="布封"
SortExpression="Fabric_Width">
<ItemTemplate>
<asp:TextBox ID="Consumption_Fabric_WidthTextBox" runat="server"
Text='<%# Bind("Fabric_Width") %>' Width="97%" BorderStyle="None" Style="overflow: auto" TextMode="MultiLine" Font-Size="8" ReadOnly="True"></asp:TextBox>
</ItemTemplate>
<HeaderStyle Width="5%" />
<ItemStyle Width="5%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="布重" SortExpression="Fabric_Weight">
<ItemTemplate>
<asp:TextBox ID="Consumption_Fabric_WeightTextBox" runat="server" Text='<%# Bind("Fabric_Weight") %>' Width="97%" BorderStyle="None" Style="overflow: auto" TextMode="MultiLine" Font-Size="8" ReadOnly="True"></asp:TextBox>
</ItemTemplate>
<HeaderStyle Width="5%" />
<ItemStyle Width="5%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="碼/打" SortExpression="Size">
<ItemTemplate>
<asp:TextBox ID="Consumption_YTextBox" runat="server" Text='<%# Bind("Consumption_Y") %>' Width="97%" BorderStyle="None" Style="overflow: auto" TextMode="MultiLine" Font-Size="8" ReadOnly="True"></asp:TextBox>
</ItemTemplate>
<HeaderStyle Width="5%" />
<ItemStyle Width="5%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="磅/打" SortExpression="Consumption_P">
<ItemTemplate>
<asp:TextBox ID="Consumption_PTextBox" runat="server" Text='<%# Bind("Consumption_P") %>' Width="97%" BorderStyle="None" Style="overflow: auto" TextMode="MultiLine" Font-Size="8" ReadOnly="True"></asp:TextBox>
</ItemTemplate>
<HeaderStyle Width="5%" />
<ItemStyle Width="5%" />
</asp:TemplateField>
<asp:TemplateField HeaderText="備註" SortExpression="Remarks">
<ItemTemplate>
<asp:TextBox ID="Consumption_RemarkTextBox" runat="server" Text='<%# Bind("Remark") %>' Width="97%" BorderStyle="None" Style="overflow: auto" TextMode="MultiLine" Font-Size="8" ReadOnly="True"></asp:TextBox>
</ItemTemplate>
<HeaderStyle Width="22%" />
<ItemStyle Width="22%" />
</asp:TemplateField>
</Columns>
<EmptyDataTemplate>
此款沒有排料記錄!
</EmptyDataTemplate>
</asp:GridView>
<script type="text/javascript">
function getgridview() {
var txt = "";
var tbl = document.getElementById("<%=ConsumptionGridView.ClientID%>");
var ID;
if (tbl != null && tbl.rows.length > 1) {
for (var i = 1; i < tbl.rows.length; i++) // 遍历行
{
var cb = tbl.rows[i].cells[0].children[0];
if (cb.checked) {
ID = tbl.rows[i].cells[0].innerText; //程式代號
txt += ID + ", ";
}
}
if (txt.length > 0) {
txt = txt.substring(0, txt.length - 2);
}
else {
txt = "0";
}
}
else {
txt = "0";
}
document.getElementById("<%= Selection.ClientID %>").value = txt;
}
</script>
</div>
<div style="float: right; margin-bottom: 15px;">
<asp:Button ID="Consumption_ConfirmButton" runat="server" ForeColor="#333333" Style="margin-top: 5px"
Text="確定" Width="100px" />
<br />
</div>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Panel>
<asp:ModalPopupExtender ID="ModalPopupExtender4" runat="server" TargetControlID="LinkButton12"
PopupControlID="ConsumptionPanel" DropShadow="true" BackgroundCssClass="modalBackground"
Enabled="True" CancelControlID="CancelLinkButton">
</asp:ModalPopupExtender>
<asp:HiddenField ID="Selection" runat="server" />
Protected Sub Costing_Consumption_AddLinkButton_Click(ByVal sender As Object, ByVal e As EventArgs)
Try
If save_consumption() Then
Using cn As New SqlConnection()
cn.ConnectionString = ConfigurationManager.ConnectionStrings("Sample_Room_ProgressConnectionString").ConnectionString
Dim sqlStr As String = "SELECT Consumption.Consumption_ID, Consumption.Factory_Style_No, Consumption.Customer_Style_No, Consumption.Sample_Type, Consumption_Fabric.Fabric_Name, " & _
"Consumption_Fabric.Fabric_Type, Consumption_Fabric.Fabric_Width, Consumption_Fabric.Fabric_Weight, Consumption_Fabric.Consumption_Y, " & _
"Consumption_Fabric.Consumption_P, Consumption.Remark FROM Consumption INNER JOIN Consumption_Fabric ON Consumption.Consumption_ID = " & _
"Consumption_Fabric.Consumption_ID WHERE (ISNULL(Consumption.Factory_Style_No,'') LIKE '%" & Trim(Session("Factory_Style_No")) & "%') " & _
"AND (Consumption.Confirmation = 1) ORDER BY Consumption_Fabric.Consumption_ID DESC"
Dim sda As New SqlDataAdapter(sqlStr, cn)
Dim ds As New DataSet()
sda.Fill(ds)
ConsumptionGridView.DataSource = ds.Tables(0)
ConsumptionGridView.DataBind()
End Using
ModalPopupExtender4.Show()
End If
Catch ex As Exception
System.Windows.Forms.MessageBox.Show(ex.Message)
End Try
End Sub
Protected Sub Consumption_ConfirmButton_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Consumption_ConfirmButton.Click
Dim target_gridview As GridView = ConsumptionGridView
If Not target_gridview.Rows.Count = 0 Then
Using cn As New SqlConnection()
cn.ConnectionString = ConfigurationManager.ConnectionStrings("CostingConnectionString").ConnectionString
cn.Open()
Dim sqlStr As String = "INSERT INTO Costing_Consumption(Costing_ID,Fabric,Width,Weight,Consumption_Y,Consumption_P)" & _
"VALUES(@Costing_ID,@Fabric,@Width,@Weight,@Consumption_Y,@Consumption_P)"
Dim cmd As New SqlCommand(sqlStr, cn)
cmd.Parameters.Add(New SqlParameter("@Costing_ID", SqlDbType.Int))
cmd.Parameters.Add(New SqlParameter("@Fabric", SqlDbType.NVarChar))
cmd.Parameters.Add(New SqlParameter("@Width", SqlDbType.Float))
cmd.Parameters.Add(New SqlParameter("@Weight", SqlDbType.Float))
cmd.Parameters.Add(New SqlParameter("@Consumption_Y", SqlDbType.Float))
cmd.Parameters.Add(New SqlParameter("@Consumption_P", SqlDbType.Float))
For i As Integer = 0 To target_gridview.Rows.Count - 1
If DirectCast(target_gridview.Rows(i).Cells(0).FindControl("CheckBox1"), CheckBox).Checked Then
cmd.Parameters("@Costing_ID").Value = Request.QueryString("Costing_ID")
cmd.Parameters("@Fabric").Value = DirectCast(target_gridview.Rows(i).Cells(4).FindControl("Consumption_Fabric_NameTextBox"), TextBox).Text
cmd.Parameters("@Width").Value = DirectCast(target_gridview.Rows(i).Cells(6).FindControl("Consumption_Fabric_WidthTextBox"), TextBox).Text
cmd.Parameters("@Weight").Value = DirectCast(target_gridview.Rows(i).Cells(7).FindControl("Consumption_Fabric_WeightTextBox"), TextBox).Text
cmd.Parameters("@Consumption_Y").Value = Math.Round(Val(DirectCast(target_gridview.Rows(i).Cells(8).FindControl("Consumption_YTextBox"), TextBox).Text) / 12, 3)
cmd.Parameters("@Consumption_P").Value = Math.Round(Val(DirectCast(target_gridview.Rows(i).Cells(9).FindControl("Consumption_PTextBox"), TextBox).Text) / 12, 3)
cmd.ExecuteNonQuery()
End If
Next
End Using
UpdatePanel3.Update()
DirectCast(FormView1.FindControl("UpdatePanel8"), UpdatePanel).Update()
DirectCast(FormView1.FindControl("DataList1"), DataList).DataBind()
ModalPopupExtender4.Hide()
End If
End Sub