import com.ptc.cipjava.*; import com.ptc.pfc.pfcSession.*; import com.ptc.pfc.pfcGlobal.*; import com.ptc.pfc.pfcCommand.*; import com.ptc.pfc.pfcModel.*; import com.ptc.pfc.pfcSolid.*; import com.ptc.pfc.pfcModelItem.*; import java.io.*; import java.util.*; import java.text.*; public class Make_BOM { static Session curSession; static final String MSGFILE = "bom.txt"; public static void start() { try { curSession = pfcGlobal.GetProESession(); UICommand inputCommand = curSession.UICreateCommand("Make BOM", new BOM_Listener(curSession)); curSession.UIAddButton(inputCommand, "Applications", "Applications.psh_util_pproc", "Make_BOM", "Create_BOM", MSGFILE); } catch(jxthrowable x) { System.out.println("Exception:"+x); } } public static void stop() {} } class BOM_Listener extends DefaultUICommandActionListener { static Session session; static Model model; static BOMExportInstructions bom_instrs; public BOM_Listener(Session sess) { session = sess; } public void OnCommand () { try { String DateStg = getDatestgsh(); session=pfcGlobal.GetProESession(); model=session.GetCurrentModel(); String name = model.GetFullName(); String file_name = name + "." + DateStg + ".bom"; bom_instrs = pfcModel.BOMExportInstructions_Create(); model.Export(file_name, bom_instrs); } catch (jxthrowable x) { System.out.println ("Caught exception: "+x); x.printStackTrace (); } } public String getDatestgsh() { SimpleDateFormat df = new SimpleDateFormat ("MMddyy", Locale.getDefault()); Date tm = new Date(); String dateinst = df.format(tm); return dateinst; } }