}   //  createParameter

        /// <summary>
        /// Make a standard field (Created/Updated/By)
        /// </summary>
        /// <param name="ctx">context</param>
        /// <param name="windowNo">window number</param>
        /// <param name="tabNo">tab number</param>
        /// <param name="AD_Window_ID">Window_ID</param>
        /// <param name="AD_Tab_ID">Tab Id</param>
        /// <param name="tabReadOnly">tab readonly</param>
        /// <param name="isCreated">is prefic created column</param>
        /// <param name="isTimestamp">is prefix "update" column</param>
        /// <returns></returns>
        public static GridFieldVO CreateStdField(Ctx ctx, int windowNo, int tabNo,
                                                 int AD_Window_ID, int AD_Tab_ID, bool tabReadOnly,
                                                 bool isCreated, bool isTimestamp)
        {
            GridFieldVO vo = new GridFieldVO(ctx, windowNo, tabNo,
                                             AD_Window_ID, AD_Tab_ID, tabReadOnly);

            vo.ColumnName = isCreated ? "Created" : "Updated";
            if (!isTimestamp)
            {
                vo.ColumnName += "By";
            }
            vo.displayType = isTimestamp ? DisplayType.DateTime : DisplayType.Table;
            if (!isTimestamp)
            {
                vo.AD_Reference_Value_ID = 110;         //	AD_User Table Reference
            }
            vo.IsDisplayedf  = false;
            vo.IsMandatoryUI = false;
            vo.IsReadOnly    = false;
            vo.IsUpdateable  = true;
            vo.InitFinish();
            return(vo);
        }   //  initStdField
Exemplo n.º 2
0
        /// <summary>
        ///Clone Field object
        /// </summary>
        /// <param name="Ctx">context</param>
        /// <param name="windowNo">window number</param>
        /// <param name="tabNo">tab number</param>
        /// <param name="ad_Window_ID">window_id</param>
        /// <param name="ad_Tab_ID">tab_ id</param>
        /// <param name="TabReadOnly">is tabreadonly</param>
        /// <returns>this object</returns>
        public GridFieldVO Clone(Ctx ctx, int windowNo, int tabNo,
                                 int ad_Window_ID, int ad_Tab_ID,
                                 bool TabReadOnly)
        {
            GridFieldVO clone = new GridFieldVO(ctx, windowNo, tabNo,
                                                ad_Window_ID, ad_Tab_ID, TabReadOnly);

            clone.isProcess = false;
            //  Database Fields
            clone.ColumnName         = ColumnName;
            clone.ColumnSQL          = ColumnSQL;
            clone.Header             = Header;
            clone.displayType        = displayType;
            clone.AD_Table_ID        = AD_Table_ID;
            clone.AD_Column_ID       = AD_Column_ID;
            clone.DisplayLength      = DisplayLength;
            clone.IsSameLine         = IsSameLine;
            clone.IsDisplayedf       = IsDisplayedf;
            clone.IsDisplayedMR      = IsDisplayedMR;
            clone.DisplayLogic       = DisplayLogic;
            clone.DefaultValue       = DefaultValue;
            clone.IsMandatoryUI      = IsMandatoryUI;
            clone.IsReadOnly         = IsReadOnly;
            clone.IsUpdateable       = IsUpdateable;
            clone.IsAlwaysUpdateable = IsAlwaysUpdateable;
            clone.IsHeading          = IsHeading;
            clone.IsFieldOnly        = IsFieldOnly;
            clone.IsEncryptedField   = IsEncryptedField;
            clone.IsEncryptedColumn  = IsEncryptedColumn;
            clone.IsSelectionColumn  = IsSelectionColumn;
            //clone.IsIncludedColumn = IsIncludedColumn;
            clone.SelectionSeqNo = SelectionSeqNo;
            clone.SortNo         = SortNo;
            clone.FieldLength    = FieldLength;
            clone.VFormat        = VFormat;
            clone.ValueMin       = ValueMin;
            clone.ValueMax       = ValueMax;
            clone.FieldGroup     = FieldGroup;
            clone.IsKey          = IsKey;
            clone.IsParent       = IsParent;
            clone.Callout        = Callout;
            clone.AD_Process_ID  = AD_Process_ID;
            clone.Description    = Description;
            clone.Help           = Help;
            clone.ReadOnlyLogic  = ReadOnlyLogic;
            clone.ObscureType    = ObscureType;
            clone.IsDefaultFocus = IsDefaultFocus;
            //	Lookup
            clone.ValidationCode        = ValidationCode;
            clone.AD_Reference_Value_ID = AD_Reference_Value_ID;
            clone.lookupInfo            = lookupInfo;

            //  Process Parameter
            clone.isRange       = isRange;
            clone.DefaultValue2 = DefaultValue2;


            //Lakhwinder
            clone.AD_Field_ID      = AD_Field_ID;
            clone.AD_InfoWindow_ID = AD_InfoWindow_ID;

            //Harwinder
            clone.MobileListingFormat = MobileListingFormat;
            clone.mrSeqNo             = mrSeqNo;
            clone.ZoomWindow_ID       = ZoomWindow_ID;
            clone.isLink          = isLink;
            clone.isRightPaneLink = isRightPaneLink;
            clone.IsCopy          = IsCopy;
            clone.ColumnWidth     = ColumnWidth;

            clone.AD_Form_ID              = AD_Form_ID;
            clone.IsBackgroundProcess     = IsBackgroundProcess;
            clone.AskUserBGProcess        = AskUserBGProcess;
            clone.IsHeaderPanelitem       = IsHeaderPanelitem;
            clone.HeaderOverrideReference = HeaderOverrideReference;
            clone.HeaderStyle             = HeaderStyle;
            clone.HeaderHeadingOnly       = HeaderHeadingOnly;
            clone.HeaderSeqno             = HeaderSeqno;
            clone.HeaderIconOnly          = HeaderIconOnly;
            clone.HtmlStyle          = HtmlStyle;
            clone.ShowIcon           = ShowIcon;
            clone.AD_Image_ID        = AD_Image_ID;
            clone.FontClass          = FontClass;
            clone.ImageName          = ImageName;
            clone.IsMaintainVersions = IsMaintainVersions;
            clone.CellSpace          = CellSpace;
            clone.FieldBreadth       = FieldBreadth;
            clone.LineBreak          = LineBreak;
            clone.FieldGroupDefault  = FieldGroupDefault;
            clone.ShowFilterOption   = ShowFilterOption;
            return(clone);
        }
