/**
 * output package name
 */
package com.kingdee.eas.hr.project.client;

import org.apache.log4j.*;

import java.awt.*;
import java.awt.event.*;
import java.util.*;
import javax.swing.border.*;
import javax.swing.BorderFactory;
import javax.swing.event.*;
import javax.swing.KeyStroke;

import com.kingdee.bos.ctrl.swing.*;
import com.kingdee.bos.ctrl.kdf.table.*;
import com.kingdee.bos.ctrl.kdf.data.event.*;
import com.kingdee.bos.dao.*;
import com.kingdee.bos.dao.query.*;
import com.kingdee.bos.metadata.*;
import com.kingdee.bos.metadata.entity.*;
import com.kingdee.bos.ui.face.*;
import com.kingdee.bos.ui.util.ResourceBundleHelper;
import com.kingdee.bos.util.BOSUuid;
import com.kingdee.bos.service.ServiceContext;
import com.kingdee.jdbc.rowset.IRowSet;
import com.kingdee.util.enums.EnumUtils;
import com.kingdee.bos.ui.face.UIRuleUtil;
import com.kingdee.bos.ctrl.swing.event.*;
import com.kingdee.bos.ctrl.kdf.table.event.*;
import com.kingdee.bos.ctrl.extendcontrols.*;
import com.kingdee.bos.ctrl.kdf.util.render.*;
import com.kingdee.bos.ui.face.IItemAction;
import com.kingdee.eas.framework.batchHandler.RequestContext;
import com.kingdee.bos.ui.util.IUIActionPostman;
import com.kingdee.bos.appframework.client.servicebinding.ActionProxyFactory;
import com.kingdee.bos.appframework.uistatemanage.ActionStateConst;
import com.kingdee.bos.appframework.validator.ValidateHelper;
import com.kingdee.bos.appframework.uip.UINavigator;


/**
 * output class name
 */
public abstract class AbstractProjectManagementEditUI extends com.kingdee.eas.framework.client.CoreBillEditUI
{
    private static final Logger logger = CoreUIObject.getLogger(AbstractProjectManagementEditUI.class);
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer contCreator;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer contCreateTime;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer contLastUpdateUser;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer contLastUpdateTime;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer contNumber;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer contBizDate;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer contDescription;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer contAuditor;
    protected com.kingdee.bos.ctrl.kdf.table.KDTable kdtEntrys;
	protected com.kingdee.eas.framework.client.multiDetail.DetailPanel kdtEntrys_detailPanel = null;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer contprojectCode;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer contprojectName;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer contprojectLevel;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer contprojectManager;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer contexpectedStartTime;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer contexpectedEndTime;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer conttotalPersonDays;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer contcostAmount;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer contnotes;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer kDLabelContainer1;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer kDLabelContainer2;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer contchangedManDays;
    protected com.kingdee.bos.ctrl.swing.KDCheckBox chkbeingChanged;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer contprojectState;
    protected com.kingdee.bos.ctrl.swing.KDLabelContainer kDLabelContainer3;
    protected com.kingdee.bos.ctrl.extendcontrols.KDBizPromptBox prmtCreator;
    protected com.kingdee.bos.ctrl.swing.KDDatePicker kDDateCreateTime;
    protected com.kingdee.bos.ctrl.extendcontrols.KDBizPromptBox prmtLastUpdateUser;
    protected com.kingdee.bos.ctrl.swing.KDDatePicker kDDateLastUpdateTime;
    protected com.kingdee.bos.ctrl.swing.KDTextField txtNumber;
    protected com.kingdee.bos.ctrl.swing.KDDatePicker pkBizDate;
    protected com.kingdee.bos.ctrl.swing.KDTextField txtDescription;
    protected com.kingdee.bos.ctrl.extendcontrols.KDBizPromptBox prmtAuditor;
    protected com.kingdee.bos.ctrl.swing.KDTextField txtprojectCode;
    protected com.kingdee.bos.ctrl.swing.KDTextField txtprojectName;
    protected com.kingdee.bos.ctrl.swing.KDComboBox projectLevel;
    protected com.kingdee.bos.ctrl.extendcontrols.KDBizPromptBox prmtprojectManager;
    protected com.kingdee.bos.ctrl.swing.KDDatePicker pkexpectedStartTime;
    protected com.kingdee.bos.ctrl.swing.KDDatePicker pkexpectedEndTime;
    protected com.kingdee.bos.ctrl.swing.KDFormattedTextField txttotalPersonDays;
    protected com.kingdee.bos.ctrl.swing.KDFormattedTextField txtcostAmount;
    protected com.kingdee.bos.ctrl.swing.KDTextField txtnotes;
    protected com.kingdee.bos.ctrl.swing.KDFormattedTextField kDFormattedTextField1;
    protected com.kingdee.bos.ctrl.swing.KDFormattedTextField kDFormattedTextField2;
    protected com.kingdee.bos.ctrl.swing.KDFormattedTextField txtchangedManDays;
    protected com.kingdee.bos.ctrl.swing.KDComboBox projectState;
    protected com.kingdee.bos.ctrl.swing.KDFormattedTextField kDFormattedTextField3;
    protected com.kingdee.eas.hr.project.ProjectManagementInfo editData = null;
    /**
     * output class constructor
     */
    public AbstractProjectManagementEditUI() throws Exception
    {
        super();
        this.defaultObjectName = "editData";
        jbInit();
        
        initUIP();
    }

