Search in sources :

Example 6 with Lookup

use of org.compiere.model.Lookup in project adempiere by adempiere.

the class WMerge method preInit.

//	preInit
/**
	 * 	Pre Init Line
	 *	@param index index
	 *	@param AD_Column_ID id
	 *	@param displayType display type
	 *	@param ColumnName column name
	 */
private void preInit(int index, int AD_Column_ID, int displayType, String ColumnName) {
    m_columnName[index] = ColumnName;
    String what = Msg.translate(Env.getCtx(), ColumnName);
    m_label[index] = new Label(what);
    Lookup lookup = MLookupFactory.get(Env.getCtx(), m_WindowNo, 0, AD_Column_ID, displayType);
    if (displayType == DisplayType.Search) {
        m_from[index] = new WSearchEditor(ColumnName, false, false, true, lookup);
        m_to[index] = new WSearchEditor(ColumnName, false, false, true, lookup);
    } else {
        m_from[index] = new WTableDirEditor(ColumnName, false, false, true, lookup);
        m_to[index] = new WTableDirEditor(ColumnName, false, false, true, lookup);
    }
}
Also used : WTableDirEditor(org.adempiere.webui.editor.WTableDirEditor) Label(org.adempiere.webui.component.Label) WSearchEditor(org.adempiere.webui.editor.WSearchEditor) Lookup(org.compiere.model.Lookup)

Example 7 with Lookup

use of org.compiere.model.Lookup in project adempiere by adempiere.

the class GridController method dataStatusChanged.

/**
	 *  Data Status Listener - for MTab events.
	 *  <p>
	 *  Callouts are processed here for GUI changes
	 *  - same as in MTab.setValue for batch changes
	 *  <p>
	 *  calls dynamicDisplay
	 *  @param e event
	 */
public void dataStatusChanged(DataStatusEvent e) {
    //	if (e.getChangedColumn() == 0)
    //		return;
    int col = e.getChangedColumn();
    log.config("(" + m_mTab + ") Col=" + col + ": " + e.toString());
    //  Process Callout
    GridField mField = m_mTab.getField(col);
    if (mField != null && (mField.getCallout().length() > 0 || m_mTab.hasDependants(mField.getColumnName()))) {
        //  Dependencies & Callout
        String msg = m_mTab.processFieldChange(mField);
        if (msg.length() > 0)
            ADialog.error(m_WindowNo, this, msg);
    }
    if (mField != null && mField.isLookup()) {
        Lookup lookup = (Lookup) mField.getLookup();
        if (lookup != null && lookup instanceof MLookup) {
            MLookup mlookup = (MLookup) lookup;
            Object value = mField.getValue();
            if (mlookup.isAlert() && value != null && value instanceof Integer) {
                String alert = MMemo.getAlerts(Env.getCtx(), mlookup.getTableName(), (Integer) value);
                if (!Util.isEmpty(alert)) {
                    VAlert memo = new VAlert(Env.getWindow(m_WindowNo));
                    memo.setAlwaysOnTop(true);
                    memo.setText(alert);
                    AEnv.showCenterScreen(memo);
                    memo = null;
                }
            }
        }
    }
    //if (col >= 0)
    dynamicDisplay(col);
}
Also used : MLookup(org.compiere.model.MLookup) Lookup(org.compiere.model.Lookup) MLookup(org.compiere.model.MLookup) GridField(org.compiere.model.GridField) VString(org.compiere.grid.ed.VString)

Example 8 with Lookup

use of org.compiere.model.Lookup in project adempiere by adempiere.

the class GridTabExcelExporter method getValueAt.

@Override
public Object getValueAt(int row, int col) {
    GridField f = m_tab.getField(col);
    Object key = m_tab.getValue(row, f.getColumnName());
    Object value = key;
    Lookup lookup = f.getLookup();
    if (lookup != null) {
        ;
    } else if (f.getDisplayType() == DisplayType.Button) {
        lookup = getButtonLookup(f);
    }
    //
    if (lookup != null) {
        value = lookup.getDisplay(key);
    }
    return value;
}
Also used : Lookup(org.compiere.model.Lookup) MLookup(org.compiere.model.MLookup) GridField(org.compiere.model.GridField)

Example 9 with Lookup

use of org.compiere.model.Lookup in project adempiere by adempiere.

the class VTableExcelAdapter method actionPerformed.

/**
	 * This method is activated on the Keystrokes we are listening to
	 * in this implementation. Here it listens for Copy and Paste ActionCommands.
	 * 
	 * @param e event 
	 */
