• Login
  • Register

DNN Forums

A community discussion page. We're starting from scratch, so...let's get the party started!

DNN.Survey 09.00.01 released

You are not authorized to post a reply.
Sort:


Basic Member


Posts:53
Basic Member

    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 Tobisch
    DNN★MVP



    New Member


    Posts:2
    New Member

      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

       



      New Member


      Posts:18
      New Member

        which DNN version are you running?

        Did you have survey module installed before, and if, which version?



        Advanced Member


        Posts:181
        Advanced Member

          Hmmm... I don't see it reported by anyone else yet either.  :(

          Will Strohl

          Upendo Ventures Upendo Ventures
          DNN experts since 2003
          Official provider of the Hotcakes Commerce Cloud and SLA support


          Basic Member


          Posts:53
          Basic Member

            I have just tried to run all the SQL scripts, and upgrade from other (lower) versions - I could not reproduce this. As the module version 09.00.00 has been released two months ago (and 09.00.01 is just a bugfix with no changes in the database and the installation scripts), I wonder that no one has reported that so far, and be assured that we tested quite any upgrade scenario with this (in fact, I never tested so much upgrade scenarios ever before), and never run into this issue,

            Have you had another Survey module installed, that by any chance has a "Survey" table? Maybe that is the reason for the conflict, and in this case, your other module will propably not work anymore as well.

            Please try to uninstall and re-install the module, let's see what happens...

            Happy DNNing!
            Michael

            Michael Tobisch
            DNN★MVP

            You are not authorized to post a reply.

            These Forums are dedicated to discussion of DNN Platform.

            For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

            1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DNN.
            2. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
            3. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
            4. No Flaming or Trolling.
            5. No Profanity, Racism, or Prejudice.
            6. Site Moderators have the final word on approving / removing a thread or post or comment.
            7. English language posting only, please.

            Would you like to help us?

            Awesome! Simply post in the forums using the link below and we'll get you started.

            Get Involved