This commit is contained in:
2021-08-17 01:06:09 +00:00
parent e984ae5aff
commit a034e5a3fe

View File

@@ -1648,36 +1648,26 @@ namespace AyaNova.PlugIn.V8
progress.SubOp(""); progress.SubOp("");
var ObjectTypeName = "Part Assembly"; var ObjectTypeName = "Part Assembly";
PartAssemblies pa = PartAssemblies.GetItems(); PartAssemblies pa = PartAssemblies.GetItems();
string crit = "<?xml version=\"1.0\" encoding=\"utf-16\" standalone=\"yes\"?><GRIDCRITERIA> <COLUMNITEM CM=\"aPartAssembly.aName\" UI=\"LT_O_PartAssembly\" PIN=\"0\" WIDTH=\"120\" SORT=\"ASC\" /> <COLUMNITEM CM=\"aPart.aPartNumber\" UI=\"LT_Part_Label_PartNumber\" PIN=\"0\" WIDTH=\"111\" /> <COLUMNITEM CM=\"aPart.aName\" UI=\"LT_O_Part\" PIN=\"0\" WIDTH=\"135\" /> <COLUMNITEM CM=\"aManufacturers.aName\" UI=\"LT_Part_Label_ManufacturerID\" PIN=\"0\" WIDTH=\"114\" /> <WHEREITEMGROUP GROUPLOGICALOPERATOR=\"And\" UI=\"LT_O_PartAssembly\"> <WHEREITEM COMPAREOPERATOR=\"NotEquals\" CM=\"aPartAssembly.aName\" UICOMPAREVALUE=\"\" TYPE=\"System.String\" COMPAREVALUE=\"\" /> </WHEREITEMGROUP></GRIDCRITERIA>";
PartList pl = PartList.GetList(crit);
progress.Append("Exporting " + pl.Count.ToString() + " " + ObjectTypeName + " part records"); progress.Append("Exporting " + pa.Count.ToString() + " " + ObjectTypeName + " part records");
Guid gCurrentPartAssemblyId = Guid.Empty;
string sCurrentPartAssemblyName = string.Empty;
List<long> partsInAssembly = new List<long>();
foreach (PartList.PartListInfo i in pl)
{
if (!progress.KeepGoing) return;
//change of assembly in list
if (gCurrentPartAssemblyId != i.LT_O_PartAssembly.Value)
{
if (gCurrentPartAssemblyId != Guid.Empty)
{
foreach (PartAssembly p in pa) foreach (PartAssembly p in pa)
{ {
if (p.ID == gCurrentPartAssemblyId) if (!progress.KeepGoing) return;
{ string crit = "<?xml version=\"1.0\" encoding=\"utf-16\" standalone=\"yes\"?><GRIDCRITERIA> <COLUMNITEM CM=\"aPartAssembly.aName\" UI=\"LT_O_PartAssembly\" PIN=\"0\" WIDTH=\"120\" SORT=\"ASC\" /> <COLUMNITEM CM=\"aPart.aPartNumber\" UI=\"LT_Part_Label_PartNumber\" PIN=\"0\" WIDTH=\"111\" /> <COLUMNITEM CM=\"aPart.aName\" UI=\"LT_O_Part\" PIN=\"0\" WIDTH=\"135\" /> <COLUMNITEM CM=\"aManufacturers.aName\" UI=\"LT_Part_Label_ManufacturerID\" PIN=\"0\" WIDTH=\"114\" /> "
//Save the current assembly + "<WHEREITEMGROUP GROUPLOGICALOPERATOR=\"And\" UI=\"LT_O_PartAssembly\">"
+ "<WHEREITEM COMPAREOPERATOR=\"Equals\" CM=\"aPartAssembly.aID\" UICOMPAREVALUE=\"\" TYPE=\"System.Guid\" COMPAREVALUE=\"{" + p.ID.ToString().ToUpperInvariant() + "}\" /> "
+ "</WHEREITEMGROUP></GRIDCRITERIA>";
PartList pl = PartList.GetList(crit);
dynamic d = new JObject(); dynamic d = new JObject();
d.name = sCurrentPartAssemblyName; d.name = GetUniqueName(p.Name);
progress.Op(ObjectTypeName + " " + d.name); progress.Op(ObjectTypeName + " " + d.name);
d.active = p.Active; d.active = p.Active;
d.notes = p.Description; d.notes = p.Description;
JArray dItems = new JArray(); JArray dItems = new JArray();
foreach (long l in partsInAssembly) foreach (PartList.PartListInfo i in pl)
{ {
dynamic ditem = new JObject(); dynamic ditem = new JObject();
ditem.partId = l; ditem.partId = Getv7v8IdMap(i.LT_O_Part.Value, "part id for assembly");
ditem.partAssemblyId = 0; ditem.partAssemblyId = 0;
ditem.quantity = 1; ditem.quantity = 1;
dItems.Add(ditem); dItems.Add(ditem);
@@ -1691,15 +1681,6 @@ namespace AyaNova.PlugIn.V8
long RavenId = util.IdFromResponse(rMainObject); long RavenId = util.IdFromResponse(rMainObject);
//Event log fixup //Event log fixup
await util.EventLog(util.AyaType.Project, RavenId, SafeGetUserMap(p.Creator), SafeGetUserMap(p.Modifier), p.Created, p.Modified); await util.EventLog(util.AyaType.Project, RavenId, SafeGetUserMap(p.Creator), SafeGetUserMap(p.Modifier), p.Created, p.Modified);
break;
}//matches passembly list
}//each partassembly to match
}//not empty
partsInAssembly.Clear();
gCurrentPartAssemblyId = i.LT_O_PartAssembly.Value;
sCurrentPartAssemblyName = GetUniqueName(i.LT_O_PartAssembly.Display);
}
partsInAssembly.Add(Getv7v8IdMap(i.LT_O_Part.Value, "part id for assembly"));
} }
} }
#endregion part assemblies #endregion part assemblies