public void CostSearchDetail(int costHeadId) { Action <ClientRequestData> requestAction = ((ClientRequestData request) => { request.AddData(costHeadId); }); ServiceResponseData retdata = InvokeWcfService("OPProject.Service", "QueryController", "CostSearchDetail", requestAction); DataTable dtDetail = retdata.GetData <DataTable>(0); if (dtDetail.Rows.Count == 0) { return; } DataRow dr = dtDetail.NewRow(); dr["ItemName"] = "合 计"; dr["TotalFee"] = dtDetail.Compute("sum(totalFee)", string.Empty); DataTable dtCopy = dtDetail.Clone(); dtCopy.Clear(); dtCopy.Rows.Add(dtDetail.Rows[0].ItemArray); for (int i = 1; i < dtDetail.Rows.Count; i++) { if (Convert.ToInt32(dtDetail.Rows[i]["FeeItemHeadID"]) != Convert.ToInt32(dtDetail.Rows[i - 1]["FeeItemHeadID"])) { DataRow row = dtCopy.NewRow(); row["ItemName"] = "小 计"; row["TotalFee"] = dtDetail.Compute("sum(totalFee)", "FeeItemHeadID=" + dtDetail.Rows[i - 1]["FeeItemHeadID"]); dtCopy.Rows.Add(row); } dtCopy.Rows.Add(dtDetail.Rows[i].ItemArray); if (i == dtDetail.Rows.Count - 1) { DataRow row = dtCopy.NewRow(); row["ItemName"] = "小 计"; row["TotalFee"] = dtDetail.Compute("sum(totalFee)", "FeeItemHeadID=" + dtDetail.Rows[i]["FeeItemHeadID"]); dtCopy.Rows.Add(row); } } dtCopy.Rows.Add(dr.ItemArray); ifrmCostDetail.BindData(dtCopy); var dialog = iBaseView["FrmCostDetail"] as Form; dialog.ShowDialog(); }
public void CostSearchDetail(int costHeadid) { Action <ClientRequestData> requestAction = ((ClientRequestData request) => { request.AddData(costHeadid); }); ServiceResponseData retdata = InvokeWcfService("IPProject.Service", "IPCostSearchController", "GetCostDetail", requestAction); DataTable feeDt = retdata.GetData <DataTable>(0); if (feeDt != null && feeDt.Rows.Count > 0) { for (int i = 0; i < feeDt.Rows.Count; i++) { if (!string.IsNullOrEmpty(feeDt.Rows[i]["InvoiceClass"].ToString())) { feeDt.Rows[i]["ItemName"] = DBNull.Value; feeDt.Rows[i]["Spec"] = DBNull.Value; feeDt.Rows[i]["PackAmount"] = DBNull.Value; feeDt.Rows[i]["PackUnit"] = DBNull.Value; feeDt.Rows[i]["Amount"] = DBNull.Value; feeDt.Rows[i]["TotalFee"] = DBNull.Value; } else { if (feeDt.Rows[i]["PackUnit"].ToString().Contains("合计")) { feeDt.Rows[i]["InvoiceClass"] = DBNull.Value; feeDt.Rows[i]["ItemName"] = DBNull.Value; feeDt.Rows[i]["Spec"] = DBNull.Value; feeDt.Rows[i]["PackAmount"] = DBNull.Value; feeDt.Rows[i]["Amount"] = DBNull.Value; } } } mIFrmCostDetail.BindData(feeDt); } ((Form)iBaseView["FrmCostDetail"]).ShowDialog(); }