Example #1
0
    /// <summary>
    /// Gets the custom table item and moves it down. Called when the "Get and move item down" button is pressed.
    /// Expects the CreateCustomTableItem method to be run first.
    /// </summary>
    private bool GetAndMoveCustomTableItemDown()
    {
        string customTableClassName = "customtable.sampletable";

        // Check if Custom table 'Sample table' exists
        DataClassInfo customTable = DataClassInfoProvider.GetDataClassInfo(customTableClassName);

        if (customTable != null)
        {
            // Prepare the parameters
            string where = "ItemText LIKE N'New text'";
            int    topN    = 1;
            string columns = "ItemID";

            // Get the data set according to the parameters
            DataSet dataSet = CustomTableItemProvider.GetItems(customTableClassName, where, null, topN, columns);

            if (!DataHelper.DataSourceIsEmpty(dataSet))
            {
                // Get the custom table item ID
                int itemID = ValidationHelper.GetInteger(dataSet.Tables[0].Rows[0][0], 0);
                var item   = CustomTableItemProvider.GetItem(itemID, customTableClassName);

                // Move the item down
                item.Generalized.MoveObjectDown();

                return(true);
            }
        }

        return(false);
    }
Example #2
0
        public IEnumerable <AirportDto> GetAirportDtos(string searchPhrase = null)
        {
            if (AirportsTable != null)
            {
                var query = CustomTableItemProvider.GetItems(CustomTableClassName)
                            .OrderBy("AirportName");

                if (!string.IsNullOrWhiteSpace(searchPhrase))
                {
                    query.WhereContains(NameColumn, searchPhrase);
                }

                foreach (var airport in query)
                {
                    var iataCode = ValidationHelper.GetString(airport.GetValue(IataCodeColumn), "");
                    var name     = ValidationHelper.GetString(airport.GetValue(NameColumn), "");

                    yield return(new AirportDto
                    {
                        AirportIataCode = iataCode,
                        AirportName = name
                    });
                }
            }
        }
Example #3
0
    /// <summary>
    /// Creates custom table item. Called when the "Create item" button is pressed.
    /// </summary>
    private bool CreateCustomTableItem()
    {
        // Create new Custom table item provider
        CustomTableItemProvider customTableProvider = new CustomTableItemProvider(CMSContext.CurrentUser);

        // Prepare the parameters
        string customTableClassName = "customtable.sampletable";

        // Check if Custom table 'Sample table' exists
        DataClassInfo customTable = DataClassInfoProvider.GetDataClass(customTableClassName);

        if (customTable != null)
        {
            // Create new custom table item
            CustomTableItem newCustomTableItem = CustomTableItem.New(customTableClassName, customTableProvider);

            // Set the ItemText field value
            newCustomTableItem.SetValue("ItemText", "New text");

            // Insert the custom table item into database
            newCustomTableItem.Insert();

            return(true);
        }

        return(false);
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        CurrentMaster.Title.TitleText = GetString("customtable.data.viewitemtitle");
        Page.Title = CurrentMaster.Title.TitleText;

        CurrentMaster.Title.TitleImage = GetImageUrl("CMSModules/CMS_CustomTables/viewitem.png");

        // Get custom table id from url
        int customTableId = QueryHelper.GetInteger("customtableid", 0);
        // Get custom table item id
        int itemId = QueryHelper.GetInteger("itemid", 0);

        DataClassInfo dci = DataClassInfoProvider.GetDataClass(customTableId);

        // Set edited object
        EditedObject = dci;

        if (dci != null)
        {
            // Check 'Read' permission
            if (!CMSContext.CurrentUser.IsAuthorizedPerResource("cms.customtables", "Read") &&
                !CMSContext.CurrentUser.IsAuthorizedPerClassName(dci.ClassName, "Read"))
            {
                RedirectToAccessDenied("cms.customtables", "Read");
            }

            CustomTableItemProvider ctProvider = new CustomTableItemProvider(CMSContext.CurrentUser);
            CustomTableItem         item       = ctProvider.GetItem(itemId, dci.ClassName);
            customTableViewItem.CustomTableItem = item;
        }
    }
    public static object GetValueFromCustomTableByItemGUID(EvaluationContext context, params object[] parameters)
    {
        if (parameters[0] == null || parameters[1] == null || parameters[2] == null)
        {
            return(null);
        }

        string CustomTableName = ValidationHelper.GetString(parameters[0], "");
        string UniqueID        = ValidationHelper.GetString(parameters[1], "");
        string ColumnName      = ValidationHelper.GetString(parameters[2], "");

        DataClassInfo customTable = DataClassInfoProvider.GetDataClassInfo(CustomTableName);

        if (customTable != null)
        {
            var ds = CustomTableItemProvider.GetItems(CustomTableName)
                     .Column(ColumnName)
                     .WhereEquals("ItemGUID", UniqueID)
                     .TopN(1);

            if (!DataHelper.DataSourceIsEmpty(ds) && ds.Tables[0].Rows.Count > 0)
            {
                return(ds.Tables[0].Rows[0][0]);
            }
        }

        return(null);
    }
Example #6
0
        public void UpdateUserBudgetAllocationRecords(int userId, string year, decimal?totalToBeDeducted)
        {
            var userBudgetDetails = CustomTableItemProvider.GetItems(CustomTableClassName).WhereEquals("UserID", userId).WhereEquals("Year", year).FirstOrDefault();

            userBudgetDetails.SetValue("UserRemainingBudget", userBudgetDetails.GetValue("UserRemainingBudget", default(decimal)) - totalToBeDeducted);
            userBudgetDetails.Update();
        }
    protected void Page_Load(object sender, EventArgs e)
    {
        PageTitle.TitleText = GetString("customtable.data.viewitemtitle");
        Page.Title          = PageTitle.TitleText;
        // Get custom table id from url
        int customTableId = QueryHelper.GetInteger("customtableid", 0);
        // Get custom table item id
        int itemId = QueryHelper.GetInteger("itemid", 0);

        DataClassInfo dci = DataClassInfoProvider.GetDataClassInfo(customTableId);

        // Set edited object
        EditedObject = dci;

        if (dci == null)
        {
            return;
        }

        // Check 'Read' permission
        if (!dci.CheckPermissions(PermissionsEnum.Read, SiteContext.CurrentSiteName, MembershipContext.AuthenticatedUser))
        {
            RedirectToAccessDenied("cms.customtables", "Read");
        }

        CustomTableItem item = CustomTableItemProvider.GetItem(itemId, dci.ClassName);

        customTableViewItem.CustomTableItem = item;
    }
