/** * Action Find. - create where clause - query database * * @param includeAliasCombination include alias combination */ private void action_Find(boolean includeAliasCombination) { log.info(""); setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); // Create where Clause MQuery query = null; if (m_query != null) query = m_query.deepCopy(); else query = new MQuery(); // Alias if (includeAliasCombination && f_Alias != null && f_Alias.getValue().toString().length() > 0) { String value = f_Alias.getValue().toString().toUpperCase(); if (!value.endsWith("%")) value += "%"; query.addRestriction("UPPER(Alias)", MQuery.LIKE, value); } // Combination (mandatory) if (includeAliasCombination && f_Combination.getValue().toString().length() > 0) { String value = f_Combination.getValue().toString().toUpperCase(); if (!value.endsWith("%")) value += "%"; query.addRestriction("UPPER(Combination)", MQuery.LIKE, value); } // Org (mandatory) if (f_AD_Org_ID != null && f_AD_Org_ID.getValue() != null) query.addRestriction("AD_Org_ID", MQuery.EQUAL, f_AD_Org_ID.getValue()); // Account (mandatory) if (f_Account_ID != null && f_Account_ID.getValue() != null) query.addRestriction("Account_ID", MQuery.EQUAL, f_Account_ID.getValue()); if (f_SubAcct_ID != null && f_SubAcct_ID.getValue() != null) query.addRestriction("C_SubAcct_ID", MQuery.EQUAL, f_SubAcct_ID.getValue()); // Product if (f_M_Product_ID != null && f_M_Product_ID.getValue() != null) query.addRestriction("M_Product_ID", MQuery.EQUAL, f_M_Product_ID.getValue()); // BPartner if (f_C_BPartner_ID != null && f_C_BPartner_ID.getValue() != null) query.addRestriction("C_BPartner_ID", MQuery.EQUAL, f_C_BPartner_ID.getValue()); // Campaign if (f_C_Campaign_ID != null && f_C_Campaign_ID.getValue() != null) query.addRestriction("C_Campaign_ID", MQuery.EQUAL, f_C_Campaign_ID.getValue()); // Loc From if (f_C_LocFrom_ID != null && f_C_LocFrom_ID.getValue() != null) query.addRestriction("C_LocFrom_ID", MQuery.EQUAL, f_C_LocFrom_ID.getValue()); // Loc To if (f_C_LocTo_ID != null && f_C_LocTo_ID.getValue() != null) query.addRestriction("C_LocTo_ID", MQuery.EQUAL, f_C_LocTo_ID.getValue()); // Project if (f_C_Project_ID != null && f_C_Project_ID.getValue() != null) query.addRestriction("C_Project_ID", MQuery.EQUAL, f_C_Project_ID.getValue()); // SRegion if (f_C_SalesRegion_ID != null && f_C_SalesRegion_ID.getValue() != null) query.addRestriction("C_SalesRegion_ID", MQuery.EQUAL, f_C_SalesRegion_ID.getValue()); // Org Trx if (f_AD_OrgTrx_ID != null && f_AD_OrgTrx_ID.getValue() != null) query.addRestriction("AD_OrgTrx_ID", MQuery.EQUAL, f_AD_OrgTrx_ID.getValue()); // Activity if (f_C_Activity_ID != null && f_C_Activity_ID.getValue() != null) query.addRestriction("C_Activity_ID", MQuery.EQUAL, f_C_Activity_ID.getValue()); // User 1 if (f_User1_ID != null && f_User1_ID.getValue() != null) query.addRestriction("User1_ID", MQuery.EQUAL, f_User1_ID.getValue()); // User 2 if (f_User2_ID != null && f_User2_ID.getValue() != null) query.addRestriction("User2_ID", MQuery.EQUAL, f_User2_ID.getValue()); // Query m_mTab.setQuery(query); m_mTab.query(false); statusBar.setStatusDB(String.valueOf(m_mTab.getRowCount())); setCursor(Cursor.getDefaultCursor()); } // action_Find
/** * Dyanmic Init. When a row is selected, the editor values are set (editors do not change grid) * * @return true if initialized */ private boolean initAccount() { m_AD_Client_ID = Env.getContextAsInt(Env.getCtx(), m_WindowNo, "AD_Client_ID"); // Get AcctSchema Info if (s_AcctSchema == null || s_AcctSchema.getC_AcctSchema_ID() != m_C_AcctSchema_ID) s_AcctSchema = new MAcctSchema(Env.getCtx(), m_C_AcctSchema_ID, null); log.config(s_AcctSchema.toString() + ", #" + s_AcctSchema.getAcctSchemaElements().length); Env.setContext(Env.getCtx(), m_WindowNo, "C_AcctSchema_ID", m_C_AcctSchema_ID); // Model int AD_Window_ID = 153; // Maintain Account Combinations GridWindowVO wVO = AEnv.getMWindowVO(m_WindowNo, AD_Window_ID, 0); if (wVO == null) return false; m_mWindow = new GridWindow(wVO); m_mTab = m_mWindow.getTab(0); // Make sure is the tab is loaded - teo_sarca [ 1659124 ] if (!m_mTab.isLoadComplete()) m_mWindow.initTab(0); // ParameterPanel restrictions m_mTab.getField("Alias").setDisplayLength(15); m_mTab.getField("Combination").setDisplayLength(15); // Grid restrictions m_mTab.getField("AD_Client_ID").setDisplayed(false); m_mTab.getField("C_AcctSchema_ID").setDisplayed(false); m_mTab.getField("IsActive").setDisplayed(false); m_mTab.getField("IsFullyQualified").setDisplayed(false); // don't show fields not being displayed in this environment for (int i = 0; i < m_mTab.getFieldCount(); i++) { GridField field = m_mTab.getField(i); if (!field.isDisplayed(true)) // check context field.setDisplayed(false); } // GridController m_gridController = new GridController(); m_gridController.initGrid(m_mTab, true, m_WindowNo, null, null); m_gridController.setPreferredSize(new Dimension(300, 100)); panel.add(m_gridController, BorderLayout.CENTER); // Prepare Parameter m_gbc.anchor = GridBagConstraints.NORTHWEST; m_gbc.gridy = 0; // line m_gbc.gridx = 0; m_gbc.gridwidth = 1; m_gbc.insets = m_fieldInsets; m_gbc.fill = GridBagConstraints.HORIZONTAL; m_gbc.weightx = 0; m_gbc.weighty = 0; int TabNo = 0; // Alias if (s_AcctSchema.isHasAlias()) { GridField alias = m_mTab.getField("Alias"); f_Alias = VEditorFactory.getEditor(m_mTab, alias, false); addLine(alias, f_Alias, false); } // Alias // Combination GridField combination = m_mTab.getField("Combination"); f_Combination = VEditorFactory.getEditor(m_mTab, combination, false); addLine(combination, f_Combination, false); m_newRow = true; /** Create Fields in Element Order */ MAcctSchemaElement[] elements = s_AcctSchema.getAcctSchemaElements(); for (int i = 0; i < elements.length; i++) { MAcctSchemaElement ase = elements[i]; String type = ase.getElementType(); boolean isMandatory = ase.isMandatory(); // if (type.equals(MAcctSchemaElement.ELEMENTTYPE_Organization)) { GridField field = m_mTab.getField("AD_Org_ID"); f_AD_Org_ID = VEditorFactory.getEditor(m_mTab, field, false); addLine(field, f_AD_Org_ID, isMandatory); } else if (type.equals(MAcctSchemaElement.ELEMENTTYPE_Account)) { GridField field = m_mTab.getField("Account_ID"); f_Account_ID = VEditorFactory.getEditor(m_mTab, field, false); // ((VLookup)f_Account_ID).setWidth(400); addLine(field, f_Account_ID, isMandatory); f_Account_ID.addVetoableChangeListener(this); } else if (type.equals(MAcctSchemaElement.ELEMENTTYPE_SubAccount)) { GridField field = m_mTab.getField("C_SubAcct_ID"); f_SubAcct_ID = VEditorFactory.getEditor(m_mTab, field, false); // ((VLookup)f_SubAcct_ID).setWidth(400); addLine(field, f_SubAcct_ID, isMandatory); } else if (type.equals(MAcctSchemaElement.ELEMENTTYPE_Product)) { GridField field = m_mTab.getField("M_Product_ID"); f_M_Product_ID = VEditorFactory.getEditor(m_mTab, field, false); addLine(field, f_M_Product_ID, isMandatory); } else if (type.equals(MAcctSchemaElement.ELEMENTTYPE_BPartner)) { GridField field = m_mTab.getField("C_BPartner_ID"); f_C_BPartner_ID = VEditorFactory.getEditor(m_mTab, field, false); addLine(field, f_C_BPartner_ID, isMandatory); } else if (type.equals(MAcctSchemaElement.ELEMENTTYPE_Campaign)) { GridField field = m_mTab.getField("C_Campaign_ID"); f_C_Campaign_ID = VEditorFactory.getEditor(m_mTab, field, false); addLine(field, f_C_Campaign_ID, isMandatory); } else if (type.equals(MAcctSchemaElement.ELEMENTTYPE_LocationFrom)) { GridField field = m_mTab.getField("C_LocFrom_ID"); f_C_LocFrom_ID = VEditorFactory.getEditor(m_mTab, field, false); addLine(field, f_C_LocFrom_ID, isMandatory); } else if (type.equals(MAcctSchemaElement.ELEMENTTYPE_LocationTo)) { GridField field = m_mTab.getField("C_LocTo_ID"); f_C_LocTo_ID = VEditorFactory.getEditor(m_mTab, field, false); addLine(field, f_C_LocTo_ID, isMandatory); } else if (type.equals(MAcctSchemaElement.ELEMENTTYPE_Project)) { GridField field = m_mTab.getField("C_Project_ID"); f_C_Project_ID = VEditorFactory.getEditor(m_mTab, field, false); addLine(field, f_C_Project_ID, isMandatory); } else if (type.equals(MAcctSchemaElement.ELEMENTTYPE_SalesRegion)) { GridField field = m_mTab.getField("C_SalesRegion_ID"); f_C_SalesRegion_ID = VEditorFactory.getEditor(m_mTab, field, false); addLine(field, f_C_SalesRegion_ID, isMandatory); } else if (type.equals(MAcctSchemaElement.ELEMENTTYPE_OrgTrx)) { GridField field = m_mTab.getField("AD_OrgTrx_ID"); f_AD_OrgTrx_ID = VEditorFactory.getEditor(m_mTab, field, false); addLine(field, f_AD_OrgTrx_ID, isMandatory); } else if (type.equals(MAcctSchemaElement.ELEMENTTYPE_Activity)) { GridField field = m_mTab.getField("C_Activity_ID"); f_C_Activity_ID = VEditorFactory.getEditor(m_mTab, field, false); addLine(field, f_C_Activity_ID, isMandatory); } // User1 else if (type.equals(MAcctSchemaElement.ELEMENTTYPE_UserList1)) { GridField field = m_mTab.getField("User1_ID"); f_User1_ID = VEditorFactory.getEditor(m_mTab, field, false); addLine(field, f_User1_ID, isMandatory); } else if (type.equals(MAcctSchemaElement.ELEMENTTYPE_UserList2)) { GridField field = m_mTab.getField("User2_ID"); f_User2_ID = VEditorFactory.getEditor(m_mTab, field, false); addLine(field, f_User2_ID, isMandatory); } } // Create Fields in Element Order // Add description m_newRow = true; m_gbc.gridy = m_line++; m_gbc.gridx = 0; m_gbc.gridwidth = 4; m_gbc.insets = new Insets(5, 15, 2, 0); // top,left,bottom,right m_gbc.fill = GridBagConstraints.HORIZONTAL; f_Description.setFont(f_Description.getFont().deriveFont(Font.ITALIC)); parameterPanel.add(f_Description, m_gbc); // Finish m_query = new MQuery(); m_query.addRestriction("C_AcctSchema_ID", MQuery.EQUAL, m_C_AcctSchema_ID); m_query.addRestriction("IsFullyQualified", MQuery.EQUAL, "Y"); if (m_mAccount.C_ValidCombination_ID == 0) m_mTab.setQuery(MQuery.getEqualQuery("1", "2")); else { MQuery query = new MQuery(); query.addRestriction("C_AcctSchema_ID", MQuery.EQUAL, m_C_AcctSchema_ID); query.addRestriction("C_ValidCombination_ID", MQuery.EQUAL, m_mAccount.C_ValidCombination_ID); m_mTab.setQuery(query); } m_mTab.query(false); m_gridController.getTable().addMouseListener(new VAccountDialog_mouseAdapter(this)); m_gridController.addDataStatusListener(this); statusBar.setStatusLine(s_AcctSchema.toString()); statusBar.setStatusDB("?"); // Initial value if (m_mAccount.C_ValidCombination_ID != 0) m_mTab.navigate(0); log.config("fini"); return true; } // initAccount