📄 mprintformatitem.java
字号:
/******************************************************************************
* The contents of this file are subject to the Compiere License Version 1.1
* ("License"); You may not use this file except in compliance with the License
* You may obtain a copy of the License at http://www.compiere.org/license.html
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is Compiere ERP & CRM Smart Business Solution. The Initial
* Developer of the Original Code is Jorg Janke. Portions created by Jorg Janke
* are Copyright (C) 1999-2005 Jorg Janke.
* All parts are Copyright (C) 1999-2005 ComPiere, Inc. All Rights Reserved.
* Contributor(s): ______________________________________.
*****************************************************************************/
package org.compiere.print;
import java.sql.*;
import java.util.*;
import java.util.logging.*;
import org.compiere.model.*;
import org.compiere.util.*;
/**
* Print Format Item Model.
* Caches Column Name
* (Add missing Items with PrintFormatUtil)
*
* @author Jorg Janke
* @version $Id: MPrintFormatItem.java,v 1.47 2005/11/13 23:40:21 jjanke Exp $
*/
public class MPrintFormatItem extends X_AD_PrintFormatItem
{
/**
* Constructor
* @param ctx context
* @param AD_PrintFormatItem_ID AD_PrintFormatItem_ID
*/
public MPrintFormatItem (Properties ctx, int AD_PrintFormatItem_ID, String trxName)
{
super (ctx, AD_PrintFormatItem_ID, trxName);
// Default Setting
if (AD_PrintFormatItem_ID == 0)
{
setFieldAlignmentType(FIELDALIGNMENTTYPE_Default);
setLineAlignmentType(LINEALIGNMENTTYPE_None);
setPrintFormatType(PRINTFORMATTYPE_Text);
setPrintAreaType(PRINTAREATYPE_Content);
setShapeType(SHAPETYPE_NormalRectangle);
//
setIsCentrallyMaintained(true);
setIsRelativePosition(true);
setIsNextLine(false);
setIsNextPage(false);
setIsSetNLPosition(false);
setIsFilledRectangle(false);
setIsImageField(false);
setXSpace(0);
setYSpace(0);
setXPosition(0);
setYPosition(0);
setMaxWidth(0);
setIsFixedWidth(false);
setIsHeightOneLine(false);
setMaxHeight(0);
setLineWidth(1);
setArcDiameter(0);
//
setIsOrderBy(false);
setSortNo(0);
setIsGroupBy(false);
setIsPageBreak(false);
setIsSummarized(false);
setIsAveraged(false);
setIsCounted(false);
setIsMinCalc(false);
setIsMaxCalc(false);
setIsVarianceCalc(false);
setIsDeviationCalc(false);
setIsRunningTotal(false);
setImageIsAttached(false);
setIsSuppressNull(false);
}
} // MPrintFormatItem
/**
* Constructor
* @param ctx context
* @param rs ResultSet
*/
public MPrintFormatItem (Properties ctx, ResultSet rs, String trxName)
{
super(ctx, rs, trxName);
} // MPrintFormatItem
/** Locally cached column name */
private String m_columnName = null;
/** Locally cached label translations */
private HashMap<String,String> m_translationLabel;
/** Locally cached suffix translations */
private HashMap<String,String> m_translationSuffix;
private static CLogger s_log = CLogger.getCLogger (MPrintFormatItem.class);
/**************************************************************************
* Get print name with language
* @param language language - ignored if IsMultiLingualDocument not 'Y'
* @return print name
*/
public String getPrintName (Language language)
{
if (language == null || Env.isBaseLanguage(language, "AD_PrintFormatItem"))
return getPrintName();
loadTranslations();
String retValue = (String)m_translationLabel.get(language.getAD_Language());
if (retValue == null || retValue.length() == 0)
return getPrintName();
return retValue;
} // getPrintName
/**
* Load Translations
*/
private void loadTranslations()
{
if (m_translationLabel == null)
{
m_translationLabel = new HashMap<String,String>();
m_translationSuffix = new HashMap<String,String>();
String sql = "SELECT AD_Language, PrintName, PrintNameSuffix FROM AD_PrintFormatItem_Trl WHERE AD_PrintFormatItem_ID=?";
try
{
PreparedStatement pstmt = DB.prepareStatement(sql, null);
pstmt.setInt(1, get_ID());
ResultSet rs = pstmt.executeQuery();
while (rs.next())
{
m_translationLabel.put (rs.getString (1), rs.getString (2));
m_translationSuffix.put (rs.getString (1), rs.getString (3));
}
rs.close();
pstmt.close();
}
catch (SQLException e)
{
log.log(Level.SEVERE, "loadTrl", e);
}
}
} // loadTranslations
/**
* Get print name suffix with language
* @param language language - ignored if IsMultiLingualDocument not 'Y'
* @return print name suffix
*/
public String getPrintNameSuffix (Language language)
{
if (language == null || Env.isBaseLanguage(language, "AD_PrintFormatItem"))
return getPrintNameSuffix();
loadTranslations();
String retValue = (String)m_translationSuffix.get(language.getAD_Language());
if (retValue == null || retValue.length() == 0)
return getPrintNameSuffix();
return retValue;
} // getPrintNameSuffix
public boolean isTypeField()
{
return getPrintFormatType().equals(PRINTFORMATTYPE_Field);
}
public boolean isTypeText()
{
return getPrintFormatType().equals(PRINTFORMATTYPE_Text);
}
public boolean isTypePrintFormat()
{
return getPrintFormatType().equals(PRINTFORMATTYPE_PrintFormat);
}
public boolean isTypeImage()
{
return getPrintFormatType().equals(PRINTFORMATTYPE_Image);
}
public boolean isTypeBox()
{
return getPrintFormatType().equals(PRINTFORMATTYPE_Line)
|| getPrintFormatType().equals(PRINTFORMATTYPE_Rectangle);
}
public boolean isFieldCenter()
{
return getFieldAlignmentType().equals(FIELDALIGNMENTTYPE_Center);
}
public boolean isFieldAlignLeading()
{
return getFieldAlignmentType().equals(FIELDALIGNMENTTYPE_LeadingLeft);
}
public boolean isFieldAlignTrailing()
{
return getFieldAlignmentType().equals(FIELDALIGNMENTTYPE_TrailingRight);
}
public boolean isFieldAlignBlock()
{
return getFieldAlignmentType().equals(FIELDALIGNMENTTYPE_Block);
}
public boolean isFieldAlignDefault()
{
return getFieldAlignmentType().equals(FIELDALIGNMENTTYPE_Default);
}
public boolean isLineAlignCenter()
{
return getLineAlignmentType().equals(LINEALIGNMENTTYPE_Center);
}
public boolean isLineAlignLeading()
{
return getLineAlignmentType().equals(LINEALIGNMENTTYPE_LeadingLeft);
}
public boolean isLineAlignTrailing()
{
return getLineAlignmentType().equals(LINEALIGNMENTTYPE_TrailingRight);
}
public boolean isHeader()
{
return getPrintAreaType().equals(PRINTAREATYPE_Header);
}
public boolean isContent()
{
return getPrintAreaType().equals(PRINTAREATYPE_Content);
}
public boolean isFooter()
{
return getPrintAreaType().equals(PRINTAREATYPE_Footer);
}
/**************************************************************************
* String representation
* @return info
*/
public String toString()
{
StringBuffer sb = new StringBuffer("MPrintFormatItem[");
sb.append("ID=").append(get_ID())
.append(",Name=").append(getName())
.append(",Print=").append(getPrintName())
.append(", Seq=").append(getSeqNo())
.append(",Sort=").append(getSortNo())
.append(", Area=").append(getPrintAreaType())
.append(", MaxWidth=").append(getMaxWidth())
.append(",MaxHeight=").append(getMaxHeight())
.append(",OneLine=").append(isHeightOneLine())
.append(", Relative=").append(isRelativePosition());
if (isRelativePosition())
sb.append(",X=").append(getXSpace()).append(",Y=").append(getYSpace())
.append(",LineAlign=").append(getLineAlignmentType())
.append(",NewLine=").append(isNextLine())
.append(",NewPage=").append(isPageBreak());
else
sb.append(",X=").append(getXPosition()).append(",Y=").append(getYPosition());
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -