Troubleshooting: Page Remains in Draft Mode

Platform    

    Evoq Content      Evoq Engage

Issue

While editing the page, it remains in draft mode, prompting an error related to a conflict in changes made by two users.

error_publishing.jpg

Root Causes:

  • Another user may have made a change that conflicts with your changes.
  • A previous transaction against the same object may have not been finished in a proper way.

Solution

A page follows a workflow where there are certain states such as "Draft" or "Published" to control in which stage of the workflow the page is. If any process fails to update the state, the page may get stuck in a determined mode. So, it is necessary to manually push the page into a published state, following the steps below:

  1. Back up the site and the database before making any changes to the DNN installation.
  2. Log in to the site as a host/superuser.
  3. Publish the page through SQL, following these steps:
    1. Go to Persona Bar > Settings > SQL Console.
    2. Run the following SQL script to identify in which state the page is currently in:
      -- Identify the TabID for the page by looking for it in the tabs table
      SELECT * FROM tabs WHERE TabName = 'PageName'

      -- Then run the below query once you have the TabID identified above
      SELECT StateID FROM ContentItems
      WHERE ContentType = 1 AND TabID = <TabID>
    3. The state of the page is probably 2. Let's find out what the StateID means in the context of the workflow:
      SELECT * FROM ContentWorkflowStates WHERE StateID = <StateID>
    4. Being the result of this query equal to a "Draft" state, the "Published state" in the workflow would be 3 (as the next one). Let's then move the page to the following state, with the query below:
      -- Use the TabID column identified previously
      UPDATE ContentItems SET StateID = 3
      WHERE ContentType = 1 AND TabID = <TabID>
    5. Next step is to find out the latest page version that has been published.
      SELECT * FROM TabVersions WHERE Tabid= <TabID>
    6. The latest Tab Version will likely have the IsPublished column set to False (0). In this case, set that to True (1), using this query:
      -- Replace the parameter <TabVersionID> with the column identified in the previous query

      UPDATE TabVersions Set IsPublished = 1
      WHERE TabVersionID = <TabVersionID>
  4. Clear the server cache.

Comments

0 comments

Please sign in to leave a comment.