Je suis nouveau dans la programmation de client enrichi Teamcenter. J'essaie de comprendre comment puis-je indiquer/extraire le contenu d'un article "BOMView" dans Teamcenter? J'utilise Java pour cette intention et jusqu'à présent, je pourrais, par exemple, utiliser "AIFComponentContext" et "TCComponent" pour obtenir un arbre parent/enfant de tout autre objet dans Teamcenter mais pas un BOMView ... Y at-il quelqu'un pour savoir comment puis-je obtenir les éléments inclus dans un BOMView en tant qu'enfants? (pour le moment, cela ne peut être vu que dans "Teamcenter-Structure manager"). Je serais reconnaissant pour toute astuce, code court et aide.Comment puis-je extraire le contenu de "BOMView" dans teamcenter?
0
A
Répondre
0
Je suis aussi novice en matière de programmation TC. Mais ce que vous voulez faire est d'utiliser StructureManagementService.CreateBomWindows.
/// <summary>
/// Opens a structure Management BOM Window
/// </summary>
/// <typeparam name="T">BOM window</typeparam>
/// <param name="action">action to do in the BOM window</param>
/// <param name="bomWindowOwner">root node for the BOM window</param>
/// <returns></returns>
public static T OpenBomWindow<T>(Func<CreateBOMWindowsResponse, T> action, ModelObject bomWindowOwner)
{
CreateBOMWindowsResponse windowResponse = TCProgram.StructureManageServiceCad.CreateBOMWindows(new CreateBOMWindowsInfo[]
{
new CreateBOMWindowsInfo()
{
ItemRev = bomWindowOwner as Mstrong.ItemRevision,
Item = bomWindowOwner as Mstrong.Item
}
});
try
{
return action.Invoke(windowResponse);
}
finally
{
TCProgram.StructureManageServiceCad.CloseBOMWindows(windowResponse.Output.Select(x => x.BomWindow).ToArray());
}
}
Une fois que vous avez cette méthode, la déclaration ressemblera à ceci.
OpenBomWindow(
(CreateBOMWindowsResponse bomResponse) =>
{
Mstrong.BOMLine bomLine = bomResponse.Output[0].BomLine;
},
parentItemRev);
Espérons que ça aide.
pourquoi me donner - ??? J'ai besoin d'aide! –