Example #8
0
    private void GetLieu()
    {
        CustomTableItemProvider customTableProvider = new CustomTableItemProvider(MembershipContext.AuthenticatedUser);

        string customTableClassName = "customtable.region";

        // Check if Custom table 'Sample table' exists

        DataClassInfo customTable = DataClassInfoProvider.GetDataClass(customTableClassName);

        if (customTable != null)
        {
            string where = "itemID<>'1'";
            string  orderby = "Libelle";
            DataSet data    = customTableProvider.GetItems(customTableClassName, where, orderby);
            if (!DataHelper.DataSourceIsEmpty(data))
            {
                // Bind lieu to the drop-down list
                this.drpLieu.DataSource     = data;
                this.drpLieu.DataTextField  = "Libelle";
                this.drpLieu.DataValueField = "ItemID";
                this.drpLieu.DataBind();
                RemoveDuplicateItems(drpLieu);

                // Add default '(tous)' value
                this.drpLieu.Items.Insert(0, new ListItem("FILTRER PAR REGION", "0"));

                // Add PRES DE CHEZ VOUS value
                this.drpLieu.Items.Insert(drpLieu.Items.Count, new ListItem("Près de chez vous", "1"));
            }
        }
    }
Example #9
0
 public static void InsertIBFForm(OrderDTO orderDetails)
 {
     try
     {
         var productItems = orderDetails.Items.ToList();
         foreach (var product in productItems)
         {
             bool isExist = true;
             InboundTrackingItem inboundData = CustomTableItemProvider.GetItems <InboundTrackingItem>().WhereEquals("SKUID", product.SKU.KenticoSKUID).FirstOrDefault();
             if (inboundData == null)
             {
                 inboundData = new InboundTrackingItem();
                 isExist     = false;
             }
             inboundData.SKUID      = product.SKU.KenticoSKUID;
             inboundData.QtyOrdered = product.UnitCount;
             if (!isExist)
             {
                 inboundData.Insert();
             }
             else
             {
                 inboundData.Update();
             }
         }
     }
     catch (Exception ex)
     {
         EventLogProvider.LogInformation("ShoppingCartHelper", "GetOrderTotal", ex.Message);
     }
 }
Example #10
0
        private void PopulateErrors(IEnumerable <MailingAddressDto> badAddresses)
        {
            var errorsDictionary = CustomTableItemProvider
                                   .GetItems("KDA.AddressErrors")
                                   .ToDictionary(i => i["ErrorCode"].ToString(), i => i["ErrorDescription"].ToString());
            var missingCodes = new HashSet <string>();

            foreach (var address in badAddresses)
            {
                string errorDescription;
                if (errorsDictionary.TryGetValue(address.ErrorMessage, out errorDescription))
                {
                    address.ErrorMessage = errorDescription;
                }
                else
                {
                    if (!missingCodes.Contains(address.ErrorMessage))
                    {
                        missingCodes.Add(address.ErrorMessage);
                    }
                }
            }
            if (missingCodes.Any())
            {
                var exc = new KeyNotFoundException($"The error description is not found for following key(s): {string.Join(", ", missingCodes)}");
                EventLogProvider.LogWarning("Mailing Addresses Load", "WARNING", exc, CurrentSite.SiteID, string.Empty);
            }
        }
    protected void Page_Load(object sender, EventArgs e)
    {
        CurrentMaster.Title.TitleText = GetString("customtable.data.viewitemtitle");
        Page.Title = CurrentMaster.Title.TitleText;

        CurrentMaster.Title.TitleImage = GetImageUrl("CMSModules/CMS_CustomTables/viewitem.png");

        // Get custom table id from url
        int customTableId = QueryHelper.GetInteger("customtableid", 0);
        // Get custom table item id
        int itemId = QueryHelper.GetInteger("itemid", 0);

        DataClassInfo dci = DataClassInfoProvider.GetDataClass(customTableId);
        // Set edited object
        EditedObject = dci;

        if (dci != null)
        {
            // Check 'Read' permission
            if (!CMSContext.CurrentUser.IsAuthorizedPerResource("cms.customtables", "Read") &&
                !CMSContext.CurrentUser.IsAuthorizedPerClassName(dci.ClassName, "Read"))
            {
                RedirectToAccessDenied("cms.customtables", "Read");
            }

            CustomTableItemProvider ctProvider = new CustomTableItemProvider(CMSContext.CurrentUser);
            CustomTableItem item = ctProvider.GetItem(itemId, dci.ClassName);
            customTableViewItem.CustomTableItem = item;
        }
    }
    /// <summary>
    /// Handles the UniGrid's OnAction event.
    /// </summary>
    /// <param name="actionName">Name of item (button) that throws event</param>
    /// <param name="actionArgument">ID (value of Primary key) of corresponding data row</param>
    protected void uniGrid_OnAction(string actionName, object actionArgument)
    {
        if (actionName == "edit")
        {
            URLHelper.Redirect(UrlResolver.ResolveUrl("CustomTable_Edit.aspx?customtableid=" + actionArgument));
        }
        else if (actionName == "delete")
        {
            int classId = ValidationHelper.GetInteger(actionArgument, 0);
            var dci     = DataClassInfoProvider.GetDataClassInfo(classId);
            if (dci == null)
            {
                return;
            }

            try
            {
                // Delete the class
                DataClassInfoProvider.DeleteDataClassInfo(classId);
                CustomTableItemProvider.ClearLicensesCount();
            }
            catch (CheckDependenciesException)
            {
                var description = uniGrid.GetCheckDependenciesDescription(dci);
                ShowError(GetString("unigrid.deletedisabledwithoutenable"), description);
            }
            catch (Exception ex)
            {
                LogAndShowError("Custom table", "Delete", ex);
            }
        }
    }
