From adac5357f4126404ed632bb15c66d1a5820d72e4 Mon Sep 17 00:00:00 2001 From: Carlos Ruiz Date: Sat, 18 May 2019 14:55:11 +0200 Subject: [PATCH] IDEMPIERE-3973 Bug in Business Partner Info window export function --- .../org/adempiere/webui/info/InfoWindow.java | 32 +++++++++++++++---- 1 file changed, 26 insertions(+), 6 deletions(-) diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/info/InfoWindow.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/info/InfoWindow.java index 7a7805f90f..74a7b14310 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/info/InfoWindow.java +++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/info/InfoWindow.java @@ -2627,24 +2627,44 @@ public class InfoWindow extends InfoPanel implements ValueChangeListener, EventL public Object getValueAt(int row, int col) { Object val = null; - + + int columnIndex = 1; + int colFound = 0; + for (int idx = 0; idx < getColumnCount(); idx++) { + if (isColumnPrinted(idx)) { + columnIndex++; + colFound++; + if (colFound >= col) { + break; + } + if (columnInfos[idx].isKeyPairCol()) { + columnIndex++; + } + } + } + try { - val = m_rs.getObject(col + 1); // Col are zero-based, while resultset col are 1 based + val = m_rs.getObject(columnIndex); + if (columnInfos[col].isKeyPairCol()) { + m_rs.getObject(columnIndex+1); + if (m_rs.wasNull()) { + val = null; + } + } } catch(SQLException e) { throw new AdempiereException(e); } - + /* not required - the info window splits the column in key name pairs GridField gridField = columnInfos[col].getGridField(); - Lookup lookup = gridField.getLookup(); - - if (lookup != null) + if (val != null && lookup != null) { val = lookup.getDisplay(val); } + */ return val; }