    /**
     * output jbInit method
     */
    private void jbInit() throws Exception
    {
        this.resHelper = new ResourceBundleHelper(AbstractProjectManagementEditUI.class.getName());
        this.setUITitle(resHelper.getString("this.title"));
        //actionSubmit
        String _tempStr = null;
        actionSubmit.setEnabled(true);
        actionSubmit.setDaemonRun(false);

        actionSubmit.putValue(ItemAction.ACCELERATOR_KEY, KeyStroke.getKeyStroke("ctrl S"));
        _tempStr = resHelper.getString("ActionSubmit.SHORT_DESCRIPTION");
        actionSubmit.putValue(ItemAction.SHORT_DESCRIPTION, _tempStr);
        _tempStr = resHelper.getString("ActionSubmit.LONG_DESCRIPTION");
        actionSubmit.putValue(ItemAction.LONG_DESCRIPTION, _tempStr);
        _tempStr = resHelper.getString("ActionSubmit.NAME");
        actionSubmit.putValue(ItemAction.NAME, _tempStr);
        this.actionSubmit.setBindWorkFlow(true);
         this.actionSubmit.addService(new com.kingdee.eas.framework.client.service.PermissionService());
         this.actionSubmit.addService(new com.kingdee.eas.framework.client.service.NetFunctionService());
         this.actionSubmit.addService(new com.kingdee.eas.framework.client.service.UserMonitorService());
        //actionPrint
        actionPrint.setEnabled(true);
        actionPrint.setDaemonRun(false);

        actionPrint.putValue(ItemAction.ACCELERATOR_KEY, KeyStroke.getKeyStroke("ctrl P"));
        _tempStr = resHelper.getString("ActionPrint.SHORT_DESCRIPTION");
        actionPrint.putValue(ItemAction.SHORT_DESCRIPTION, _tempStr);
        _tempStr = resHelper.getString("ActionPrint.LONG_DESCRIPTION");
        actionPrint.putValue(ItemAction.LONG_DESCRIPTION, _tempStr);
        _tempStr = resHelper.getString("ActionPrint.NAME");
        actionPrint.putValue(ItemAction.NAME, _tempStr);
         this.actionPrint.addService(new com.kingdee.eas.framework.client.service.PermissionService());
         this.actionPrint.addService(new com.kingdee.eas.framework.client.service.NetFunctionService());
         this.actionPrint.addService(new com.kingdee.eas.framework.client.service.UserMonitorService());
        //actionPrintPreview
        actionPrintPreview.setEnabled(true);
        actionPrintPreview.setDaemonRun(false);

        actionPrintPreview.putValue(ItemAction.ACCELERATOR_KEY, KeyStroke.getKeyStroke("shift ctrl P"));
        _tempStr = resHelper.getString("ActionPrintPreview.SHORT_DESCRIPTION");
        actionPrintPreview.putValue(ItemAction.SHORT_DESCRIPTION, _tempStr);
        _tempStr = resHelper.getString("ActionPrintPreview.LONG_DESCRIPTION");
        actionPrintPreview.putValue(ItemAction.LONG_DESCRIPTION, _tempStr);
        _tempStr = resHelper.getString("ActionPrintPreview.NAME");
        actionPrintPreview.putValue(ItemAction.NAME, _tempStr);
         this.actionPrintPreview.addService(new com.kingdee.eas.framework.client.service.PermissionService());
         this.actionPrintPreview.addService(new com.kingdee.eas.framework.client.service.NetFunctionService());
         this.actionPrintPreview.addService(new com.kingdee.eas.framework.client.service.UserMonitorService());
        this.contCreator = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.contCreateTime = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.contLastUpdateUser = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.contLastUpdateTime = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.contNumber = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.contBizDate = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.contDescription = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.contAuditor = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.kdtEntrys = new com.kingdee.bos.ctrl.kdf.table.KDTable();
        this.contprojectCode = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.contprojectName = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.contprojectLevel = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.contprojectManager = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.contexpectedStartTime = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.contexpectedEndTime = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.conttotalPersonDays = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.contcostAmount = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.contnotes = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.kDLabelContainer1 = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.kDLabelContainer2 = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.contchangedManDays = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.chkbeingChanged = new com.kingdee.bos.ctrl.swing.KDCheckBox();
        this.contprojectState = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.kDLabelContainer3 = new com.kingdee.bos.ctrl.swing.KDLabelContainer();
        this.prmtCreator = new com.kingdee.bos.ctrl.extendcontrols.KDBizPromptBox();
        this.kDDateCreateTime = new com.kingdee.bos.ctrl.swing.KDDatePicker();
        this.prmtLastUpdateUser = new com.kingdee.bos.ctrl.extendcontrols.KDBizPromptBox();
        this.kDDateLastUpdateTime = new com.kingdee.bos.ctrl.swing.KDDatePicker();
        this.txtNumber = new com.kingdee.bos.ctrl.swing.KDTextField();
        this.pkBizDate = new com.kingdee.bos.ctrl.swing.KDDatePicker();
        this.txtDescription = new com.kingdee.bos.ctrl.swing.KDTextField();
        this.prmtAuditor = new com.kingdee.bos.ctrl.extendcontrols.KDBizPromptBox();
        this.txtprojectCode = new com.kingdee.bos.ctrl.swing.KDTextField();
        this.txtprojectName = new com.kingdee.bos.ctrl.swing.KDTextField();
        this.projectLevel = new com.kingdee.bos.ctrl.swing.KDComboBox();
        this.prmtprojectManager = new com.kingdee.bos.ctrl.extendcontrols.KDBizPromptBox();
        this.pkexpectedStartTime = new com.kingdee.bos.ctrl.swing.KDDatePicker();
        this.pkexpectedEndTime = new com.kingdee.bos.ctrl.swing.KDDatePicker();
        this.txttotalPersonDays = new com.kingdee.bos.ctrl.swing.KDFormattedTextField();
        this.txtcostAmount = new com.kingdee.bos.ctrl.swing.KDFormattedTextField();
        this.txtnotes = new com.kingdee.bos.ctrl.swing.KDTextField();
        this.kDFormattedTextField1 = new com.kingdee.bos.ctrl.swing.KDFormattedTextField();
        this.kDFormattedTextField2 = new com.kingdee.bos.ctrl.swing.KDFormattedTextField();
        this.txtchangedManDays = new com.kingdee.bos.ctrl.swing.KDFormattedTextField();
        this.projectState = new com.kingdee.bos.ctrl.swing.KDComboBox();
        this.kDFormattedTextField3 = new com.kingdee.bos.ctrl.swing.KDFormattedTextField();
        this.contCreator.setName("contCreator");
        this.contCreateTime.setName("contCreateTime");
        this.contLastUpdateUser.setName("contLastUpdateUser");
        this.contLastUpdateTime.setName("contLastUpdateTime");
        this.contNumber.setName("contNumber");
        this.contBizDate.setName("contBizDate");
        this.contDescription.setName("contDescription");
        this.contAuditor.setName("contAuditor");
        this.kdtEntrys.setName("kdtEntrys");
        this.contprojectCode.setName("contprojectCode");
        this.contprojectName.setName("contprojectName");
        this.contprojectLevel.setName("contprojectLevel");
        this.contprojectManager.setName("contprojectManager");
        this.contexpectedStartTime.setName("contexpectedStartTime");
        this.contexpectedEndTime.setName("contexpectedEndTime");
        this.conttotalPersonDays.setName("conttotalPersonDays");
        this.contcostAmount.setName("contcostAmount");
        this.contnotes.setName("contnotes");
        this.kDLabelContainer1.setName("kDLabelContainer1");
        this.kDLabelContainer2.setName("kDLabelContainer2");
        this.contchangedManDays.setName("contchangedManDays");
        this.chkbeingChanged.setName("chkbeingChanged");
        this.contprojectState.setName("contprojectState");
        this.kDLabelContainer3.setName("kDLabelContainer3");
        this.prmtCreator.setName("prmtCreator");
        this.kDDateCreateTime.setName("kDDateCreateTime");
        this.prmtLastUpdateUser.setName("prmtLastUpdateUser");
        this.kDDateLastUpdateTime.setName("kDDateLastUpdateTime");
        this.txtNumber.setName("txtNumber");
        this.pkBizDate.setName("pkBizDate");
        this.txtDescription.setName("txtDescription");
        this.prmtAuditor.setName("prmtAuditor");
        this.txtprojectCode.setName("txtprojectCode");
        this.txtprojectName.setName("txtprojectName");
        this.projectLevel.setName("projectLevel");
        this.prmtprojectManager.setName("prmtprojectManager");
        this.pkexpectedStartTime.setName("pkexpectedStartTime");
        this.pkexpectedEndTime.setName("pkexpectedEndTime");
        this.txttotalPersonDays.setName("txttotalPersonDays");
        this.txtcostAmount.setName("txtcostAmount");
        this.txtnotes.setName("txtnotes");
        this.kDFormattedTextField1.setName("kDFormattedTextField1");
        this.kDFormattedTextField2.setName("kDFormattedTextField2");
        this.txtchangedManDays.setName("txtchangedManDays");
        this.projectState.setName("projectState");
        this.kDFormattedTextField3.setName("kDFormattedTextField3");
        // CoreUI		
        this.btnTraceUp.setVisible(false);		
        this.btnTraceDown.setVisible(false);		
        this.btnCreateTo.setVisible(true);		
        this.btnAddLine.setVisible(false);		
        this.btnCopyLine.setVisible(false);		
        this.btnInsertLine.setVisible(false);		
        this.btnRemoveLine.setVisible(false);		
        this.btnAuditResult.setVisible(false);		
        this.separator1.setVisible(false);		
        this.menuItemCreateTo.setVisible(true);		
        this.separator3.setVisible(false);		
        this.menuItemTraceUp.setVisible(false);		
        this.menuItemTraceDown.setVisible(false);		
        this.menuTable1.setVisible(false);		
        this.menuItemAddLine.setVisible(false);		
        this.menuItemCopyLine.setVisible(false);		
        this.menuItemInsertLine.setVisible(false);		
        this.menuItemRemoveLine.setVisible(false);		
        this.menuItemViewSubmitProccess.setVisible(false);		
        this.menuItemViewDoProccess.setVisible(false);		
        this.menuItemAuditResult.setVisible(false);
        // contCreator		
        this.contCreator.setBoundLabelText(resHelper.getString("contCreator.boundLabelText"));		
        this.contCreator.setBoundLabelLength(100);		
        this.contCreator.setBoundLabelUnderline(true);		
        this.contCreator.setEnabled(false);
        // contCreateTime		
        this.contCreateTime.setBoundLabelText(resHelper.getString("contCreateTime.boundLabelText"));		
        this.contCreateTime.setBoundLabelLength(100);		
        this.contCreateTime.setBoundLabelUnderline(true);		
        this.contCreateTime.setEnabled(false);
        // contLastUpdateUser		
        this.contLastUpdateUser.setBoundLabelText(resHelper.getString("contLastUpdateUser.boundLabelText"));		
        this.contLastUpdateUser.setBoundLabelLength(100);		
        this.contLastUpdateUser.setBoundLabelUnderline(true);		
        this.contLastUpdateUser.setEnabled(false);		
        this.contLastUpdateUser.setVisible(false);
        // contLastUpdateTime		
        this.contLastUpdateTime.setBoundLabelText(resHelper.getString("contLastUpdateTime.boundLabelText"));		
        this.contLastUpdateTime.setBoundLabelLength(100);		
        this.contLastUpdateTime.setBoundLabelUnderline(true);		
        this.contLastUpdateTime.setEnabled(false);		
        this.contLastUpdateTime.setVisible(false);
        // contNumber		
        this.contNumber.setBoundLabelText(resHelper.getString("contNumber.boundLabelText"));		
        this.contNumber.setBoundLabelLength(100);		
        this.contNumber.setBoundLabelUnderline(true);
        // contBizDate		
        this.contBizDate.setBoundLabelText(resHelper.getString("contBizDate.boundLabelText"));		
        this.contBizDate.setBoundLabelLength(100);		
        this.contBizDate.setBoundLabelUnderline(true);		
        this.contBizDate.setBoundLabelAlignment(7);		
        this.contBizDate.setVisible(true);
        // contDescription		
        this.contDescription.setBoundLabelText(resHelper.getString("contDescription.boundLabelText"));		
        this.contDescription.setBoundLabelLength(100);		
        this.contDescription.setBoundLabelUnderline(true);
        // contAuditor		
        this.contAuditor.setBoundLabelText(resHelper.getString("contAuditor.boundLabelText"));		
        this.contAuditor.setBoundLabelLength(100);		
        this.contAuditor.setBoundLabelUnderline(true);
        // kdtEntrys
		String kdtEntrysStrXML = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><DocRoot xmlns:c=\"http://www.kingdee.com/Common\" xmlns:f=\"http://www.kingdee.com/Form\" xmlns:t=\"http://www.kingdee.com/Table\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.kingdee.com/KDF KDFSchema.xsd\" version=\"0.0\"><Styles><c:Style id=\"sCol0\"><c:Protection hidden=\"true\" /></c:Style><c:Style id=\"sCol1\"><c:NumberFormat>&amp;double</c:NumberFormat></c:Style></Styles><Table id=\"KDTable\"><t:Sheet name=\"sheet1\"><t:Table t:selectMode=\"15\" t:mergeMode=\"0\" t:dataRequestMode=\"0\" t:pageRowCount=\"100\"><t:ColumnGroup><t:Column t:key=\"id\" t:width=\"-1\" t:mergeable=\"true\" t:resizeable=\"true\" t:moveable=\"true\" t:group=\"false\" t:required=\"false\" t:index=\"-1\" t:styleID=\"sCol0\" /><t:Column t:key=\"clockLocation\" t:width=\"-1\" t:mergeable=\"true\" t:resizeable=\"true\" t:moveable=\"true\" t:group=\"false\" t:required=\"false\" t:index=\"-1\" t:styleID=\"sCol1\" /></t:ColumnGroup><t:Head><t:Row t:name=\"header\" t:height=\"-1\" t:mergeable=\"true\" t:resizeable=\"true\"><t:Cell>$Resource{id}</t:Cell><t:Cell>$Resource{clockLocation}</t:Cell></t:Row></t:Head></t:Table><t:SheetOptions><t:MergeBlocks><t:Head /></t:MergeBlocks></t:SheetOptions></t:Sheet></Table></DocRoot>";
		
        this.kdtEntrys.setFormatXml(resHelper.translateString("kdtEntrys",kdtEntrysStrXML));

                this.kdtEntrys.putBindContents("editData",new String[] {"id","clockLocation"});


        this.kdtEntrys.checkParsed();
        // contprojectCode		
        this.contprojectCode.setBoundLabelText(resHelper.getString("contprojectCode.boundLabelText"));		
        this.contprojectCode.setBoundLabelLength(100);		
        this.contprojectCode.setBoundLabelUnderline(true);		
        this.contprojectCode.setVisible(true);
        // contprojectName		
        this.contprojectName.setBoundLabelText(resHelper.getString("contprojectName.boundLabelText"));		
        this.contprojectName.setBoundLabelLength(100);		
        this.contprojectName.setBoundLabelUnderline(true);		
        this.contprojectName.setVisible(true);
        // contprojectLevel		
        this.contprojectLevel.setBoundLabelText(resHelper.getString("contprojectLevel.boundLabelText"));		
        this.contprojectLevel.setBoundLabelLength(100);		
        this.contprojectLevel.setBoundLabelUnderline(true);		
        this.contprojectLevel.setVisible(true);
        // contprojectManager		
        this.contprojectManager.setBoundLabelText(resHelper.getString("contprojectManager.boundLabelText"));		
        this.contprojectManager.setBoundLabelLength(100);		
        this.contprojectManager.setBoundLabelUnderline(true);		
        this.contprojectManager.setVisible(true);
        // contexpectedStartTime		
        this.contexpectedStartTime.setBoundLabelText(resHelper.getString("contexpectedStartTime.boundLabelText"));		
        this.contexpectedStartTime.setBoundLabelLength(100);		
        this.contexpectedStartTime.setBoundLabelUnderline(true);		
        this.contexpectedStartTime.setVisible(true);
        // contexpectedEndTime		
        this.contexpectedEndTime.setBoundLabelText(resHelper.getString("contexpectedEndTime.boundLabelText"));		
        this.contexpectedEndTime.setBoundLabelLength(100);		
        this.contexpectedEndTime.setBoundLabelUnderline(true);		
        this.contexpectedEndTime.setVisible(true);
        // conttotalPersonDays		
        this.conttotalPersonDays.setBoundLabelText(resHelper.getString("conttotalPersonDays.boundLabelText"));		
        this.conttotalPersonDays.setBoundLabelLength(100);		
        this.conttotalPersonDays.setBoundLabelUnderline(true);		
        this.conttotalPersonDays.setVisible(true);
        // contcostAmount		
        this.contcostAmount.setBoundLabelText(resHelper.getString("contcostAmount.boundLabelText"));		
        this.contcostAmount.setBoundLabelLength(100);		
        this.contcostAmount.setBoundLabelUnderline(true);		
        this.contcostAmount.setVisible(true);
        // contnotes		
        this.contnotes.setBoundLabelText(resHelper.getString("contnotes.boundLabelText"));		
        this.contnotes.setBoundLabelLength(100);		
        this.contnotes.setBoundLabelUnderline(true);		
        this.contnotes.setVisible(true);
        // kDLabelContainer1		
        this.kDLabelContainer1.setBoundLabelLength(100);		
        this.kDLabelContainer1.setBoundLabelUnderline(true);		
        this.kDLabelContainer1.setVisible(true);		
        this.kDLabelContainer1.setBoundLabelText(resHelper.getString("kDLabelContainer1.boundLabelText"));
        // kDLabelContainer2		
        this.kDLabelContainer2.setBoundLabelText(resHelper.getString("kDLabelContainer2.boundLabelText"));		
        this.kDLabelContainer2.setBoundLabelLength(100);		
        this.kDLabelContainer2.setBoundLabelUnderline(true);		
        this.kDLabelContainer2.setVisible(true);
        // contchangedManDays		
        this.contchangedManDays.setBoundLabelText(resHelper.getString("contchangedManDays.boundLabelText"));		
        this.contchangedManDays.setBoundLabelLength(100);		
        this.contchangedManDays.setBoundLabelUnderline(true);		
        this.contchangedManDays.setVisible(true);
        // chkbeingChanged		
        this.chkbeingChanged.setText(resHelper.getString("chkbeingChanged.text"));		
        this.chkbeingChanged.setVisible(true);		
        this.chkbeingChanged.setHorizontalAlignment(2);
        // contprojectState		
        this.contprojectState.setBoundLabelText(resHelper.getString("contprojectState.boundLabelText"));		
        this.contprojectState.setBoundLabelLength(100);		
        this.contprojectState.setBoundLabelUnderline(true);		
        this.contprojectState.setVisible(true);
        // kDLabelContainer3		
        this.kDLabelContainer3.setBoundLabelText(resHelper.getString("kDLabelContainer3.boundLabelText"));		
        this.kDLabelContainer3.setBoundLabelLength(100);		
        this.kDLabelContainer3.setBoundLabelUnderline(true);		
        this.kDLabelContainer3.setVisible(true);
        // prmtCreator		
        this.prmtCreator.setEnabled(false);		
        this.prmtCreator.setVisible(false);
        // kDDateCreateTime		
        this.kDDateCreateTime.setTimeEnabled(true);		
        this.kDDateCreateTime.setEnabled(false);		
        this.kDDateCreateTime.setVisible(false);
        // prmtLastUpdateUser		
        this.prmtLastUpdateUser.setEnabled(false);		
        this.prmtLastUpdateUser.setVisible(false);
        // kDDateLastUpdateTime		
        this.kDDateLastUpdateTime.setTimeEnabled(true);		
        this.kDDateLastUpdateTime.setEnabled(false);		
        this.kDDateLastUpdateTime.setVisible(false);
        // txtNumber		
        this.txtNumber.setMaxLength(80);
        // pkBizDate		
        this.pkBizDate.setVisible(false);		
        this.pkBizDate.setEnabled(true);
        // txtDescription		
        this.txtDescription.setMaxLength(80);		
        this.txtDescription.setVisible(false);
        // prmtAuditor		
        this.prmtAuditor.setEnabled(false);		
        this.prmtAuditor.setVisible(false);
        // txtprojectCode		
        this.txtprojectCode.setHorizontalAlignment(2);		
        this.txtprojectCode.setMaxLength(100);		
        this.txtprojectCode.setRequired(false);
        // txtprojectName		
        this.txtprojectName.setHorizontalAlignment(2);		
        this.txtprojectName.setMaxLength(100);		
        this.txtprojectName.setRequired(false);
        // projectLevel		
        this.projectLevel.addItems(EnumUtils.getEnumList("").toArray());		
        this.projectLevel.setRequired(false);
        // prmtprojectManager		
        this.prmtprojectManager.setQueryInfo("com.kingdee.eas.basedata.person.app.PersonQuery");		
        this.prmtprojectManager.setEditable(true);		
        this.prmtprojectManager.setDisplayFormat("$name$");		
        this.prmtprojectManager.setEditFormat("$number$");		
        this.prmtprojectManager.setCommitFormat("$number$");		
        this.prmtprojectManager.setRequired(false);
        // pkexpectedStartTime		
        this.pkexpectedStartTime.setRequired(false);
        // pkexpectedEndTime		
        this.pkexpectedEndTime.setRequired(false);
        // txttotalPersonDays		
        this.txttotalPersonDays.setHorizontalAlignment(2);		
        this.txttotalPersonDays.setDataType(1);		
        this.txttotalPersonDays.setSupportedEmpty(true);		
        this.txttotalPersonDays.setMinimumValue( new java.math.BigDecimal("-1.0E18"));		
        this.txttotalPersonDays.setMaximumValue( new java.math.BigDecimal("1.0E18"));		
        this.txttotalPersonDays.setPrecision(10);		
        this.txttotalPersonDays.setRequired(false);
        // txtcostAmount		
        this.txtcostAmount.setHorizontalAlignment(2);		
        this.txtcostAmount.setDataType(1);		
        this.txtcostAmount.setSupportedEmpty(true);		
        this.txtcostAmount.setMinimumValue( new java.math.BigDecimal("-1.0E18"));		
        this.txtcostAmount.setMaximumValue( new java.math.BigDecimal("1.0E18"));		
        this.txtcostAmount.setPrecision(10);		
        this.txtcostAmount.setRequired(false);
        // txtnotes		
        this.txtnotes.setHorizontalAlignment(2);		
        this.txtnotes.setMaxLength(100);		
        this.txtnotes.setRequired(false);
        // kDFormattedTextField1		
        this.kDFormattedTextField1.setVisible(true);		
        this.kDFormattedTextField1.setHorizontalAlignment(2);		
        this.kDFormattedTextField1.setDataType(1);		
        this.kDFormattedTextField1.setSupportedEmpty(true);		
        this.kDFormattedTextField1.setMinimumValue( new java.math.BigDecimal("-1.0E18"));		
        this.kDFormattedTextField1.setMaximumValue( new java.math.BigDecimal("1.0E18"));		
        this.kDFormattedTextField1.setPrecision(10);		
        this.kDFormattedTextField1.setRequired(false);
        // kDFormattedTextField2		
        this.kDFormattedTextField2.setVisible(true);		
        this.kDFormattedTextField2.setHorizontalAlignment(2);		
        this.kDFormattedTextField2.setDataType(1);		
        this.kDFormattedTextField2.setSupportedEmpty(true);		
        this.kDFormattedTextField2.setMinimumValue( new java.math.BigDecimal("-1.0E18"));		
        this.kDFormattedTextField2.setMaximumValue( new java.math.BigDecimal("1.0E18"));		
        this.kDFormattedTextField2.setPrecision(10);		
        this.kDFormattedTextField2.setRequired(false);
        // txtchangedManDays		
        this.txtchangedManDays.setHorizontalAlignment(2);		
        this.txtchangedManDays.setDataType(1);		
        this.txtchangedManDays.setSupportedEmpty(true);		
        this.txtchangedManDays.setMinimumValue( new java.math.BigDecimal("-1.0E18"));		
        this.txtchangedManDays.setMaximumValue( new java.math.BigDecimal("1.0E18"));		
        this.txtchangedManDays.setPrecision(10);		
        this.txtchangedManDays.setRequired(false);
        // projectState		
        this.projectState.setVisible(true);		
        this.projectState.addItems(EnumUtils.getEnumList("com.kingdee.eas.hr.project.projectState").toArray());		
        this.projectState.setRequired(false);
        // kDFormattedTextField3		
        this.kDFormattedTextField3.setHorizontalAlignment(2);		
        this.kDFormattedTextField3.setDataType(1);		
        this.kDFormattedTextField3.setSupportedEmpty(true);		
        this.kDFormattedTextField3.setMinimumValue( new java.math.BigDecimal("-1.0E18"));		
        this.kDFormattedTextField3.setMaximumValue( new java.math.BigDecimal("1.0E18"));		
        this.kDFormattedTextField3.setPrecision(10);		
        this.kDFormattedTextField3.setRequired(false);
        this.setFocusTraversalPolicy(new com.kingdee.bos.ui.UIFocusTraversalPolicy(new java.awt.Component[] {txtNumber,pkBizDate,txtDescription,prmtAuditor,prmtCreator,kDDateCreateTime,prmtLastUpdateUser,kDDateLastUpdateTime,txtprojectCode,txtprojectName,projectLevel,prmtprojectManager,pkexpectedStartTime,pkexpectedEndTime,txttotalPersonDays,txtcostAmount,txtchangedManDays,txtnotes,kdtEntrys,chkbeingChanged,projectState}));
        this.setFocusCycleRoot(true);
		//Register control's property binding
		registerBindings();
		registerUIState();


    }

	public com.kingdee.bos.ctrl.swing.KDToolBar[] getUIMultiToolBar(){
		java.util.List list = new java.util.ArrayList();
		com.kingdee.bos.ctrl.swing.KDToolBar[] bars = super.getUIMultiToolBar();
		if (bars != null) {
			list.addAll(java.util.Arrays.asList(bars));
		}
		return (com.kingdee.bos.ctrl.swing.KDToolBar[])list.toArray(new com.kingdee.bos.ctrl.swing.KDToolBar[list.size()]);
	}




    /**
     * output initUIContentLayout method
     */
    public void initUIContentLayout()
    {
        this.setBounds(new Rectangle(0, 0, 1015, 666));
        this.setLayout(null);
        contCreator.setBounds(new Rectangle(385, 571, 270, 19));
        this.add(contCreator, null);
        contCreateTime.setBounds(new Rectangle(725, 569, 270, 19));
        this.add(contCreateTime, null);
        contLastUpdateUser.setBounds(new Rectangle(385, 600, 270, 19));
        this.add(contLastUpdateUser, null);
        contLastUpdateTime.setBounds(new Rectangle(725, 598, 270, 19));
        this.add(contLastUpdateTime, null);
        contNumber.setBounds(new Rectangle(728, 633, 270, 19));
        this.add(contNumber, null);
        contBizDate.setBounds(new Rectangle(31, 603, 270, 19));
        this.add(contBizDate, null);
        contDescription.setBounds(new Rectangle(384, 634, 270, 19));
        this.add(contDescription, null);
        contAuditor.setBounds(new Rectangle(31, 575, 270, 19));
        this.add(contAuditor, null);
        kdtEntrys.setBounds(new Rectangle(15, 156, 991, 413));
        kdtEntrys_detailPanel = (com.kingdee.eas.framework.client.multiDetail.DetailPanel)com.kingdee.eas.framework.client.multiDetail.HMDUtils.buildDetail(this,dataBinder,kdtEntrys,new com.kingdee.eas.hr.project.ProjectManagementEntryInfo(),null,false);
        this.add(kdtEntrys_detailPanel, null);
        contprojectCode.setBounds(new Rectangle(31, 8, 270, 19));
        this.add(contprojectCode, null);
        contprojectName.setBounds(new Rectangle(385, 8, 270, 19));
        this.add(contprojectName, null);
        contprojectLevel.setBounds(new Rectangle(725, 8, 270, 19));
        this.add(contprojectLevel, null);
        contprojectManager.setBounds(new Rectangle(31, 38, 270, 19));
        this.add(contprojectManager, null);
        contexpectedStartTime.setBounds(new Rectangle(385, 43, 270, 19));
        this.add(contexpectedStartTime, null);
        contexpectedEndTime.setBounds(new Rectangle(725, 43, 270, 19));
        this.add(contexpectedEndTime, null);
        conttotalPersonDays.setBounds(new Rectangle(31, 68, 270, 19));
        this.add(conttotalPersonDays, null);
        contcostAmount.setBounds(new Rectangle(385, 68, 270, 19));
        this.add(contcostAmount, null);
        contnotes.setBounds(new Rectangle(725, 68, 270, 19));
        this.add(contnotes, null);
        kDLabelContainer1.setBounds(new Rectangle(32, 96, 270, 19));
        this.add(kDLabelContainer1, null);
        kDLabelContainer2.setBounds(new Rectangle(388, 99, 270, 19));
        this.add(kDLabelContainer2, null);
        contchangedManDays.setBounds(new Rectangle(725, 96, 270, 19));
        this.add(contchangedManDays, null);
        chkbeingChanged.setBounds(new Rectangle(388, 128, 270, 19));
        this.add(chkbeingChanged, null);
        contprojectState.setBounds(new Rectangle(32, 128, 270, 19));
        this.add(contprojectState, null);
        kDLabelContainer3.setBounds(new Rectangle(727, 131, 270, 19));
        this.add(kDLabelContainer3, null);
        //contCreator
        contCreator.setBoundEditor(prmtCreator);
        //contCreateTime
        contCreateTime.setBoundEditor(kDDateCreateTime);
        //contLastUpdateUser
        contLastUpdateUser.setBoundEditor(prmtLastUpdateUser);
        //contLastUpdateTime
        contLastUpdateTime.setBoundEditor(kDDateLastUpdateTime);
        //contNumber
        contNumber.setBoundEditor(txtNumber);
        //contBizDate
        contBizDate.setBoundEditor(pkBizDate);
        //contDescription
        contDescription.setBoundEditor(txtDescription);
        //contAuditor
        contAuditor.setBoundEditor(prmtAuditor);
        //contprojectCode
        contprojectCode.setBoundEditor(txtprojectCode);
        //contprojectName
        contprojectName.setBoundEditor(txtprojectName);
        //contprojectLevel
        contprojectLevel.setBoundEditor(projectLevel);
        //contprojectManager
        contprojectManager.setBoundEditor(prmtprojectManager);
        //contexpectedStartTime
        contexpectedStartTime.setBoundEditor(pkexpectedStartTime);
        //contexpectedEndTime
        contexpectedEndTime.setBoundEditor(pkexpectedEndTime);
        //conttotalPersonDays
        conttotalPersonDays.setBoundEditor(txttotalPersonDays);
        //contcostAmount
        contcostAmount.setBoundEditor(txtcostAmount);
        //contnotes
        contnotes.setBoundEditor(txtnotes);
        //kDLabelContainer1
        kDLabelContainer1.setBoundEditor(kDFormattedTextField1);
        //kDLabelContainer2
        kDLabelContainer2.setBoundEditor(kDFormattedTextField2);
        //contchangedManDays
        contchangedManDays.setBoundEditor(txtchangedManDays);
        //contprojectState
        contprojectState.setBoundEditor(projectState);
        //kDLabelContainer3
        kDLabelContainer3.setBoundEditor(kDFormattedTextField3);

    }


