public SldBsp GetSldPrdInfoFromFile(IEdmVault5 poVault, string filePath) { SldBsp bspPrt = null; IEdmFolder5 opParentFolder; //bspPrt = new SldBuy(); IEdmFile5 poFile = poVault.GetFileFromPath(filePath, out opParentFolder); if (poFile == null) { bspPrt = new SldPrt(); bspPrt.type = 1; return(bspPrt); } IEdmEnumeratorVariable5 enumVar = poFile.GetEnumeratorVariable(); if (enumVar == null) { return(null); } object tmpVar; string partType = ""; if (enumVar.GetVar("Part Type", "@", out tmpVar)) { partType = tmpVar.ToString(); } if (partType == "自制件") { bspPrt = new SldPrt(); bspPrt.type = 1; SldPrt prt = (SldPrt)bspPrt; if (enumVar.GetVar("工艺路线", "@", out tmpVar)) { prt.route = tmpVar.ToString(); } } else if (partType == "标准件") { bspPrt = new SldStd(); bspPrt.type = 2; } else { bspPrt = new SldBuy(); bspPrt.type = 3; } bspPrt.path = filePath; return(bspPrt); }
public bool SaveBuyToWorkbook(Workbook workbook, SldAsm asmPrd) { int count = asmPrd.sldBuyList.Count; int perPageSize = WiseUtil.buyPageSize;// string pageName = WiseUtil.buyStr; int pageSize = count / perPageSize + (count % perPageSize > 0 ? 1 : 0); int rowStartIndex = 4; Sheets sheets = workbook.Worksheets; Worksheet worksheet = (Worksheet)sheets.get_Item(pageName); if (count <= 0) { worksheet.Delete(); return(true); } List <SldBuy> .Enumerator iEnum = asmPrd.sldBuyList.GetEnumerator(); Worksheet nextWorksheet = null; for (int pageIndex = 0; pageIndex < pageSize; pageIndex++) { if (pageIndex < pageSize - 1)//最后一个不能再复制了 { worksheet.Copy(Type.Missing, worksheet); nextWorksheet = worksheet.Next; } Range dyn = worksheet.Cells.get_Item("31", "A");// worksheet.Cells.get_Item("25", "A").set_Value(asmPrd.ztdm); worksheet.Range["A38"].Value = asmPrd.ztdm; worksheet.Range["A44"].Value = asmPrd.zjdm; worksheet.Range["E43"].Value = asmPrd.bzr; worksheet.Range["H43"].Value = asmPrd.bzsj; worksheet.Range["E44"].Value = asmPrd.pzr; worksheet.Range["H44"].Value = asmPrd.pzsj; if (asmPrd.jdbj == "S") { worksheet.Range["K42"].Value = asmPrd.jdbj; } else if (asmPrd.jdbj == "A") { worksheet.Range["L42"].Value = asmPrd.jdbj; } else if (asmPrd.jdbj == "B") { worksheet.Range["M42"].Value = asmPrd.jdbj; } else { worksheet.Range["N42"].Value = asmPrd.jdbj; } worksheet.Range["K44"].Value = "共 " + pageSize + " 页"; worksheet.Range["P44"].Value = "第 " + (pageIndex + 1) + " 页"; worksheet.Range["S44"].Value = asmPrd.sbxh; int row = 0; while (iEnum.MoveNext()) { SldBuy prt = iEnum.Current; int totalIndex = row + rowStartIndex; worksheet.Range["B" + totalIndex].Value = prt.materialNumber; worksheet.Range["E" + totalIndex].Value = prt.number; worksheet.Range["J" + totalIndex].Value = prt.name; worksheet.Range["O" + totalIndex].Value = prt.amout == 0 ? "" : prt.amout.ToString(); worksheet.Range["Q" + totalIndex].Value = prt.material; worksheet.Range["S" + totalIndex].Value = prt.weight == 0 ? "" : prt.weight.ToString(); worksheet.Range["T" + totalIndex].Value = prt.totalWeight == 0 ? "" : prt.totalWeight.ToString(); worksheet.Range["U" + totalIndex].Value = prt.remark; row++; if (row >= perPageSize) { break; } } worksheet = nextWorksheet; } return(true); }
public SldBsp GetSldPrdInfoFromFile(IEdmVault5 poVault, string filePath) { IEdmFolder5 opParentFolder; //bspPrt = new SldBuy(); IEdmFile5 poFile = poVault.GetFileFromPath(filePath, out opParentFolder); if (poFile == null) { return(null); } IEdmEnumeratorVariable5 enumVar = poFile.GetEnumeratorVariable(); if (enumVar == null) { return(null); } IEdmVariableMgr5 varMgr = (IEdmVariableMgr5)poVault; if (varMgr == null) { return(null); } object tmpVar; string partType = ""; if (varMgr.GetVariable("Part Type") != null && enumVar.GetVar("Part Type", "@", out tmpVar) && tmpVar != null) { partType = tmpVar.ToString(); } if (partType == "自制件") { SldPrt prt = new SldPrt(); prt.type = 1; object route = null; if (varMgr.GetVariable("工艺路线") != null) { if (enumVar.GetVar("工艺路线", "@", out route) && route != null) { prt.route = route.ToString(); } } return(prt); } else if (partType == "标准件") { SldStd std = new SldStd(); std.type = 2; return(std); } else if (partType == "外购件") { SldBuy buy = new SldBuy(); buy.type = 3; return(buy); } else { SldBsp buy = new SldBsp(); buy.type = 4; return(buy); } }