Exemplo n.º 3
0
        /// <summary>
        ///  Create Field Value Object
        /// </summary>
        /// <param name="ctx">context</param>
        /// <param name="WindowNo">window number</param>
        /// <param name="TabNo">tab number</param>
        /// <param name="AD_Window_ID">window Id</param>
        /// <param name="AD_Tab_ID">Tab Id</param>
        /// <param name="readOnly">is readonly</param>
        /// <param name="dr">datarow</param>
        /// <returns>object of this Class</returns>
        public static GridFieldVO Create(Ctx ctx, int windowNo, int tabNo,
                                         int AD_Window_ID, int AD_Tab_ID, bool readOnly, IDataReader dr)
        {
            GridFieldVO vo = new GridFieldVO(ctx, windowNo, tabNo,
                                             AD_Window_ID, AD_Tab_ID, readOnly);
            String columnName = "ColumnName";

            try
            {
                vo.ColumnName = dr["ColumnName"].ToString();
                if (vo.ColumnName == null || columnName.Trim().Length == 0)
                {
                    return(null);
                }

                // VLogger.Get().Fine(vo.ColumnName);

                //ResultSetMetaData rsmd = dr.getMetaData();
                for (int i = 0; i < dr.FieldCount; i++)
                {
                    columnName = dr.GetName(i).ToUpper();// rsmd.getColumnName(i);
                    if (columnName.Equals("NAME"))
                    {
                        vo.Header = dr[i].ToString();
                    }
                    else if (columnName.Equals("AD_REFERENCE_ID"))
                    {
                        vo.displayType = Utility.Util.GetValueOfInt(dr[i]);//  Utility.Util.GetValueOfInt(dr[i])
                    }
                    else if (columnName.Equals("AD_COLUMN_ID"))
                    {
                        vo.AD_Column_ID = Utility.Util.GetValueOfInt(dr[i]);
                    }
                    else if (columnName.Equals("AD_INFOWINDOW_ID"))
                    {
                        vo.AD_InfoWindow_ID = Util.GetValueOfInt(dr[i]);
                    }
                    else if (columnName.Equals("AD_TABLE_ID"))
                    {
                        vo.AD_Table_ID = Utility.Util.GetValueOfInt(dr[i]);
                    }
                    else if (columnName.Equals("DISPLAYLENGTH"))
                    {
                        vo.DisplayLength = Utility.Util.GetValueOfInt(dr[i]);
                    }
                    else if (columnName.Equals("ISSAMELINE"))
                    {
                        vo.IsSameLine = "Y".Equals(dr[i].ToString());
                    }
                    else if (columnName.Equals("ISDISPLAYED"))
                    {
                        vo.IsDisplayedf = "Y".Equals(dr[i].ToString());
                    }
                    else if (columnName.Equals("MRISDISPLAYED"))
                    {
                        vo.IsDisplayedMR = "Y".Equals(dr[i].ToString());
                    }
                    else if (columnName.Equals("DISPLAYLOGIC"))
                    {
                        vo.DisplayLogic = dr[i].ToString();
                    }
                    else if (columnName.Equals("DEFAULTVALUE"))
                    {
                        vo.DefaultValue = dr[i].ToString();
                    }
                    else if (columnName.Equals("ISMANDATORYUI"))
                    {
                        vo.IsMandatoryUI = "Y".Equals(dr[i].ToString());
                    }
                    else if (columnName.Equals("ISREADONLY"))
                    {
                        vo.IsReadOnly = "Y".Equals(dr[i].ToString());
                    }
                    else if (columnName.Equals("ISUPDATEABLE"))
                    {
                        vo.IsUpdateable = "Y".Equals(dr[i].ToString());
                    }
                    else if (columnName.Equals("ISALWAYSUPDATEABLE"))
                    {
                        vo.IsAlwaysUpdateable = "Y".Equals(dr[i].ToString());
                    }
                    else if (columnName.Equals("ISHEADING"))
                    {
                        vo.IsHeading = "Y".Equals(dr[i].ToString());
                    }
                    else if (columnName.Equals("ISFIELDONLY"))
                    {
                        vo.IsFieldOnly = "Y".Equals(dr[i].ToString());
                    }
                    else if (columnName.Equals("ISENCRYPTEDFIELD"))
                    {
                        vo.IsEncryptedField = "Y".Equals(dr[i].ToString());
                    }
                    else if (columnName.Equals("ISENCRYPTEDCOLUMN"))
                    {
                        vo.IsEncryptedColumn = "Y".Equals(dr[i].ToString());
                    }
                    else if (columnName.Equals("ISSELECTIONCOLUMN"))
                    {
                        vo.IsSelectionColumn = "Y".Equals(dr[i].ToString());
                    }
                    //else if (columnName.Equals("ISINCLUDEDCOLUMN"))
                    //    vo.IsIncludedColumn = "Y".Equals(dr[i].ToString());
                    else if (columnName.Equals("SELECTIONSEQNO"))
                    {
                        vo.SelectionSeqNo = Util.GetValueOfInt(dr[i]);
                    }
                    else if (columnName.Equals("SORTNO"))
                    {
                        vo.SortNo = Utility.Util.GetValueOfInt(dr[i]);
                    }
                    else if (columnName.Equals("FIELDLENGTH"))
                    {
                        vo.FieldLength = Utility.Util.GetValueOfInt(dr[i]);
                    }
                    else if (columnName.Equals("VFORMAT"))
                    {
                        vo.VFormat = dr[i].ToString();
                    }
                    else if (columnName.Equals("VALUEMIN"))
                    {
                        vo.ValueMin = dr[i].ToString();
                    }
                    else if (columnName.Equals("VALUEMAX"))
                    {
                        vo.ValueMax = dr[i].ToString();
                    }
                    else if (columnName.Equals("FIELDGROUP"))
                    {
                        vo.FieldGroup = Env.TrimModulePrefix(dr[i].ToString());
                    }
                    else if (columnName.Equals("ISKEY"))
                    {
                        vo.IsKey = "Y".Equals(dr[i].ToString());
                    }
                    else if (columnName.Equals("ISPARENT"))
                    {
                        vo.IsParent = "Y".Equals(dr[i].ToString());
                    }
                    else if (columnName.Equals("DESCRIPTION"))
                    {
                        vo.Description = dr[i].ToString();
                    }
                    else if (columnName.Equals("HELP"))
                    {
                        vo.Help = dr[i].ToString();
                    }
                    else if (columnName.Equals("CALLOUT"))
                    {
                        vo.Callout = dr[i].ToString();

                        if (!string.IsNullOrEmpty(vo.Callout))
                        {
                            Tuple <string, string, string> tpl = null;

                            StringTokenizer st       = new StringTokenizer(vo.Callout, ";,", false);
                            StringBuilder   callouts = new StringBuilder();

                            bool hasModulePrefix = Env.HasModulePrefix(vo.ColumnName, out tpl);


                            while (st.HasMoreTokens())      //  for each callout
                            {
                                string prefix = "";

                                String cmd = st.NextToken().Trim();
                                if (hasModulePrefix)
                                {
                                    prefix = vo.ColumnName.Substring(0, vo.ColumnName.IndexOf('_'));
                                }
                                else
                                {
                                    String className = cmd.Substring(0, cmd.LastIndexOf("."));
                                    className = className.Remove(0, className.LastIndexOf(".") + 1);

                                    if (Env.HasModulePrefix(className, out tpl))
                                    {
                                        prefix = className.Substring(0, className.IndexOf('_'));
                                    }
                                }

                                if (callouts.Length > 0)
                                {
                                    if (prefix.Length > 0)
                                    {
                                        callouts.Append(";").Append(cmd.Replace("ViennaAdvantage", prefix));
                                    }
                                    else
                                    {
                                        callouts.Append(";").Append(cmd);
                                    }
                                }
                                else
                                {
                                    if (prefix.Length > 0)
                                    {
                                        callouts.Append(cmd.Replace("ViennaAdvantage", prefix));
                                    }
                                    else
                                    {
                                        callouts.Append(";").Append(cmd);
                                    }
                                }
                            }
                            vo.Callout = callouts.ToString();
                        }
                    }
                    else if (columnName.Equals("AD_PROCESS_ID"))
                    {
                        vo.AD_Process_ID = Utility.Util.GetValueOfInt(dr[i]);
                    }
                    else if (columnName.Equals("AD_FORM_ID"))
                    {
                        vo.AD_Form_ID = Utility.Util.GetValueOfInt(dr[i]);
                    }
                    else if (columnName.Equals("READONLYLOGIC"))
                    {
                        vo.ReadOnlyLogic = dr[i].ToString();
                    }
                    else if (columnName.Equals("MANDATORYLOGIC"))
                    {
                        vo.mandatoryLogic = dr[i].ToString();
                    }
                    else if (columnName.Equals("OBSCURETYPE"))
                    {
                        vo.ObscureType = dr[i].ToString();
                    }
                    else if (columnName.Equals("ISDEFAULTFOCUS"))
                    {
                        vo.IsDefaultFocus = "Y".Equals(dr[i].ToString());
                    }
                    //
                    else if (columnName.Equals("AD_REFERENCE_VALUE_ID"))
                    {
                        vo.AD_Reference_Value_ID = Utility.Util.GetValueOfInt(dr[i]);
                    }
                    else if (columnName.Equals("VALIDATIONCODE"))
                    {
                        vo.ValidationCode = dr[i].ToString();
                    }
                    else if (columnName.Equals("COLUMNSQL"))
                    {
                        vo.ColumnSQL = dr[i].ToString();
                    }
                    else if (columnName.Equals("AD_FIELD_ID"))
                    {
                        vo.AD_Field_ID = Utility.Util.GetValueOfInt(dr[i]);
                    }
                    else if (columnName.Equals("MOBILELISTINGFORMAT"))
                    {
                        vo.MobileListingFormat = Utility.Util.GetValueOfString(dr[i]);
                    }
                    else if (columnName.Equals("MRSEQNO"))
                    {
                        if (dr[i] != null && dr[i] != DBNull.Value)
                        {
                            int mrseq = Util.GetValueOfInt(dr[i]);
                            if (mrseq >= 0)
                            {
                                vo.mrSeqNo = mrseq;
                            }
                        }
                    }

                    else if (columnName.Equals("ZOOMWINDOW_ID"))
                    {
                        vo.ZoomWindow_ID = Util.GetValueOfInt(dr[i]);
                    }

                    else if (columnName.Equals("ISLINK"))
                    {
                        vo.isLink = "Y".Equals(Util.GetValueOfString(dr[i]));
                    }

                    else if (columnName.Equals("ISRIGHTPANELINK"))
                    {
                        vo.isRightPaneLink = "Y".Equals(Util.GetValueOfString(dr[i]));
                    }

                    else if (columnName.Equals("ISCOPY"))
                    {
                        vo.IsCopy = "Y".Equals(Util.GetValueOfString(dr[i]));
                    }
                    else if (columnName.Equals("COLUMNWIDTH"))
                    {
                        vo.ColumnWidth = Util.GetValueOfInt(dr[i]);
                    }
                    else if (columnName.Equals("ISBACKGROUNDPROCESS"))
                    {
                        vo.IsBackgroundProcess = "Y".Equals(dr[i].ToString());
                    }
                    else if (columnName.Equals("ASKUSERBGPROCESS"))
                    {
                        vo.AskUserBGProcess = "Y".Equals(dr[i].ToString());
                    }
                    /******************************/
                    else if (columnName.Equals("Isheaderpanelitem", StringComparison.OrdinalIgnoreCase))
                    {
                        vo.IsHeaderPanelitem = "Y".Equals(dr[i].ToString());
                    }
                    else if (columnName.Equals("Headeroverridereference", StringComparison.OrdinalIgnoreCase))
                    {
                        vo.HeaderOverrideReference = Utility.Util.GetValueOfInt(dr[i]);
                    }
                    else if (columnName.Equals("HeaderStyle", StringComparison.OrdinalIgnoreCase))
                    {
                        vo.HeaderStyle = dr[i].ToString();
                    }
                    else if (columnName.Equals("HeaderHeadingOnly", StringComparison.OrdinalIgnoreCase))
                    {
                        vo.HeaderHeadingOnly = "Y".Equals(dr[i].ToString());
                    }
                    else if (columnName.Equals("HeaderSeqno", StringComparison.OrdinalIgnoreCase))
                    {
                        vo.HeaderSeqno = Utility.Util.GetValueOfDecimal(dr[i]);
                    }
                    else if (columnName.Equals("HeaderIconOnly", StringComparison.OrdinalIgnoreCase))
                    {
                        vo.HeaderIconOnly = "Y".Equals(dr[i].ToString());
                    }
                    else if (columnName.Equals("HtmlStyle", StringComparison.OrdinalIgnoreCase))
                    {
                        vo.HtmlStyle = dr[i].ToString();
                    }
                    else if (columnName.Equals("ShowIcon", StringComparison.OrdinalIgnoreCase))
                    {
                        vo.ShowIcon = "Y".Equals(dr[i].ToString());
                    }
                    else if (columnName.Equals("AD_Image_ID", StringComparison.OrdinalIgnoreCase))
                    {
                        vo.AD_Image_ID = Utility.Util.GetValueOfInt(dr[i]);
                    }
                    else if (columnName.Equals("PlaceHolder", StringComparison.OrdinalIgnoreCase))
                    {
                        vo.PlaceHolder = Utility.Util.GetValueOfString(dr[i]);
                    }
                    else if (columnName.Equals("FontName", StringComparison.OrdinalIgnoreCase))
                    {
                        vo.FontClass = Utility.Util.GetValueOfString(dr[i]);
                    }
                    else if (columnName.Equals("ImageUrl", StringComparison.OrdinalIgnoreCase))
                    {
                        vo.ImageName = Utility.Util.GetValueOfString(dr[i]);
                        if (vo.ImageName != "" && vo.ImageName.Contains("/"))
                        {
                            vo.ImageName = vo.ImageName.Substring(vo.ImageName.LastIndexOf("/") + 1);
                        }
                    }
                    // new column added for maintain versions
                    else if (columnName.Equals("ISMAINTAINVERSIONS", StringComparison.OrdinalIgnoreCase))
                    {
                        vo.IsMaintainVersions = "Y".Equals(dr[i].ToString());
                    }
                    else if (columnName.Equals("CellSpace", StringComparison.OrdinalIgnoreCase))
                    {
                        vo.CellSpace = Utility.Util.GetValueOfInt(dr[i]);
                    }
                    else if (columnName.Equals("FieldBreadth", StringComparison.OrdinalIgnoreCase))
                    {
                        vo.FieldBreadth = Utility.Util.GetValueOfInt(dr[i]);
                    }
                    else if (columnName.Equals("IsLineBreak", StringComparison.OrdinalIgnoreCase))
                    {
                        vo.LineBreak = "Y".Equals(dr[i].ToString());
                    }
                    else if (columnName.Equals("FieldGroupDefault", StringComparison.OrdinalIgnoreCase))
                    {
                        vo.FieldGroupDefault = "Y".Equals(dr[i].ToString());
                    }
                    else if (columnName.Equals("ShowFilterOption", StringComparison.OrdinalIgnoreCase))
                    {
                        vo.ShowFilterOption = "Y".Equals(dr[i].ToString());
                    }
                }
                if (vo.Header == null)
                {
                    vo.Header = vo.ColumnName;
                }
            }
            catch (Exception e)
            {
                VLogger.Get().Log(Level.SEVERE, "ColumnName=" + columnName, e);
                return(null);
            }
            vo.InitFinish();
            return(vo);
        }
        /// <summary>
        ///	Clone object
        /// </summary>
        /// <param name="myCtx">Context</param>
        /// <param name="windowNo">window number</param>
        /// <returns></returns>
        public GridTabVO Clone(Ctx myCtx, int windowNo)
        {
            GridTabVO clone = new GridTabVO(myCtx, windowNo);

            clone.AD_Window_ID = AD_Window_ID;
            clone.tabNo        = tabNo;

            //
            clone.AD_Tab_ID = AD_Tab_ID;
            myCtx.SetContext(windowNo, clone.tabNo, "AD_Tab_ID", clone.AD_Tab_ID.ToString());
            clone.Referenced_Tab_ID = Referenced_Tab_ID;
            clone.Name = Name;
            myCtx.SetContext(windowNo, clone.tabNo, "Name", clone.Name);
            clone.Description       = Description;
            clone.Help              = Help;
            clone.IsSingleRow       = IsSingleRow;
            clone.IsReadOnly        = IsReadOnly;
            clone.IsInsertRecord    = IsInsertRecord;
            clone.HasTree           = HasTree;
            clone.ShowSummaryLevel  = ShowSummaryLevel;
            clone.AD_Table_ID       = AD_Table_ID;
            clone.AD_Column_ID      = AD_Column_ID;
            clone.TableName         = TableName;
            clone.IsView            = IsView;
            clone.AccessLevel       = AccessLevel;
            clone.IsSecurityEnabled = IsSecurityEnabled;
            clone.IsDeleteable      = IsDeleteable;
            clone.IsHighVolume      = IsHighVolume;
            clone.AD_Process_ID     = AD_Process_ID;
            clone.CommitWarning     = CommitWarning;
            clone.WhereClause       = WhereClause;
            clone.OrderByClause     = OrderByClause;
            clone.ReadOnlyLogic     = ReadOnlyLogic;
            clone.DisplayLogic      = DisplayLogic;
            clone.TabLevel          = TabLevel;
            clone.AD_Image_ID       = AD_Image_ID;
            clone.Included_Tab_ID   = Included_Tab_ID;
            clone.ReplicationType   = ReplicationType;
            myCtx.SetContext(windowNo, clone.tabNo, "AccessLevel", clone.AccessLevel);
            myCtx.SetContext(windowNo, clone.tabNo, "AD_Table_ID", clone.AD_Table_ID.ToString());

            //
            clone.IsSortTab             = IsSortTab;
            clone.AD_ColumnSortOrder_ID = AD_ColumnSortOrder_ID;
            clone.AD_ColumnSortYesNo_ID = AD_ColumnSortYesNo_ID;
            //  Derived
            clone.onlyCurrentDays = 0;


            //Tab Panles
            clone.panels = new List <GridTabPanelVO>();
            for (int i = 0; i < panels.Count; i++)
            {
                GridTabPanelVO tpo     = panels[i];
                GridTabPanelVO clonetp = tpo.Clone(myCtx, windowNo);
                if (clonetp == null)
                {
                    return(null);
                }
                clone.panels.Add(clonetp);
            }
            if (clone.panels != null && clone.panels.Count > 0)
            {
                clone.HasPanels = true;
            }

            clone.locationCols = locationCols;

            clone.fields = new List <GridFieldVO>();
            for (int i = 0; i < fields.Count; i++)
            {
                GridFieldVO field      = fields[i];
                GridFieldVO cloneField = field.Clone(myCtx, windowNo, tabNo,
                                                     AD_Window_ID, AD_Tab_ID, IsReadOnly);
                if (cloneField == null)
                {
                    return(null);
                }
                clone.fields.Add(cloneField);
            }

            return(clone);
        }
        /// <summary>
        ///  Create Tab Fields
        /// </summary>
        /// <param name="mTabVO"></param>
        /// <param name="AD_UserDef_Win_ID"></param>
        /// <returns></returns>
        private static bool CreateEditorFields(GridTabVO mTabVO, int AD_UserDef_Win_ID)
        {
            mTabVO.fields = new List <GridFieldVO>();

            bool isBase = true;

            if (!Env.IsBaseLanguage(mTabVO.ctx, "AD_Tab"))
            {
                isBase = false;
            }

            StringBuilder sql = new StringBuilder(" SELECT ")
                                .Append(" t.AD_Window_ID                                                      AS AD_Window_ID         , ")
                                .Append(" f.AD_Tab_ID                                                         AS AD_Tab_ID            , ")
                                .Append(" f.AD_Field_ID                                                       AS AD_Field_ID          , ")
                                .Append(" tbl.AD_Table_ID                                                     AS AD_Table_ID          , ")
                                .Append(" f.AD_Column_ID                                                      AS AD_Column_ID         , ")
                                .Append(" uw.AD_Role_ID                                                       AS UserDef_Role_ID      , ")
                                .Append(" uw.AD_User_ID                                                       AS AD_User_ID           , ")
                                .Append(" uw.AD_UserDef_Win_ID                                                AS AD_UserDef_Win_ID    , ")
                                .Append(" uw.CustomizationName                                                AS CustomizationName    , ")
                                .Append(" u.AD_UserDef_Tab_ID                                                 AS AD_UserDef_Tab_ID    , ")
                                .Append(" u.AD_UserDef_Field_ID                                               AS AD_UserDef_Field_ID  , ");

            if (!isBase)
            {
                sql.Append(" COALESCE(u.Name,trl.Name)                                           AS Name                 , ")
                .Append(" COALESCE(u.Description,trl.Description)                             AS Description          , ")
                .Append(" COALESCE(u.Help,trl.Help)                                           AS Help                 , ");
            }
            else
            {
                sql.Append(" COALESCE(u.Name,f.Name)                                             AS Name                 , ")
                .Append(" COALESCE(u.Description,f.Description)                               AS Description          , ")
                .Append(" COALESCE(u.Help,f.Help)                                             AS Help                 , ");
            }

            sql.Append(" COALESCE(u.IsDisplayed,f.IsDisplayed)                               AS IsDisplayed          , ")
            .Append(" COALESCE(u.DisplayLogic,f.DisplayLogic)                             AS DisplayLogic         , ")
            .Append(" COALESCE(u.DisplayLength,f.DisplayLength)                           AS DisplayLength        , ")
            .Append(" COALESCE(u.SeqNo,f.SeqNo)                                           AS SeqNo                , ")
            .Append(" COALESCE(u.SortNo,f.SortNo)                                         AS SortNo               , ")
            .Append(" COALESCE(u.IsSameLine,f.IsSameLine)                                 AS IsSameLine           , ")
            .Append(" f.IsHeading                                                         AS IsHeading            , ")
            .Append(" f.IsFieldOnly                                                       AS IsFieldOnly          , ")
            .Append(" f.IsReadOnly                                                        AS IsReadOnly           , ")
            .Append(" f.IsEncrypted                                                       AS IsEncryptedField     , ")
            .Append(" f.ObscureType                                                       AS ObscureType          , ")
            .Append(" f.IsDefaultFocus                                                    AS IsDefaultFocus       , ")
            .Append(" COALESCE(u.MRSeqNo,f.MRSeqNo)                                       AS MRSeqNo              , ")
            .Append(" c.ColumnName                                                        AS ColumnName           , ")
            .Append(" c.ColumnSQL                                                         AS ColumnSQL            , ")
            .Append(" c.FieldLength                                                       AS FieldLength          , ")
            .Append(" c.VFormat                                                           AS VFormat              , ")
            .Append(" COALESCE(u.DefaultValue,COALESCE(f.DefaultValue,c.DefaultValue))    AS DefaultValue         , ")
            .Append(" c.IsKey                                                             AS IsKey                , ")
            .Append(" c.IsParent                                                          AS IsParent             , ")
            .Append(" c.IsMandatory                                                       AS IsMandatory          , ")
            .Append(" c.MandatoryLogic                                                    AS MandatoryLogic       , ")
            .Append(" COALESCE(COALESCE(u.IsMandatoryUI,f.IsMandatoryUI),c.IsMandatoryUI) AS IsMandatoryUI        , ")
            .Append(" c.IsIdentifier                                                      AS IsIdentifier         , ")
            .Append(" c.IsTranslated                                                      AS IsTranslated         , ")
            .Append(" c.AD_Reference_Value_ID                                             AS AD_Reference_Value_ID, ")
            .Append(" c.Callout                                                           AS Callout              , ")
            .Append(" c.IsCallout                                                         AS IsCallout            , ")
            .Append(" COALESCE(f.AD_Reference_ID,c.AD_Reference_ID)                       AS AD_Reference_ID      , ")
            .Append(" c.AD_Val_Rule_ID                                                    AS AD_Val_Rule_ID       , ")
            .Append(" c.AD_Process_ID                                                     AS AD_Process_ID        , ")
            .Append(" c.IsAlwaysUpdateable                                                AS IsAlwaysUpdateable   , ")
            .Append(" c.ReadOnlyLogic                                                     AS ReadOnlyLogic        , ")
            .Append(" c.IsUpdateable                                                      AS IsUpdateable         , ")
            .Append(" c.IsEncrypted                                                       AS IsEncryptedColumn    , ")
            .Append(" COALESCE(u.IsSelectionColumn,c.IsSelectionColumn)                   AS IsSelectionColumn    , ")
            .Append(" COALESCE(u.SelectionSeqNo,c.SelectionSeqNo)                         AS SelectionSeqNo       , ")
            .Append(" COALESCE(u.IsSummaryColumn,c.IsSummaryColumn)                       AS IsSummaryColumn      , ")
            .Append(" COALESCE(u.SummarySeqNo,c.SummarySeqNo)                             AS SummarySeqNo         , ")
            .Append(" tbl.TableName                                                       AS TableName            , ")
            .Append(" COALESCE(u.ValueMin,c.ValueMin)                                     AS ValueMin             , ")
            .Append(" COALESCE(u.ValueMax,c.ValueMax)                                     AS ValueMax             , ")
            .Append(" fgt.Name                                                            AS FieldGroup           , ")
            .Append(" vr.Code                                                             AS ValidationCode  ");

            if (isBase)
            {
                sql.Append(" FROM AD_Field f ");
            }
            else
            {
                sql.Append(" FROM AD_Field f ")
                .Append("  INNER JOIN AD_Field_Trl trl ON f.AD_Field_ID = trl.AD_Field_ID ");
            }
            sql.Append(" INNER JOIN AD_Tab t ON (f.AD_Tab_ID = t.AD_Tab_ID) LEFT OUTER JOIN ");

            if (isBase)
            {
                sql.Append(" AD_FieldGroup fgt ON (f.AD_FieldGroup_ID = fgt.AD_FieldGroup_ID) ");
            }
            else
            {
                sql.Append(" AD_FieldGroup_Trl fgt ON (f.AD_FieldGroup_ID = fgt.AD_FieldGroup_ID  AND trl.AD_Language  =fgt.AD_Language) ");
            }
            sql.Append(" LEFT OUTER JOIN AD_Column c  ON (f.AD_Column_ID = c.AD_Column_ID) INNER JOIN AD_Table tbl ON (c.AD_Table_ID = tbl.AD_Table_ID) ")
            .Append(" INNER JOIN AD_Reference r ON (c.AD_Reference_ID = r.AD_Reference_ID) LEFT OUTER JOIN AD_Val_Rule vr ON (c.AD_Val_Rule_ID=vr.AD_Val_Rule_ID) ")
            .Append(" LEFT OUTER JOIN AD_UserDef_Field u ON (f.AD_Field_ID=u.AD_Field_ID) LEFT OUTER JOIN AD_UserDef_Tab ut ON (ut.AD_UserDef_Tab_ID=u.AD_UserDef_Tab_ID) ")
            .Append(" LEFT OUTER JOIN AD_UserDef_Win uw ON (uw.AD_UserDef_Win_ID=ut.AD_UserDef_Win_ID) ")

            .Append(" WHERE f.AD_Tab_ID=@tabID");

            if (!isBase)
            {
                sql.Append(" AND trl.AD_Language='" + Env.GetAD_Language(mTabVO.ctx) + "'");
            }
            if (AD_UserDef_Win_ID != 0)
            {
                sql.Append(" AND u.AD_UserDef_Win_ID=" + AD_UserDef_Win_ID);
            }

            sql.Append(" ORDER BY IsDisplayed DESC, SeqNo");


            int AD_Tab_ID = mTabVO.Referenced_Tab_ID;

            if (AD_Tab_ID == 0)
            {
                AD_Tab_ID = mTabVO.AD_Tab_ID;
            }
            IDataReader dr = null;

            try
            {
                //PreparedStatement pstmt = DataBase.prepareStatement(sql, null);
                System.Data.SqlClient.SqlParameter[] param = new System.Data.SqlClient.SqlParameter[1];
                param[0] = new System.Data.SqlClient.SqlParameter("@tabID", AD_Tab_ID);
                //pstmt.setInt(1, AD_Tab_ID);
                dr = DataBase.DB.ExecuteReader(sql.ToString(), param, null);
                while (dr.Read())
                {
                    GridFieldVO voF = GridFieldVO.Create(mTabVO.ctx,
                                                         mTabVO.windowNo, mTabVO.tabNo,
                                                         mTabVO.AD_Window_ID, AD_Tab_ID,
                                                         mTabVO.IsReadOnly, dr);
                    if (voF != null)
                    {
                        mTabVO.fields.Add(voF);
                    }
                }
                dr.Close();
                param = null;
            }
            catch (Exception e)
            {
                if (dr != null)
                {
                    dr.Close();
                }
                VLogger.Get().Log(Level.SEVERE, sql.ToString(), e);
                return(false);
            }
            return(mTabVO.fields.Count != 0);
        }
