Quantcast
Channel: Customized Commerce 13 and earlier versions
Viewing all 9642 articles
Browse latest View live

Unable to see Commerce tab in CMS

$
0
0

Hi,

Commerce tab is not visible in CMS.I verified the roles of "Commerceadmins",everything looks fine. Could you please help out on this.

Thanks,

Nymisha


BusinessManager.List top 1000 in background

$
0
0

Hi,

When I run BusinessManager.List without any filters, BusinessManager.List("Contact", new FilterElement[] {}) commerce manager magically uses top 1000 in the background. So if you have more than 1000 contacts you will not be able to search for them without appying a filter. 

Is there any way to get alla to contacts anyway without applying a filter? I want BusinessManager.List("Contact", new FilterElement[] {}) to give me all, not to do a freakin' top 1000 without me saying so.

Issue with fetching SKU's

$
0
0

Hi Team,

I am facing issues in fetching the catalog sku's.

Please find the code below

private static IContentLoader contentLoader = ServiceLocator.Current.GetInstance<IContentLoader>();
var catalogRoot = contentLoader.Get<IContent>(Guid.Parse(catalogReference.CatalogContentReferenceId));
var currencySKUs = contentLoader.GetChildren<Currency>(catalogRoot );

The above code is returning the sku's.

But if I remove any sku relation from the catalog, then its is not reflected in the results until I recycle my apppool.

Can you let me if I need to do any configurtaion for this.

CMS version - 7.11
Commerce 7.5

Thanks in advance.

Thanks & Regards,
Manjeera T

Issue while browsing local episerver site

$
0
0

Hi Team,

I am facing the below error while browsing my local episerver site.Could you please help me out in resolving this.

Stack Trace:

[ArgumentNullException: Value cannot be null.
Parameter name: key]
   System.Collections.Generic.Dictionary`2.FindEntry(TKey key) +14132144
   System.Collections.Generic.Dictionary`2.ContainsKey(TKey key) +10
   EPiServer.Data.Dynamic.Providers.DbDataStoreProvider.ProcessValueFromDb(Type targetType, Object value, String name, ProviderCallContext context, Type targetParentType) +137
   EPiServer.Data.Dynamic.Providers.SqlServerDataStoreProvider.ProcessValueFromDb(Type targetType, Object value, String name, ProviderCallContext context, Type targetParentType) +513
   EPiServer.Data.Dynamic.Providers.DbDataStoreProvider.LoadInlineProperties(ProviderCallContext ctx) +580
   EPiServer.Data.Dynamic.Providers.<>c__DisplayClassa.<Load>b__9() +21
   EPiServer.Data.Dynamic.Providers.<>c__DisplayClass1`1.<Execute>b__0() +141
   EPiServer.Data.Dynamic.Providers.DbDataStoreProvider.InternalExecute(Func`1 method) +40
   EPiServer.Data.Dynamic.DynamicDataStore.InternalLoad(Identity id, Type type, LoadAsObjectType loadAs, ProviderCallContext parentContext) +649
   EPiServer.Data.Dynamic.Providers.DbDataStoreProvider.LoadSubObject(Identity id, Type type, String storeName, ProviderCallContext context) +284
   EPiServer.Data.Dynamic.Providers.DbDataStoreProvider.LoadReferencesAndCollections(ProviderCallContext ctx) +1151
   EPiServer.Data.Dynamic.Providers.DbDataStoreProvider.LoadObject(ProviderCallContext context) +145
   EPiServer.Data.Dynamic.Providers.<>c__DisplayClass1`1.<Execute>b__0() +141
   EPiServer.Data.Dynamic.Providers.DbDataStoreProvider.InternalExecute(Func`1 method) +40
   EPiServer.Data.Dynamic.DynamicDataStore.InternalLoad(Identity id, Type type, LoadAsObjectType loadAs, ProviderCallContext parentContext) +649
   EPiServer.Data.Dynamic.Providers.DbDataStoreProvider.LoadSubObject(Identity id, Type type, String storeName, ProviderCallContext context) +284
   EPiServer.Data.Dynamic.Providers.DbDataStoreProvider.LoadReferenceMarkers(IList list, ProviderCallContext context) +109
   EPiServer.Data.Dynamic.Providers.DbDataStoreProvider.LoadCollection(ProviderCallContext context, CollectionPropertyMap collectionProperty) +1785
   EPiServer.Data.Dynamic.Providers.DbDataStoreProvider.LoadReferencesAndCollections(ProviderCallContext ctx) +1321
   EPiServer.Data.Dynamic.Providers.DbDataStoreProvider.LoadObject(ProviderCallContext context) +145
   EPiServer.Data.Dynamic.Providers.<>c__DisplayClass1`1.<Execute>b__0() +141
   EPiServer.Data.Dynamic.Providers.DbDataStoreProvider.InternalExecute(Func`1 method) +40
   EPiServer.Data.Dynamic.DynamicDataStore.InternalLoad(Identity id, Type type, LoadAsObjectType loadAs, ProviderCallContext parentContext) +649
   EPiServer.Data.Dynamic.EPiServerDynamicDataStore.Load(Identity id) +74
   EPiServer.Data.Dynamic.DynamicDataCollectionEnumerator.get_Current() +323

Thanks,

Neha

Promotion applying

$
0
0

Hello.

I have 2 promotions:

1) Entry level which gives 50% off on specified variant (placed price 13$);

2) Order level which gives 1$ off if cart subtotal greater than 10$;

Before applying promotions my cart total is 18$ (subtotal 13$ + handlingtotal 5$).

When I apply entry level promotion I got updated subtotal 6.5$ and total 11.5$. Then I apply the second promotion and I expect that it will not be applied (because condition >10$), but as I see the second promotion is still applied.

I changed the condition to "running total greater than 10$" and now its working as expected but can someone explain whats wrong with conditions built with subtotal/total? And in which cases what conditions better to use? For example, how to change the second promotion to check cart's total (including handling totals and etc)?

Thanks.

P.S. Episerver Commerce 9.19.1

SearchManager.Search taking 90 seconds in production

$
0
0

Hi,

When deploying to our production environment we noticed a significant performance decrease in searching for articles in commerce manager. From time to time (seems like first time, and then after 1 or so minutes) searching for articles takes 90 seconds.

After decompiling and adding stopwatches here and there, we have noticed that it is this line that takes 90 seconds.

 ISearchResults searchResults = new SearchManager(Mediachase.Commerce.Core.AppContext.Current.ApplicationName).Search((ISearchCriteria)entrySearchCriteria);

It is located in the CatalogEntrySearchDialog.cs. Any ideas on why it takes so long time in production?

//Tommy

Can't login with new users on azure

$
0
0

I'm running 9.20.0

I can't login with users created in the cms admin. It's been working before and somwhere along the way, this problem arised. It works on my local dev against my local database, but not against the database on azure. I've also tried to run my local application against the database on azure with the same result.

The user is created and appears in the cms, but when I try to login with the user I get a NullReferenceException with following StackTrace:

[NullReferenceException: Object reference not set to an instance of an object.]
at Mediachase.BusinessFoundation.Data.BaseFieldValidator.GetValue()
at Mediachase.BusinessFoundation.Data.StringFieldValidator.EvaluateIsValid()
at Mediachase.BusinessFoundation.Data.BaseFieldValidator.Validate()
at Mediachase.BusinessFoundation.Data.Meta.MetaObject.Validate()
at Mediachase.BusinessFoundation.Data.Meta.MetaObject.OnSaving()
at Mediachase.BusinessFoundation.Data.Meta.MetaObject.Save(Boolean forceSave)
at Mediachase.BusinessFoundation.Data.Meta.MetaObject.Save()
at Mediachase.BusinessFoundation.Data.Business.EntityObjectDefaultRequestHandler.Create(BusinessContext context)
at Mediachase.BusinessFoundation.Data.Business.EntityObjectDefaultRequestHandler.Execute(BusinessContext context)
at Mediachase.BusinessFoundation.Data.Business.BaseRequestHandler.Mediachase.BusinessFoundation.Data.Business.IRequestHandler.Execute(BusinessContext context)
at Mediachase.BusinessFoundation.Data.Business.BusinessManager.ExecutePipeline(Request request, IRequestHandler handler)
at Mediachase.BusinessFoundation.Data.Business.BusinessManager.ExecutePipelineInTransaction(Request request, IRequestHandler handler)
at Mediachase.BusinessFoundation.Data.Business.BusinessManager.Execute(Request request)
at Mediachase.BusinessFoundation.Data.Business.BusinessManager.Create(EntityObject target)
at Mediachase.Commerce.Customers.CustomerContact.SaveChanges()
at Mediachase.Commerce.Security.PrincipalExtensions.GetCustomerContact(IPrincipal principal)
at Mediachase.Commerce.Security.PrincipalExtensions.GetContactId(IPrincipal principal)
at Mediachase.Commerce.Core.Modules.BusinessFoundationInitializeModule.context_AuthorizeRequest(Object sender, EventArgs e)
at System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

Update: It seems to always happen when a CustomerContact is created. When I try to create a new Contact inside Commerce Manager I get exception at the same place with the following StackTrace:

[NullReferenceException: Object reference not set to an instance of an object.]
   Mediachase.BusinessFoundation.Data.BaseFieldValidator.GetValue() +273
   Mediachase.BusinessFoundation.Data.StringFieldValidator.EvaluateIsValid() +73
   Mediachase.BusinessFoundation.Data.BaseFieldValidator.Validate() +66
   Mediachase.BusinessFoundation.Data.Meta.MetaObject.Validate() +166
   Mediachase.BusinessFoundation.Data.Meta.MetaObject.OnSaving() +118
   Mediachase.BusinessFoundation.Data.Meta.MetaObject.Save(Boolean forceSave) +76
   Mediachase.BusinessFoundation.Data.Meta.MetaObject.Save() +54
   Mediachase.BusinessFoundation.Data.Business.EntityObjectDefaultRequestHandler.Create(BusinessContext context) +976
   Mediachase.BusinessFoundation.Data.Business.EntityObjectDefaultRequestHandler.Execute(BusinessContext context) +720
   Mediachase.BusinessFoundation.Data.Business.BaseRequestHandler.Mediachase.BusinessFoundation.Data.Business.IRequestHandler.Execute(BusinessContext context) +60
   Mediachase.BusinessFoundation.Data.Business.BusinessManager.ExecutePipeline(Request request, IRequestHandler handler) +151
   Mediachase.BusinessFoundation.Data.Business.BusinessManager.ExecutePipelineInTransaction(Request request, IRequestHandler handler) +117
   Mediachase.BusinessFoundation.Data.Business.BusinessManager.Execute(Request request) +768
   Mediachase.BusinessFoundation.Data.Business.BusinessManager.Create(EntityObject target) +106
   Mediachase.Commerce.Manager.Apps.MetaUIEntity.Tabs.EntityEditTab.SaveChanges(IDictionary context) +940
   Mediachase.Commerce.Manager.Core.Controls.EditViewControl.SaveChanges(IDictionary context) +290
   Mediachase.Commerce.Manager.Core.SaveControl.OnSaveChanges(Object sender, EventArgs e) +60
   System.Web.UI.WebControls.Button.OnClick(EventArgs e) +11762636
   System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +149
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +6015

Issue with Commerce ServiceApi Catalog import

$
0
0

Hi,

I recently upgraded a site to update 126 (CMS 9.12.1.0, Commerce 9.22, ServiceApi 2.0.10) and at the same time enabled remote events (world.episerver.com/documentation/Items/Developers-Guide/Episerver-CMS/9/Event-management/WCF-event-management/).

Everything is working as expected - the admin/edit UI, uploading media files, updating a page on the edit server sends an update to the front end server and so forth.

Calling "simple" methods in the ServiceApi returns data as expected, but when posting a file to "/episerverapi/commerce/import/catalog" I get a log message as follows:

2016-09-06 20:46:13,632 [281] ERROR EPiServer.ServiceApi.Extensions.HttpRequestMessageExtensions: File is not uploaded, please check permission on your app data folder in episerverframework.config file. 
System.IO.IOException: Error reading MIME multipart body part. ---> System.InvalidOperationException: Unable to read the entity body in Bufferless mode. The request stream has already been buffered. 
at System.Web.Http.WebHost.HttpControllerHandler.<>c__DisplayClass13.b__10() 
at System.Web.Http.WebHost.HttpControllerHandler.LazyStreamContent.get_StreamContent()
at System.Web.Http.WebHost.HttpControllerHandler.LazyStreamContent.CreateContentReadStreamAsync()
at System.Net.Http.HttpContent.ReadAsStreamAsync() 
at System.Net.Http.HttpContentMultipartExtensions.d__0`1.MoveNext() 
--- End of inner exception stack trace --- 
at System.Net.Http.HttpContentMultipartExtensions.d__0`1.MoveNext() 
--- End of stack trace from previous location where exception was thrown --- 
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 
at EPiServer.ServiceApi.Extensions.HttpRequestMessageExtensions.d__0.MoveNext() 
System.IO.IOException: Error reading MIME multipart body part. ---> System.InvalidOperationException: Unable to read the entity body in Bufferless mode. The request stream has already been buffered. 
at System.Web.Http.WebHost.HttpControllerHandler.<>c__DisplayClass13.b__10() 
at System.Web.Http.WebHost.HttpControllerHandler.LazyStreamContent.get_StreamContent()
at System.Web.Http.WebHost.HttpControllerHandler.LazyStreamContent.CreateContentReadStreamAsync()
at System.Net.Http.HttpContent.ReadAsStreamAsync() 
at System.Net.Http.HttpContentMultipartExtensions.d__0`1.MoveNext() 
--- End of inner exception stack trace --- 
at System.Net.Http.HttpContentMultipartExtensions.d__0`1.MoveNext() 
--- End of stack trace from previous location where exception was thrown --- 
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 
at EPiServer.ServiceApi.Extensions.HttpRequestMessageExtensions.d__0.MoveNext()

The API itself returns an exception:

{Message:An error has occurred.,ExceptionMessage:Object reference not set to an instance of an object.,ExceptionType:System.NullReferenceException,StackTrace: at EPiServer.ServiceApi.Commerce.Controllers.Catalog.CatalogImportExportController.d__3.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n at System.Threading.Tasks.TaskHelpersExtensions.d__3`1.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n at System.Web.Http.Controllers.ApiControllerActionInvoker.d__0.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n at System.Web.Http.Filters.ActionFilterAttribute.d__5.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Web.Http.Filters.ActionFilterAttribute.d__5.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n at System.Web.Http.Filters.ActionFilterAttribute.d__0.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n at System.Web.Http.Controllers.ActionFilterResult.d__2.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n at System.Web.Http.Filters.AuthorizationFilterAttribute.d__2.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n at System.Web.Http.Filters.AuthorizationFilterAttribute.d__2.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n at System.Web.Http.Controllers.AuthenticationFilterResult.d__0.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n at System.Web.Http.Dispatcher.HttpControllerDispatcher.d__0.MoveNext()}

I've triple checked the configurations and settings on the IIS etc but the error persists.

The same setup is running in a test environment where the issue does not appear, the only difference is that the production environment is on two separate servers where as the test environment is running on one server. But the remote events is setup as per instance, so it should basically be the same thing in theory.

A list of things that have been tested:

  • Set explicit permissions on the AppData folder for the AppPool user.
  • Set full permissions for Everyone on the AppData folder.
  • Downgrade ServiceApi to previous version.
  • Compared the configuration from before the upgrade and I cannot see any changes that would affect the ServiceApi.
  • Compared the configuration between the test and production environment - no differences (except urls and keys etc).
  • Verified firewall and ports on the server.
  • Tried debugging with ServiceApiConsoleClient - I get a token but the error persist when posting a file to "episerverapi/commerce/import/catalog/".
  • Tried calling "episerverapi/commerce/catalogs/" - returns data as expected.
  • Modified maxRequestLength and maxAllowedContentLength in web.config
  • Disabled ASP.NET default trace module (glimpse not installed)

Is there anybody who has encountered this before or has any suggestions on other options to test in order to get the catalog import working?

Thanks!


NullReferenceException efter added inventory on item

$
0
0

Hi Episerver developers,

i get this exception that i can't wrap my head around and hopefully you can give me some ideas.

My product listing works and and shows the articles when i click on them until i add inventory to the item. 

Then it breaks when trying to go to the productdetail view from the list.

I get this exception and the breakpoint doesn't hit the productdetail controller.

Im running commerce 9.19.1

Any ideas would be much appritiated?!

[NullReferenceException: Object reference not set to an instance of an object.]
EPiServer.Commerce.Catalog.Provider.Construction.CatalogPropertyLoader.AddStockPlacementPropertyValues(VariationRow variationRow, IContent content) +569
EPiServer.Commerce.Catalog.Provider.Construction.CatalogPropertyLoader.LoadStaticContentProperties(CatalogEntryRow entryRow, CatalogItemSeoRow seoRow, VariationRow variationRow, EntryContentBase content) +155
EPiServer.Commerce.Catalog.Provider.Construction.CatalogPropertyLoader.LoadProperties(CatalogEntryRow entryRow, CatalogItemSeoRow seoRow, VariationRow variationRow, EntryContentBase content, MetaObjectAccessor metaObjectAccessor) +141
EPiServer.Commerce.Catalog.Provider.Construction.EntryBuilder.ConstructEntries(CatalogEntryDto entryDto, IDictionary`2 versionsForUnpublishedContent, IList`1 entryNodeRelations, String language) +708
EPiServer.Commerce.Catalog.Provider.Construction.EntryBuilder.Create(IList`1 contentLinks, String language) +638
EPiServer.Commerce.Catalog.Provider.<>c__DisplayClass13_0.<LoadSpecificContentInstances>b__0(ICatalogContentBuilder builder, IList`1 links) +16
EPiServer.Commerce.Catalog.Provider.CatalogContentLoader.ConstructContent(IList`1 contentLinks, Func`3 createContentFunc) +339
EPiServer.Commerce.Catalog.Provider.CatalogContentLoader.LoadSpecificContentInstances(IList`1 contentLinks, String language) +453
EPiServer.Commerce.Catalog.Provider.<>c__DisplayClass28_0.<LoadContents>b__0(IList`1 refs) +44
EPiServer.Commerce.Catalog.Provider.CatalogContentProvider.BatchLoad(IList`1 contentLinks, Func`2 dbLoader) +141
EPiServer.Commerce.Catalog.Provider.CatalogContentProvider.LoadContents(IList`1 contentReferences, ILanguageSelector selector) +425
EPiServer.Commerce.Catalog.Provider.CatalogContentProvider.LoadContent(ContentReference contentLink, ILanguageSelector languageSelector) +138
EPiServer.Core.<>c__DisplayClass115_0.<LoadContentFromCacheOrRepository>b__0() +93
EPiServer.Core.OptimisticCache`1.Read(String cacheKey, ReadAndCacheObject`1 readAndCacheObject) +563
EPiServer.Core.ContentProvider.LoadContentFromCacheOrRepository(ContentReference contentreference, ILanguageSelector selector) +728
EPiServer.Core.DefaultContentLoader.GetBySegmentInternal(ContentProvider provider, ContentReference parentLink, String urlSegment, LoaderOptions loaderOptions) +352
EPiServer.Core.DefaultContentLoader.GetBySegment(ContentReference parentLink, String urlSegment, LoaderOptions selector) +56
EPiServer.Core.DefaultContentLoader.GetBySegment(ContentReference parentLink, String urlSegment, CultureInfo language) +99
EPiServer.Commerce.Routing.HierarchicalCatalogPartialRouter.FindNextContentInSegmentPair(CatalogContentBase catalogContent, SegmentPair segmentPair, SegmentContext segmentContext, CultureInfo cultureInfo) +304
EPiServer.Commerce.Routing.HierarchicalCatalogPartialRouter.GetCatalogContentRecursive(CatalogContentBase catalogContent, SegmentPair segmentPair, SegmentContext segmentContext, CultureInfo cultureInfo) +149
EPiServer.Commerce.Routing.HierarchicalCatalogPartialRouter.GetCatalogContentRecursive(CatalogContentBase catalogContent, SegmentPair segmentPair, SegmentContext segmentContext, CultureInfo cultureInfo) +371
EPiServer.Commerce.Routing.HierarchicalCatalogPartialRouter.GetCatalogContentRecursive(CatalogContentBase catalogContent, SegmentPair segmentPair, SegmentContext segmentContext, CultureInfo cultureInfo) +371
EPiServer.Commerce.Routing.HierarchicalCatalogPartialRouter.RoutePartial(PageData content, SegmentContext segmentContext) +307
EPiServer.Web.Routing.PartialRouter`2.RoutePartial(IContent content, SegmentContext segementContext) +119
EPiServer.Web.Routing.Segments.PartialSegment.RouteDataMatch(SegmentContext context) +272
EPiServer.Web.Routing.<>c__DisplayClass44_0.<MatchSegments>b__0(ISegment s) +15
System.Linq.Enumerable.All(IEnumerable`1 source, Func`2 predicate) +146

Unpublish product without deleting it

$
0
0

Hi!

How can I unpublish a product without deleting it? Should I set it's status? And what SaveAction should I use?

Setting Editor Permissions per language

$
0
0

Hello,

We have the requirement to allow only certain editors to manage the catalog(s) for a certain language (e.g. french team manages the french version of the catalog), in CMS this is possible via the "Manage Website Languages" page and permissions can then be applied there but it appears this doesnt affect Commerce, is this possible? or is this a feature yet to come to Commerce?

Regards

Ben

Commerce Manager Contacts events

$
0
0

I can see in the SDK that there are events available that get tied to Catalog items, but is there any available Event system for when a Commerce manager deletes a user from the Contacts section?

Or would this involve extending the Commerce Manager screen itself and accessing the controls that way round? (i'm hoping there is an event that can be used)

Hide property based on Culture

$
0
0

I'm working with a Globalised e-commerce site and our customer is requesting a property they only want to appear for one culture. Since the site is consisting on many languages it will be an disadvantage to have the property for all cultures. Is there a way to hide/remove the property for the rest of the cultures? The Culturespecific attribute is only making the values unique for each culture so that won't help me in this case.

//J

Line item Placed Price is becoming zero

$
0
0

Hi All,

I am facing a strange issue with my pruchase orders . 

Placed price is becmong zero for one of the line items in Purchase orders . 

Any suggestion to get ride of this issue will be appreciated. 

Purchase Order LineItems

Custom Business Foundation Entity List - Delete Item

$
0
0

Hi,

We're have a custo Business Foundation entity type, and trying to add functionality to the Commerce back-end to allow users to add/edit/delete list items.

We've implemented the list view which is is working fine - and now trying to add a custom handler to delete items. I've implemented the following delete handler:

    public class ExcludedPostcodeDeleteHandler : EcfListViewSelectionHandlerBase
    {
        protected override void ProcessSelectedItems(string[] items)
        {
            for (int index = 0; index < items.Length; ++index)
            {
                string[] keyIdStringItems = EcfListView.GetPrimaryKeyIdStringItems(items[index]);
                if (keyIdStringItems != null && keyIdStringItems.Any())
                {
                    int id;
                    if (int.TryParse(keyIdStringItems.First(), out id))
                        ExcludedPostcodeManager.Current.DeletePostcode(id);
                }
            }
        }
    }

With the command defined in the xml:

<Command id="cmdExcludePostcodeDelete"><ConfirmationText>{CommerceManager:DeleteSelectedItemsConfirmation}</ConfirmationText><CommandType>ServerAction</CommandType><Handler type="App.CommerceManager.Apps.Catalog.ExcludedPostcodeDeleteHandler, App.CommerceManager" /><UpdatePanelIds>panelMainListView</UpdatePanelIds><EnableHandler type="Mediachase.Commerce.Manager.Apps.Catalog.CommandHandlers.CatalogPermissionEnableHandler, Mediachase.ConsoleManager" /></Command>

And the command mapped in the following column definition:

<Column width="50" dataField="ExcludedPostcodeId" headingText="" columnType="Action"><Item imageUrl="~/Apps/Shell/styles/Images/edit.gif" commandName="cmdExcludePostcodeEdit" commandParameters="ExcludedPostcodeId" toolTip="Edit" permissions="catalog:admin:taxcategories:mng:edit" /><Item imageUrl="~/Apps/Shell/styles/Images/toolbar/delete.gif" commandName="cmdExcludePostcodeDelete" commandParameters="ExcludedPostcodeId" toolTip="Delete" permissions="catalog:admin:taxcategories:mng:delete" /></Column>

However the ID of the selected item is not making it through to the command handler - I get a single item in the array containing an empty string.

Any idea why that might be?

Thanks


AddStaticAttributePropertyValues object reference exception

$
0
0

Hi,

We are using EPiServer.Commerce v9.14.1 and we have encoutnered an issue with our products search page.

Suddenly, the page was throwing below error:

System.NullReferenceException: Object reference not set to an instance of an object.
   at EPiServer.Commerce.Catalog.Provider.Construction.CatalogPropertyLoader.AddStaticAttributePropertyValues(CatalogEntryRow entryRow, EntryContentBase content)
   at EPiServer.Commerce.Catalog.Provider.Construction.CatalogPropertyLoader.LoadStaticContentProperties(CatalogEntryRow entryRow, CatalogItemSeoRow seoRow, VariationRow variationRow, EntryContentBase content)
   at EPiServer.Commerce.Catalog.Provider.Construction.CatalogPropertyLoader.LoadProperties(CatalogEntryRow entryRow, CatalogItemSeoRow seoRow, VariationRow variationRow, EntryContentBase content, MetaObjectAccessor metaObjectAccessor)
   at EPiServer.Commerce.Catalog.Provider.Construction.EntryBuilder.ConstructEntries(CatalogEntryDto entryDto, IDictionary`2 versionsForUnpublishedContent, IList`1 entryNodeRelations, String language)
   at EPiServer.Commerce.Catalog.Provider.Construction.EntryBuilder.Create(IList`1 contentLinks, String language)
   at EPiServer.Commerce.Catalog.Provider.CatalogContentLoader.ConstructContent(IList`1 contentLinks, Func`3 createContentFunc)
   at EPiServer.Commerce.Catalog.Provider.CatalogContentLoader.LoadSpecificContentInstances(IList`1 contentLinks, String language)
   at EPiServer.Commerce.Catalog.Provider.CatalogContentProvider.BatchLoad(IList`1 contentLinks, Func`2 dbLoader)
   at EPiServer.Commerce.Catalog.Provider.CatalogContentProvider.LoadContents(IList`1 contentReferences, ILanguageSelector selector)
   at EPiServer.Commerce.Catalog.Provider.CatalogContentProvider.LoadContent(ContentReference contentLink, ILanguageSelector languageSelector)
   at EPiServer.Core.ContentProvider.<>c__DisplayClass114_0.<LoadContentFromCacheOrRepository>b__0()
   at EPiServer.Core.OptimisticCache`1.Read(String cacheKey, ReadAndCacheObject`1 readAndCacheObject)
   at EPiServer.Core.ContentProvider.LoadContentFromCacheOrRepository(ContentReference contentreference, ILanguageSelector selector)
   at EPiServer.Core.ProviderPipelineImplementation.GetItem(ContentProvider provider, ContentReference contentLink, LoaderOptions loaderOptions)
   at EPiServer.Core.DefaultContentLoader.TryGet[T](ContentReference contentLink, LoaderOptions loaderOptions, T& content)
   at EPiServer.Web.Routing.DefaultUrlResolver.GetVirtualPathInternal(ContentReference contentLink, String language, VirtualPathArguments arguments)
   at EPiServer.Commerce.Routing.RequestCacheUrlResolver.GetVirtualPathInternal(ContentReference contentLink, String language, VirtualPathArguments arguments)
   at EPiServer.Web.Routing.UrlResolver.GetUrl(ContentReference contentLink, String language)
   at EPiServer.Web.Mvc.Html.UrlExtensions.ContentUrl(UrlHelper urlHelper, ContentReference contentLink)
   at ASP._Page_Views_Shared_Products_Details_cshtml.Execute() in ~\Views\Shared\Products\Details.cshtml:line 88
   at System.Web.WebPages.WebPageBase.ExecutePageHierarchy()
   at System.Web.Mvc.WebViewPage.ExecutePageHierarchy()
   at System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage)
   at System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context)
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult)
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult)
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult)
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult)
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult)
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult)
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult)
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult)
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList`1 filters, ActionResult actionResult)
   at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass21.<BeginInvokeAction>b__1e(IAsyncResult asyncResult)
   at System.Web.Mvc.Controller.<BeginExecuteCore>b__1d(IAsyncResult asyncResult, ExecuteCoreState innerState)
   at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult)
   at System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult)
   at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult)
   at System.Web.Mvc.MvcHandler.<BeginProcessRequest>b__5(IAsyncResult asyncResult, ProcessRequestState innerState)
   at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult)
   at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
   at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

Recycling app pool fixed the issue.

Any idea what might have caused this error?

Thanks!

Show product and variant listings in Episerver view language

$
0
0

Hi!

If I list a products variants they are always displayed in the default language. If I change the view language to another language the variant list and product lists are always displayed in the master language. I can see that the Name property is not culture specific so it is probably the Name property that is used in all the lists. Is there any way to configure Commerce to use DisplayName, if it exists, instead in all lists?

We are using Commer 9.17.0

Thanks!

/Kristoffer

Extend the OrderStatus

$
0
0

Hi.

The purchase order can be one of next statuses: InProgress, Cancelled, Completed etc

How can I add a new status to this list? Maybe does Epi not support it?

Commerce Version 9.14.1

Best regards

Episerver Commerce Caching issue (maybe)

$
0
0

Hello,

About a month ago we upgraded from 7.19 (or the latest version of 7) of Commerce all the way to 9.19.

Since then we've noticed that catalog/product information changes are not reflected until the app pools are recycled on IIS.  Typically this would take 15-20 minutes on 7.15.

My gut tells me it's something with our Caching configuration, we use the standard out of the box caching on episerver.  Is there anything other than ecf.catalog.config that is used to govern caching now?

Any information would be helpful, this is a strange one.

our ecf.catalog.config (everything is set to 15 minutes)

<?xml version="1.0"?><Catalog autoConfigure="true"><Connection connectionStringName="EcfSqlConnection" /><Cache enabled="true" collectionTimeout="0:15:0" entryTimeout="0:15:0" nodeTimeout="0:15:0" schemaTimeout="0:15:0" /><Encoding imageQualityPercentage="80" defaultFormat="jPeg" /><Roles /><Events></Events></Catalog>

Issue with negative tax when product is free and order-level discount is applied

$
0
0

Hello,

I am running into a weird issue with oder form caluclations. The site I am working on has a lot of products that are free, but, they need to be shipped, so, there is a charge for the shipment. I came across an issue today with a test case involving an order-level discount. The coupon was for 1.00 off the total order cost. With a free product where this coupon is applied, the subtotal on the order form is -1.00. What is then happening is that it is calculating tax on the -1.00. The interesting thing is that it subtracts that negative tax amount from the order total, so this is what I am ending up with for the order form totals:

Coupon Discount: $1.00

SubTotal: -$1.00 (Product is Free)

Shiping: $7.25

Tax: -$0.06 (This is based on Illinois sales tax rate of 6.25%)

Total: $6.19 (should be $6.25)

We are using customized workflows on this project, but, I confirmed that the same thing happens with the default Commerce workflows. On this checkout page. I am running CartPrepare before the page loads. It seems to me that if the order total is <= 0.00, it shouldn't be applying any sales tax. Am I missing something? Any insight into this issue would be greatly appreciated.

Here are the versions of Commerce and CMS I am running:

 <package id="EPiServer.CMS" version="9.12.1" targetFramework="net452" /><package id="EPiServer.CMS.Core" version="9.12.1" targetFramework="net452" /><package id="EPiServer.CMS.UI" version="9.9.1" targetFramework="net452" /><package id="EPiServer.CMS.UI.Core" version="9.9.1" targetFramework="net452" /><package id="EPiServer.Commerce" version="9.22.0" targetFramework="net452" /><package id="EPiServer.Commerce.Core" version="9.22.0" targetFramework="net452" /><package id="EPiServer.Commerce.FindSearchProvider" version="8.13.2" targetFramework="net452" /><package id="EPiServer.Commerce.UI" version="9.22.0" targetFramework="net452" /><package id="EPiServer.Commerce.UI.ManagerIntegration" version="9.22.0" targetFramework="net452" />

Thanks!

John

Viewing all 9642 articles
Browse latest View live