Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at

  • Kim Løwert 130 posts 116 karma points
    May 13, 2012 @ 00:08
    Kim Løwert

    Contour workflows not working

    Hi Guys

    I have installed Contour on an umbraco v4.5.2 running on a MySQL database. Unfortunately no workflow seem to work. First I thought it was something with the mail-settings not working as the send mail workflow didn't send any mails, but after having run a mail-sending test I concluded that that was not the issue. After having tried an additional workflow on the same form - a save document workflow - I have concluded that something must be wrong with the workflows, as no document was stored at the default location (/data/records).

    I have tried similar workflows on similar setups (umbraco v4.5.2 and Contour V1.1.12) where the workflows work fine. The only difference is that the site where it doesn't work is running on a MySQL database. Do anybody know if there are known issues with Contour on MySQL? Or do you have any suggestions as to where I might start looking? There do not seem to be any errors reported in the umbracoLog table.

    Thanks a lot in advance. I would really love to get this mistory solved.




  • Tim 1193 posts 2675 karma points MVP 3x c-trib
    May 16, 2012 @ 12:23


    Have you tried looking in the server event logs to see if there's anything in there that gives a clue as to why it's not working? The error log table only logs very specific stuff and not in much detail, the server logs will have more useful error information in!

  • Comment author was deleted

    May 16, 2012 @ 14:30

    Workflow execution isn't related to the db engine so it shouldn't mather that it's on mysql, if workflow execution fails it should log something in the umbraco log 

    You can try creating a test workflow type that logs at different steps ... to see if they get executed

  • Kim Løwert 130 posts 116 karma points
    May 24, 2012 @ 22:35
    Kim Løwert

    HI Tim and Tim

    Thank you very much for your replies. Unfortunately I don't have access to the server logs as it is running on shared hosting. I will try though to hear the hosting provider if they can help with log access to the general log. In the umbraco log in the database I have not been able to find any records that indicate any errors on sending or executing Contour workflows.

    @Tim G - I'll try you idea with a custom workflow that logs at different steps. If it doesn't log anything either, then do you have any idea where else I could look?

    Once again thanks a lot in advance :)


  • Corey Sherman 55 posts 127 karma points
    Jan 21, 2013 @ 16:07
    Corey Sherman


    Did you get anywhere with this issue?  I am experiencing the same issue as you in that the custom workflows I am creating for a particular site aren't working.  I even did like you suggested and put my own logging in the workflow and nothing is logging, leading me to believe that the workflow isn't executing at all. I'm not seein any errors anywhere, which has me at a loss as to what could be going on.  Any insight you might be able to share on this situation would be greatly appreciated!


  • Comment author was deleted

    Jan 21, 2013 @ 16:29

    @Corey did you try any of the default workflows, do those execute?

  • Corey Sherman 55 posts 127 karma points
    Jan 21, 2013 @ 16:34
    Corey Sherman

    Tim - Yes.  I just tried the "Send email" workflow again just now and it works fine.

  • Comment author was deleted

    Jan 21, 2013 @ 16:45

    Ok, mind posting the code for your custom one? 

  • Corey Sherman 55 posts 127 karma points
    Jan 21, 2013 @ 17:06
    Corey Sherman

    I stripped everything in this workflow down to just doing the logging, and none of the log entries record anything at all.  It's worth mentioning that I have another custom workflow in this project, that works beautifully, logs and all.  I have a feeling I'm missing something really obvious...

    using System;
    using System.Collections.Generic;
    using System.Net.Mail;
    using System.Xml;
    using Umbraco.Forms.Core;
    using Umbraco.Forms.Core.Enums;
    using Umbraco.Forms.Data.Storage;
    using log4net;
    using umbraco;
    using umbraco.BusinessLogic;
    using umbraco.cms.businesslogic.member;

    namespace CollegeSubmission.code.contour
    public class CounselorRecommendation : WorkflowType
    private static readonly ILog logger = LogManager.GetLogger(typeof(CounselorRecommendation));

    public CounselorRecommendation()
    Id = new Guid("8235239f-a6f8-6fce-3c38-bd274a074b4d");
    Name = "Send Counselor Recommendation";
    Description = "Sends a formatted counselor email recommendation.";

    public override WorkflowExecutionStatus Execute(Record record, RecordEventArgs e)
    Log.Add(LogTypes.Debug, -1, "the IP " + record.IP + " has submitted a record");
    logger.DebugFormat("EMAIL DEBUGGER: counselor recommendation submitted by {0}", record.IP);
    logger.DebugFormat("EMAIL DEBUGGER: number of recordFields = {0}", record.RecordFields.Values.Count);

    return WorkflowExecutionStatus.Completed;

    public override List<Exception> ValidateSettings()
    var l = new List<Exception>();

    return l;
  • Comment author was deleted

    Jan 21, 2013 @ 17:43

    Did you change to Guid ? Maybe you have 2 custom ones with the same id

  • Comment author was deleted

    Jan 21, 2013 @ 17:45

    Will give the code a try and see if it works here :) 

  • Comment author was deleted

    Jan 21, 2013 @ 17:51

    Just tested and the code works ... 

    So my guess is maybe you have duplicate ids...

  • Corey Sherman 55 posts 127 karma points
    Jan 21, 2013 @ 18:28
    Corey Sherman

    I tried changing the Guid and it's still not working... 

    One thing I noticed about the form in question is that, while the stock workflows seem to work, there are other things on this form that seem broken, like loading member properties as default values.  I'm going to delete the form (it's only three fields) and try again and will report back.

  • Comment author was deleted

    Jan 21, 2013 @ 18:34

    Ok thanks, maybe also try adding it to a different form to see if that works :)

  • Corey Sherman 55 posts 127 karma points
    Jan 21, 2013 @ 18:39
    Corey Sherman

    It looks like I made things worse, now I'm getting an error submitting this form, regardless of which workflow I use:

    [SqlException]: The INSERT statement conflicted with the FOREIGN KEY constraint "FK_UFRecords_UFForms". The conflict occurred in database "collegesubmission_umbraco", table "collegesubmission_umbraco.UFForms", column 'Id'.
    The statement has been terminated.
       at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
       at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
       at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()
       at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
       at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
       at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)
       at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)
       at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
       at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
       at Microsoft.ApplicationBlocks.Data.SqlHelper.ExecuteNonQuery(SqlConnection connection, CommandType commandType, String commandText, SqlParameter[] commandParameters)
       at Microsoft.ApplicationBlocks.Data.SqlHelper.ExecuteNonQuery(String connectionString, CommandType commandType, String commandText, SqlParameter[] commandParameters)
       at umbraco.DataLayer.SqlHelpers.SqlServer.SqlServerHelper.ExecuteNonQuery(String commandText, SqlParameter[] parameters)
       at umbraco.DataLayer.SqlHelper`1.ExecuteNonQuery(String commandText, IParameter[] parameters)
    [SqlHelperException]: Umbraco Exception (DataLayer): SQL helper exception in ExecuteNonQuery
       at umbraco.DataLayer.SqlHelper`1.ExecuteNonQuery(String commandText, IParameter[] parameters)
       at Umbraco.Forms.Data.Storage.RecordStorage.InsertRecord(Record record, Form form)
       at Umbraco.Forms.Core.Services.RecordService.()
       at Umbraco.Forms.Core.Services.RecordService.Submit()
       at Umbraco.Forms.Core.Services.RecordService.NextPage()
       at Umbraco.Forms.UI.Usercontrols.RenderForm.nextPage(Object sender, EventArgs e)
       at System.Web.UI.WebControls.Button.OnClick(EventArgs e)
       at System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument)
       at System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument)
       at System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
       at System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
       at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
    [HttpUnhandledException]: Exception of type 'System.Web.HttpUnhandledException' was thrown.
       at System.Web.UI.Page.HandleError(Exception e)
       at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
       at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
       at System.Web.UI.Page.ProcessRequest()
       at System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context)
       at System.Web.UI.Page.ProcessRequest(HttpContext context)
       at ASP.default_aspx.ProcessRequest(HttpContext context)
       at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
       at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
  • Comment author was deleted

    Jan 21, 2013 @ 19:10

    Oh oh looks like you are trying to submit a form that doesn't exist , could it be that the form render was open, you then deleted the form and tried to submit 

Please Sign in or register to post replies

Write your reply to: