⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mfieldvo.java

📁 大家共享愉快, 共享愉快, 共享愉快, 共享愉快,共享愉快
💻 JAVA
📖 第 1 页 / 共 2 页
字号:

	/**
	 *  Make a standard field (Created/Updated/By)
	 *  @param ctx context
	 *  @param WindowNo window
	 *  @param TabNo tab
	 *  @param AD_Window_ID window
	 *  @param tabReadOnly rab is r/o
	 *  @param isCreated is Created field
	 *  @param isTimestamp is the timestamp (not by)
	 *  @return MFieldVO
	 */
	public static MFieldVO createStdField (Properties ctx, int WindowNo, int TabNo, int AD_Window_ID, boolean tabReadOnly,
		boolean isCreated, boolean isTimestamp)
	{
		MFieldVO vo = new MFieldVO (ctx, WindowNo, TabNo, AD_Window_ID, tabReadOnly);
		vo.ColumnName = isCreated ? "Created" : "Updated";
		if (!isTimestamp)
			vo.ColumnName += "By";
		vo.displayType = isTimestamp ? DisplayType.DateTime : DisplayType.Table;
		if (!isTimestamp)
			vo.AD_Reference_Value_ID = 110;		//	AD_User Table Reference
		vo.IsDisplayed = false;
		vo.IsMandatory = false;
		vo.IsReadOnly = false;
		vo.IsUpdateable = true;
		vo.initFinish();
		return vo;
	}   //  initStdField

	
	/**************************************************************************
	 *  Private constructor
	 *  @param ctx context
	 *  @param WindowNo window
	 *  @param TabNo tab
	 *  @param AD_Window_ID window
	 *  @param tabReadOnly read only
	 */
	private MFieldVO (Properties ctx, int WindowNo, int TabNo, int AD_Window_ID, boolean tabReadOnly)
	{
		this.ctx = ctx;
		this.WindowNo = WindowNo;
		this.TabNo = TabNo;
		this.AD_Window_ID = AD_Window_ID;
		this.tabReadOnly = tabReadOnly;
	}   //  MFieldVO

	static final long serialVersionUID = 4385061125114436797L;
	
	/** Context                     */
	public Properties   ctx = null;
	/** Window No                   */
	public int          WindowNo;
	/** Tab No                      */
	public int          TabNo;
	/** AD_Winmdow_ID               */
	public int          AD_Window_ID;
	/** Is the Tab Read Only        */
	public boolean      tabReadOnly = false;

	/** Is Process Parameter        */
	public boolean      isProcess = false;
	
	//  Database Fields
	public String       ColumnName = "";
	public String       ColumnSQL;
	public String       Header = "";
	public int          displayType = 0;
	public int          AD_Table_ID = 0;
	public int          AD_Column_ID = 0;
	public int          DisplayLength = 0;
	public boolean      IsSameLine = false;
	public boolean      IsDisplayed = false;
	public String       DisplayLogic = "";
	public String       DefaultValue = "";
	public boolean      IsMandatory = false;
	public boolean      IsReadOnly = false;
	public boolean      IsUpdateable = false;
	public boolean      IsAlwaysUpdateable = false;
	public boolean      IsHeading = false;
	public boolean      IsFieldOnly = false;
	public boolean      IsEncryptedField = false;
	public boolean      IsEncryptedColumn = false;
	public boolean		IsSelectionColumn = false;
	public int          SortNo = 0;
	public int          FieldLength = 0;
	public String       VFormat = "";
	public String       ValueMin = "";
	public String       ValueMax = "";
	public String       FieldGroup = "";
	public boolean      IsKey = false;
	public boolean      IsParent = false;
	public String       Callout = "";
	public int          AD_Process_ID = 0;
	public String       Description = "";
	public String       Help = "";
	public String       ReadOnlyLogic = "";
	public String		ObscureType = null;
	//	Lookup
	public String		ValidationCode = "";
	public int			AD_Reference_Value_ID = 0;

	//  Process Parameter
	public boolean      isRange = false;
	public String       DefaultValue2 = "";

	/** Lookup Value Object     */
	public MLookupInfo  lookupInfo = null;

	
	/**
	 *  Set Context including contained elements
	 *  @param newCtx new context
	 */
	public void setCtx (Properties newCtx)
	{
		ctx = newCtx;
		if (lookupInfo != null)
			lookupInfo.ctx = newCtx;
	}   //  setCtx

	/**
	 *  Validate Fields and create LookupInfo if required
	 */
	protected void initFinish()
	{
		//  Not null fields
		if (DisplayLogic == null)
			DisplayLogic = "";
		if (DefaultValue == null)
			DefaultValue = "";
		if (FieldGroup == null)
			FieldGroup = "";
		if (Description == null)
			Description = "";
		if (Help == null)
			Help = "";
		if (Callout == null)
			Callout = "";
		if (ReadOnlyLogic == null)
			ReadOnlyLogic = "";


		//  Create Lookup, if not ID
		if (DisplayType.isLookup(displayType))
		{
			try
			{
				lookupInfo = MLookupFactory.getLookupInfo (ctx, WindowNo, AD_Column_ID, displayType,
					Env.getLanguage(ctx), ColumnName, AD_Reference_Value_ID,
					IsParent, ValidationCode);
			}
			catch (Exception e)     //  Cannot create Lookup
			{
				CLogger.get().log(Level.SEVERE, "No LookupInfo for " + ColumnName, e);
				displayType = DisplayType.ID;
			}
		}
	}   //  initFinish

	/**
	 * 	Clone Field
	 *	@param ctx ctx
	 *	@param WindowNo window no
	 *	@param TabNo tab no
	 *	@param AD_Window_ID window id
	 *	@param tabReadOnly r/o
	 *	@return Field or null
	 */
	protected MFieldVO clone(Properties ctx, int WindowNo, int TabNo, int AD_Window_ID, boolean tabReadOnly)
	{
		MFieldVO clone = new MFieldVO(ctx, WindowNo, TabNo, AD_Window_ID, tabReadOnly);
		//
		clone.isProcess = false;
		//  Database Fields
		clone.ColumnName = ColumnName;
		clone.ColumnSQL = ColumnSQL;
		clone.Header = Header;
		clone.displayType = displayType;
		clone.AD_Table_ID = AD_Table_ID;
		clone.AD_Column_ID = AD_Column_ID;
		clone.DisplayLength = DisplayLength;
		clone.IsSameLine = IsSameLine;
		clone.IsDisplayed = IsDisplayed;
		clone.DisplayLogic = DisplayLogic;
		clone.DefaultValue = DefaultValue;
		clone.IsMandatory = IsMandatory;
		clone.IsReadOnly = IsReadOnly;
		clone.IsUpdateable = IsUpdateable;
		clone.IsAlwaysUpdateable = IsAlwaysUpdateable;
		clone.IsHeading = IsHeading;
		clone.IsFieldOnly = IsFieldOnly;
		clone.IsEncryptedField = IsEncryptedField;
		clone.IsEncryptedColumn = IsEncryptedColumn;
		clone.IsSelectionColumn = IsSelectionColumn;
		clone.SortNo = SortNo;
		clone.FieldLength = FieldLength;
		clone.VFormat = VFormat;
		clone.ValueMin = ValueMin;
		clone.ValueMax = ValueMax;
		clone.FieldGroup = FieldGroup;
		clone.IsKey = IsKey;
		clone.IsParent = IsParent;
		clone.Callout = Callout;
		clone.AD_Process_ID = AD_Process_ID;
		clone.Description = Description;
		clone.Help = Help;
		clone.ReadOnlyLogic = ReadOnlyLogic;
		clone.ObscureType = ObscureType;
		//	Lookup
		clone.ValidationCode = ValidationCode;
		clone.AD_Reference_Value_ID = AD_Reference_Value_ID;
		clone.lookupInfo = lookupInfo;

		//  Process Parameter
		clone.isRange = isRange;
		clone.DefaultValue2 = DefaultValue2;

		return clone;
	}	//	clone
	
	
	/**
	 * 	String Representation
	 *	@return info
	 */
	public String toString ()
	{
		StringBuffer sb = new StringBuffer ("MFieldVO[");
		sb.append(AD_Column_ID).append("-").append(ColumnName)
			.append ("]");
		return sb.toString ();
	}	//	toString
	
}   //  MFieldVO

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -