public override IEnumerable <Material> Query(IExpression <Material> expression)
        {
            if (expression.IsSimpleWhereToken())
            {
                var number = expression.GetWhereValuesAsString("Number");
                Log.InfoFormat("Single query for item number {0}", number);
                var material = ErpManager.GetMaterialyByNumber(number);

                if (material != null)
                {
                    return new[] { material }
                }
                ;
                return(Enumerable.Empty <Material>());
            }
            var searchSettings = GetSearchSettings(expression);

            return(ErpManager.SearchMaterials(searchSettings));
        }