2014年7月1日 星期二

iDempiere isSuggestSelectionColumn

/**
 *    Persistent Column Model
 *   
 *  @author Jorg Janke
 *  @version $Id: MColumn.java,v 1.6 2006/08/09 05:23:49 jjanke Exp $
 */
public class MColumn extends X_AD_Column

    public static boolean isSuggestSelectionColumn(String columnName, boolean caseSensitive)
    {
        if (Util.isEmpty(columnName, true))
            return false;
        //
        if (columnName.contains("名稱") || columnName.contains("單號")
         || columnName.contains("品號") || columnName.contains("品名")
         || columnName.contains("規格") || columnName.contains("單號"))
            return true;
      
        if (columnName.equals("Value") || (!caseSensitive && columnName.equalsIgnoreCase("Value")))
            return true;
        else if (columnName.equals("Name") || (!caseSensitive && columnName.equalsIgnoreCase("Name")))
            return true;
        else if (columnName.equals("DocumentNo") || (!caseSensitive && columnName.equalsIgnoreCase("DocumentNo")))
            return true;
        else if (columnName.equals("Description") || (!caseSensitive && columnName.equalsIgnoreCase("Description")))
            return true;
        else if (columnName.indexOf("Name") != -1
                || (!caseSensitive && columnName.toUpperCase().indexOf("Name".toUpperCase()) != -1) )
            return true;
        else
            return false;

IDempiere AD_Tab_Customization User 客製化後新增欄位無法同步 GridField 顯示內容

IDempiere AD_Tab_Customization User 客製化後新增欄位無法同步 GridField 顯示內容

SELECT * FROMadempiere.AD_Tab_Customization where AD_Tab_ID=1000061
DELETE from adempiere.AD_Tab_Customization where AD_Tab_ID=1000061


select * from adempiere.AD_Tab_Customization where AD_Tab_ID=1000061
DELETE from adempiere.AD_Tab_Customization where AD_Tab_ID=1000061


CREATE OR REPLACE FUNCTION adempiere.AD_Field_trigger_f()
  RETURNS trigger AS
$BODY$
BEGIN
  IF NEW.AD_Tab_ID IS NOT NULL THEN
     DELETE FROM AD_Tab_Customization WHERE AD_Tab_ID=NEW.AD_Tab_ID;
  END IF;
  RETURN NEW;
END$BODY$
  LANGUAGE plpgsql VOLATILE
  COST 100;
ALTER FUNCTION adempiere.AD_Field_trigger_f()
  OWNER TO postgres;

DROP TRIGGER AD_Field_trigger ON  adempiere.AD_Field

CREATE TRIGGER AD_Field_trigger
  AFTER INSERT OR UPDATE OF SEQNO,SEQNOGRID
  ON adempiere.AD_Field
  FOR EACH ROW
  EXECUTE PROCEDURE adempiere.AD_Field_trigger_f();