package org.adempiere.model;
import java.util.Properties;
import org.compiere.model.CalloutEngine;
import org.compiere.model.GridField;
import org.compiere.model.GridTab;
import org.compiere.model.I_AD_Column;
import org.compiere.model.I_AD_Process_Para;
import org.compiere.model.MProcess;
import org.compiere.model.MTable;
import org.compiere.model.M_Element;
import org.compiere.util.DisplayType;
import org.compiere.util.Env;
{
public String
element (Properties ctx,
int WindowNo, GridTab mTab, GridField mField, Object value)
{
Integer AD_Element_ID = (Integer)value;
if (AD_Element_ID == null || AD_Element_ID <= 0)
return "";
I_AD_Process_Para para = GridTabWrapper.create(mTab, I_AD_Process_Para.class);
MTable table = MTable.get(ctx, para.Table_ID);
MProcess process = MProcess.get(ctx, para.getAD_Process_ID());
para.setEntityType(process.getEntityType());
M_Element element = new M_Element(ctx, AD_Element_ID , null);
if(element.getAD_Reference_ID() == DisplayType.ID)
{
String columnName = table.get_TableName()+"_ID";
if(!columnName.equals(element.getColumnName()) )
{
para.setAD_Reference_ID(DisplayType.TableDir);
}
}
if(para.getColumnName() == null || para.getColumnName().length() <= 0)
para.setColumnName(element.getColumnName());
if(para.getFieldLength() <= 0 )
para.setFieldLength(element.getFieldLength());
if(para.getAD_Reference_ID() <= 0)
para.setAD_Reference_ID(element.getAD_Reference_ID());
if(para.getAD_Reference_Value_ID() <= 0)
para.setAD_Reference_Value_ID(element.getAD_Reference_Value_ID());
if(para.getName() == null || para.getName().length() <= 0)
para.setName(element.getName());
if(para.getDescription() == null || para.getDescription().length() <= 0)
para.setDescription(element.getDescription());
if(para.getHelp() == null || para.getHelp().length() <= 0)
para.setHelp(element.getHelp());
return "";
}
}