public void NewButton_Click(System.Object sender, System.EventArgs e) { try { IEdmSerNoValue serialNbrValue = default(IEdmSerNoValue); serialNbrValue = serialNbrs.AllocSerNoValue(aSerialNbrName, this.Handle.ToInt32(), " ", 0, 0, 0, 0); dynamic serialNbrValueValue = serialNbrValue.Value; IEdmEnumeratorVariable5 enumVariable = default(IEdmEnumeratorVariable5); enumVariable = aFile.GetEnumeratorVariable(aFileName); // Set the Part Number of the selected file enumVariable.SetVar("Part Number", "@", serialNbrValueValue); IEdmEnumeratorVariable8 enumVariable8 = (IEdmEnumeratorVariable8)enumVariable; enumVariable8.CloseFile(true); MessageBox.Show("Part Number set to " + serialNbrValueValue.ToString() + "." + " "); } catch (System.Runtime.InteropServices.COMException ex) { MessageBox.Show("HRESULT = 0x" + ex.ErrorCode.ToString("X") + " " + ex.Message); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
public static void SetVariable(IEdmVault7 vault, List <Files.Info> files) { try { foreach (var fileVar in files) { var filePath = fileVar.FolderPath + "\\" + fileVar.ConvertFile; fileNameErr = filePath; IEdmFolder5 folder; aFile = vault.GetFileFromPath(filePath, out folder); var pEnumVar = (IEdmEnumeratorVariable8)aFile.GetEnumeratorVariable();; pEnumVar.SetVar("Revision", "", fileVar.CurrentVersion); } } catch (COMException ex) { Logger.Add("ERROR BatchSetVariable файл: " + fileNameErr + ", " + ex.Message); } }
static string GetRevision(IEdmVault7 vault, int TaskType, string filePath) { var variable = ""; try { var aFolder = default(IEdmFolder5); aFile = vault.GetFileFromPath(filePath, out aFolder); object oVarRevision; if (aFile == null) { variable = "0"; } else { var pEnumVar = (IEdmEnumeratorVariable8)aFile.GetEnumeratorVariable(); pEnumVar.GetVar("Revision", "", out oVarRevision); if (oVarRevision == null) { variable = "0"; } else { variable = oVarRevision.ToString(); } } } catch (COMException ex) { Logger.Add("Batch.Get HRESULT = 0x" + ex.ErrorCode.ToString("X") + " " + ex.Message); } catch (Exception ex) { Logger.Add("Batch.Get Error " + ex.Message); } return(variable); }
public string DetermineConfig(IEdmFile5 Part, IEdmVault7 vault,EdmCmdData file, string SearchTerm) { string retval = "@"; EdmStrLst5 list = Part.GetConfigurations(); IEdmPos5 pos = list.GetHeadPosition(); Config_Select config; if (SearchTerm != "") config = new Config_Select(vault, Part, SearchTerm); else config = new Config_Select(vault, file); for (int i = 0; i < list.Count; i++) { string name = list.GetNext(pos); if (name != "@") { object number; object area; object mass; IEdmEnumeratorVariable5 var = Part.GetEnumeratorVariable(); var.GetVar("Number", name, out number); var.GetVar("NetWeight", name, out mass); var.GetVar("SurfaceArea", name, out area); if (number != null && mass != null && area != null) { config.config_cbo.Items.Add(name); } } } config.config_cbo.SelectedIndex = 0; config.ShowDialog(); retval = config.SelectedConfig; if (config.DialogResult == System.Windows.Forms.DialogResult.Cancel) return ""; return retval; }
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); } }
public SldAsm GetAsmIndoFromFile(IEdmVault5 poVault, string filePath) { IEdmFolder5 opParentFolder; IEdmFile5 poFile = poVault.GetFileFromPath(filePath, out opParentFolder); if (poFile == null) { return(null); } IEdmVariableMgr5 varMgr = (IEdmVariableMgr5)poVault; if (varMgr == null) { return(null); } IEdmEnumeratorVariable5 enumVar = poFile.GetEnumeratorVariable(); if (enumVar == null) { return(null); } if (filePath == "") { return(null); } EdmStrLst5 cfgList = poFile.GetConfigurations(); SldAsm asmPrd = new SldAsm(); asmPrd.path = filePath; asmPrd.amout = 1; if (varMgr.GetVariable("代号") != null) { object tmpVar = null; IEdmPos5 pos = cfgList.GetHeadPosition(); string cfgName = null; while (!pos.IsNull) { cfgName = cfgList.GetNext(pos); enumVar.GetVar("代号", cfgName, out tmpVar); if (tmpVar == null) { continue; } if (!tmpVar.ToString().Equals("")) { break; } } if (tmpVar != null) { asmPrd.number = tmpVar.ToString(); } if (asmPrd.number.IndexOf(".") > 0 && asmPrd.number.IndexOf(".") < asmPrd.number.Length) { asmPrd.ztdm = asmPrd.number.Substring(0, asmPrd.number.IndexOf(".")); asmPrd.zjdm = asmPrd.number.Substring(asmPrd.number.IndexOf(".") + 1); } else { asmPrd.ztdm = asmPrd.zjdm = asmPrd.number; } } if (varMgr.GetVariable("名称") != null) { object tmpVar = null; IEdmPos5 pos = cfgList.GetHeadPosition(); string cfgName = null; while (!pos.IsNull) { cfgName = cfgList.GetNext(pos); enumVar.GetVar("名称", cfgName, out tmpVar); if (tmpVar == null) { continue; } if (!tmpVar.ToString().Equals("")) { break; } } if (tmpVar != null) { asmPrd.name = tmpVar.ToString(); } } if (varMgr.GetVariable("设计") != null) { object tmpVar = null; IEdmPos5 pos = cfgList.GetHeadPosition(); string cfgName = null; while (!pos.IsNull) { cfgName = cfgList.GetNext(pos); enumVar.GetVar("设计", cfgName, out tmpVar); if (tmpVar == null) { continue; } if (!tmpVar.ToString().Equals("")) { break; } } if (tmpVar != null) { asmPrd.bzr = tmpVar.ToString(); } } if (varMgr.GetVariable("设计日期") != null) { object tmpVar = null; IEdmPos5 pos = cfgList.GetHeadPosition(); string cfgName = null; while (!pos.IsNull) { cfgName = cfgList.GetNext(pos); enumVar.GetVar("设计日期", cfgName, out tmpVar); if (tmpVar == null) { continue; } if (!tmpVar.ToString().Equals("")) { break; } } if (tmpVar != null) { asmPrd.bzsj = tmpVar.ToString(); } if (asmPrd.bzsj.IndexOf(" ") >= 0) { asmPrd.bzsj = asmPrd.bzsj.Substring(0, asmPrd.bzsj.IndexOf(" ")); } } if (varMgr.GetVariable("批准") != null) { object tmpVar = null; IEdmPos5 pos = cfgList.GetHeadPosition(); string cfgName = null; while (!pos.IsNull) { cfgName = cfgList.GetNext(pos); enumVar.GetVar("批准", cfgName, out tmpVar); if (tmpVar == null) { continue; } if (!tmpVar.ToString().Equals("")) { break; } } if (tmpVar != null) { asmPrd.pzr = tmpVar.ToString(); } } if (varMgr.GetVariable("批准日期") != null) { object tmpVar = null; IEdmPos5 pos = cfgList.GetHeadPosition(); string cfgName = null; while (!pos.IsNull) { cfgName = cfgList.GetNext(pos); enumVar.GetVar("批准日期", cfgName, out tmpVar); if (tmpVar == null) { continue; } if (!tmpVar.ToString().Equals("")) { break; } } if (tmpVar != null) { asmPrd.pzsj = tmpVar.ToString(); } if (asmPrd.pzsj.IndexOf(" ") >= 0) { asmPrd.pzsj = asmPrd.pzsj.Substring(0, asmPrd.pzsj.IndexOf(" ")); } } if (varMgr.GetVariable("阶段标记") != null) { object tmpVar = null; IEdmPos5 pos = cfgList.GetHeadPosition(); string cfgName = null; while (!pos.IsNull) { cfgName = cfgList.GetNext(pos); enumVar.GetVar("阶段标记", cfgName, out tmpVar); if (tmpVar == null) { continue; } if (!tmpVar.ToString().Equals("")) { break; } } if (tmpVar != null) { asmPrd.jdbj = tmpVar.ToString(); } } if (varMgr.GetVariable("设备型号") != null) { object tmpVar = null; IEdmPos5 pos = cfgList.GetHeadPosition(); string cfgName = null; while (!pos.IsNull) { cfgName = cfgList.GetNext(pos); enumVar.GetVar("设备型号", cfgName, out tmpVar); if (tmpVar == null) { continue; } if (!tmpVar.ToString().Equals("")) { break; } } if (tmpVar != null) { asmPrd.sbxh = tmpVar.ToString(); } } if (varMgr.GetVariable("Project Name") != null) { object tmpVar = null; IEdmPos5 pos = cfgList.GetHeadPosition(); string cfgName = null; while (!pos.IsNull) { cfgName = cfgList.GetNext(pos); enumVar.GetVar("Project Name", cfgName, out tmpVar); if (tmpVar == null) { continue; } if (!tmpVar.ToString().Equals("")) { break; } } if (tmpVar != null) { asmPrd.projName = tmpVar.ToString(); } } return(asmPrd); }