IDEMPIERE-1052 Improve Performance using Search instead of Table/Table Direct (#148)
Integrate patch from Heng Sin --> Fix Copy Record issue (handling of invalid value)
This commit is contained in:
parent
fa3e9461e8
commit
11c9ad6c59
|
@ -55,6 +55,7 @@ import org.compiere.model.X_AD_CtxHelp;
|
||||||
import org.compiere.util.CLogger;
|
import org.compiere.util.CLogger;
|
||||||
import org.compiere.util.DisplayType;
|
import org.compiere.util.DisplayType;
|
||||||
import org.compiere.util.Env;
|
import org.compiere.util.Env;
|
||||||
|
import org.compiere.util.NamePair;
|
||||||
import org.zkoss.zk.au.out.AuScript;
|
import org.zkoss.zk.au.out.AuScript;
|
||||||
import org.zkoss.zk.ui.Component;
|
import org.zkoss.zk.ui.Component;
|
||||||
import org.zkoss.zk.ui.Executions;
|
import org.zkoss.zk.ui.Executions;
|
||||||
|
@ -228,19 +229,32 @@ public class WSearchEditor extends WEditor implements ContextMenuListener, Value
|
||||||
@Override
|
@Override
|
||||||
public void setValue(Object value)
|
public void setValue(Object value)
|
||||||
{
|
{
|
||||||
|
Object curValue = this.value;
|
||||||
this.value = value;
|
this.value = value;
|
||||||
if (value != null && !"".equals(String.valueOf(value)))
|
if (value != null && !"".equals(String.valueOf(value)))
|
||||||
{
|
{
|
||||||
String text = lookup.getDisplay(value);
|
NamePair namePair = lookup.get(value);
|
||||||
|
if (namePair != null)
|
||||||
|
{
|
||||||
|
String text = namePair.toString();
|
||||||
|
|
||||||
if (text.startsWith("_"))
|
if (text.startsWith("_"))
|
||||||
{
|
{
|
||||||
text = text.substring(1);
|
text = text.substring(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
getComponent().setText(text);
|
getComponent().setText(text);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
|
getComponent().setText("");
|
||||||
|
if (curValue == null)
|
||||||
|
curValue = value;
|
||||||
|
ValueChangeEvent changeEvent = new ValueChangeEvent(this, this.getColumnName(), curValue, null);
|
||||||
|
fireValueChange(changeEvent);
|
||||||
|
this.value = null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
{
|
{
|
||||||
getComponent().setText("");
|
getComponent().setText("");
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue