Hi,
I am currently working on Plant 3D 2018 on a domestic project, I have been asked to lock about 100+ lines which have to be issued. Is there a batch process to lock all the lines at once?
You can lock them on the Isometric DWG tab:
Hi Jason,
Thank you for your reply. Actually I wanted to know; Say for instance you have 200 lines scattered in the list in Isometrics tab and you want to lock them. So, instead of manually looking for them, is there any batch/automated process utilizing which we can just input the list of lines to be locked and the system locks them?
AFAIK, only through the API:
public static void LineGroupLock(List<string> lineGroupTags, bool lockLineGroup) { Document doc = MiscTools.GetActiveDoc(); if (doc == null) return; Editor ed = doc.Editor; Database db = doc.Database; PlantProject currentProj = PlantApp.CurrentProject; PipingProject pipeProj = (PipingProject)currentProj.ProjectParts["Piping"]; DataLinksManager dlm = pipeProj.DataLinksManager; DataLinksManager3d dlm3d = pipeProj.DataLinksManager3d; PnPDatabase pnpDB = dlm.GetPnPDatabase(); PnPTable pnpLGTbl = pnpDB.Tables["P3dLineGroup"]; foreach (string lineGroupTag in lineGroupTags) { try { // Get rows where the LineGroup "Number" column equals 'lineNumTag'. string where = "\"Tag\"='" + lineGroupTag + "'"; PnPRow[] lgRows = pnpLGTbl.Select(where); foreach (PnPRow lgRow in lgRows) { int lgRowId = lgRow.RowId; dlm3d.LockLineGroup(lgRowId, lockLineGroup, true); } } catch { ed.WriteMessage("\nError: Cannot lock/unlock linegroup " + lineGroupTag); } } dlm.AcceptChanges(); }
Hi Jason, Could you explain, how to apply this in the actual project in detail?
You need to:
Can't find what you're looking for? Ask the community or share your knowledge.