Fix siemens Library
This commit is contained in:
@@ -210,7 +210,7 @@ namespace CMS_CORE_Application
|
||||
SetError(Lines, cmsError);
|
||||
}
|
||||
|
||||
// cmsError = N.TOOLS_WAddShank(ref newShank);
|
||||
cmsError = N.TOOLS_WAddShank(ref newShank);
|
||||
// cmsError = N.TOOLS_WDeleteShank(4);
|
||||
//cmsError = N.TOOLS_WUpdateEdge(1, ref newEdge);
|
||||
// List<MountedMultiToolModel> a = null;
|
||||
@@ -234,11 +234,11 @@ namespace CMS_CORE_Application
|
||||
//cmsError = N.TOOLS_RShanksData(ref shanks);
|
||||
//cmsError = N.TOOLS_RFamilyData(ref famiies);
|
||||
//cmsError = N.TOOLS_RMagazinePositions(ref positions);
|
||||
cmsError = N.TOOLS_WAddTool(ref newTool);
|
||||
// cmsError = N.TOOLS_WAddTool(ref newTool);
|
||||
|
||||
//ShankModel shank = new ShankModel();
|
||||
newShank.Name = newShank.Name + "1";
|
||||
cmsError = N.TOOLS_WAddShank(ref newShank);
|
||||
// newShank.Name = newShank.Name + "1";
|
||||
// cmsError = N.TOOLS_WAddShank(ref newShank);
|
||||
//FamilyModel family = new FamilyModel
|
||||
//{
|
||||
// Name = "Da demo"
|
||||
|
||||
@@ -653,6 +653,8 @@ namespace CMS_CORE_Library
|
||||
public int MaxMultitools;
|
||||
public int MaxToolsPerMultitools;
|
||||
|
||||
public bool MultitoolOptionActive;
|
||||
|
||||
public List<MagazineModel> Magazines;
|
||||
public List<FieldsConfiguration> ToolsConfiguration;
|
||||
public FamiliesConfiguration FamiliesConfiguration;
|
||||
|
||||
@@ -88,6 +88,9 @@ namespace CMS_CORE.Siemens
|
||||
private static int MAX_MULTITOOLS_NUMBER;
|
||||
private static int MAX_TOOLS_PER_MULTITOOL;
|
||||
|
||||
private static bool LIFE_OPTION_ACTIVE;
|
||||
private static bool MULTITOOL_OPTION_ACTIVE;
|
||||
|
||||
private Alarm[] SiemensAlarms;
|
||||
|
||||
private static string PlcMessagesFilePath = "C:\\Program Files (x86)\\Siemens\\MotionControl\\oem\\sinumerik\\hmi\\lng\\";
|
||||
@@ -97,13 +100,14 @@ namespace CMS_CORE.Siemens
|
||||
|
||||
// Tool table static data
|
||||
private static List<SiemensToolModel> ToolTableData = new List<SiemensToolModel>();
|
||||
|
||||
private static List<PositionModel> MagazinePositionsData = new List<PositionModel>();
|
||||
private static List<ShankModel> MultitoolsData = new List<ShankModel>();
|
||||
private static List<PositionModel> MagazineMountedTools = new List<PositionModel>();
|
||||
public static List<FamilyModel> FamiliesData = new List<FamilyModel>();
|
||||
public static MagazineActionModel MagazineAction = new MagazineActionModel();
|
||||
|
||||
public static uint multitoolsNumber = 0;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#region Contructor & global methods
|
||||
@@ -207,10 +211,20 @@ namespace CMS_CORE.Siemens
|
||||
MAX_TOOLS_PER_MULTITOOL = (int)itemToRead.Value;
|
||||
// Read file
|
||||
string[] toolsStrings = ReadToolTableFile();
|
||||
|
||||
// Read options from NC
|
||||
itemToRead = new Item("/NC/_N_NC_TEA_ACX/$MN_MM_TOOL_MANAGEMENT_MASK");
|
||||
dataSvc.Read(itemToRead);
|
||||
MULTITOOL_OPTION_ACTIVE = GetBitValue(Convert.ToInt32(itemToRead.Value), 11);
|
||||
LIFE_OPTION_ACTIVE = GetBitValue(Convert.ToInt32(itemToRead.Value), 6);
|
||||
// If not active remove fields from config
|
||||
if (!LIFE_OPTION_ACTIVE)
|
||||
RemoveLifeParamsFromConfig();
|
||||
|
||||
// Parse file
|
||||
PopulateToolsTableFromFileStrings(toolsStrings);
|
||||
|
||||
// Setup magazine positions update listener
|
||||
// Setup magazine positions listener
|
||||
List<Item> magPosItems = new List<Item>();
|
||||
foreach (var position in MagazinePositionsData)
|
||||
{
|
||||
@@ -221,6 +235,7 @@ namespace CMS_CORE.Siemens
|
||||
SymbolicName = position.MagazineId + "_" + position.PositionId
|
||||
});
|
||||
}
|
||||
|
||||
// Subscribe
|
||||
MagazinePositionSvc.Subscribe(MagazinePositionEnabled_OnChange, magPosItems.ToArray());
|
||||
|
||||
@@ -230,6 +245,42 @@ namespace CMS_CORE.Siemens
|
||||
Path = "DB71.DBB0"
|
||||
};
|
||||
MagazineActionsSvc.Subscribe(MagazineAction_OnChange, magActionsItem);
|
||||
|
||||
DataSvc d = new DataSvc();
|
||||
Item i = new Item() { Path = "/Tool/MTCatalogue/numMultiTools[u1]" };
|
||||
d.Subscribe(MultitoolsNumber_OnChange, i);
|
||||
}
|
||||
|
||||
private void MultitoolsNumber_OnChange(Guid guid, Item item, DataSvcStatus status)
|
||||
{
|
||||
// Check if an element has been deleted
|
||||
if((uint)item.Value < multitoolsNumber)
|
||||
{
|
||||
// for each saved multitool
|
||||
for (int i = 0; i < MultitoolsData.Count; i++)
|
||||
{
|
||||
try
|
||||
{
|
||||
// Check if exists
|
||||
Item toolData = new Item(string.Format("/Tool/MT/multitoolMyPlace[u1, {0}]", MultitoolsData[i].Id));
|
||||
DataSvc dataSvc = new DataSvc();
|
||||
dataSvc.Read(toolData);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// Remove from list
|
||||
MultitoolsData.RemoveAt(i);
|
||||
}
|
||||
}
|
||||
}
|
||||
// Update multitool counter
|
||||
multitoolsNumber = (uint)item.Value;
|
||||
}
|
||||
|
||||
private void RemoveLifeParamsFromConfig()
|
||||
{
|
||||
SiemensToolFieldsConfig.RemoveAll(x => x.Category == "life");
|
||||
SiemensEdgesFieldsConfiguration.EdgeConfiguration.RemoveAll(x => x.Category == "life");
|
||||
}
|
||||
|
||||
public override CmsError NC_GetTranslatedPlcMessages(string language, ref Dictionary<int, string> messages)
|
||||
@@ -1819,12 +1870,15 @@ namespace CMS_CORE.Siemens
|
||||
|
||||
public override CmsError TOOLS_RConfiguration(ref ToolTableConfiguration config)
|
||||
{
|
||||
// Set limits
|
||||
config.MaxTools = MAX_TOOL_NUMER;
|
||||
config.MaxEdgesPerTools = MAX_EDGES_PER_TOOL;
|
||||
config.MaxToolsPerFamily = MAX_TOOLS_PER_FAMILY;
|
||||
config.MaxMultitools = MAX_MULTITOOLS_NUMBER;
|
||||
config.MaxToolsPerMultitools = MAX_TOOLS_PER_MULTITOOL;
|
||||
|
||||
// Set options
|
||||
config.MultitoolOptionActive = MULTITOOL_OPTION_ACTIVE;
|
||||
// Set fields configurations
|
||||
config.ToolsConfiguration = SiemensToolFieldsConfig;
|
||||
config.FamiliesConfiguration = SiemensFamilyFieldsConfig;
|
||||
config.ShanksConfiguration = SiemensShankFieldsConfig;
|
||||
@@ -1977,8 +2031,6 @@ namespace CMS_CORE.Siemens
|
||||
new Item() { Path = "/Tool/Data/toolplace_spec[" + tool.Id + "]", Value = tool.MagazinePositionType },
|
||||
// TC_TP8
|
||||
new Item() { Path = "/Tool/Data/toolStateL[" + tool.Id + "]", Value = array[0] },
|
||||
// TC_TP9
|
||||
new Item() { Path = "/Tool/Data/toolMon[" + tool.Id + "]", Value = (int)tool.LifeType, },
|
||||
// TC_DP1
|
||||
new Item() { Path = "/Tool/Compensation/edgeData[c" + tool.Id + ",1]", Value = tool.ToolType },
|
||||
// TC_DP25
|
||||
@@ -1989,6 +2041,9 @@ namespace CMS_CORE.Siemens
|
||||
new Item() { Path = "/Tool/Data/toolMaxAcc[" + tool.Id + "]", Value = tool.MaxAcceleration }
|
||||
};
|
||||
|
||||
if (LIFE_OPTION_ACTIVE) // TC_TP9
|
||||
items.Add(new Item() { Path = "/Tool/Data/toolMon[" + tool.Id + "]", Value = (int)tool.LifeType });
|
||||
|
||||
dataSvc.Write(items.ToArray());
|
||||
|
||||
Item childId = new Item() { Path = "/Tool/Data/duploNo[" + tool.Id + "]" };
|
||||
@@ -2061,6 +2116,7 @@ namespace CMS_CORE.Siemens
|
||||
return INCORRECT_PARAMETERS_ERROR;
|
||||
//if (shank.MaxChilds > MAX_TOOLS_PER_MULTITOOLS)
|
||||
// return INCORRECT_PARAMETERS_ERROR;
|
||||
|
||||
try
|
||||
{
|
||||
if (shank.Name.Count() > 32)
|
||||
@@ -2099,30 +2155,6 @@ namespace CMS_CORE.Siemens
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
public override CmsError TOOLS_WUpdatePosition(PositionModel position)
|
||||
{
|
||||
try
|
||||
{
|
||||
DataSvc dataSvc = new DataSvc();
|
||||
int paramId = ((position.PositionId - 1) * 11) + 5;
|
||||
// TC_MTP2
|
||||
Item item = new Item()
|
||||
{
|
||||
Path = string.Format("/Tool/Magazine/placeData[c{0} , {1}]", position.MagazineId, paramId)
|
||||
};
|
||||
dataSvc.Read(item);
|
||||
|
||||
item.Value = SetBitValue(Convert.ToInt32(item.Value), position.Disabled, 1);
|
||||
dataSvc.Write(item);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
return ManageException(ex);
|
||||
}
|
||||
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
public override CmsError TOOLS_WUpdateShank(ref ShankModel shank)
|
||||
{
|
||||
try
|
||||
@@ -2138,11 +2170,12 @@ namespace CMS_CORE.Siemens
|
||||
// TC_MTP2
|
||||
new Item("/Tool/MT/multitoolIdent[" + shank.Id + "]") { Value = shank.Name },
|
||||
// TC_MTP3
|
||||
new Item() { Path = "/Tool/MT/multitoolsize_left[" + shank.Id + "]", Value = shank.LeftSize },
|
||||
|
||||
new Item() { Path = "/Tool/MT/multitoolsize_left[" + shank.Id + "]", Value = shank.LeftSize == 0 ? 1 : shank.LeftSize },
|
||||
// TC_MTP4
|
||||
new Item() { Path = "/Tool/MT/multitoolsize_right[" + shank.Id + "]", Value = shank.RightSize },
|
||||
new Item() { Path = "/Tool/MT/multitoolsize_right[" + shank.Id + "]", Value = shank.RightSize == 0 ? 1 : shank.RightSize },
|
||||
// TC_TMP7
|
||||
new Item() { Path = "/Tool/MT/multitoolplace_spec[" + shank.Id + "]", Value = shank.MagazinePositionType },
|
||||
new Item() { Path = "/Tool/MT/multitoolplace_spec[" + shank.Id + "]", Value = shank.MagazinePositionType == 0 ? 1 : shank.MagazinePositionType },
|
||||
// TC_MTP8
|
||||
new Item() { Path = "/Tool/MT/multitoolStateL[" + shank.Id + "]", Value = array[0] }
|
||||
};
|
||||
@@ -2242,6 +2275,9 @@ namespace CMS_CORE.Siemens
|
||||
|
||||
if (tool.EdgesData.Count > MAX_EDGES_PER_TOOL)
|
||||
return MAX_EDGES_PER_TOOL_REACHED_ERROR;
|
||||
// Get next edge id
|
||||
int nextEdgeId = tool.EdgesData.Count + 1;
|
||||
|
||||
try
|
||||
{
|
||||
// Create strings parameters
|
||||
@@ -2254,6 +2290,12 @@ namespace CMS_CORE.Siemens
|
||||
// Start NC add command
|
||||
PiSvc pi = new PiSvc(piArgs);
|
||||
pi.Start();
|
||||
|
||||
edge.Id = nextEdgeId;
|
||||
|
||||
CmsError cmsError = TOOLS_WUpdateEdge(toolId, ref edge);
|
||||
if (cmsError.IsError())
|
||||
return cmsError;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
@@ -2278,30 +2320,41 @@ namespace CMS_CORE.Siemens
|
||||
List<EdgeConfigModel> toolTypeConfig = toolEdgesConfig.EdgesConfig[tool.ToolType];
|
||||
DataSvc dataSvc = new DataSvc();
|
||||
List<Item> items = new List<Item>();
|
||||
int edgeOffset = (edge.Id - 1) * 9;
|
||||
switch (tool.LifeType)
|
||||
{
|
||||
case SIEMENS_LIFE_TYPE.TIME:
|
||||
{
|
||||
items.Add(new Item() { Path = string.Format("/Tool/Supervision/data[c{0}, {1}]", tool.Id, edgeOffset + 1), Value = edge.PreAlmLife });
|
||||
items.Add(new Item() { Path = string.Format("/Tool/Supervision/data[c{0}, {1}]", tool.Id, edgeOffset + 2), Value = edge.NominalLife });
|
||||
items.Add(new Item() { Path = string.Format("/Tool/Supervision/data[c{0}, {1}]", tool.Id, edgeOffset + 5), Value = edge.ResidualLife });
|
||||
}
|
||||
break;
|
||||
|
||||
case SIEMENS_LIFE_TYPE.COUNT:
|
||||
{
|
||||
items.Add(new Item() { Path = string.Format("/Tool/Supervision/data[c{0}, {1}]", tool.Id, edgeOffset + 3), Value = edge.PreAlmLife });
|
||||
items.Add(new Item() { Path = string.Format("/Tool/Supervision/data[c{0}, {1}]", tool.Id, edgeOffset + 4), Value = edge.NominalLife });
|
||||
items.Add(new Item() { Path = string.Format("/Tool/Supervision/data[c{0}, {1}]", tool.Id, edgeOffset + 6), Value = edge.ResidualLife });
|
||||
}
|
||||
break;
|
||||
int edgeLifeOffset = (edge.Id - 1) * 9;
|
||||
if (LIFE_OPTION_ACTIVE) // Check if life option is active
|
||||
{
|
||||
switch (tool.LifeType)
|
||||
{
|
||||
case SIEMENS_LIFE_TYPE.TIME:
|
||||
{
|
||||
items.Add(new Item() { Path = string.Format("/Tool/Supervision/data[c{0}, {1}]", tool.Id, edgeLifeOffset + 1), Value = edge.PreAlmLife });
|
||||
items.Add(new Item() { Path = string.Format("/Tool/Supervision/data[c{0}, {1}]", tool.Id, edgeLifeOffset + 2), Value = edge.NominalLife });
|
||||
items.Add(new Item() { Path = string.Format("/Tool/Supervision/data[c{0}, {1}]", tool.Id, edgeLifeOffset + 5), Value = edge.ResidualLife });
|
||||
}
|
||||
break;
|
||||
|
||||
case SIEMENS_LIFE_TYPE.COUNT:
|
||||
{
|
||||
items.Add(new Item() { Path = string.Format("/Tool/Supervision/data[c{0}, {1}]", tool.Id, edgeLifeOffset + 3), Value = edge.PreAlmLife });
|
||||
items.Add(new Item() { Path = string.Format("/Tool/Supervision/data[c{0}, {1}]", tool.Id, edgeLifeOffset + 4), Value = edge.NominalLife });
|
||||
items.Add(new Item() { Path = string.Format("/Tool/Supervision/data[c{0}, {1}]", tool.Id, edgeLifeOffset + 6), Value = edge.ResidualLife });
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
// Edge params
|
||||
int edgeParamsIndex = ((edge.Id - 1) * 35);
|
||||
|
||||
// Set edge id type
|
||||
items.Add(new Item() { Path = string.Format("/Tool/Compensation/edgeData[c{0},{1}]", tool.Id, edgeParamsIndex + 1), Value = tool.ToolType });
|
||||
|
||||
// Set edge additional params, read by configuration
|
||||
foreach (EdgeConfigModel conf in toolTypeConfig)
|
||||
{
|
||||
if (edge.EdgeAdditionalParams.ContainsKey(conf.Name))
|
||||
{
|
||||
items.Add(new Item() { Path = string.Format("/Tool/Compensation/edgeData[c{0}, {1}]", edge.Id, edgeOffset + conf.Number), Value = edge.EdgeAdditionalParams[conf.Name] });
|
||||
items.Add(new Item() { Path = string.Format("/Tool/Compensation/edgeData[c{0}, {1}]", tool.Id, edgeParamsIndex + conf.Number), Value = edge.EdgeAdditionalParams[conf.Name] });
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2468,6 +2521,31 @@ namespace CMS_CORE.Siemens
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
public override CmsError TOOLS_WUpdatePosition(PositionModel position)
|
||||
{
|
||||
try
|
||||
{
|
||||
DataSvc dataSvc = new DataSvc();
|
||||
int paramId = ((position.PositionId - 1) * 11) + 5;
|
||||
// TC_MTP2
|
||||
Item item = new Item()
|
||||
{
|
||||
Path = string.Format("/Tool/Magazine/placeData[c{0} , {1}]", position.MagazineId, paramId)
|
||||
};
|
||||
dataSvc.Read(item);
|
||||
|
||||
item.Value = SetBitValue(Convert.ToInt32(item.Value), position.Disabled, 1);
|
||||
dataSvc.Write(item);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
return ManageException(ex);
|
||||
}
|
||||
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
|
||||
public override CmsError TOOLS_RMagazineTools(int magazineId, ref List<PositionModel> magazinePos)
|
||||
{
|
||||
if (magazineId <= 0)
|
||||
@@ -2529,7 +2607,7 @@ namespace CMS_CORE.Siemens
|
||||
return NO_ERROR;
|
||||
}
|
||||
|
||||
#endregion Tools functions
|
||||
#endregion Tool Management
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -3593,7 +3671,7 @@ namespace CMS_CORE.Siemens
|
||||
if (tool != null)
|
||||
// Remove
|
||||
ToolTableData.Remove(tool);
|
||||
else
|
||||
else if (MULTITOOL_OPTION_ACTIVE)
|
||||
{
|
||||
// if tool not exist, find into shanks
|
||||
ShankModel shank = MultitoolsData.SingleOrDefault(t => t.Id == toolInfo.tNo);
|
||||
@@ -3622,7 +3700,7 @@ namespace CMS_CORE.Siemens
|
||||
ToolTableData.Add(newTool);
|
||||
AddOrUpdateFamilyChild(newTool.FamilyName);
|
||||
}
|
||||
else
|
||||
else if (MULTITOOL_OPTION_ACTIVE)
|
||||
{
|
||||
ShankModel newMultitool = CreateMultitoolFromId((int)toolInfo.tNo, toolsStrings);
|
||||
MultitoolsData.Add(newMultitool);
|
||||
@@ -3646,11 +3724,11 @@ namespace CMS_CORE.Siemens
|
||||
if (newTool != null)
|
||||
ToolTableData[toolIndex] = newTool;
|
||||
}
|
||||
else
|
||||
else if (MULTITOOL_OPTION_ACTIVE)
|
||||
{
|
||||
// Find if its a multitool
|
||||
int multitoolIndex = MultitoolsData.FindIndex(t => t.Id == toolInfo.tNo);
|
||||
|
||||
|
||||
if (multitoolIndex != -1)
|
||||
{
|
||||
// Create model with new data
|
||||
@@ -3659,6 +3737,11 @@ namespace CMS_CORE.Siemens
|
||||
if (newShank != null)
|
||||
MultitoolsData[multitoolIndex] = newShank;
|
||||
}
|
||||
else
|
||||
{
|
||||
ShankModel newMultitool = CreateMultitoolFromId((int)toolInfo.tNo, toolsStrings);
|
||||
MultitoolsData.Add(newMultitool);
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -3738,6 +3821,30 @@ namespace CMS_CORE.Siemens
|
||||
return Convert.ToInt32(item.Value);
|
||||
}
|
||||
|
||||
private int GetLastEdgeId(int toolId)
|
||||
{
|
||||
// Get edgeIds ids
|
||||
List<int> edgeIds = ToolTableData.Where(x => x.Id == toolId).FirstOrDefault()?.EdgesData.Select(x => x.Id).ToList();
|
||||
// Sort tools ids array
|
||||
edgeIds.Sort((x, y) => x.CompareTo(y));
|
||||
|
||||
if (edgeIds.Count == 0)
|
||||
return 1;
|
||||
|
||||
for (int i = 0; i < edgeIds.Count - 1; i++)
|
||||
{
|
||||
// If next id is different than previus + 1, there is an empty space in the array of numbers
|
||||
if (edgeIds[i] + 1 != edgeIds[i + 1])
|
||||
{
|
||||
// return new id
|
||||
return edgeIds[i] + 1;
|
||||
}
|
||||
}
|
||||
|
||||
// If there isn't an empty space return max id + 1
|
||||
return edgeIds[edgeIds.Count - 1] + 1;
|
||||
}
|
||||
|
||||
private void AddOrUpdateFamilyChild(string familyName)
|
||||
{
|
||||
// Find family
|
||||
|
||||
@@ -136,7 +136,7 @@ namespace CMS_CORE_Library.Siemens
|
||||
new EdgeConfigModel{ Name = "cuttingEdge", Path = "$TC_DP2[", Number = 2},
|
||||
new EdgeConfigModel{ Name = "lenght", Path = "$TC_DP3[", Number = 3},
|
||||
new EdgeConfigModel{ Name = "radius", Path = "$TC_DP6[", Number = 6},
|
||||
new EdgeConfigModel{ Name = "Width", Path = "$TC_DP9[", Number = 9 },
|
||||
new EdgeConfigModel{ Name = "width", Path = "$TC_DP9[", Number = 9 },
|
||||
new EdgeConfigModel{ Name = "wearLenght", Path = "$TC_DP12[", Number = 12},
|
||||
new EdgeConfigModel{ Name = "wearRadius", Path = "$TC_DP15[", Number = 15 },
|
||||
new EdgeConfigModel{ Name = "teeth", Path = "$TC_DPNT[", Number = 34 }
|
||||
@@ -148,7 +148,7 @@ namespace CMS_CORE_Library.Siemens
|
||||
new EdgeConfigModel{ Name = "cuttingEdge", Path = "$TC_DP2[", Number = 2},
|
||||
new EdgeConfigModel{ Name = "lenght", Path = "$TC_DP3[", Number = 3},
|
||||
new EdgeConfigModel{ Name = "radius", Path = "$TC_DP6[", Number = 6},
|
||||
new EdgeConfigModel{ Name = "Width", Path = "$TC_DP9[", Number = 9 },
|
||||
new EdgeConfigModel{ Name = "width", Path = "$TC_DP9[", Number = 9 },
|
||||
new EdgeConfigModel{ Name = "wearLenght", Path = "$TC_DP12[", Number = 12},
|
||||
new EdgeConfigModel{ Name = "wearRadius", Path = "$TC_DP15[", Number = 15 },
|
||||
new EdgeConfigModel{ Name = "teeth", Path = "$TC_DPNT[", Number = 34 }
|
||||
|
||||
@@ -72,7 +72,7 @@ namespace CMS_CORE_Library
|
||||
{
|
||||
new FieldsConfiguration{Name = "id", Type = "int", SelectValues = null, Category = "general", ReadOnly = true },
|
||||
new FieldsConfiguration{Name = "toolType", Type = "select", SelectValues = toolTypeList, Category = "general", ReadOnly = false},
|
||||
new FieldsConfiguration{Name = "lifeType", Type = "select", SelectValues = toolLifeList, Category = "general", ReadOnly = false},
|
||||
new FieldsConfiguration{Name = "lifeType", Type = "select", SelectValues = toolLifeList, Category = "life", ReadOnly = false},
|
||||
new FieldsConfiguration{Name = "familyName", Type = "string", SelectValues = null, Category = "family", ReadOnly = false },
|
||||
new FieldsConfiguration{Name = "childId", Type = "int", SelectValues = null, Category = "family", ReadOnly = true },
|
||||
new FieldsConfiguration{Name = "isEnabled", Type = "boolean", SelectValues = null, Category = "state", ReadOnly = false},
|
||||
|
||||
Reference in New Issue
Block a user