    /**
     * output initUIMenuBarLayout method
     */
    public void initUIMenuBarLayout()
    {
        this.menuBar.add(menuFile);
        this.menuBar.add(menuEdit);
        this.menuBar.add(MenuService);
        this.menuBar.add(menuView);
        this.menuBar.add(menuBiz);
        this.menuBar.add(menuTable1);
        this.menuBar.add(menuTool);
        this.menuBar.add(menuWorkflow);
        this.menuBar.add(menuHelp);
        //menuFile
        menuFile.add(menuItemAddNew);
        menuFile.add(kDSeparator1);
        menuFile.add(menuItemCloudFeed);
        menuFile.add(menuItemSave);
        menuFile.add(menuItemCloudScreen);
        menuFile.add(menuItemSubmit);
        menuFile.add(menuItemCloudShare);
        menuFile.add(menuSubmitOption);
        menuFile.add(kdSeparatorFWFile1);
        menuFile.add(rMenuItemSubmit);
        menuFile.add(rMenuItemSubmitAndAddNew);
        menuFile.add(rMenuItemSubmitAndPrint);
        menuFile.add(separatorFile1);
        menuFile.add(MenuItemAttachment);
        menuFile.add(kDSeparator2);
        menuFile.add(menuItemPageSetup);
        menuFile.add(menuItemPrint);
        menuFile.add(menuItemPrintPreview);
        menuFile.add(kDSeparator6);
        menuFile.add(menuItemSendMail);
        menuFile.add(kDSeparator3);
        menuFile.add(menuItemExitCurrent);
        //menuSubmitOption
        menuSubmitOption.add(chkMenuItemSubmitAndAddNew);
        menuSubmitOption.add(chkMenuItemSubmitAndPrint);
        //menuEdit
        menuEdit.add(menuItemCopy);
        menuEdit.add(menuItemEdit);
        menuEdit.add(menuItemRemove);
        menuEdit.add(kDSeparator4);
        menuEdit.add(menuItemReset);
        menuEdit.add(separator1);
        menuEdit.add(menuItemCreateFrom);
        menuEdit.add(menuItemCreateTo);
        menuEdit.add(menuItemCopyFrom);
        menuEdit.add(separatorEdit1);
        menuEdit.add(menuItemEnterToNextRow);
        menuEdit.add(separator2);
        //MenuService
        MenuService.add(MenuItemKnowStore);
        MenuService.add(MenuItemAnwser);
        MenuService.add(SepratorService);
        MenuService.add(MenuItemRemoteAssist);
        //menuView
        menuView.add(menuItemFirst);
        menuView.add(menuItemPre);
        menuView.add(menuItemNext);
        menuView.add(menuItemLast);
        menuView.add(separator3);
        menuView.add(menuItemTraceUp);
        menuView.add(menuItemTraceDown);
        menuView.add(kDSeparator7);
        menuView.add(menuItemLocate);
        //menuBiz
        menuBiz.add(menuItemCancelCancel);
        menuBiz.add(menuItemCancel);
        menuBiz.add(MenuItemVoucher);
        menuBiz.add(menuItemDelVoucher);
        menuBiz.add(MenuItemPCVoucher);
        menuBiz.add(menuItemDelPCVoucher);
        //menuTable1
        menuTable1.add(menuItemAddLine);
        menuTable1.add(menuItemCopyLine);
        menuTable1.add(menuItemInsertLine);
        menuTable1.add(menuItemRemoveLine);
        //menuTool
        menuTool.add(menuItemSendMessage);
        menuTool.add(menuItemMsgFormat);
        menuTool.add(menuItemCalculator);
        menuTool.add(menuItemToolBarCustom);
        //menuWorkflow
        menuWorkflow.add(menuItemStartWorkFlow);
        menuWorkflow.add(separatorWF1);
        menuWorkflow.add(menuItemViewSubmitProccess);
        menuWorkflow.add(menuItemViewDoProccess);
        menuWorkflow.add(MenuItemWFG);
        menuWorkflow.add(menuItemWorkFlowList);
        menuWorkflow.add(separatorWF2);
        menuWorkflow.add(menuItemMultiapprove);
        menuWorkflow.add(menuItemNextPerson);
        menuWorkflow.add(menuItemAuditResult);
        menuWorkflow.add(kDSeparator5);
        menuWorkflow.add(kDMenuItemSendMessage);
        //menuHelp
        menuHelp.add(menuItemHelp);
        menuHelp.add(kDSeparator12);
        menuHelp.add(menuItemRegPro);
        menuHelp.add(menuItemPersonalSite);
        menuHelp.add(helpseparatorDiv);
        menuHelp.add(menuitemProductval);
        menuHelp.add(kDSeparatorProduct);
        menuHelp.add(menuItemAbout);

    }

