﻿<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>StrataFrame Forum » StrataFrame Application Framework - V1 » Business Objects and Data Access (How do I?)  » Exception in TransactionBegin is multi user web environment</title><generator>InstantForum 2017-1 Final</generator><description>StrataFrame Forum</description><link>http://forum.strataframe.net/</link><webMaster>StrataFrame Forum</webMaster><lastBuildDate>Wed, 08 Apr 2026 02:48:19 GMT</lastBuildDate><ttl>20</ttl><item><title>Exception in TransactionBegin is multi user web environment</title><link>http://forum.strataframe.net/FindPost22512.aspx</link><description>HI,&lt;br&gt;
I hit the error as attached when I have 2 users perform same action at the same time. Any ideas?&lt;br&gt;
Beside, may I know any special thing I need to take care of in web environment?&lt;br&gt;
&lt;br&gt;
Please advice. Urgent!&lt;br&gt;
&lt;br&gt;
[codesnippet]&lt;br&gt;
public class LeavePersonalApplication : LeavePersonalApplicationBasePage&lt;br&gt;
{&lt;br&gt;
        protected ResultSet Submit(ActionType actionType)&lt;br&gt;
        {&lt;br&gt;
            ResultSet result = new ResultSet();&lt;br&gt;
&lt;br&gt;
            this.LVELeaves.SubmitterAction = actionType;&lt;br&gt;
            this.LVELeaves.OwnerAction = actionType;&lt;br&gt;
&lt;br&gt;
            DocHelper docHelper = new DocHelper((IEmployeesBO)this.Owner,&lt;br&gt;
                (IEmployeesBO)this.Submitters,&lt;br&gt;
                (IDocumentsBO)this.LeaveAppUserControl.LVELeaves, Guid.NewGuid().ToString());&lt;br&gt;
            &lt;br&gt;
            result = docHelper.Submit();&lt;br&gt;
&lt;br&gt;
            return result;&lt;br&gt;
        }&lt;br&gt;
}&lt;br&gt;
&lt;br&gt;
public class DocHelper&lt;br&gt;
{&lt;br&gt;
public DocHelper(VfsEmpInterface.IEmployeesBO documentOwner,&lt;br&gt;
                         VfsEmpInterface.IEmployeesBO documentSubmitter,&lt;br&gt;
                         VfsGenInterface.IDocumentsBO document)&lt;br&gt;
        {&lt;br&gt;
            if (documentOwner != null)&lt;br&gt;
                this.DocumentOwner = documentOwner;&lt;br&gt;
            else&lt;br&gt;
                throw new NullReferenceException("DocHelper: Document's Owner has Null Reference during Initialization.");&lt;br&gt;
&lt;br&gt;
            if (documentSubmitter != null)&lt;br&gt;
                this.DocumentSubmitter = documentSubmitter;&lt;br&gt;
            else&lt;br&gt;
                throw new NullReferenceException("DocHelper: Document's Submitter has Null Reference during Initialization.");&lt;br&gt;
&lt;br&gt;
            if (document != null)&lt;br&gt;
                this.Document = document;&lt;br&gt;
            else&lt;br&gt;
                throw new NullReferenceException("DocHelper: Document has Null Reference during Initialization.");&lt;br&gt;
&lt;br&gt;
            this.TransactionKey = new Guid().ToString(); &lt;br&gt;
&lt;br&gt;
            this.&amp;#100;ocument.SysDocId = SysDocBO.SysDocId;&lt;br&gt;
        }&lt;br&gt;
&lt;br&gt;
        public DocHelper(VfsEmpInterface.IEmployeesBO documentOwner,&lt;br&gt;
                        VfsEmpInterface.IEmployeesBO documentSubmitter,&lt;br&gt;
                        VfsGenInterface.IDocumentsBO document, &lt;br&gt;
                        string transactionKey): this(documentOwner, documentSubmitter, document)&lt;br&gt;
        {            &lt;br&gt;
            this.TransactionKey = transactionKey; &lt;br&gt;
        }&lt;br&gt;
&lt;br&gt;
        public VfsGenBO.ResultSet Submit()&lt;br&gt;
        {&lt;br&gt;
            VfsGenBO.ResultSet result = new VfsGenBO.ResultSet();&lt;br&gt;
            VfsWfBO.TasksBO task = new VfsWfBO.TasksBO();&lt;br&gt;
&lt;br&gt;
            BusinessLayerExtension.TransactionBegin(VfsWfHelper.WfHelper.WORKFLOW_DSKEY, this.TransactionKey, IsolationLevel.ReadCommitted);&lt;br&gt;
            BusinessLayerExtension.TransactionBegin(ESSLVE_DSKEY, this.TransactionKey, IsolationLevel.ReadCommitted);&lt;br&gt;
            BusinessLayerExtension.TransactionBegin(HRMSLVE_DSKEY, this.TransactionKey, IsolationLevel.ReadCommitted);&lt;br&gt;
&lt;br&gt;
            // Save data here&lt;br&gt;
        }&lt;br&gt;
}&lt;br&gt;
[/codesnippet]</description><pubDate>Mon, 30 Mar 2009 08:11:53 GMT</pubDate><dc:creator>ChanKK</dc:creator></item><item><title>RE: Exception in TransactionBegin is multi user web environment</title><link>http://forum.strataframe.net/FindPost22520.aspx</link><description>Well, without having my hands on this code it is going to be next to impossible for me to debug and give a straight answer.&amp;nbsp; But one thing that I might suggest trying is one of the following:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Give a unique name to the transaction name.&amp;nbsp; For example, use a System.Guild.NewGuid.ToString() or something to ensure a unique transaction name.&lt;/LI&gt;&lt;LI&gt;If that doesn't work, then turn off transactions to make sure that this is your point of failure.&lt;/LI&gt;&lt;/OL&gt;</description><pubDate>Mon, 30 Mar 2009 08:11:53 GMT</pubDate><dc:creator>Trent L. Taylor</dc:creator></item></channel></rss>