Just released DNN.Survey 09.00.01 - a survey and quiz module for the DNN CMS. Download here: https://github.com/DNNCommunity/DNN.Survey
Happy DNNing! Michael
Michael TobischDNN★MVP
First of all thanks for the release of DNN. Survey 09.00.01. I have the extension installed in our test environment but unfortunately I get an error message below. What to do? Thanks for your answers! Info Start uitvoer Sql: 09.00.00.SqlDataProvider bestand Failure SQL uitvoer leverde de volgende uitzonderingen op: System.Data.SqlClient.SqlException (0x80131904): Invalid column name 'CreatedByUser'. at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout, Boolean asyncWrite) at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at DotNetNuke.Data.SqlDataProvider.ExecuteScriptInternal(String connectionString, String script, Int32 timeoutSec) ClientConnectionId:9d935661-fa0d-4eac-9054-6f31f47ca0c7 Error Number:207,State:1,Class:16 /* Create a new Surveys table - if there is one, create a Surveys_Temp table, copy the data from the Surveys table, delete the Surveys table and rename Surveys_Temp to Surveys. */ IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'dbo.Surveys') AND type = N'U') BEGIN CREATE TABLE dbo.Surveys_Temp( SurveyID int IDENTITY(1,1) NOT NULL, ModuleID int NOT NULL, Question nvarchar(max) NOT NULL, ViewOrder int NOT NULL, OptionType int NOT NULL, IsStatistical bit NULL, RepeatDirection int NOT NULL, RepeatColumns int NULL, NumberOfRows int NULL, ChartType int NOT NULL, CreatedDate datetime NOT NULL, CreatedByUserID int NOT NULL, LastModifiedDate datetime NULL, LastModifiedByUserID int NULL ) SET IDENTITY_INSERT dbo.Surveys_Temp ON INSERT INTO dbo.Surveys_Temp(SurveyID, ModuleID, Question, ViewOrder, OptionType, RepeatDirection, ChartType, CreatedDate, CreatedByUserID) SELECT SurveyID, ModuleID, Question, ROW_NUMBER() OVER (PARTITION BY ModuleID ORDER BY ViewOrder, SurveyID) AS [ViewOrder], /* The field option type changes from a character to an integer. Reason: In the program an Enum is used to be more flexible. 'R' (Single Selection) => 0 (QuestionType.RadioButtons) 'C' (Multiple Selection) => 1 (QuestionType.CheckBoxes) */ CASE WHEN OptionType = 'R' THEN 0 ELSE 1 END AS OptionType, /* RepeatDirection is new and defines the RepeatDirection of the RadioButtonsList or CheckBoxList */ 0 AS RepeatDirection, /* ChartType is new, and does not allow NULL values. Use 0 as default. Here as well, an Enum is used in the program. 0 = ChartType.Bar 1 = ChartType.HorizontalBar 2 = ChartType.Pie 3 = ChartType.Doughnut */ 0 AS ChartType, CreatedDate, CreatedByUser FROM dbo.Surveys WHERE ModuleID IN (SELECT ModuleID FROM dbo.Modules) SET IDENTITY_INSERT dbo.Surveys_Temp OFF IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'FK_Surveys_Modules') AND type = N'F') ALTER TABLE dbo.Surveys DROP CONSTRAINT FK_Surveys_Modules IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'FK_SurveyOptions_Surveys') AND type = N'F') ALTER TABLE dbo.SurveyOptions DROP CONSTRAINT FK_SurveyOptions_Surveys DROP TABLE dbo.Surveys EXEC sp_rename 'dbo.Surveys_Temp', 'Surveys' END ELSE BEGIN CREATE TABLE dbo.Surveys( SurveyID int IDENTITY(1,1) NOT NULL, ModuleID int NOT NULL, Question nvarchar(max) NOT NULL, ViewOrder int NOT NULL, OptionType int NOT NULL, IsStatistical bit NULL, RepeatDirection int NULL, RepeatColumns int NULL, NumberOfRows int NULL, ChartType int NOT NULL, CreatedDate datetime NOT NULL, CreatedByUserID int NOT NULL, LastModifiedDate datetime NULL, LastModifiedByUserID int NULL ) END System.Data.SqlClient.SqlException (0x80131904): Table 'Surveys' already has a primary key defined on it. Could not create constraint. See previous errors. at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout, Boolean asyncWrite) at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at DotNetNuke.Data.SqlDataProvider.ExecuteScriptInternal(String connectionString, String script, Int32 timeoutSec) ClientConnectionId:9d935661-fa0d-4eac-9054-6f31f47ca0c7 Error Number:1779,State:0,Class:16 ALTER TABLE dbo.Surveys ADD CONSTRAINT PK_Surveys PRIMARY KEY CLUSTERED (SurveyID ASC) System.Data.SqlClient.SqlException (0x80131904): The operation failed because an index or statistics with name 'IX_Surveys_ModuleID' already exists on table 'dbo.Surveys'. at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout, Boolean asyncWrite) at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at DotNetNuke.Data.SqlDataProvider.ExecuteScriptInternal(String connectionString, String script, Int32 timeoutSec) ClientConnectionId:9d935661-fa0d-4eac-9054-6f31f47ca0c7 Error Number:1913,State:1,Class:16 CREATE NONCLUSTERED INDEX IX_Surveys_ModuleID ON dbo.Surveys (ModuleID) System.Data.SqlClient.SqlException (0x80131904): The operation failed because an index or statistics with name 'IX_Surveys_ModuleID_ViewOrder' already exists on table 'dbo.Surveys'. at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout, Boolean asyncWrite) at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at DotNetNuke.Data.SqlDataProvider.ExecuteScriptInternal(String connectionString, String script, Int32 timeoutSec) ClientConnectionId:9d935661-fa0d-4eac-9054-6f31f47ca0c7 Error Number:1913,State:1,Class:16 CREATE NONCLUSTERED INDEX IX_Surveys_ModuleID_ViewOrder ON dbo.Surveys (ModuleID, ViewOrder) System.Data.SqlClient.SqlException (0x80131904): There is already an object named 'FK_Surveys_Modules' in the database. Could not create constraint. See previous errors. at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout, Boolean asyncWrite) at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at DotNetNuke.Data.SqlDataProvider.ExecuteScriptInternal(String connectionString, String script, Int32 timeoutSec) ClientConnectionId:9d935661-fa0d-4eac-9054-6f31f47ca0c7 Error Number:2714,State:5,Class:16 ALTER TABLE dbo.Surveys WITH CHECK ADD CONSTRAINT FK_Surveys_Modules FOREIGN KEY (ModuleID) REFERENCES dbo.Modules (ModuleID) ON DELETE CASCADE System.Data.SqlClient.SqlException (0x80131904): Column already has a DEFAULT bound to it. Could not create constraint. See previous errors. at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout, Boolean asyncWrite) at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at DotNetNuke.Data.SqlDataProvider.ExecuteScriptInternal(String connectionString, String script, Int32 timeoutSec) ClientConnectionId:9d935661-fa0d-4eac-9054-6f31f47ca0c7 Error Number:1781,State:1,Class:16 ALTER TABLE dbo.Surveys ADD CONSTRAINT DF_Surveys_CreatedDate DEFAULT GETDATE() FOR CreatedDate System.Data.SqlClient.SqlException (0x80131904): Column already has a DEFAULT bound to it. Could not create constraint. See previous errors. at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout, Boolean asyncWrite) at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at DotNetNuke.Data.SqlDataProvider.ExecuteScriptInternal(String connectionString, String script, Int32 timeoutSec) ClientConnectionId:9d935661-fa0d-4eac-9054-6f31f47ca0c7 Error Number:1781,State:1,Class:16 ALTER TABLE dbo.Surveys ADD CONSTRAINT DF_Surveys_RepeatDirection DEFAULT 0 FOR RepeatDirection System.Data.SqlClient.SqlException (0x80131904): The ALTER TABLE statement conflicted with the FOREIGN KEY constraint "FK_SurveyResults_SurveyOptions". The conflict occurred in database "DOTNETNUKE", table "dbo.SurveyOptions", column 'SurveyOptionID'. at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout, Boolean asyncWrite) at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at DotNetNuke.Data.SqlDataProvider.ExecuteScriptInternal(String connectionString, String script, Int32 timeoutSec) ClientConnectionId:9d935661-fa0d-4eac-9054-6f31f47ca0c7 Error Number:547,State:0,Class:16 ALTER TABLE dbo.SurveyResults WITH CHECK ADD CONSTRAINT FK_SurveyResults_SurveyOptions FOREIGN KEY (SurveyOptionID) REFERENCES dbo.SurveyOptions (SurveyOptionID) ON DELETE CASCADE System.Data.SqlClient.SqlException (0x80131904): The ALTER TABLE statement conflicted with the FOREIGN KEY constraint "FK_SurveyResults_Users". The conflict occurred in database "DOTNETNUKE", table "dbo.Users", column 'UserID'. at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout, Boolean asyncWrite) at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at DotNetNuke.Data.SqlDataProvider.ExecuteScriptInternal(String connectionString, String script, Int32 timeoutSec) ClientConnectionId:9d935661-fa0d-4eac-9054-6f31f47ca0c7 Error Number:547,State:0,Class:16 ALTER TABLE dbo.SurveyResults WITH CHECK ADD CONSTRAINT FK_SurveyResults_Users FOREIGN KEY (UserID) REFERENCES dbo.Users (UserID) ON DELETE SET NULL System.Data.SqlClient.SqlException (0x80131904): There is already an object named 'Surveys_CsvExport' in the database. at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout, Boolean asyncWrite) at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at DotNetNuke.Data.SqlDataProvider.ExecuteScriptInternal(String connectionString, String script, Int32 timeoutSec) ClientConnectionId:9d935661-fa0d-4eac-9054-6f31f47ca0c7 Error Number:2714,State:3,Class:16 /* This creates a big dataset including most of the columns from all Survey tables (the ones that are needed to create customized reports) It uses the VIEW from below to filter by ModuleID. */ CREATE PROCEDURE dbo.Surveys_CsvExport @ModuleId int AS BEGIN SELECT SurveyID, Question, OptionType, IsStatistical, OptionName, Votes, IsCorrect, UserID, IPAddress, TextAnswer, ResultUserID, CreatedDate FROM vSurveys_CsvExport WHERE ModuleID = @ModuleID ORDER BY SurveyViewOrder, SurveyOptionViewOrder END
Info Einde Sql uitvoer: 09.00.00.SqlDataProvider gereed Info Sql uitvoer gereed Failure Installatie mislukt - Script Info Component installatie wordt ongedaan gemaakt - Config Info Aanpassingen in configuratie bestand succesvol ongedaan gemaakt - web.config Info Component installatie succesvol ongedaan gemaakt - Config Info Component installatie wordt ongedaan gemaakt - Cleanup Info Backup van vorige versie teruggezet - DesktopModules\Survey\EditSurvey.ascx Info Component installatie succesvol ongedaan gemaakt - Cleanup Info Installatie mislukt - DNN_Survey Info Tijdelijke installatie map verwijderd EndJob Installatie mislukt
which DNN version are you running?
Did you have survey module installed before, and if, which version?
Hmmm... I don't see it reported by anyone else yet either. :(
Thanks Michael - I will try that ( on a test site first)
These Forums are dedicated to the discussion of DNN Platform.
For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:
Awesome! Simply post in the forums using the link below and we'll get you started.