Example #13
0
 /// <summary>
 ///  This method will get all the allocated user
 /// </summary>
 /// <param name="ProductId"></param>
 private void BindEditProduct(int ProductId)
 {
     try
     {
         lstUsers = new List <AllocateProduct>();
         List <AllocateProduct> lstProduct  = new List <AllocateProduct>();
         string        customTableClassName = "KDA.UserAllocatedProducts";
         DataClassInfo customTable          = DataClassInfoProvider.GetDataClassInfo(customTableClassName);
         if (customTable != null)
         {
             var customTableData = CustomTableItemProvider.GetItems(customTableClassName)
                                   .WhereStartsWith("ProductID", ProductId.ToString());
             foreach (CustomTableItem item in customTableData)
             {
                 AllocateProduct objProduct = new AllocateProduct();
                 objProduct.EmailID  = ValidationHelper.GetString(item.GetValue("EmailID"), string.Empty);
                 objProduct.UserName = UserInfoProvider.GetUserInfo(ValidationHelper.GetInteger(item.GetValue("UserID"), 0)).FullName;
                 objProduct.Quantity = ValidationHelper.GetInteger(item.GetValue("Quantity"), 0);
                 objProduct.UserID   = ValidationHelper.GetInteger(item.GetValue("UserID"), 0);
                 lstProduct.Add(objProduct);
             }
             lstUsers.AddRange(lstProduct);
         }
         RepSelectedUser.DataSource = lstProduct;
         RepSelectedUser.DataBind();
     }
     catch (Exception ex)
     {
         EventLogProvider.LogException("Product allocation update BindEdit", "EXCEPTION", ex);
     }
 }
Example #14
0
        /// <summary>
        /// Get the State list
        /// </summary>
        /// <returns></returns>
        public string GetStateGroup()
        {
            string returnValue = string.Empty;

            try
            {
                var states = CustomTableItemProvider.GetItems(StatesGroupItem.CLASS_NAME)
                             .Columns("ItemID,States,GroupName")
                             .ToList();
                if (!DataHelper.DataSourceIsEmpty(states))
                {
                    ddlState.DataSource     = states;
                    ddlState.DataTextField  = "GroupName";
                    ddlState.DataValueField = "ItemID";
                    ddlState.DataBind();
                    string selectText = ValidationHelper.GetString(ResHelper.GetString("Kadena.InvProductForm.StateWaterMark"), string.Empty);
                    ddlState.Items.Insert(0, new ListItem(selectText, "0"));
                    RepStateInfo.DataSource = states;
                    RepStateInfo.DataBind();
                }
            }
            catch (Exception ex)
            {
                EventLogProvider.LogException("CMSWebParts_Kadena_Campaign_Web_Form_AddCampaignProducts", "GetStateGroup", ex, CurrentSite.SiteID, ex.Message);
            }
            return(returnValue);
        }
Example #15
0
    /// <summary>
    /// Handles the UniGrid's OnAction event.
    /// </summary>
    /// <param name="actionName">Name of item (button) that throws event</param>
    /// <param name="actionArgument">ID (value of Primary key) of corresponding data row</param>
    protected void uniGrid_OnAction(string actionName, object actionArgument)
    {
        if (actionName == "add")
        {
            // Add itemId in customtable_shippingextension.shippingoptionid

            // Creates new Custom table item provider
            CustomTableItemProvider customTableProvider = new CustomTableItemProvider(MembershipContext.AuthenticatedUser);

            // Prepares the parameters
            string customTableClassName = "customtable.shippingextension";

            // Checks if Custom table exists
            DataClassInfo customTable = DataClassInfoProvider.GetDataClass(customTableClassName);
            if (customTable != null)
            {
                // Creates new custom table item
                CustomTableItem newCustomTableItem = CustomTableItem.New(customTableClassName, customTableProvider);

                // Sets the ItemText field value
                newCustomTableItem.SetValue("ShippingOptionId", actionArgument.ToString());
                newCustomTableItem.SetValue("LocalContact", string.Empty);
                newCustomTableItem.SetValue("Enabled", true);
                newCustomTableItem.SetValue("ProcessingMode", 0);

                // Inserts the custom table item into database
                newCustomTableItem.Insert();
            }
            //Response.Redirect("ShippingExtension_List.aspx");
            Response.Redirect(Request.Url.ToString());
        }
    }
Example #16
0
    private string GetAllTasksWhere(out bool classesFound)
    {
        string where = BASE_TASK_WHERE;
        string classWhere = string.Empty;

        classesFound = false;

        // Ensure only data task selection
        if (string.IsNullOrEmpty(objectType))
        {
            DataSet dsTables = CustomTableHelper.GetCustomTableClasses(CurrentSiteID).Column("ClassName");
            if (!DataHelper.DataSourceIsEmpty(dsTables))
            {
                foreach (DataRow dr in dsTables.Tables[0].Rows)
                {
                    classWhere += "N'" + SqlHelper.EscapeQuotes(CustomTableItemProvider.GetObjectType(dr["ClassName"].ToString())) + "',";
                }

                classWhere   = classWhere.TrimEnd(',');
                classesFound = true;
            }

            where = SqlHelper.AddWhereCondition(where, "TaskObjectType IN (" + classWhere + ")");
        }

        return(where);
    }
Example #17
0
 /// <summary>
 /// Initializes the control properties.
 /// </summary>
 protected void SetupControl()
 {
     if (!this.StopProcessing)
     {
         BrandItem brandData = null;
         brandData = new BrandItem();
         form.AlternativeFormFullName = "KDA.Brand.KDA_Brand";
         form.Info = brandData;
         form.VisibilityFormName     = "KDA.Brand.KDA_Brand";
         form.SubmitButton.Visible   = false;
         btnCancel.Text              = ResHelper.GetString("Kadena.CreateBrand.Cancel");
         form.ValidationErrorMessage = ResHelper.GetString("Kadena.Brands.FormError");
         if (QueryHelper.GetInteger("ItemID", 0) > 0)
         {
             brandData    = CustomTableItemProvider.GetItem <BrandItem>(QueryHelper.GetInteger("ItemID", 0));
             form.Mode    = CMS.Base.Web.UI.FormModeEnum.Update;
             form.Info    = brandData;
             btnSave.Text = ResHelper.GetString("Kadena.CreateBrand.Update");
         }
         else
         {
             form.Mode    = CMS.Base.Web.UI.FormModeEnum.Insert;
             form.Info    = brandData;
             btnSave.Text = ResHelper.GetString("Kadena.CreateBrand.Save");
         }
     }
 }
Example #18
0
 /// <summary>
 /// Saves and updates the brand details
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 protected void btnSave_Click(object sender, EventArgs e)
 {
     if (form.ValidateData())
     {
         if (QueryHelper.GetInteger("ItemID", 0) > 0)
         {
             var brandData = CustomTableItemProvider.GetItem <BrandItem>(QueryHelper.GetInteger("ItemID", 0));
             brandData.BrandCode = ValidationHelper.GetInteger(form.GetFieldValue("BrandCode"), 0);
             Response.Cookies["status"].Value    = QueryStringStatus.Updated;
             Response.Cookies["status"].HttpOnly = false;
             form.SaveData($"{CurrentDocument.Parent.AbsoluteURL}?status={QueryStringStatus.Updated}");
         }
         else
         {
             var brandData = new BrandItem();
             brandData.BrandCode                 = ValidationHelper.GetInteger(form.GetFieldValue("BrandCode"), 0);
             brandData.BrandName                 = ValidationHelper.GetString(form.GetFieldValue("BrandName"), string.Empty);
             brandData.BrandDescription          = ValidationHelper.GetString(form.GetFieldValue("BrandDescription"), string.Empty);
             brandData.Status                    = ValidationHelper.GetBoolean(form.GetFieldValue("Status"), true);
             Response.Cookies["status"].Value    = QueryStringStatus.Added;
             Response.Cookies["status"].HttpOnly = false;
             form.SaveData($"{CurrentDocument.Parent.AbsoluteURL}?status={QueryStringStatus.Added}");
         }
     }
     else
     {
         form.ShowValidationErrorMessage = true;
     }
 }
Example #19
0
    private bool CreateCustomTableItem(string Desc, int Qty)
    {
        // Creates new Custom table item provider
        CustomTableItemProvider customTableProvider = new CustomTableItemProvider(MembershipContext.AuthenticatedUser);

        // Prepares the parameters
        string customTableClassName = "customtable.customBundle";

        // Checks if Custom table 'Sample table' exists
        DataClassInfo customTable = DataClassInfoProvider.GetDataClass(customTableClassName);

        if (customTable != null)
        {
            // Creates new custom table item
            CustomTableItem newCustomTableItem = CustomTableItem.New(customTableClassName, customTableProvider);

            // Sets the ItemText field value
            newCustomTableItem.SetValue("Quantity", Qty);
            newCustomTableItem.SetValue("Description", Desc);
            newCustomTableItem.SetValue("Enabled", true);
            // Inserts the custom table item into database
            newCustomTableItem.Insert();

            return(true);
        }

        return(false);
    }
Example #20
0
    protected void Page_InIt(object sender, EventArgs e)
    {
        //ErrorMessage  CSSClass ProductIdUrlParameter
        PersonifyControlBase objbase = new PersonifyControlBase();
        var    ctrl = new Personify.WebControls.Membership.UI.MembershipListingControl();
        string customTableClassName = "Sme.personifyPages";

        string where = "Parametername ='ProductDetails'";
        DataSet customTableRecord = CustomTableItemProvider.GetItems(customTableClassName, where);

        if (customTableRecord != null)
        {
            ctrl.Step1RegistrationUrl = customTableRecord.Tables[0].Rows[0]["ParameterValue"].ToString();
        }
        ctrl.ProductIdUrlParameter = "productid";



        //LoadDropdownList(ddlErrorMessage);
        //if (!string.IsNullOrEmpty(ErrorMessage)) { ctrl.ErrorMessage = ErrorMessage; }
        //if (!string.IsNullOrEmpty(ProductIdUrlParameter)) { ctrl.ProductIdUrlParameter = "productId"; }
        //if (!string.IsNullOrEmpty(RateCodeUrlParameter)) { ctrl.RateCodeUrlParameter = RateCodeUrlParameter; }
        //LoadDropdownList(ddlStep1RegistrationUrl);
        //if (!string.IsNullOrEmpty(Step1RegistrationUrl)) { ctrl.Step1RegistrationUrl = Step1RegistrationUrl; }

        objbase.InitPersonifyWebControl(ctrl);
        phPersonifyControl.Controls.Add(ctrl);
    }
        private List <CustomTableItem> GetAuthors(string authorsId)
        {
            List <int>             authorsIdArray = new List <int>(Array.ConvertAll(authorsId.Split('|'), int.Parse));
            List <CustomTableItem> ArticleAuthors = new List <CustomTableItem>();

            // Get Authors list
            List <CustomTableItem> Authors = CacheHelper.Cache(cs =>
            {
                List <CustomTableItem> data = CustomTableItemProvider.GetItems("MedioClinic.Authors").ToList();

                if (data != null && cs.Cached)
                {
                    cs.CacheDependency = CacheHelper.GetCacheDependency("customtableitem|medioclinic.authors|all");
                }

                return(data);
            }, new CacheSettings(10, string.Format("MedioClinic_GetAuthors()|{0}", SiteContext.CurrentSiteName)));

            foreach (var item in Authors)
            {
                if (authorsIdArray.Contains(item.GetIntegerValue("ItemId", -1)))
                {
                    ArticleAuthors.Add(item);
                }
            }

            return(ArticleAuthors);
        }
Example #22
0
 public static object GetBusinessUnits(EvaluationContext context, params object[] parameters)
 {
     try
     {
         int userID = ValidationHelper.GetInteger(parameters[0], 0);
         var data   = CustomTableItemProvider.GetItems <UserBusinessUnitsItem>()
                      .WhereEquals("UserID", userID)
                      .Columns("BusinessUnitID")
                      .ToList();
         var buList = new List <string>();
         if (!DataHelper.DataSourceIsEmpty(data))
         {
             data.ForEach(x =>
             {
                 var unitName = CustomTableItemProvider.GetItem <BusinessUnitItem>(x.BusinessUnitID);
                 buList.Add(unitName?.GetStringValue("BusinessUnitName", string.Empty) ?? string.Empty);
             });
         }
         return(String.Join(",", buList));
     }
     catch (Exception ex)
     {
         EventLogProvider.LogInformation("Kadena Macro methods", "GetBusinessUnits", ex.Message);
         return(string.Empty);
     }
 }
Example #23
0
 /// <summary>
 /// custom validator for checking the uniqueness of the busines unit number
 /// </summary>
 protected void cvBUNumber_ServerValidate(object source, System.Web.UI.WebControls.ServerValidateEventArgs args)
 {
     try
     {
         BusinessUnitItem objBusinessUnit = new BusinessUnitItem();
         var buNumber = ValidationHelper.GetLong(txtBUNumber.Text, default(int));
         int itemID   = QueryHelper.GetInteger("itemID", 0);
         if (itemID > 0)
         {
             var buData = CustomTableItemProvider.GetItems <BusinessUnitItem>()
                          .WhereEquals("BusinessUnitNumber", buNumber)
                          .And()
                          .WhereNotEquals("ItemID", itemID)
                          .Columns("BusinessUnitNumber")
                          .FirstOrDefault();
             args.IsValid = DataHelper.DataSourceIsEmpty(buData);
         }
         else
         {
             var buData = CustomTableItemProvider.GetItems <BusinessUnitItem>()
                          .WhereEquals("BusinessUnitNumber", buNumber)
                          .Columns("BusinessUnitNumber")
                          .FirstOrDefault();
             args.IsValid = DataHelper.DataSourceIsEmpty(buData);
         }
     }
     catch (Exception ex)
     {
         EventLogProvider.LogException("BusinessUnit.ascx.cs", "cvBUNumber_ServerValidate()", ex);
     }
 }
    /// <summary>
    /// Handles the UniGrid's OnAction event.
    /// </summary>
    /// <param name="actionName">Name of item (button) that throws event</param>
    /// <param name="actionArgument">ID (value of Primary key) of corresponding data row</param>
    protected void uniGrid_OnAction(string actionName, object actionArgument)
    {
        if (actionName == "edit")
        {
            URLHelper.Redirect("CustomTable_Edit.aspx?customtableid=" + actionArgument);
        }
        else if (actionName == "delete")
        {
            int classId = ValidationHelper.GetInteger(actionArgument, 0);

            if (classId > 0)
            {
                // If no item depends on the current class
                if (!DataClassInfoProvider.CheckDependencies(classId))
                {
                    // Delete the class
                    DataClassInfoProvider.DeleteDataClass(classId);
                    CustomTableItemProvider.ClearCustomLicHash();
                }
            }
            else
            {
                // Display error on deleting
                ShowError(GetString("customtable.delete.hasdependencies"));
            }
        }
    }
Example #25
0
    /// <summary>
    /// Gets the custom table item and moves it up. Called when the "Get and move item up" button is pressed.
    /// Expects the CreateCustomTableItem method to be run first.
    /// </summary>
    private bool GetAndMoveCustomTableItemUp()
    {
        // Create new Custom table item provider
        CustomTableItemProvider customTableProvider = new CustomTableItemProvider(CMSContext.CurrentUser);

        string customTableClassName = "customtable.sampletable";

        // Check if Custom table 'Sample table' exists
        DataClassInfo customTable = DataClassInfoProvider.GetDataClass(customTableClassName);

        if (customTable != null)
        {
            // Prepare the parameters
            string where = "ItemText LIKE N'New text'";
            int    topN    = 1;
            string columns = "ItemID";

            // Get the data set according to the parameters
            DataSet dataSet = customTableProvider.GetItems(customTableClassName, where, null, topN, columns);

            if (!DataHelper.DataSourceIsEmpty(dataSet))
            {
                // Get the custom table item ID
                int itemID = ValidationHelper.GetInteger(dataSet.Tables[0].Rows[0][0], 0);

                // Move the item up
                customTableProvider.MoveItemUp(itemID, customTableClassName);

                return(true);
            }
        }

        return(false);
    }
Example #26
0
        /// <summary>
        /// This method will get all the users and bind it to repeater
        /// </summary>
        /// <param name="pageIndex"></param>
        private void BindUsers(int pageIndex)
        {
            List <AllocateProduct> lstAllocatedProd = new List <AllocateProduct>();
            string customTableClassName             = "KDA.UserAllocatedProducts";
            var    users = UserInfoProvider.GetUsers().Columns("Email", "UserID", "FullName").OnSite(CurrentSite.SiteID).OrderBy("FullName")
                           .Skip(PageSize * (pageIndex - 1))
                           .Take(PageSize);

            foreach (UserInfo user in users)
            {
                AllocateProduct objProduct = new AllocateProduct();
                objProduct.EmailID  = user.Email;
                objProduct.UserID   = user.UserID;
                objProduct.UserName = user.FullName;
                objProduct.Quantity = CustomTableItemProvider.GetItems(customTableClassName)
                                      .WhereEquals("ProductID", productId).WhereEquals("UserID", user.UserID).FirstOrDefault()?.GetValue("Quantity", default(int)) ?? 0;
                if (lstUsers.FindIndex(item => item.UserID == user.UserID) > -1)
                {
                    objProduct.Selected = true;
                }
                lstAllocatedProd.Add(objProduct);
            }
            RepterDetails.DataSource = lstAllocatedProd;
            RepterDetails.DataBind();
            PopulatePager(UserInfoProvider.GetUsers().OnSite(CurrentSite.SiteID).Count(), pageIndex);
        }
Example #27
0
    /// <summary>
    /// Deletes customTableItem. Called when the "Delete item" button is pressed.
    /// Expects the CreateCustomTableItem method to be run first.
    /// </summary>
    private bool DeleteCustomTableItem()
    {
        // Create new Custom table item provider
        CustomTableItemProvider customTableProvider = new CustomTableItemProvider(CMSContext.CurrentUser);

        string customTableClassName = "customtable.sampletable";

        // Check if Custom table 'Sample table' exists
        DataClassInfo customTable = DataClassInfoProvider.GetDataClass(customTableClassName);

        if (customTable != null)
        {
            // Prepare the parameters
            string where = "ItemText LIKE N'New text%'";

            // Get the data
            DataSet customTableItems = customTableProvider.GetItems(customTableClassName, where, null);
            if (!DataHelper.DataSourceIsEmpty(customTableItems))
            {
                // Loop through the individual items
                foreach (DataRow customTableItemDr in customTableItems.Tables[0].Rows)
                {
                    // Create object from DataRow
                    CustomTableItem deleteCustomTableItem = CustomTableItem.New(customTableItemDr, customTableClassName);

                    // Delete custom table item from database
                    deleteCustomTableItem.Delete();
                }

                return(true);
            }
        }

        return(false);
    }
Example #28
0
        /// <summary>
        /// Get the brand list
        /// </summary>
        /// <param name="brandItemID"></param>
        /// <returns></returns>
        public string GetBrandName()
        {
            string returnValue = string.Empty;

            try
            {
                var brands = CustomTableItemProvider.GetItems(BrandItem.CLASS_NAME)
                             .Columns("ItemId,BrandName")
                             .ToList();
                if (!DataHelper.DataSourceIsEmpty(brands))
                {
                    ddlBrand.DataSource     = brands;
                    ddlBrand.DataTextField  = "BrandName";
                    ddlBrand.DataValueField = "ItemId";
                    ddlBrand.DataBind();
                    string selectText = ValidationHelper.GetString(ResHelper.GetString("Kadena.InvProductForm.BrandWaterMark"), string.Empty);
                    ddlBrand.Items.Insert(0, new ListItem(selectText, "0"));
                }
            }
            catch (Exception ex)
            {
                EventLogProvider.LogException("CMSWebParts_Kadena_Campaign_Web_Form_AddCampaignProducts", "GetBrandName", ex, CurrentSite.SiteID, ex.Message);
            }
            return(returnValue);
        }
