예제 #1
0
        public virtual void Delete()
        {
            if (this.IsNewRecord)
            {
                return;
            }

            KeyValue pkValue = KeyValue.XmlToKey(this.RecordUniqueId);

            GroupsTable.DeleteRecord(pkValue);
        }
예제 #2
0
        public virtual GroupsRecord GetRecord()

        {
            if (this.DataSource != null)
            {
                return(this.DataSource);
            }

            if (this.RecordUniqueId != null)
            {
                return(GroupsTable.GetRecord(this.RecordUniqueId, true));
            }

            // Localization.

            throw new Exception(Page.GetResourceValue("Err:RetrieveRec", "RatTrap"));
        }
예제 #3
0
        public virtual void LoadData()
        {
            // Load the data from the database into the DataSource DatabaseTheRatTrap%dbo.Groups record.
            // It is better to make changes to functions called by LoadData such as
            // CreateWhereClause, rather than making changes here.


            // The RecordUniqueId is set the first time a record is loaded, and is
            // used during a PostBack to load the record.
            if (this.RecordUniqueId != null && this.RecordUniqueId.Length > 0)
            {
                this.DataSource = GroupsTable.GetRecord(this.RecordUniqueId, true);

                return;
            }

            // This is the first time a record is being retrieved from the database.
            // So create a Where Clause based on the staic Where clause specified
            // on the Query wizard and the dynamic part specified by the end user
            // on the search and filter controls (if any).

            WhereClause wc = this.CreateWhereClause();

            // If there is no Where clause, then simply create a new, blank record.

            if (wc == null || !(wc.RunQuery))
            {
                this.DataSource = new GroupsRecord();

                return;
            }

            // Retrieve the record from the database.  It is possible
            GroupsRecord[] recList = GroupsTable.GetRecords(wc, null, 0, 2);
            if (recList.Length == 0)
            {
                // There is no data for this Where clause.
                wc.RunQuery = false;

                return;
            }

            // Set DataSource based on record retrieved from the database.
            this.DataSource = (GroupsRecord)GroupsRecord.Copy(recList[0], false);
        }