int purchaseImportOrderID = RequestHandler.GetIntQueryString("ID");
ProductSearchInfo productSearch = new ProductSearchInfo();
List<ProductInfo> productList = new List<ProductInfo>();
productSearch.All = true;
productSearch.ImportOrderID = purchaseImportOrderID;
productSearch.Deleted = 0;
int count = 0;
productList = ERPProductBLL_Extension.SearchPurchaseImportProductList(productSearch, ref count);
ReportDocument myTicketsReport = new ReportDocument();
string reportPath = Server.MapPath("CrystalReport//PurchaseImportOrderRpt.rpt");
myTicketsReport.Load(reportPath);
DataTable dt = new DataTable();
dt.Columns.Add(new DataColumn("Index", Type.GetType("System.Int32")));
dt.Columns.Add(new DataColumn("ProductCode", Type.GetType("System.String")));
dt.Columns.Add(new DataColumn("ProductName", Type.GetType("System.String")));
dt.Columns.Add(new DataColumn("Size", Type.GetType("System.String")));
dt.Columns.Add(new DataColumn("Model", Type.GetType("System.String")));
dt.Columns.Add(new DataColumn("Unit", Type.GetType("System.String")));
dt.Columns.Add(new DataColumn("SalePrice", Type.GetType("System.Decimal")));
dt.Columns.Add(new DataColumn("ProductCount", Type.GetType("System.Int32")));
dt.Columns.Add(new DataColumn("Amount", Type.GetType("System.Decimal")));
dt.Columns.Add(new DataColumn("Gift", Type.GetType("System.String")));
string strProuctID = string.Empty;
foreach (ProductInfo product in productList)
{
strProuctID += product.ID.ToString() + ",";
}
if (strProuctID.LastIndexOf(",") > 0)
{
strProuctID = strProuctID.Substring(0, strProuctID.Length - 1);
}
//碟数
Dictionary<int, string> dictDiskQty = new Dictionary<int, string>();
//介质
Dictionary<int, string> dictMedia = new Dictionary<int, string>();
//单位
Dictionary<int, string> dictUnit = new Dictionary<int, string>();
List<ProductAttributeRecordInfo> productAttributeRecordList = new List<ProductAttributeRecordInfo>();
ProductAttributeRecordSearchInfo productAttributeRecordSearch = new ProductAttributeRecordSearchInfo();
productAttributeRecordSearch.All = true;
productAttributeRecordSearch.AttributeID = ERPConfig.ReadConfigInfo().DiskQty;
productAttributeRecordSearch.StrProductID = strProuctID;
dictDiskQty = ERPProductAttributeRecordBLL_Extension.ReadProductAttributeRecordDictList(productAttributeRecordSearch);
productAttributeRecordSearch.AttributeID = ERPConfig.ReadConfigInfo().Media;
dictMedia = ERPProductAttributeRecordBLL_Extension.ReadProductAttributeRecordDictList(productAttributeRecordSearch);
productAttributeRecordSearch.AttributeID = ERPConfig.ReadConfigInfo().Unit;
dictUnit = ERPProductAttributeRecordBLL_Extension.ReadProductAttributeRecordDictList(productAttributeRecordSearch);
int i = 0;
foreach (ProductInfo product in productList)
{
i++;
DataRow row = dt.NewRow();
row["Index"] = i;
row["ProductCode"] = product.ProductCode;
row["ProductName"] = product.ProductName;
row["Size"] = ERPCommon.ReadDict(dictDiskQty, product.ID);
row["Model"] = ERPCommon.ReadDict(dictMedia, product.ID);
row["Unit"] = ERPCommon.ReadDict(dictUnit, product.ID);
row["SalePrice"] = product.SalePrice;
row["ProductCount"] = product.ProductCount;
row["Amount"] = product.SalePrice * product.ProductCount;
row["Gift"] = "";
dt.Rows.Add(row);
}
myTicketsReport.SetDataSource(dt);
int userID = int.MinValue;
SupplierInfo supplier = new SupplierInfo();
StorageInfo storage = new StorageInfo();
PurchaseImportOrderInfo purchaseImportOrder = new PurchaseImportOrderInfo();
PurchaseImportApplyInfo purchaseImportApply = new PurchaseImportApplyInfo();
purchaseImportOrder = ERPPurchaseImportOrderBLL.ReadPurchaseImportOrder(purchaseImportOrderID, userID);
supplier = ERPSupplierBLL.ReadSupplier(purchaseImportOrder.SupplierID, userID);
storage = ERPStorageBLL.ReadStorage(purchaseImportOrder.StroageIDIn, userID);
//采购入库申请
purchaseImportApply = ERPPurchaseImportApplyBLL.ReadPurchaseImportApply(purchaseImportOrder.ApplyID, userID);
myTicketsReport.SetParameterValue("SupplierCode", supplier.ID.ToString());
myTicketsReport.SetParameterValue("SupplierName", supplier.SupplierName);
myTicketsReport.SetParameterValue("StorageCode", storage.ID.ToString());
myTicketsReport.SetParameterValue("StorageName", storage.StorageName);
myTicketsReport.SetParameterValue("OrderDate", Convert.ToDateTime(purchaseImportOrder.PostTime).ToString("yyyy-MM-dd").Replace("-", "/"));
myTicketsReport.SetParameterValue("OrderNo", ERPCommon.ReadOrderNum(purchaseImportOrder.OrderCode));
myTicketsReport.SetParameterValue("Note", purchaseImportOrder.Note);
myTicketsReport.SetParameterValue("Maker", purchaseImportOrder.UserName);
myTicketsReport.SetParameterValue("Operate", purchaseImportApply.UserName);
myTicketsReport.SetParameterValue("Account", "刘特绵");
PurchaseImportOrder.ReportSource = myTicketsReport;