Example #29
0
        /// <summary>
        /// Converts an Object's IDs, Guids, or CodeNames to the Objects CodeNames
        /// </summary>
        /// <param name="classObjSummary">The Class Object Summary</param>
        /// <param name="ObjectIdentifications">List of Object IDs, Guids, or CodeNames</param>
        /// <returns>A list of the Object's Code Names</returns>
        private static IEnumerable <string> ObjectIdentitiesToCodeNames(ClassObjSummary classObjSummary, IEnumerable <object> ObjectIdentifications)
        {
            switch (classObjSummary.ClassName.ToLower())
            {
            case "cms.tree":
            case "cms.document":
                return(new DocumentQuery().Where(ObjectIdentitiesWhere(classObjSummary, ObjectIdentifications)).Columns(classObjSummary.CodeNameColumn).Select(x => (string)x.GetValue(classObjSummary.CodeNameColumn)).ToArray());

            default:
                if (classObjSummary.ClassIsDocumentType)
                {
                    return(new DocumentQuery(classObjSummary.ClassName).Where(ObjectIdentitiesWhere(classObjSummary, ObjectIdentifications)).Columns(classObjSummary.CodeNameColumn).Select(x => (string)x.GetValue(classObjSummary.CodeNameColumn)).ToArray());
                }
                else if (classObjSummary.ClassIsCustomTable)
                {
                    return(CustomTableItemProvider.GetItems(classObjSummary.ClassName).Where(ObjectIdentitiesWhere(classObjSummary, ObjectIdentifications)).Columns(classObjSummary.CodeNameColumn).Select(x => (string)x.GetValue(classObjSummary.CodeNameColumn)).ToArray());
                }
                else if (classObjSummary.ClassIsForm)
                {
                    return(BizFormItemProvider.GetItems(classObjSummary.ClassName).Where(ObjectIdentitiesWhere(classObjSummary, ObjectIdentifications)).Columns(classObjSummary.CodeNameColumn).Select(x => (string)x.GetValue(classObjSummary.CodeNameColumn)).ToArray());
                }
                else
                {
                    return(new ObjectQuery(classObjSummary.ClassName).Where(ObjectIdentitiesWhere(classObjSummary, ObjectIdentifications)).Columns(classObjSummary.CodeNameColumn).Select(x => (string)x.GetValue(classObjSummary.CodeNameColumn)).ToArray());
                }
            }
        }
Example #30
0
 /// <summary>
 /// Gets all custom table object types
 /// </summary>
 public static IEnumerable <string> GetCustomTableObjectTypes()
 {
     return(DataClassInfoProvider.GetClasses()
            .WhereTrue("ClassIsCustomTable")
            .Columns("ClassName")
            .Select(r => CustomTableItemProvider.GetObjectType(r["ClassName"].ToString())));
 }
