* [1637757] Project - phase line tab to phase tab throw exception
* [1637763] Tab navigation should ignore disabled tab * [1638337] Can't skip tab level even when it is valid to do so
This commit is contained in:
parent
d341b116dc
commit
6e30c7b864
|
|
@ -416,6 +416,7 @@ public class GridField
|
||||||
|| DisplayType.isLOB(m_vo.displayType))
|
|| DisplayType.isLOB(m_vo.displayType))
|
||||||
return null;
|
return null;
|
||||||
// Set Parent to context if not explitly set
|
// Set Parent to context if not explitly set
|
||||||
|
// hengsin, bug[1637757]
|
||||||
if (isParentValue()
|
if (isParentValue()
|
||||||
&& (m_vo.DefaultValue == null || m_vo.DefaultValue.length() == 0))
|
&& (m_vo.DefaultValue == null || m_vo.DefaultValue.length() == 0))
|
||||||
{
|
{
|
||||||
|
|
@ -423,6 +424,7 @@ public class GridField
|
||||||
log.fine("[Parent] " + m_vo.ColumnName + "=" + parent);
|
log.fine("[Parent] " + m_vo.ColumnName + "=" + parent);
|
||||||
return createDefault(parent);
|
return createDefault(parent);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Always Active
|
// Always Active
|
||||||
if (m_vo.ColumnName.equals("IsActive"))
|
if (m_vo.ColumnName.equals("IsActive"))
|
||||||
{
|
{
|
||||||
|
|
@ -1041,10 +1043,46 @@ public class GridField
|
||||||
log.config(m_vo.IsParent
|
log.config(m_vo.IsParent
|
||||||
+ " - Link(" + LinkColumnName + ", W=" + m_vo.WindowNo + ",T=" + m_vo.TabNo
|
+ " - Link(" + LinkColumnName + ", W=" + m_vo.WindowNo + ",T=" + m_vo.TabNo
|
||||||
+ ") = " + m_vo.ColumnName);
|
+ ") = " + m_vo.ColumnName);
|
||||||
|
else
|
||||||
|
m_vo.IsParent = isIndirectParentValue();
|
||||||
}
|
}
|
||||||
m_parentChecked = true;
|
m_parentChecked = true;
|
||||||
return m_vo.IsParent;
|
return m_vo.IsParent;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* bug[1637757]
|
||||||
|
* Check whether is indirect parent.
|
||||||
|
* @return boolean
|
||||||
|
*/
|
||||||
|
private boolean isIndirectParentValue()
|
||||||
|
{
|
||||||
|
boolean result = false;
|
||||||
|
int tabNo = m_vo.TabNo;
|
||||||
|
int currentLevel = Env.getContextAsInt(m_vo.ctx, m_vo.WindowNo, tabNo, "TabLevel");
|
||||||
|
if (tabNo > 1 && currentLevel > 1)
|
||||||
|
{
|
||||||
|
while ( tabNo >= 1 && !result)
|
||||||
|
{
|
||||||
|
tabNo--;
|
||||||
|
int level = Env.getContextAsInt(m_vo.ctx, m_vo.WindowNo, tabNo, "TabLevel");
|
||||||
|
if (level > 0 && level < currentLevel)
|
||||||
|
{
|
||||||
|
String linkColumn = Env.getContext(m_vo.ctx, m_vo.WindowNo, tabNo, "LinkColumnName");
|
||||||
|
if (m_vo.ColumnName.equals(linkColumn))
|
||||||
|
{
|
||||||
|
result = true;
|
||||||
|
log.config(result
|
||||||
|
+ " - Link(" + linkColumn + ", W=" + m_vo.WindowNo + ",T=" + m_vo.TabNo
|
||||||
|
+ ") = " + m_vo.ColumnName);
|
||||||
|
}
|
||||||
|
currentLevel = level;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get Callout
|
* Get Callout
|
||||||
* @return callout
|
* @return callout
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue