|
|
package com.connor.dfl.plm.dfl041;
|
|
|
|
|
|
import java.awt.Color;
|
|
|
import java.awt.Dimension;
|
|
|
import java.awt.Font;
|
|
|
import java.awt.GridBagLayout;
|
|
|
import java.awt.GridLayout;
|
|
|
import java.awt.event.ActionEvent;
|
|
|
import java.awt.event.ActionListener;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.Arrays;
|
|
|
import java.util.HashMap;
|
|
|
import java.util.Iterator;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
|
|
|
import javax.swing.JButton;
|
|
|
import javax.swing.JComboBox;
|
|
|
import javax.swing.JLabel;
|
|
|
import javax.swing.JPanel;
|
|
|
import javax.swing.JTextField;
|
|
|
|
|
|
import org.jacorb.idl.runtime.int_token;
|
|
|
|
|
|
import com.connor.dfl.plm.dfl019.Dfl019Operation;
|
|
|
import com.connor.dfl.plm.dfl020.Dfl020Operation;
|
|
|
import com.connor.dfl.plm.exportBOM.ChangeDbomUtil;
|
|
|
import com.connor.dfl.plm.util.CopyPropsBean;
|
|
|
import com.connor.dfl.plm.util.DataBaseControl;
|
|
|
import com.itextpdf.text.Jpeg;
|
|
|
import com.teamcenter.rac.aif.AbstractAIFApplication;
|
|
|
import com.teamcenter.rac.aif.AbstractAIFDialog;
|
|
|
import com.teamcenter.rac.aif.kernel.AIFComponentContext;
|
|
|
import com.teamcenter.rac.aif.kernel.InterfaceAIFComponent;
|
|
|
import com.teamcenter.rac.aifrcp.AIFUtility;
|
|
|
import com.teamcenter.rac.commands.userpreferences.ProductContextPreferencesPanel;
|
|
|
import com.teamcenter.rac.kernel.ListOfValuesInfo;
|
|
|
import com.teamcenter.rac.kernel.ServiceData;
|
|
|
import com.teamcenter.rac.kernel.SoaUtil;
|
|
|
import com.teamcenter.rac.kernel.TCComponent;
|
|
|
import com.teamcenter.rac.kernel.TCComponentBOMLine;
|
|
|
import com.teamcenter.rac.kernel.TCComponentBOMWindow;
|
|
|
import com.teamcenter.rac.kernel.TCComponentBOMWindowType;
|
|
|
import com.teamcenter.rac.kernel.TCComponentFolder;
|
|
|
import com.teamcenter.rac.kernel.TCComponentForm;
|
|
|
import com.teamcenter.rac.kernel.TCComponentGroup;
|
|
|
import com.teamcenter.rac.kernel.TCComponentItem;
|
|
|
import com.teamcenter.rac.kernel.TCComponentItemRevision;
|
|
|
import com.teamcenter.rac.kernel.TCComponentItemType;
|
|
|
import com.teamcenter.rac.kernel.TCComponentListOfValues;
|
|
|
import com.teamcenter.rac.kernel.TCComponentListOfValuesType;
|
|
|
import com.teamcenter.rac.kernel.TCComponentProject;
|
|
|
import com.teamcenter.rac.kernel.TCComponentQuery;
|
|
|
import com.teamcenter.rac.kernel.TCComponentQueryType;
|
|
|
import com.teamcenter.rac.kernel.TCComponentUser;
|
|
|
import com.teamcenter.rac.kernel.TCException;
|
|
|
import com.teamcenter.rac.kernel.TCPreferenceService;
|
|
|
import com.teamcenter.rac.kernel.TCProperty;
|
|
|
import com.teamcenter.rac.kernel.TCSession;
|
|
|
import com.teamcenter.rac.kernel.TCTypeService;
|
|
|
import com.teamcenter.rac.util.ButtonLayout;
|
|
|
import com.teamcenter.rac.util.MessageBox;
|
|
|
import com.teamcenter.rac.util.PropertyLayout;
|
|
|
import com.teamcenter.rac.util.Utilities;
|
|
|
import com.teamcenter.soaictstubs.stringSeq_tHolder;
|
|
|
|
|
|
public class CreateNoemBOMDialogs extends AbstractAIFDialog {
|
|
|
private static final Object TCComponentItemRevision = null;
|
|
|
//private AbstractAIFApplication app;
|
|
|
AbstractAIFApplication app = AIFUtility.getCurrentApplication();
|
|
|
private InterfaceAIFComponent targetComp;
|
|
|
private TCPreferenceService service;
|
|
|
private TCComponent comp;
|
|
|
private TCComponent comp1;
|
|
|
private TCComponent[] comp2;
|
|
|
private TCComponentFolder folder;
|
|
|
|
|
|
TCSession session = (TCSession) app.getSession();
|
|
|
|
|
|
private JPanel panel1;
|
|
|
private JPanel buttonPanel;
|
|
|
|
|
|
|
|
|
private JLabel bomCode_lable;
|
|
|
private JComboBox bomCode_combobox;
|
|
|
|
|
|
private JLabel BI_lABLE2;
|
|
|
|
|
|
private JTextField id_field;
|
|
|
|
|
|
private JButton certain_btn;
|
|
|
private JButton cancel_btn;
|
|
|
private Map<String, String> groupMap=new HashMap<String, String>();
|
|
|
private Map<String, String> sourceMap=new HashMap<String, String>();
|
|
|
private String[] alls;
|
|
|
private String[] eqgroup;
|
|
|
private String[] boms;
|
|
|
private String[] newArr;
|
|
|
private String bomCode;
|
|
|
private String xunigroup;
|
|
|
private List<TCComponentItemRevision> xunirevlist = new ArrayList<TCComponentItemRevision>();;
|
|
|
|
|
|
public CreateNoemBOMDialogs(AbstractAIFApplication app,InterfaceAIFComponent targetComp) {
|
|
|
super();
|
|
|
this.app = app;
|
|
|
this.session = session;
|
|
|
this.service = session.getPreferenceService();
|
|
|
this.targetComp = targetComp;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public void run() {
|
|
|
// TODO Auto-generated method stub
|
|
|
try {
|
|
|
alls = service.getStringValues("dfl_standard_bom");
|
|
|
if(alls == null || alls.length <= 0) {
|
|
|
MessageBox.post("<22><>ѡ<EFBFBD><D1A1>dfl_standard_bomδ<6D><CEB4><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD>Ա!!",
|
|
|
"<22><><EFBFBD><EFBFBD>", MessageBox.ERROR);
|
|
|
return;
|
|
|
}
|
|
|
init();
|
|
|
} catch (TCException e) {
|
|
|
// TODO Auto-generated catch block
|
|
|
e.printStackTrace();
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* ģ<><C4A3><EFBFBD><EFBFBD>ѯ <20>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> str <20><> <20>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
* @param arr
|
|
|
* @param str
|
|
|
* @return
|
|
|
*/
|
|
|
public String[] filter(String[] strsz, String str){
|
|
|
|
|
|
ArrayList<String> list = new ArrayList<>();
|
|
|
for (String s : strsz) {
|
|
|
if (s.contains(str)){
|
|
|
list.add(s);
|
|
|
}
|
|
|
}
|
|
|
System.out.println("ģ<><C4A3><EFBFBD><EFBFBD>ѯ8.25======="+list);
|
|
|
|
|
|
newArr= new String[list.size()];
|
|
|
newArr=list.toArray(newArr);
|
|
|
return newArr;
|
|
|
}
|
|
|
|
|
|
|
|
|
private void init() throws TCException {
|
|
|
//<2F><><EFBFBD><EFBFBD>
|
|
|
this.setTitle("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Bom");
|
|
|
//<2F><>С
|
|
|
this.setPreferredSize(new Dimension(450, 450));
|
|
|
//this.setAlwaysOnTop(true);
|
|
|
this.setLayout(null);
|
|
|
|
|
|
TCComponentItem item = null;
|
|
|
//new<65><77>ǩ<EFBFBD><C7A9><EFBFBD><EFBFBD>
|
|
|
bomCode_lable = new JLabel(" <20>豸<EFBFBD>ͺ<EFBFBD> :");
|
|
|
//new<65><77><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
bomCode_combobox = new JComboBox();
|
|
|
bomCode_combobox.addItem(" ");
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԣ<EFBFBD><D4A3><EFBFBD>ȡ<EFBFBD><C8A1>ѡֵ
|
|
|
for(int i =0 ;i<alls.length;i++) {
|
|
|
String disval = alls [i];
|
|
|
eqgroup =disval.split("=");
|
|
|
}
|
|
|
System.out.println("<22><>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"+alls);
|
|
|
//<2F><>ȡѡ<C8A1>е<EFBFBD>ֵ
|
|
|
InterfaceAIFComponent comp = app.getTargetComponent();
|
|
|
comp = (TCComponent) targetComp;
|
|
|
//<2F><><EFBFBD>û<EFBFBD>ȡ<EFBFBD>Ķ<EFBFBD><C4B6><EFBFBD>
|
|
|
try {
|
|
|
item = (TCComponentItem) comp;
|
|
|
} catch (Exception e) {
|
|
|
MessageBox.post("<22><>ѡ<EFBFBD>еIJ<D0B5><C4B2>Ƕ<EFBFBD><C7B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>","<22><>ʾ",MessageBox.INFORMATION);
|
|
|
// TODO: handle exception
|
|
|
}
|
|
|
|
|
|
//<2F><><EFBFBD>ö<EFBFBD><C3B6><EFBFBD><EFBFBD>汾
|
|
|
TCComponentItemRevision rev =item.getLatestItemRevision();
|
|
|
//<2F><>ȡ<EFBFBD>豸<EFBFBD>汾<EFBFBD>ķ<EFBFBD>Ⱥ<EFBFBD><C8BA>
|
|
|
TCProperty pro3 = rev.getTCProperty("t2_groupCode");
|
|
|
String equipmentgroup = pro3.getStringValue();
|
|
|
System.out.println("<22>豸<EFBFBD><E8B1B8>Ⱥ<EFBFBD><C8BA>"+equipmentgroup);
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾֵ:<3A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ⱥ<EFBFBD><C8BA>-bom<6F>ͺ<EFBFBD>
|
|
|
|
|
|
String[] disval1 = null;//<2F>豸<EFBFBD><E8B1B8>Ⱥ<EFBFBD><C8BA>=<3D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ⱥ<EFBFBD><C8BA>-bom<6F>ͺ<EFBFBD>[0] / <20><><EFBFBD><EFBFBD>|ϵͳ[1]
|
|
|
String disval2 = null;//<2F>豸<EFBFBD><E8B1B8>Ⱥ<EFBFBD><C8BA>=<3D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ⱥ<EFBFBD><C8BA>-bom<6F>ͺ<EFBFBD> ֵ [0]
|
|
|
String[] disval3 = null;//<2F>豸<EFBFBD><E8B1B8>Ⱥ<EFBFBD><C8BA>[0] = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ⱥ<EFBFBD><C8BA>-bom<6F>ͺ<EFBFBD>[1]
|
|
|
String disval4 = null;//<2F>豸<EFBFBD><E8B1B8>Ⱥ<EFBFBD><C8BA> ֵ [0]
|
|
|
filter(alls, equipmentgroup);//<2F><><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8>Ⱥ<EFBFBD><C8BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>飬<EFBFBD><E9A3AC><EFBFBD><EFBFBD>newArr<72><72><EFBFBD><EFBFBD>
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
|
|
|
for (int i = 0; i < newArr.length; i++) {
|
|
|
|
|
|
String disval = newArr [i];
|
|
|
disval1 = disval.split("!");
|
|
|
|
|
|
disval2 = disval1[0];
|
|
|
|
|
|
System.out.println("disval2"+disval2);
|
|
|
disval3 = disval2.split("=");
|
|
|
disval4 = disval3[0];
|
|
|
|
|
|
if(disval4.equals(equipmentgroup)) {
|
|
|
bomCode_combobox.addItem(disval3[1]);
|
|
|
}
|
|
|
}
|
|
|
//<2F><><EFBFBD>ñ<EFBFBD>ǩ<EFBFBD><C7A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD>Сλ<D0A1><CEBB>
|
|
|
bomCode_lable.setBounds(50, 70, 130, 30);
|
|
|
bomCode_combobox.setBounds(170,70, 200, 30);
|
|
|
this.add(bomCode_lable);
|
|
|
this.add(bomCode_combobox);
|
|
|
|
|
|
|
|
|
certain_btn = new JButton("ȷ<><C8B7>");
|
|
|
|
|
|
cancel_btn = new JButton("ȡ<><C8A1>");
|
|
|
|
|
|
certain_btn.setBounds(80, 350, 70, 35);
|
|
|
|
|
|
cancel_btn.setBounds(320, 350, 70, 35);
|
|
|
this.add(certain_btn);
|
|
|
this.add(cancel_btn);
|
|
|
|
|
|
|
|
|
|
|
|
cancel_btn.addActionListener(new ActionListener() {
|
|
|
public void actionPerformed(ActionEvent e) {
|
|
|
// TODO Auto-generated method stub
|
|
|
setVisible(false);
|
|
|
}
|
|
|
});
|
|
|
|
|
|
certain_btn.addActionListener(new ActionListener() {
|
|
|
public void actionPerformed(ActionEvent e) {
|
|
|
try {
|
|
|
ChangeDbomUtil.setByPass(true);
|
|
|
System.out.println("<22><><EFBFBD><EFBFBD>·");
|
|
|
} catch (TCException e1) {
|
|
|
// TODO Auto-generated catch block
|
|
|
e1.printStackTrace();
|
|
|
}
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD><EEA3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD>е<EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>
|
|
|
bomCode = (String) bomCode_combobox.getSelectedItem();
|
|
|
//<2F><><EFBFBD>ù<EFBFBD><C3B9>˷<EFBFBD><CBB7><EFBFBD>
|
|
|
filter(alls,bomCode);
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>bom
|
|
|
createItem();
|
|
|
//bom<6F><6D><EFBFBD><EFBFBD>erp
|
|
|
BomToErp bomToErp =new BomToErp(app, session);
|
|
|
bomToErp.sendBOMTOERP(app);
|
|
|
try {
|
|
|
ChangeDbomUtil.setByPass(false);
|
|
|
System.out.println("<22><><EFBFBD><EFBFBD>·");
|
|
|
} catch (TCException e1) {
|
|
|
// TODO Auto-generated catch block
|
|
|
e1.printStackTrace();
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
|
|
|
this.pack();
|
|
|
this.setResizable(false);
|
|
|
this.centerToScreen();
|
|
|
this.showDialog();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
* ͨ<><CDA8><EFBFBD><EFBFBD>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ<EFBFBD><D1AF>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>
|
|
|
*
|
|
|
* @param queryName <20><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>
|
|
|
* @param keys <20><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>
|
|
|
* @param values <20><>ѯֵ
|
|
|
* @return
|
|
|
*/
|
|
|
public List<TCComponent> queryObject(String queryName, String[] keys, String[] values) {
|
|
|
TCComponent[] components = null;
|
|
|
try {
|
|
|
TCComponentQueryType queryType = (TCComponentQueryType) session.getTypeComponent("ImanQuery");
|
|
|
TCComponentQuery query = (TCComponentQuery) queryType.find(queryName);
|
|
|
if (query == null) {
|
|
|
MessageBox.post("û<><C3BB><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD>ѯ:" + queryName, "<22><><EFBFBD><EFBFBD>", MessageBox.ERROR);
|
|
|
return null;
|
|
|
}
|
|
|
components = query.execute(keys, values);
|
|
|
} catch (TCException e) {
|
|
|
e.printStackTrace();
|
|
|
}
|
|
|
if (components != null && components.length > 0) {
|
|
|
List<TCComponent> compList = Arrays.asList(components);
|
|
|
return compList;
|
|
|
} else {
|
|
|
return null;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
protected void createItem() {
|
|
|
// TODO Auto-generated method stub
|
|
|
|
|
|
try {
|
|
|
|
|
|
InterfaceAIFComponent comp = app.getTargetComponent();
|
|
|
comp = (TCComponent) targetComp;
|
|
|
//<2F><><EFBFBD>ö<EFBFBD><C3B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
TCComponentItem item = null;
|
|
|
item = (TCComponentItem) comp;
|
|
|
TCProperty item_type = item.getTCProperty("object_type");
|
|
|
String equipmenttype = item_type.getStringValue();
|
|
|
//<2F><><EFBFBD>ö<EFBFBD><C3B6><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD>е<EFBFBD><D0B5>ļ<EFBFBD><C4BC><EFBFBD>
|
|
|
AIFComponentContext[] refs = item.whereReferenced();
|
|
|
|
|
|
//List<String> list = new ArrayList<String>();
|
|
|
|
|
|
for (int i = 0 ; i<=refs.length-1;i++) {
|
|
|
AIFComponentContext parent= refs[i];
|
|
|
comp1 = (TCComponent) parent.getComponent();
|
|
|
|
|
|
String folder_type = comp1.getProperty("object_type");
|
|
|
System.out.println("<22><>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"+folder_type);
|
|
|
//<2F>жϹ<D0B6>ϵ<EFBFBD>Ķ<EFBFBD><C4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
if ("<22>ļ<EFBFBD><C4BC><EFBFBD>".equals(folder_type) || "Home <20>ļ<EFBFBD><C4BC><EFBFBD>".equals(folder_type)) {
|
|
|
folder = (TCComponentFolder) comp1;
|
|
|
if("<22>ļ<EFBFBD><C4BC><EFBFBD>".equals(folder_type)) {
|
|
|
folder = (TCComponentFolder) comp1;
|
|
|
}
|
|
|
//list.add(folder_type);
|
|
|
}
|
|
|
}
|
|
|
System.out.println("ѡ<>еĶ<D0B5><C4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"+equipmenttype);
|
|
|
//<2F><><EFBFBD>ö<EFBFBD><C3B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>°汾<C2B0>汾
|
|
|
TCComponentItemRevision rev =item.getLatestItemRevision();
|
|
|
//item.whereReferenced();
|
|
|
//<2F><>ȡ<EFBFBD>豸<EFBFBD>汾<EFBFBD>ķ<EFBFBD>Ⱥ<EFBFBD><C8BA><EFBFBD><EFBFBD>id
|
|
|
TCProperty pro2 = rev.getTCProperty("item_id");
|
|
|
TCProperty pro3 = rev.getTCProperty("t2_groupCode");
|
|
|
String equipmentname = pro2.getStringValue();
|
|
|
|
|
|
String equipmentgroup = pro3.getStringValue();
|
|
|
System.out.println("<22>豸<EFBFBD><E8B1B8>Ⱥ<EFBFBD><C8BA>"+equipmentgroup);
|
|
|
|
|
|
|
|
|
this.setVisible(false);
|
|
|
//<2F>ж<EFBFBD><D0B6>Ƿ<EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸
|
|
|
if("T2_Equipment".equals(equipmenttype)) {
|
|
|
boolean flag = true;
|
|
|
String[] vals = null;
|
|
|
for (int i = 0; i < newArr.length; i++) {
|
|
|
String bom = newArr[i];
|
|
|
vals = bom.split("!");
|
|
|
String valss = vals[0];
|
|
|
System.out.println("8.25valss=============="+valss);
|
|
|
String[] agree = valss.split("=");
|
|
|
String agreement = agree[1];
|
|
|
System.out.println("8.25agreement==========="+agreement);
|
|
|
System.out.println("8.25bomCode_combobox============"+bomCode);
|
|
|
//<2F>ж<EFBFBD>ѡ<EFBFBD>е<EFBFBD><D0B5>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD>е<EFBFBD>һ<EFBFBD>£<EFBFBD><C2A3>Ǿ<EFBFBD><C7BE><EFBFBD><EFBFBD><EFBFBD>ѭ<EFBFBD><D1AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٸ<EFBFBD>ֵ
|
|
|
if(bomCode.equals(agreement)) {
|
|
|
flag = false;
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
if(vals != null) {
|
|
|
|
|
|
TCTypeService service = session.getTypeService();
|
|
|
//<2F><>ȡBOMWindowType
|
|
|
TCComponentBOMWindowType winType = (TCComponentBOMWindowType) service
|
|
|
.getTypeComponent("BOMWindow");
|
|
|
//<2F><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD>µ<EFBFBD>window
|
|
|
TCComponentBOMWindow view = winType.create(null);
|
|
|
|
|
|
view.lock();
|
|
|
//<2F><><EFBFBD>ö<EFBFBD><C3B6><EFBFBD><EFBFBD><EFBFBD>bomline
|
|
|
TCComponentBOMLine line = view.setWindowTopLine(item,rev, null, null);
|
|
|
TCComponentItemType type = (TCComponentItemType) session.getTypeComponent("T2_Virtual");
|
|
|
String[] values = vals[1].split(";");
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>汾<EFBFBD>ķ<EFBFBD>Ⱥ<EFBFBD><C8BA>
|
|
|
String itemrevbomgroup = vals[0];//<2F>ַ<EFBFBD><D6B7><EFBFBD> <20>豸<EFBFBD><E8B1B8>Ⱥ<EFBFBD><C8BA>=<3D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ⱥ<EFBFBD><C8BA>#bom<6F>ͺ<EFBFBD>
|
|
|
System.out.println("8.25<EFBFBD><EFBFBD>Ⱥ<EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>"+itemrevbomgroup);
|
|
|
String[] itemrevgroup = itemrevbomgroup.split("#");//<2F><><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8>Ⱥ<EFBFBD><C8BA>=<3D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ⱥ<EFBFBD><C8BA> - bom<6F>ͺ<EFBFBD>
|
|
|
String itemrevString = itemrevgroup[0];//<2F>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8>Ⱥ=<3D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ⱥ<EFBFBD><C8BA>
|
|
|
String[] revgruop = itemrevString.split("=");//<2F><><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8>Ⱥ<EFBFBD><C8BA> = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ⱥ<EFBFBD><C8BA>
|
|
|
String revgropuString = revgruop[1];//<2F>ַ<EFBFBD><D6B7><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ⱥ<EFBFBD><C8BA>
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>汾<EFBFBD><E6B1BE><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4>
|
|
|
String sourcecode = "X";
|
|
|
TCComponentItem newItem =null;
|
|
|
TCComponentItemRevision xunirev = null;
|
|
|
for (int j = 0; j < values.length; j++) {
|
|
|
String[] nameID = values[j].split("\\|");
|
|
|
String item_id = equipmentname + "" + nameID[0];
|
|
|
String sysandjob =nameID[1];//ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>$<24><>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD>
|
|
|
String job_num = null;
|
|
|
System.out.println("ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>$<24><>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD>8.23=="+sysandjob);
|
|
|
String[] sysandjobsz = sysandjob.split("\\$");//<2F><><EFBFBD><EFBFBD>$<24><><EFBFBD>ֿ<EFBFBD>
|
|
|
String object_name =sysandjobsz[0];//ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>
|
|
|
System.out.println("object_name8.23=="+object_name);
|
|
|
System.out.println(item_id);
|
|
|
newItem =new TCComponentItem();
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD><C2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
newItem = type.create(item_id, "01", "T2_Virtual", object_name, "", null);
|
|
|
//<2F><><EFBFBD>ö<EFBFBD><C3B6><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>
|
|
|
folder.add("contents", newItem);
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>汾<EFBFBD>ķ<EFBFBD>Ⱥ<EFBFBD><C8BA>
|
|
|
xunirev = new TCComponentItemRevision();
|
|
|
xunirev = newItem.getLatestItemRevision();
|
|
|
if (revgropuString != null && revgropuString != "") {
|
|
|
xunirev.setStringProperty("t2_groupCode", revgropuString);
|
|
|
}
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>汾<EFBFBD><E6B1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
if (object_name != null && object_name != "") {
|
|
|
newItem.setStringProperty("object_desc", object_name);
|
|
|
xunirev.setStringProperty("object_desc", object_name);
|
|
|
}
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>汾<EFBFBD><E6B1BE><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4>
|
|
|
if (sourcecode != null && sourcecode != "") {
|
|
|
xunirev.setStringProperty("t2_sourceCode", sourcecode);
|
|
|
}
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>汾<EFBFBD><E6B1BE><EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
xunirevlist.add(xunirev);
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>bomline
|
|
|
TCComponentBOMLine childBomline = line.add(newItem, newItem.getLatestItemRevision(), null, false, "");
|
|
|
|
|
|
childBomline.setStringProperty("bl_quantity", "1");//<2F><><EFBFBD><EFBFBD>bomline<6E><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ1
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD>
|
|
|
if (sysandjob.contains("$")) {
|
|
|
job_num = sysandjobsz[1];//<2F><>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD>
|
|
|
childBomline.setStringProperty("T2_JobNumber", job_num);//<2F><><EFBFBD><EFBFBD>bomline<6E><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD>
|
|
|
|
|
|
}
|
|
|
}
|
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD>erp
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
|
|
if (xunirevlist.size()>0) {
|
|
|
System.out.println("xunirevlist<73><74>ֵ");
|
|
|
for(int i = 0; i < xunirevlist.size(); i++){
|
|
|
TCComponentItemRevision test =new TCComponentItemRevision();
|
|
|
test=(TCComponentItemRevision)xunirevlist.get(i);
|
|
|
TCProperty revsid = test.getTCProperty("item_id");
|
|
|
String revsString = revsid.getStringValue();
|
|
|
System.out.println("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>bom<6F><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>汾id"+revsString);
|
|
|
}
|
|
|
}else {
|
|
|
System.out.println("xunirevlist<73><74>ֵ");
|
|
|
}
|
|
|
//<2F><><EFBFBD>ϴ<EFBFBD><CFB4><EFBFBD>erp
|
|
|
wuliaotoerp wuliaotoerp = new wuliaotoerp(app, session);
|
|
|
wuliaotoerp.Wuliaotoerp(xunirevlist);
|
|
|
|
|
|
view.save();
|
|
|
view.unlock();
|
|
|
view.close();
|
|
|
}else {
|
|
|
MessageBox.post("û<><C3BB><EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD>Ӧ<EFBFBD>ı<EFBFBD>BOM<4F>ṹ<EFBFBD><E1B9B9><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5>㼶<EFBFBD><E3BCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", "<22><>ʾ",
|
|
|
MessageBox.INFORMATION);
|
|
|
}
|
|
|
}else {
|
|
|
MessageBox.post("<22><>ѡ<EFBFBD>еIJ<D0B5><C4B2>Ƕ<EFBFBD><C7B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>","<22><>ʾ",MessageBox.INFORMATION);
|
|
|
return;
|
|
|
}
|
|
|
MessageBox.post("<22><>bom<6F><6D><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>","<22><>ʾ",MessageBox.INFORMATION);
|
|
|
} catch (Exception e) {
|
|
|
// TODO Auto-generated catch block
|
|
|
e.printStackTrace();
|
|
|
MessageBox.post("<22><><EFBFBD><EFBFBD>:" + e.getMessage(), "<22><><EFBFBD><EFBFBD>", MessageBox.INFORMATION);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
private TCComponentItem TCComponentItem(TCComponent comp) {
|
|
|
// TODO Auto-generated method stub
|
|
|
return null;
|
|
|
}
|
|
|
}
|