    /**
     * output initUIToolBarLayout method
     */
    public void initUIToolBarLayout()
    {
        this.toolBar.add(btnAddNew);
        this.toolBar.add(btnCloud);
        this.toolBar.add(btnEdit);
        this.toolBar.add(btnXunTong);
        this.toolBar.add(btnSave);
        this.toolBar.add(kDSeparatorCloud);
        this.toolBar.add(btnReset);
        this.toolBar.add(btnSubmit);
        this.toolBar.add(btnCopy);
        this.toolBar.add(btnRemove);
        this.toolBar.add(btnCancelCancel);
        this.toolBar.add(btnCancel);
        this.toolBar.add(btnAttachment);
        this.toolBar.add(separatorFW1);
        this.toolBar.add(btnPageSetup);
        this.toolBar.add(btnPrint);
        this.toolBar.add(btnPrintPreview);
        this.toolBar.add(separatorFW2);
        this.toolBar.add(btnFirst);
        this.toolBar.add(btnPre);
        this.toolBar.add(btnNext);
        this.toolBar.add(btnLast);
        this.toolBar.add(separatorFW3);
        this.toolBar.add(btnTraceUp);
        this.toolBar.add(btnTraceDown);
        this.toolBar.add(btnWorkFlowG);
        this.toolBar.add(btnSignature);
        this.toolBar.add(btnViewSignature);
        this.toolBar.add(separatorFW4);
        this.toolBar.add(btnNumberSign);
        this.toolBar.add(separatorFW7);
        this.toolBar.add(btnCreateFrom);
        this.toolBar.add(btnCopyFrom);
        this.toolBar.add(btnCreateTo);
        this.toolBar.add(separatorFW5);
        this.toolBar.add(separatorFW8);
        this.toolBar.add(btnAddLine);
        this.toolBar.add(btnCopyLine);
        this.toolBar.add(btnInsertLine);
        this.toolBar.add(btnRemoveLine);
        this.toolBar.add(separatorFW6);
        this.toolBar.add(separatorFW9);
        this.toolBar.add(btnVoucher);
        this.toolBar.add(btnDelVoucher);
        this.toolBar.add(btnPCVoucher);
        this.toolBar.add(btnDelPCVoucher);
        this.toolBar.add(btnAuditResult);
        this.toolBar.add(btnMultiapprove);
        this.toolBar.add(btnWFViewdoProccess);
        this.toolBar.add(btnWFViewSubmitProccess);
        this.toolBar.add(btnNextPerson);


    }

