//In đơn đặt hàng ra report private void btnReport_Click(object sender, EventArgs e) { if (gridItemDetail.FocusedRowHandle > -1) { string code = gridItemDetail.GetFocusedRowCellValue(colOrderCode).ToString();//lấy Ordercode từ vị trí trên grid // Create a report. Reports.rptListOrder report = new Reports.rptListOrder(); Class.clsListOrder cls = new Class.clsListOrder(); cls.OrderCode=code; DataTable dt = cls.tbOrderReport_GetByCode(); if (dt.Rows.Count < 1) { MessageBox.Show("Chi tiết đơn hàng chưa được nhập. vui lòng nhập chi tiết đơn hàng trước.."); return; } dt.Columns.Add("STT"); dt.Columns.Add("SubTotal", typeof(Double)); dt.Columns.Add("SubTotalAll", typeof(Double)); dt.Columns.Add("SubTotalByWord"); dt.Columns.Add("SubTotal_VAT", typeof(Double)); bool tienusd = false; string txt = ""; Double _SubTotal = 0; Double _vat = Double.Parse(dt.Rows[0]["VAT"].ToString()); for (int i = 0; i < dt.Rows.Count; i++) { dt.Rows[i]["STT"] = i + 1; _SubTotal = _SubTotal + Double.Parse(dt.Rows[i]["Monetize"].ToString()); } /// kiem tra tien le for (int i = 0; i < dt.Rows.Count; i++) { txt = dt.Rows[0]["Monetize"].ToString(); //_TongTienAll.ToString("F"); if (txt.EndsWith(".00")) { tienusd = false; } else if (txt.IndexOf('.') < 0) { tienusd = false; } else if (txt == "0.0000") { tienusd = false; } else { tienusd = true; break; } } Double _SubTotalAll = _SubTotal + (_SubTotal * _vat) / 100; string _MoneyByWord = SwitchToNumber(_SubTotalAll.ToString("F0")) + "đồng"; Double _SubTotal_VAT = (_SubTotal * _vat) / 100; if (tienusd) _MoneyByWord = ""; if (txt == "0.0000") _MoneyByWord = ""; for (int i = 0; i < dt.Rows.Count; i++) { dt.Rows[i]["SubTotal"] = _SubTotal; dt.Rows[i]["SubTotalAll"] = _SubTotalAll; dt.Rows[i]["SubTotalByWord"] = _MoneyByWord; dt.Rows[i]["SubTotal_VAT"] = _SubTotal_VAT; } if (tienusd) report= new Reports.rptListOrder("usd"); else report = new Reports.rptListOrder(); report.DataSource = dt; // Show the report's preview.; // ReportPrintTool tool = new ReportPrintTool(report); // tool.ShowPreview(); report.ShowPreview(); //report.ShowDesigner(); } }
//In đơn đặt hàng ra report private void btnReport_Click(object sender, EventArgs e) { if (gridItemDetail.FocusedRowHandle > -1) { string code = gridItemDetail.GetFocusedRowCellValue(colOrderCode).ToString();//lấy Ordercode từ vị trí trên grid // Create a report. Class.clsListOrder cls = new Class.clsListOrder(); Class.NumberToText clsNB = new Class.NumberToText(); cls.OrderCode=code; DataTable dt = cls.tbOrderReport_GetByCode(); if (dt.Rows.Count < 1) { MessageBox.Show("Chi tiết đơn hàng chưa được nhập. vui lòng nhập chi tiết đơn hàng trước.."); return; } dt.Columns.Add("STT"); dt.Columns.Add("SubTotal", typeof(Double)); dt.Columns.Add("SubTotalAll", typeof(Double)); dt.Columns.Add("SubTotalByWord"); dt.Columns.Add("SubTotal_VAT", typeof(Double)); bool tienusd = false; Double _SubTotal = 0; Double _vat = Double.Parse(dt.Rows[0]["VAT"].ToString()); for (int i = 0; i < dt.Rows.Count; i++) { dt.Rows[i]["STT"] = i + 1; _SubTotal = _SubTotal + Double.Parse(dt.Rows[i]["Monetize"].ToString()); } /// kiem tra tien le //for (int i = 0; i < dt.Rows.Count; i++) //{ // txt = dt.Rows[0]["Monetize"].ToString(); //_TongTienAll.ToString("F"); // if (txt.EndsWith(".00")) // { // tienusd = false; // } // else if (txt.IndexOf('.') < 0) // { // tienusd = false; // } // else if (txt == "0.0000") // { // tienusd = false; // } // else // { // tienusd = true; // break; // } //} if (dt.Rows[0]["CurrencyUnit"].ToString() == "USD") tienusd = true; else tienusd = false; Double _SubTotalAll = _SubTotal + (_SubTotal * _vat) / 100; Double _SubTotal_VAT = (_SubTotal * _vat) / 100; string _MoneyByWord; Class.CurrencyTranslator tran = new Class.CurrencyTranslator(); if (tienusd) //_MoneyByWord = ""; // _MoneyByWord = clsNB.Convert(Double.Parse(_SubTotalAll.ToString())) + " dollar"; _MoneyByWord = "US Dollars " + tran.TranslateCurrency(decimal.Parse(_SubTotalAll.ToString())) + " Only"; else _MoneyByWord = SwitchToNumber(_SubTotalAll.ToString("F0")) + "đồng"; //if (txt == "0.0000") // _MoneyByWord = ""; for (int i = 0; i < dt.Rows.Count; i++) { dt.Rows[i]["SubTotal"] = _SubTotal; dt.Rows[i]["SubTotalAll"] = _SubTotalAll; dt.Rows[i]["SubTotalByWord"] = _MoneyByWord; dt.Rows[i]["SubTotal_VAT"] = _SubTotal_VAT; } //In report font nho if (dt.Rows.Count > 7) { Reports.rptListOrder_Font report = null; if (tienusd) report = new Reports.rptListOrder_Font("usd"); else report = new Reports.rptListOrder_Font(""); report.DataSource = dt; report.ShowPreview(); } else { Reports.rptListOrder report = null; if (tienusd) report = new Reports.rptListOrder("usd"); else report = new Reports.rptListOrder(""); report.DataSource = dt; report.ShowPreview(); } } }