public void actionPerformed(ActionEvent e) {
    // Only GridTable model is supported
    if (!(table.getModel() instanceof GridTable)) {
        if (CLogMgt.isLevelFine())
            log.fine("Not supported - " + table.getModel());
        return;
    }
    boolean isCopy = CMD_Copy.equals(e.getActionCommand());
    boolean isCopyWithHeaders = CMD_CopyWithHeaders.equals(e.getActionCommand());
    if (isCopy || isCopyWithHeaders) {
        try {
            int[] selectedRows = table.getSelectedRows();
            if (selectedRows == null || selectedRows.length == 0) {
                return;
            }
            int colscount = table.getColumnCount();
            StringBuffer sb = new StringBuffer();
            GridTable model = (GridTable) table.getModel();
            GridField[] fields = model.getFields();
            // Header
            if (isCopyWithHeaders) {
                for (int col = 0; col < colscount; col++) {
                    String value = "";
                    try {
                        GridField field = fields[col];
                        if (!field.isDisplayed(false)) {
                            continue;
                        }
                        value = field.getHeader();
                    } catch (Exception ex) {
                        log.log(Level.WARNING, "Copy-headers", ex);
                    }
                    value = fixString(value);
                    sb.append(value).append("\t");
                }
                sb.append(Env.NL);
            }
            // Selected rows
            for (int row : selectedRows) {
                for (int col = 0; col < colscount; col++) {
                    Lookup lookup = null;
                    String value = null;
                    Object key = null;
                    GridField field = null;
                    try {
                        key = table.getValueAt(row, col);
                        field = fields[col];
                        if (!field.isDisplayed(false))
                            continue;
                        if (field.isEncryptedColumn() || field.isEncryptedField()) {
                            value = "*";
                        } else if (key instanceof Boolean) {
                            value = Msg.getMsg(Env.getCtx(), ((Boolean) key).booleanValue() ? "Yes" : "No");
                        } else if (key instanceof BigDecimal) {
                            try {
                                value = sysNumberFormat.format(key != null ? key : Env.ZERO);
                            } catch (Exception ex) {
                            }
                        } else if (key instanceof Date) {
                            try {
                                value = sysDateFormat.format(key);
                            } catch (Exception ex) {
                            }
                        } else {
                            lookup = (field != null ? field.getLookup() : null);
                            value = (lookup != null && key != null ? lookup.getDisplay(key) : null);
                            if (value == null && key != null)
                                value = key.toString();
                        }
                    } catch (Exception ex) {
                        log.log(Level.WARNING, "Copy-rows", ex);
                    }
                    value = fixString(value);
                    sb.append(value).append("\t");
                    if (CLogMgt.isLevelFinest())
                        log.finest("col=" + col + ", row=" + row + ": key=" + key + " => value=" + value + ", " + field + ", " + lookup);
                }
                sb.append(Env.NL);
            }
            StringSelection stsel = new StringSelection(sb.toString());
            system = Toolkit.getDefaultToolkit().getSystemClipboard();
            system.setContents(stsel, stsel);
        } catch (Exception ex) {
            log.log(Level.WARNING, "Copy", ex);
        }
    }
}
Also used : GridTable(org.compiere.model.GridTable) GridField(org.compiere.model.GridField) BigDecimal(java.math.BigDecimal) Date(java.util.Date) StringSelection(java.awt.datatransfer.StringSelection) Lookup(org.compiere.model.Lookup)

Example 10 with Lookup

use of org.compiere.model.Lookup in project adempiere by adempiere.

the class WAccount method fillTable.

private table fillTable(WWindowStatus ws, GridField mField, String target) {
    table table = new table("1");
    tr line = new tr();
    line.addElement(new th("&nbsp")).addElement(new th(Msg.translate(ws.ctx, "Name")));
    table.addElement(line);
    Lookup lookup = mField.getLookup();
    lookup.fillComboBox(mField.isMandatory(false), true, true, true);
    int size = lookup.getSize();
    for (int i = 0; i < size; i++) {
        Object lValue = lookup.getElementAt(i);
        if (!(lValue != null && lValue instanceof KeyNamePair))
            continue;
        KeyNamePair np = (KeyNamePair) lValue;
        button button = new button();
        button.addElement("&gt;");
        StringBuffer script = new StringBuffer(target);
        script.append("D.value='").append(np.getKey()).append("';").append(target).append("F.value='").append(np.getName()).append("';window.close();");
        button.setOnClick(script.toString());
        line = new tr();
        line.addElement(new td(button));
        String name = np.getName();
        if (name == null || name.length() == 0)
            name = "&nbsp";
        line.addElement(new td(name));
        table.addElement(line);
    }
    lookup.fillComboBox(true);
    return table;
}
Also used : org.apache.ecs.xhtml.button(org.apache.ecs.xhtml.button) org.apache.ecs.xhtml.td(org.apache.ecs.xhtml.td) org.apache.ecs.xhtml.th(org.apache.ecs.xhtml.th) Lookup(org.compiere.model.Lookup) KeyNamePair(org.compiere.util.KeyNamePair) org.apache.ecs.xhtml.table(org.apache.ecs.xhtml.table) org.apache.ecs.xhtml.tr(org.apache.ecs.xhtml.tr)

Aggregations

Lookup (org.compiere.model.Lookup)15 GridField (org.compiere.model.GridField)8 MLookup (org.compiere.model.MLookup)5 LookupValues (pl.x3E.adInterface.LookupValues)4 DataField (pl.x3E.adInterface.DataField)3 PropertyVetoException (java.beans.PropertyVetoException)2 IOException (java.io.IOException)2 BigDecimal (java.math.BigDecimal)2 SQLException (java.sql.SQLException)2 JasperPrint (net.sf.jasperreports.engine.JasperPrint)2 WSearchEditor (org.adempiere.webui.editor.WSearchEditor)2 MProcessPara (org.compiere.model.MProcessPara)2 KeyNamePair (org.compiere.util.KeyNamePair)2 StringSelection (java.awt.datatransfer.StringSelection)1 Date (java.sql.Date)1 Timestamp (java.sql.Timestamp)1 ArrayList (java.util.ArrayList)1 Date (java.util.Date)1 HashMap (java.util.HashMap)1 Label (org.adempiere.webui.component.Label)1