	//Regiester control's property binding.
	private void registerBindings(){
		dataBinder.registerBinding("entrys.id", com.kingdee.bos.util.BOSUuid.class, this.kdtEntrys, "id.text");
		dataBinder.registerBinding("entrys", com.kingdee.eas.hr.project.ProjectManagementEntryInfo.class, this.kdtEntrys, "userObject");
		dataBinder.registerBinding("entrys.clockLocation", String.class, this.kdtEntrys, "clockLocation.text");
		dataBinder.registerBinding("beingChanged", boolean.class, this.chkbeingChanged, "selected");
		dataBinder.registerBinding("creator", com.kingdee.eas.base.permission.UserInfo.class, this.prmtCreator, "data");
		dataBinder.registerBinding("createTime", java.sql.Timestamp.class, this.kDDateCreateTime, "value");
		dataBinder.registerBinding("lastUpdateUser", com.kingdee.eas.base.permission.UserInfo.class, this.prmtLastUpdateUser, "data");
		dataBinder.registerBinding("lastUpdateTime", java.sql.Timestamp.class, this.kDDateLastUpdateTime, "value");
		dataBinder.registerBinding("number", String.class, this.txtNumber, "text");
		dataBinder.registerBinding("bizDate", java.util.Date.class, this.pkBizDate, "value");
		dataBinder.registerBinding("description", String.class, this.txtDescription, "text");
		dataBinder.registerBinding("auditor", com.kingdee.eas.base.permission.UserInfo.class, this.prmtAuditor, "data");
		dataBinder.registerBinding("projectCode", String.class, this.txtprojectCode, "text");
		dataBinder.registerBinding("projectName", String.class, this.txtprojectName, "text");
		dataBinder.registerBinding("projectLevel", com.kingdee.eas.hr.project.projectLevel.class, this.projectLevel, "selectedItem");
		dataBinder.registerBinding("projectManager", com.kingdee.eas.basedata.person.PersonInfo.class, this.prmtprojectManager, "data");
		dataBinder.registerBinding("expectedStartTime", java.util.Date.class, this.pkexpectedStartTime, "value");
		dataBinder.registerBinding("expectedEndTime", java.util.Date.class, this.pkexpectedEndTime, "value");
		dataBinder.registerBinding("totalPersonDays", java.math.BigDecimal.class, this.txttotalPersonDays, "value");
		dataBinder.registerBinding("costAmount", java.math.BigDecimal.class, this.txtcostAmount, "value");
		dataBinder.registerBinding("notes", String.class, this.txtnotes, "text");
		dataBinder.registerBinding("changedManDays", java.math.BigDecimal.class, this.txtchangedManDays, "value");
		dataBinder.registerBinding("projectState", com.kingdee.eas.hr.project.projectState.class, this.projectState, "selectedItem");		
	}
	//Regiester UI State
	private void registerUIState(){		
	}
	public String getUIHandlerClassName() {
	    return "com.kingdee.eas.hr.project.app.ProjectManagementEditUIHandler";
	}
	public IUIActionPostman prepareInit() {
		IUIActionPostman clientHanlder = super.prepareInit();
		if (clientHanlder != null) {
			RequestContext request = new RequestContext();
    		request.setClassName(getUIHandlerClassName());
			clientHanlder.setRequestContext(request);
		}
		return clientHanlder;
    }
	
	public boolean isPrepareInit() {
    	return false;
    }
    protected void initUIP() {
        super.initUIP();
    }


    /**
     * output onShow method
     */
    public void onShow() throws Exception
    {
        super.onShow();
        this.txtNumber.requestFocusInWindow();
    }

	
	

    /**
     * output setDataObject method
     */
    public void setDataObject(IObjectValue dataObject)
    {
        IObjectValue ov = dataObject;        	    	
        super.setDataObject(ov);
        this.editData = (com.kingdee.eas.hr.project.ProjectManagementInfo)ov;
    }
    protected void removeByPK(IObjectPK pk) throws Exception {
    	IObjectValue editData = this.editData;
    	super.removeByPK(pk);
    	recycleNumberByOrg(editData,"NONE",editData.getString("number"));
    }
    
    protected void recycleNumberByOrg(IObjectValue editData,String orgType,String number) {
        if (!StringUtils.isEmpty(number))
        {
            try {
            	String companyID = null;            
            	com.kingdee.eas.base.codingrule.ICodingRuleManager iCodingRuleManager = com.kingdee.eas.base.codingrule.CodingRuleManagerFactory.getRemoteInstance();
				if(!com.kingdee.util.StringUtils.isEmpty(orgType) && !"NONE".equalsIgnoreCase(orgType) && com.kingdee.eas.common.client.SysContext.getSysContext().getCurrentOrgUnit(com.kingdee.eas.basedata.org.OrgType.getEnum(orgType))!=null) {
					companyID =com.kingdee.eas.common.client.SysContext.getSysContext().getCurrentOrgUnit(com.kingdee.eas.basedata.org.OrgType.getEnum(orgType)).getString("id");
				}
				else if (com.kingdee.eas.common.client.SysContext.getSysContext().getCurrentOrgUnit() != null) {
					companyID = ((com.kingdee.eas.basedata.org.OrgUnitInfo)com.kingdee.eas.common.client.SysContext.getSysContext().getCurrentOrgUnit()).getString("id");
            	}				
				if (!StringUtils.isEmpty(companyID) && iCodingRuleManager.isExist(editData, companyID) && iCodingRuleManager.isUseIntermitNumber(editData, companyID)) {
					iCodingRuleManager.recycleNumber(editData,companyID,number);					
				}
            }
            catch (Exception e)
            {
                handUIException(e);
            }
        }
    }
    protected void setAutoNumberByOrg(String orgType) {
    	if (editData == null) return;
		if (editData.getNumber() == null) {
            try {
            	String companyID = null;
				if(!com.kingdee.util.StringUtils.isEmpty(orgType) && !"NONE".equalsIgnoreCase(orgType) && com.kingdee.eas.common.client.SysContext.getSysContext().getCurrentOrgUnit(com.kingdee.eas.basedata.org.OrgType.getEnum(orgType))!=null) {
					companyID = com.kingdee.eas.common.client.SysContext.getSysContext().getCurrentOrgUnit(com.kingdee.eas.basedata.org.OrgType.getEnum(orgType)).getString("id");
				}
				else if (com.kingdee.eas.common.client.SysContext.getSysContext().getCurrentOrgUnit() != null) {
					companyID = ((com.kingdee.eas.basedata.org.OrgUnitInfo)com.kingdee.eas.common.client.SysContext.getSysContext().getCurrentOrgUnit()).getString("id");
            	}
				com.kingdee.eas.base.codingrule.ICodingRuleManager iCodingRuleManager = com.kingdee.eas.base.codingrule.CodingRuleManagerFactory.getRemoteInstance();
		        if (iCodingRuleManager.isExist(editData, companyID)) {
		            if (iCodingRuleManager.isAddView(editData, companyID)) {
		            	editData.setNumber(iCodingRuleManager.getNumber(editData,companyID));
		            }
	                txtNumber.setEnabled(false);
		        }
            }
            catch (Exception e) {
                handUIException(e);
                this.oldData = editData;
                com.kingdee.eas.util.SysUtil.abort();
            } 
        } 
        else {
            if (editData.getNumber().trim().length() > 0) {
                txtNumber.setText(editData.getNumber());
            }
        }
    }

    /**
     * output loadFields method
     */
    public void loadFields()
    {
        		setAutoNumberByOrg("NONE");
        dataBinder.loadFields();
    }
		protected void setOrgF7(KDBizPromptBox f7,com.kingdee.eas.basedata.org.OrgType orgType) throws Exception
		{
			com.kingdee.eas.basedata.org.client.f7.NewOrgUnitFilterInfoProducer oufip = new com.kingdee.eas.basedata.org.client.f7.NewOrgUnitFilterInfoProducer(orgType);
			oufip.getModel().setIsCUFilter(true);
			f7.setFilterInfoProducer(oufip);
		}

    /**
     * output storeFields method
     */
    public void storeFields()
    {
		dataBinder.storeFields();
    }

	/**
	 * ????????งต??
	 */
	protected void registerValidator() {
    	getValidateHelper().setCustomValidator( getValidator() );
		getValidateHelper().registerBindProperty("entrys.id", ValidateHelper.ON_SAVE);    
		getValidateHelper().registerBindProperty("entrys", ValidateHelper.ON_SAVE);    
		getValidateHelper().registerBindProperty("entrys.clockLocation", ValidateHelper.ON_SAVE);    
		getValidateHelper().registerBindProperty("beingChanged", ValidateHelper.ON_SAVE);    
		getValidateHelper().registerBindProperty("creator", ValidateHelper.ON_SAVE);    
		getValidateHelper().registerBindProperty("createTime", ValidateHelper.ON_SAVE);    
		getValidateHelper().registerBindProperty("lastUpdateUser", ValidateHelper.ON_SAVE);    
		getValidateHelper().registerBindProperty("lastUpdateTime", ValidateHelper.ON_SAVE);    
		getValidateHelper().registerBindProperty("number", ValidateHelper.ON_SAVE);    
		getValidateHelper().registerBindProperty("bizDate", ValidateHelper.ON_SAVE);    
		getValidateHelper().registerBindProperty("description", ValidateHelper.ON_SAVE);    
		getValidateHelper().registerBindProperty("auditor", ValidateHelper.ON_SAVE);    
		getValidateHelper().registerBindProperty("projectCode", ValidateHelper.ON_SAVE);    
		getValidateHelper().registerBindProperty("projectName", ValidateHelper.ON_SAVE);    
		getValidateHelper().registerBindProperty("projectLevel", ValidateHelper.ON_SAVE);    
		getValidateHelper().registerBindProperty("projectManager", ValidateHelper.ON_SAVE);    
		getValidateHelper().registerBindProperty("expectedStartTime", ValidateHelper.ON_SAVE);    
		getValidateHelper().registerBindProperty("expectedEndTime", ValidateHelper.ON_SAVE);    
		getValidateHelper().registerBindProperty("totalPersonDays", ValidateHelper.ON_SAVE);    
		getValidateHelper().registerBindProperty("costAmount", ValidateHelper.ON_SAVE);    
		getValidateHelper().registerBindProperty("notes", ValidateHelper.ON_SAVE);    
		getValidateHelper().registerBindProperty("changedManDays", ValidateHelper.ON_SAVE);    
		getValidateHelper().registerBindProperty("projectState", ValidateHelper.ON_SAVE);    		
	}



    /**
     * output setOprtState method
     */
    public void setOprtState(String oprtType)
    {
        super.setOprtState(oprtType);
        if (STATUS_ADDNEW.equals(this.oprtState)) {
        } else if (STATUS_EDIT.equals(this.oprtState)) {
        } else if (STATUS_VIEW.equals(this.oprtState)) {
        } else if (STATUS_FINDVIEW.equals(this.oprtState)) {
        }
    }

