Unfortunately, that won't work since some of the bundled products are shared among other bundles.
And I'm not sure how it would be displayed. I'm guessing the banner that NSC creates wouldn't be displayed. Since the components of the kits are not displayed.
Hi,
The countdown timer wouldn't be displayed, it needs to be on a product which is visible on the page ( the bundled products are not visible on the parent product page ).
The campaign only ignores products which already have an old price different than 0.
I see this functionality as a big problem. In my case, I show the old price as msrp so that the entire catalog looks more attractive. I then do discounts like normal. Can you just ignore the old price completely? Or even better, give us the option to select which price to base the discount off of (old price or price). Then this can work for a lot more use cases. The fact that the native discounts of nop are based on price (not old price) does make me look at your implementation (by using the old price as part of the formula) as a bug.
Thanks Chuck
Thanks Chuck
We agree with Charles: we need an option to set the base price. Thanks
The campaign only ignores products which already have an old price different than 0.
I see this functionality as a big problem. In my case, I show the old price as msrp so that the entire catalog looks more attractive. I then do discounts like normal. Can you just ignore the old price completely? Or even better, give us the option to select which price to base the discount off of (old price or price). Then this can work for a lot more use cases. The fact that the native discounts of nop are based on price (not old price) does make me look at your implementation (by using the old price as part of the formula) as a bug.
Thanks Chuck
Thanks Chuck We agree with Charles: we need an option to set the base price. Thanks
Hi, with 3.80 version with found this error "A public action method 'RetrieveSalesCampaigns' was not found on controller 'SevenSpikes.Nop.Plugins.SaleCampaigns.Controllers.SaleCampaignController'.". This's the extended error message: "System.Web.HttpException (0x80004005): A public action method 'RetrieveSalesCampaigns' was not found on controller 'SevenSpikes.Nop.Plugins.SaleCampaigns.Controllers.SaleCampaignController'. in System.Web.Mvc.Controller.HandleUnknownAction(String actionName) in System.Web.Mvc.Controller.<BeginExecuteCore>b__1d(IAsyncResult asyncResult, ExecuteCoreState innerState) in System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) in System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResultBase`1.End() in System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) in System.Web.Mvc.Controller.<BeginExecute>b__15(IAsyncResult asyncResult, Controller controller) in System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) in System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResultBase`1.End() in System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult) in System.Web.Mvc.Controller.System.Web.Mvc.Async.IAsyncController.EndExecute(IAsyncResult asyncResult) in System.Web.Mvc.MvcHandler.<BeginProcessRequest>b__5(IAsyncResult asyncResult, ProcessRequestState innerState) in System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) in System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResultBase`1.End() in System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) in System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(IAsyncResult result) in System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() in System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)". Plugin is installed, but none campaign is defined. Everything, apparently, is running fine... Thank you
Hi, with 3.80 version with found this error "A public action method 'RetrieveSalesCampaigns' was not found on controller 'SevenSpikes.Nop.Plugins.SaleCampaigns.Controllers.SaleCampaignController'.". This's the extended error message: "System.Web.HttpException (0x80004005): A public action method 'RetrieveSalesCampaigns' was not found on controller 'SevenSpikes.Nop.Plugins.SaleCampaigns.Controllers.SaleCampaignController'. in System.Web.Mvc.Controller.HandleUnknownAction(String actionName) in System.Web.Mvc.Controller.<BeginExecuteCore>b__1d(IAsyncResult asyncResult, ExecuteCoreState innerState) in System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) in System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResultBase`1.End() in System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult) in System.Web.Mvc.Controller.<BeginExecute>b__15(IAsyncResult asyncResult, Controller controller) in System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) in System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResultBase`1.End() in System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult) in System.Web.Mvc.Controller.System.Web.Mvc.Async.IAsyncController.EndExecute(IAsyncResult asyncResult) in System.Web.Mvc.MvcHandler.<BeginProcessRequest>b__5(IAsyncResult asyncResult, ProcessRequestState innerState) in System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult) in System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResultBase`1.End() in System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult) in System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(IAsyncResult result) in System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() in System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)". Plugin is installed, but none campaign is defined. Everything, apparently, is running fine... Thank you
Getting this error when I try to activate a campaign
Error:A transaction error occured while running the campaign: test. Please check the error in the Log.
on the log i see: ystem.Data.Entity.Core.EntityException: The underlying provider failed on Open. ---> System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.Transactions.TransactionAbortedException: The transaction has aborted. ---> System.Transactions.TransactionPromotionException: Failure while attempting to promote transaction. ---> System.Data.SqlClient.SqlException: There is already an open DataReader associated with this Command which must be closed first. ---> System.ComponentModel.Win32Exception: The wait operation timed out --- End of inner exception stack trace --- at System.Data.SqlClient.SqlInternalConnectionTds.ExecuteTransactionYukon(TransactionRequest transactionRequest, String transactionName, IsolationLevel iso, SqlInternalTransaction internalTransaction, Boolean isDelegateControlRequest) at System.Data.SqlClient.SqlInternalConnectionTds.ExecuteTransaction(TransactionRequest transactionRequest, String name, IsolationLevel iso, SqlInternalTransaction internalTransaction, Boolean isDelegateControlRequest) at System.Data.SqlClient.SqlDelegatedTransaction.Promote() --- End of inner exception stack trace --- at System.Data.SqlClient.SqlDelegatedTransaction.Promote() at System.Transactions.TransactionStatePSPEOperation.PSPEPromote(InternalTransaction tx) at System.Transactions.TransactionStateDelegatedNonMSDTC.EnterState(InternalTransaction tx) --- End of inner exception stack trace --- at System.Transactions.TransactionStateAborted.CheckForFinishedTransaction(InternalTransaction tx) at System.Transactions.EnlistableStates.PromotedToken(InternalTransaction tx) at System.Transactions.Transaction.GetPromotedToken() --- End of inner exception stack trace --- at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor) at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments) at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) at System.Data.SqlClient.SqlInternalConnection.EnlistNonNull(Transaction tx) at System.Data.SqlClient.SqlInternalConnection.Enlist(Transaction tx) at System.Data.SqlClient.SqlInternalConnectionTds.Activate(Transaction transaction) at System.Data.ProviderBase.DbConnectionInternal.ActivateConnection(Transaction transaction) at System.Data.ProviderBase.DbConnectionPool.PrepareConnection(DbConnection owningObject, DbConnectionInternal obj, Transaction transaction) at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection) at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection) at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection) at System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions) at System.Data.ProviderBase.DbConnectionClosed.TryOpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions) at System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource`1 retry) at System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry) at System.Data.SqlClient
We had clients in the past experiencing timeouts when running Sales Campaigns. Since then we have optimized the plugin to fix any timeout issues. I suggest you update your plugin to the final version. You can read how to do that in our documentation.
If you still have problems after updating please Submit a Ticket with admin credentials and URL to your store so we can further investigate.