Example #31
0
    protected void Page_InIt(object sender, EventArgs e)
    {
        PersonifyControlBase objbase = new PersonifyControlBase();
        var    ctrl = new Personify.WebControls.Membership.UI.MembershipJoinRegistrationControl();
        string customTableClassName = "Sme.personifyPages";

        string where = "Parametername ='MbrJoinStep2'";
        DataSet customTableRecord = CustomTableItemProvider.GetItems(customTableClassName, where);


        //if (!string.IsNullOrEmpty(CancelUrl)) { ctrl.CancelUrl = CancelUrl; }
        //if (!string.IsNullOrEmpty(CompanySearchEnable)) { ctrl.CompanySearchEnable = System.Boolean.Parse(CompanySearchEnable); }
        //if (!string.IsNullOrEmpty(CustomCssClass)) { ctrl.CustomCssClass = CustomCssClass; }
        //LoadDropdownList(ddlErrorMessage);
        //if (!string.IsNullOrEmpty(ErrorMessage)) { ctrl.ErrorMessage = ErrorMessage; }
        //LoadDropdownList(ddlImageDirectory);
        //if (!string.IsNullOrEmpty(ImageDirectory)) { ctrl.ImageDirectory = ImageDirectory; }
        //if (!string.IsNullOrEmpty(LinkCompanyEnable)) { ctrl.LinkCompanyEnable = System.Boolean.Parse(LinkCompanyEnable); }
        //if (!string.IsNullOrEmpty(ProductIdUrlParameter)) { ctrl.ProductIdUrlParameter = ProductIdUrlParameter; }
        //if (!string.IsNullOrEmpty(QueryStringParametersToPreserve)) { ctrl.QueryStringParametersToPreserve = QueryStringParametersToPreserve; }
        //if (!string.IsNullOrEmpty(RateCodeUrlParameter)) { ctrl.RateCodeUrlParameter = RateCodeUrlParameter; }
        //LoadDropdownList(ddlStep2Url);
        if (customTableRecord != null)
        {
            ctrl.Step2Url = customTableRecord.Tables[0].Rows[0]["ParameterValue"].ToString();
        }
        //LoadDropdownList(ddlUserExistUrl);
        //if (!string.IsNullOrEmpty(UserExistUrl)) { ctrl.UserExistUrl = UserExistUrl; }
        objbase.InitPersonifyWebControl(ctrl);
        phPersonifyControl.Controls.Add(ctrl);
    }
    /// <summary>
    /// Creates custom table item. Called when the "Create item" button is pressed.
    /// </summary>
    private bool CreateCustomTableItem()
    {
        // Create new Custom table item provider
        CustomTableItemProvider customTableProvider = new CustomTableItemProvider(CMSContext.CurrentUser);

        // Prepare the parameters
        string customTableClassName = "customtable.sampletable";

        // Check if Custom table 'Sample table' exists
        DataClassInfo customTable = DataClassInfoProvider.GetDataClass(customTableClassName);
        if (customTable != null)
        {
            // Create new custom table item
            CustomTableItem newCustomTableItem = CustomTableItem.New(customTableClassName, customTableProvider);

            // Set the ItemText field value
            newCustomTableItem.SetValue("ItemText", "New text");

            // Insert the custom table item into database
            newCustomTableItem.Insert();

            return true;
        }

        return false;
    }
		/// <summary>
		/// GetDocTypeValueFromTileMap
		/// </summary>
		/// <param name="resourceToShow"></param>
		/// <returns>int</returns>
        private int GetDocTypeValueFromTileMap(string resourceToShow, UserInfo ui)
		{
            CustomTableItemProvider tp = new CustomTableItemProvider(ui);
         
            DataSet lookupDataSet = tp.GetItems("thinkgate.TileMap", "BaseTileType = '" + resourceToShow + "' ",
                string.Empty);
			int lookupval = 0;
			if (lookupDataSet.Tables[0].Rows.Count > 0)
			{
				lookupval = (int)lookupDataSet.Tables[0].Rows[0]["Value"];
			}

			return lookupval;

		}
		/// <summary>
		/// GetDocumentResource
		/// </summary>
		/// <param name="ui"></param>
		/// <param name="className"></param>
		/// <param name="treeProvider"></param>
		/// <param name="whereClause"></param>
		/// <param name="orderby"></param>
		/// <param name="whereTextClause"></param>
		/// <param name="lookupDataSet"></param>
		/// <param name="pResourceType"></param>
		/// <returns>List</returns>
		protected List<Resource> GetDocumentResource(UserInfo ui, string className, TreeProvider treeProvider,
			string whereClause, string orderby, string whereTextClause, DataSet lookupDataSet,
			ResourceTypes pResourceType = ResourceTypes.All)
		{

            int lookupval = GetDocTypeValueFromTileMap(className, ui);
			CustomTableItemProvider tp = new CustomTableItemProvider((UserInfo)Session["KenticoUserInfo"]);
			string filtercriteria = "LookupValue = " + lookupval + " and (ISNULL(StateLEA,'')='' or StateLEA = '" +
									DistrictParms.LoadDistrictParms().ClientID + "' or StateLEA = '" +
									DistrictParms.LoadDistrictParms().State + "')";
			DataSet resourcesToShow = tp.GetItems("thinkgate.TileMap_Lookup", filtercriteria, string.Empty);

			List<Resource> lstResource = new List<Resource>();
			foreach (DataRow dr in resourcesToShow.Tables[0].Select().OrderBy(p => p["ItemOrder"].ToString()))
			{
                if (isInstructionMaterial == true && dr["KenticoDocumentTypeToShow"].ToString().ToLower() == "thinkgate.competencylist")
                {
                    continue;
                }
				string[] columnNames =
				{
					dr["DescriptionColumnName"].ToString(), dr["NameColumnName"].ToString(),
					dr["AttachmentColumnName"].ToString(), dr["FriendlyName"].ToString()
				};
				List<Resource> resource =
					(from s in
                        GetDocuments(ui, dr["KenticoDocumentTypeToShow"].ToString(), treeProvider, whereClause,
                            string.Empty, columnNames,
							 whereTextClause, lookupDataSet, pResourceType)
					 select new Resource
					 {
						 Source =
							 s.NodeAliasPath.IndexOf(_districts.ToString(), StringComparison.Ordinal) >= 0
								 ? District
                                    : s.NodeAliasPath.IndexOf(_stateDocuments.ToString(), StringComparison.Ordinal) >= 0
                                        ? State
                                            : s.NodeAliasPath.IndexOf(_sharedDocuments.ToString(), StringComparison.Ordinal) >= 0
                                            ? SharedDocument //US15667
                                                : MyDocuments,
						 ID = s.ID,
						 DocumentType = s.DocumentType,
						 ID_Encrypted = "",
						 NodeAliasPath = s.NodeAliasPath,
						 ResourceName = s.ResourceName,
						 Description = s.Description,
						 Type = s.Type,
						 Subtype = s.Subtype,
						 ViewLink = s.ViewLink,
						 DocumentForeignKeyValue = s.DocumentForeignKeyValue,
						 DocumentNodeID = Convert.ToInt32(s.DocumentNodeID),
                         ExpirationDate = s.ExpirationDate,
                         AverageRating = s.AverageRating
												  
					 }).ToList<Resource>();
				if (resource.Count == 0)
				{
					resource = new List<Resource>();
				}
				lstResource.AddRange(resource);
			}
			return lstResource;
		}
    void btnGUID_Click(object sender, EventArgs e)
    {
        try
        {
            // Create GUID field
            FormFieldInfo ffiGuid = new FormFieldInfo();

            // Fill FormInfo object
            ffiGuid.Name = "ItemGUID";
            ffiGuid.Caption = "GUID";
            ffiGuid.DataType = FormFieldDataTypeEnum.GUID;
            ffiGuid.DefaultValue = "";
            ffiGuid.Description = "";
            ffiGuid.FieldType = FormFieldControlTypeEnum.CustomUserControl;
            ffiGuid.Settings["controlname"] = Enum.GetName(typeof(FormFieldControlTypeEnum), FormFieldControlTypeEnum.LabelControl).ToLower();
            ffiGuid.PrimaryKey = false;
            ffiGuid.System = true;
            ffiGuid.Visible = false;
            ffiGuid.Size = 0;
            ffiGuid.AllowEmpty = false;

            FormInfo.AddFormField(ffiGuid);

            // Update table structure - columns could be added
            bool old = TableManager.UpdateSystemFields;
            TableManager.UpdateSystemFields = true;
            string schema = FormInfo.GetXmlDefinition();
            TableManager.UpdateTableBySchema(dci.ClassTableName, schema);
            TableManager.UpdateSystemFields = old;

            // Update xml schema and form definition
            dci.ClassFormDefinition = schema;
            dci.ClassXmlSchema = TableManager.GetXmlSchema(dci.ClassTableName);

            dci.Generalized.LogEvents = false;

            // Save the data
            DataClassInfoProvider.SetDataClass(dci);

            dci.Generalized.LogEvents = true;

            // Generate default queries
            SqlGenerator.GenerateDefaultQueries(dci, true, false);

            // Clear cached data
            CMSObjectHelper.RemoveReadOnlyObjects(CustomTableItemProvider.GetObjectType(className), true);
            CustomTableItemProvider.Remove(className, true);
            // Clear the object type hashtable
            ProviderStringDictionary.ReloadDictionaries(className, true);

            // Clear the classes hashtable
            ProviderStringDictionary.ReloadDictionaries("cms.class", true);

            // Clear class strucures
            ClassStructureInfo.Remove(className, true);

            // Ensure GUIDs for all items
            CustomTableItemProvider tableProvider = new CustomTableItemProvider();
            tableProvider.UpdateSystemFields = false;
            tableProvider.LogSynchronization = false;
            DataSet dsItems = tableProvider.GetItems(className, null, null);
            if (!DataHelper.DataSourceIsEmpty(dsItems))
            {
                foreach (DataRow dr in dsItems.Tables[0].Rows)
                {
                    CustomTableItem item = new CustomTableItem(dr, className, tableProvider);
                    item.ItemGUID = Guid.NewGuid();
                    item.Update();
                }
            }

            // Log event
            UserInfo currentUser = CMSContext.CurrentUser;
            EventLog.LogEvent(EventLogProvider.EVENT_TYPE_INFORMATION, DateTime.Now, "Custom table", "GENERATEGUID", currentUser.UserID, currentUser.UserName, 0, null, null, string.Format(ResHelper.GetAPIString("customtable.GUIDGenerated", "Field 'ItemGUID' for custom table '{0}' was created and GUID values were generated."), dci.ClassName), 0, null);

            URLHelper.Redirect(URLHelper.AddParameterToUrl(URLRewriter.CurrentURL, "gen", "1"));
        }
        catch (Exception ex)
        {
            lblError.Visible = true;
            lblError.Text = GetString("customtable.ErrorGUID") + ex.Message;

            // Log event
            EventLog.LogEvent("Custom table", "GENERATEGUID", ex);
        }
    }
    /// <summary>
    /// Gets the custom table item and moves it up. Called when the "Get and move item up" button is pressed.
    /// Expects the CreateCustomTableItem method to be run first.
    /// </summary>
    private bool GetAndMoveCustomTableItemUp()
    {
        // Create new Custom table item provider
        CustomTableItemProvider customTableProvider = new CustomTableItemProvider(CMSContext.CurrentUser);

        string customTableClassName = "customtable.sampletable";

        // Check if Custom table 'Sample table' exists
        DataClassInfo customTable = DataClassInfoProvider.GetDataClass(customTableClassName);
        if (customTable != null)
        {
            // Prepare the parameters
            string where = "ItemText LIKE N'New text'";
            int topN = 1;
            string columns = "ItemID";

            // Get the data set according to the parameters
            DataSet dataSet = customTableProvider.GetItems(customTableClassName, where, null, topN, columns);

            if (!DataHelper.DataSourceIsEmpty(dataSet))
            {
                // Get the custom table item ID
                int itemID = ValidationHelper.GetInteger(dataSet.Tables[0].Rows[0][0], 0);

                // Move the item up
                customTableProvider.MoveItemUp(itemID, customTableClassName);

                return true;
            }
        }

        return false;
    }
    /// <summary>
    /// Deletes customTableItem. Called when the "Delete item" button is pressed.
    /// Expects the CreateCustomTableItem method to be run first.
    /// </summary>
    private bool DeleteCustomTableItem()
    {
        // Create new Custom table item provider
        CustomTableItemProvider customTableProvider = new CustomTableItemProvider(CMSContext.CurrentUser);

        string customTableClassName = "customtable.sampletable";

        // Check if Custom table 'Sample table' exists
        DataClassInfo customTable = DataClassInfoProvider.GetDataClass(customTableClassName);
        if (customTable != null)
        {
            // Prepare the parameters
            string where = "ItemText LIKE N'New text%'";

            // Get the data
            DataSet customTableItems = customTableProvider.GetItems(customTableClassName, where, null);
            if (!DataHelper.DataSourceIsEmpty(customTableItems))
            {
                // Loop through the individual items
                foreach (DataRow customTableItemDr in customTableItems.Tables[0].Rows)
                {
                    // Create object from DataRow
                    CustomTableItem deleteCustomTableItem = CustomTableItem.New(customTableItemDr, customTableClassName);

                    // Delete custom table item from database
                    deleteCustomTableItem.Delete();
                }

                return true;
            }
        }

        return false;
    }
    /// <summary>
    /// Gets and bulk updates custom table items. Called when the "Get and bulk update items" button is pressed.
    /// Expects the CreateCustomTableItem method to be run first.
    /// </summary>
    private bool GetAndBulkUpdateCustomTableItems()
    {
        // Create new Custom table item provider
        CustomTableItemProvider customTableProvider = new CustomTableItemProvider(CMSContext.CurrentUser);

        string customTableClassName = "customtable.sampletable";

        // Check if Custom table 'Sample table' exists
        DataClassInfo customTable = DataClassInfoProvider.GetDataClass(customTableClassName);
        if (customTable != null)
        {
            // Prepare the parameters

            string where = "ItemText LIKE N'New text%'";

            // Get the data
            DataSet customTableItems = customTableProvider.GetItems(customTableClassName, where, null);
            if (!DataHelper.DataSourceIsEmpty(customTableItems))
            {
                // Loop through the individual items
                foreach (DataRow customTableItemDr in customTableItems.Tables[0].Rows)
                {
                    // Create object from DataRow
                    CustomTableItem modifyCustomTableItem = CustomTableItem.New(customTableItemDr, customTableClassName);

                    string itemText = ValidationHelper.GetString(modifyCustomTableItem.GetValue("ItemText"), "");

                    // Set new values
                    modifyCustomTableItem.SetValue("ItemText", itemText.ToUpper());

                    // Save the changes
                    modifyCustomTableItem.Update();
                }

                return true;
            }
        }

        return false;
    }
    /// <summary>
    /// Gets and updates custom table item. Called when the "Get and update item" button is pressed.
    /// Expects the CreateCustomTableItem method to be run first.
    /// </summary>
    private bool GetAndUpdateCustomTableItem()
    {
        // Create new Custom table item provider
        CustomTableItemProvider customTableProvider = new CustomTableItemProvider(CMSContext.CurrentUser);

        string customTableClassName = "customtable.sampletable";

        // Check if Custom table 'Sample table' exists
        DataClassInfo customTable = DataClassInfoProvider.GetDataClass(customTableClassName);
        if (customTable != null)
        {
            // Prepare the parameters
            string where = "ItemText LIKE N'New text'";
            int topN = 1;
            string columns = "ItemID";

            // Get the data set according to the parameters
            DataSet dataSet = customTableProvider.GetItems(customTableClassName, where, null, topN, columns);

            if (!DataHelper.DataSourceIsEmpty(dataSet))
            {
                // Get the custom table item ID
                int itemID = ValidationHelper.GetInteger(dataSet.Tables[0].Rows[0][0], 0);

                // Get the custom table item
                CustomTableItem updateCustomTableItem = customTableProvider.GetItem(itemID, customTableClassName);

                if (updateCustomTableItem != null)
                {
                    string itemText = ValidationHelper.GetString(updateCustomTableItem.GetValue("ItemText"), "");

                    // Set new values
                    updateCustomTableItem.SetValue("ItemText", itemText.ToLowerCSafe());

                    // Save the changes
                    updateCustomTableItem.Update();

                    return true;
                }
            }
        }

        return false;
    }