    /**
     * output getSelectors method
     */
    public SelectorItemCollection getSelectors()
    {
        SelectorItemCollection sic = new SelectorItemCollection();
		String selectorAll = System.getProperty("selector.all");
		if(StringUtils.isEmpty(selectorAll)){
			selectorAll = "true";
		}
    	sic.add(new SelectorItemInfo("entrys.id"));
		if(selectorAll.equalsIgnoreCase("true"))
		{
			sic.add(new SelectorItemInfo("entrys.*"));
		}
		else{
		}
    	sic.add(new SelectorItemInfo("entrys.clockLocation"));
        sic.add(new SelectorItemInfo("beingChanged"));
		if(selectorAll.equalsIgnoreCase("true"))
		{
			sic.add(new SelectorItemInfo("creator.*"));
		}
		else{
        	sic.add(new SelectorItemInfo("creator.id"));
        	sic.add(new SelectorItemInfo("creator.number"));
        	sic.add(new SelectorItemInfo("creator.name"));
		}
        sic.add(new SelectorItemInfo("createTime"));
		if(selectorAll.equalsIgnoreCase("true"))
		{
			sic.add(new SelectorItemInfo("lastUpdateUser.*"));
		}
		else{
        	sic.add(new SelectorItemInfo("lastUpdateUser.id"));
        	sic.add(new SelectorItemInfo("lastUpdateUser.number"));
        	sic.add(new SelectorItemInfo("lastUpdateUser.name"));
		}
        sic.add(new SelectorItemInfo("lastUpdateTime"));
        sic.add(new SelectorItemInfo("number"));
        sic.add(new SelectorItemInfo("bizDate"));
        sic.add(new SelectorItemInfo("description"));
		if(selectorAll.equalsIgnoreCase("true"))
		{
			sic.add(new SelectorItemInfo("auditor.*"));
		}
		else{
        	sic.add(new SelectorItemInfo("auditor.id"));
        	sic.add(new SelectorItemInfo("auditor.number"));
        	sic.add(new SelectorItemInfo("auditor.name"));
		}
        sic.add(new SelectorItemInfo("projectCode"));
        sic.add(new SelectorItemInfo("projectName"));
        sic.add(new SelectorItemInfo("projectLevel"));
		if(selectorAll.equalsIgnoreCase("true"))
		{
			sic.add(new SelectorItemInfo("projectManager.*"));
		}
		else{
        	sic.add(new SelectorItemInfo("projectManager.id"));
        	sic.add(new SelectorItemInfo("projectManager.number"));
        	sic.add(new SelectorItemInfo("projectManager.name"));
		}
        sic.add(new SelectorItemInfo("expectedStartTime"));
        sic.add(new SelectorItemInfo("expectedEndTime"));
        sic.add(new SelectorItemInfo("totalPersonDays"));
        sic.add(new SelectorItemInfo("costAmount"));
        sic.add(new SelectorItemInfo("notes"));
        sic.add(new SelectorItemInfo("changedManDays"));
        sic.add(new SelectorItemInfo("projectState"));
        return sic;
    }        
    	

    /**
     * output actionSubmit_actionPerformed method
     */
    public void actionSubmit_actionPerformed(ActionEvent e) throws Exception
    {
        super.actionSubmit_actionPerformed(e);
    }
    	

    /**
     * output actionPrint_actionPerformed method
     */
    public void actionPrint_actionPerformed(ActionEvent e) throws Exception
    {
        ArrayList idList = new ArrayList();
    	if (editData != null && !StringUtils.isEmpty(editData.getString("id"))) {
    		idList.add(editData.getString("id"));
    	}
        if (idList == null || idList.size() == 0 || getTDQueryPK() == null || getTDFileName() == null)
            return;
        com.kingdee.bos.ctrl.kdf.data.impl.BOSQueryDelegate data = new com.kingdee.eas.framework.util.CommonDataProvider(idList,getTDQueryPK());
        com.kingdee.bos.ctrl.report.forapp.kdnote.client.KDNoteHelper appHlp = new com.kingdee.bos.ctrl.report.forapp.kdnote.client.KDNoteHelper();
        appHlp.print(getTDFileName(), data, javax.swing.SwingUtilities.getWindowAncestor(this));
    }
    	

    /**
     * output actionPrintPreview_actionPerformed method
     */
    public void actionPrintPreview_actionPerformed(ActionEvent e) throws Exception
    {
        ArrayList idList = new ArrayList();
        if (editData != null && !StringUtils.isEmpty(editData.getString("id"))) {
    		idList.add(editData.getString("id"));
    	}
        if (idList == null || idList.size() == 0 || getTDQueryPK() == null || getTDFileName() == null)
            return;
        com.kingdee.bos.ctrl.kdf.data.impl.BOSQueryDelegate data = new com.kingdee.eas.framework.util.CommonDataProvider(idList,getTDQueryPK());
        com.kingdee.bos.ctrl.report.forapp.kdnote.client.KDNoteHelper appHlp = new com.kingdee.bos.ctrl.report.forapp.kdnote.client.KDNoteHelper();
        appHlp.printPreview(getTDFileName(), data, javax.swing.SwingUtilities.getWindowAncestor(this));
    }
	public RequestContext prepareActionSubmit(IItemAction itemAction) throws Exception {
			RequestContext request = super.prepareActionSubmit(itemAction);		
		if (request != null) {
    		request.setClassName(getUIHandlerClassName());
		}
		return request;
    }
	
	public boolean isPrepareActionSubmit() {
    	return false;
    }
	public RequestContext prepareActionPrint(IItemAction itemAction) throws Exception {
			RequestContext request = super.prepareActionPrint(itemAction);		
		if (request != null) {
    		request.setClassName(getUIHandlerClassName());
		}
		return request;
    }
	
	public boolean isPrepareActionPrint() {
    	return false;
    }
	public RequestContext prepareActionPrintPreview(IItemAction itemAction) throws Exception {
			RequestContext request = super.prepareActionPrintPreview(itemAction);		
		if (request != null) {
    		request.setClassName(getUIHandlerClassName());
		}
		return request;
    }
	
	public boolean isPrepareActionPrintPreview() {
    	return false;
    }

    /**
     * output getMetaDataPK method
     */
    public IMetaDataPK getMetaDataPK()
    {
        return new MetaDataPK("com.kingdee.eas.hr.project.client", "ProjectManagementEditUI");
    }
    /**
     * output isBindWorkFlow method
     */
    public boolean isBindWorkFlow()
    {
        return true;
    }

    /**
     * output getEditUIName method
     */
    protected String getEditUIName()
    {
        return com.kingdee.eas.hr.project.client.ProjectManagementEditUI.class.getName();
    }

    /**
     * output getBizInterface method
     */
    protected com.kingdee.eas.framework.ICoreBase getBizInterface() throws Exception
    {
        return com.kingdee.eas.hr.project.ProjectManagementFactory.getRemoteInstance();
    }

    /**
     * output createNewData method
     */
    protected IObjectValue createNewData()
    {
        com.kingdee.eas.hr.project.ProjectManagementInfo objectValue = new com.kingdee.eas.hr.project.ProjectManagementInfo();
        objectValue.setCreator((com.kingdee.eas.base.permission.UserInfo)(com.kingdee.eas.common.client.SysContext.getSysContext().getCurrentUser()));		
        return objectValue;
    }


    	protected String getTDFileName() {
    	return "/bim/hr/project/ProjectManagement";
	}
    protected IMetaDataPK getTDQueryPK() {
    	return new MetaDataPK("com.kingdee.eas.hr.project.app.ProjectManagementQuery");
	}
    

    /**
     * output getDetailTable method
     */
    protected KDTable getDetailTable() {
        return kdtEntrys;
	}
    /**
     * output applyDefaultValue method
     */
    protected void applyDefaultValue(IObjectValue vo) {        
		vo.put("projectLevel","1");
        
    }        
	protected void setFieldsNull(com.kingdee.bos.dao.AbstractObjectValue arg0) {
		super.setFieldsNull(arg0);
		arg0.put("number",null);
	}

}