Exemplo n.º 6
0
        /// <summary>
        ///Clone Field object
        /// </summary>
        /// <param name="Ctx">context</param>
        /// <param name="windowNo">window number</param>
        /// <param name="tabNo">tab number</param>
        /// <param name="ad_Window_ID">window_id</param>
        /// <param name="ad_Tab_ID">tab_ id</param>
        /// <param name="TabReadOnly">is tabreadonly</param>
        /// <returns>this object</returns>
        public GridFieldVO Clone(Ctx ctx, int windowNo, int tabNo,
                                 int ad_Window_ID, int ad_Tab_ID,
                                 bool TabReadOnly)
        {
            GridFieldVO clone = new GridFieldVO(ctx, windowNo, tabNo,
                                                ad_Window_ID, ad_Tab_ID, TabReadOnly);

            clone.isProcess = false;
            //  Database Fields
            clone.ColumnName         = ColumnName;
            clone.ColumnSQL          = ColumnSQL;
            clone.Header             = Header;
            clone.displayType        = displayType;
            clone.AD_Table_ID        = AD_Table_ID;
            clone.AD_Column_ID       = AD_Column_ID;
            clone.DisplayLength      = DisplayLength;
            clone.IsSameLine         = IsSameLine;
            clone.IsDisplayedf       = IsDisplayedf;
            clone.DisplayLogic       = DisplayLogic;
            clone.DefaultValue       = DefaultValue;
            clone.IsMandatoryUI      = IsMandatoryUI;
            clone.IsReadOnly         = IsReadOnly;
            clone.IsUpdateable       = IsUpdateable;
            clone.IsAlwaysUpdateable = IsAlwaysUpdateable;
            clone.IsHeading          = IsHeading;
            clone.IsFieldOnly        = IsFieldOnly;
            clone.IsEncryptedField   = IsEncryptedField;
            clone.IsEncryptedColumn  = IsEncryptedColumn;
            clone.IsSelectionColumn  = IsSelectionColumn;
            clone.SelectionSeqNo     = SelectionSeqNo;
            clone.SortNo             = SortNo;
            clone.FieldLength        = FieldLength;
            clone.VFormat            = VFormat;
            clone.ValueMin           = ValueMin;
            clone.ValueMax           = ValueMax;
            clone.FieldGroup         = FieldGroup;
            clone.IsKey          = IsKey;
            clone.IsParent       = IsParent;
            clone.Callout        = Callout;
            clone.AD_Process_ID  = AD_Process_ID;
            clone.Description    = Description;
            clone.Help           = Help;
            clone.ReadOnlyLogic  = ReadOnlyLogic;
            clone.ObscureType    = ObscureType;
            clone.IsDefaultFocus = IsDefaultFocus;
            //	Lookup
            clone.ValidationCode        = ValidationCode;
            clone.AD_Reference_Value_ID = AD_Reference_Value_ID;
            clone.lookupInfo            = lookupInfo;

            //  Process Parameter
            clone.isRange       = isRange;
            clone.DefaultValue2 = DefaultValue2;


            //Lakhwinder
            clone.AD_Field_ID      = AD_Field_ID;
            clone.AD_InfoWindow_ID = AD_InfoWindow_ID;

            //Harwinder
            clone.MobileListingFormat = MobileListingFormat;
            clone.mrSeqNo             = mrSeqNo;
            clone.ZoomWindow_ID       = ZoomWindow_ID;
            clone.isLink          = isLink;
            clone.isRightPaneLink = isRightPaneLink;

            return(clone);
        }