Error EntityException

i do a post processing for my create Order Post and when i try to create my quote i got this message error for this code. Someone know what it is?

foreach (var Dtl in Db.QuoteDtl)
{
var Company = Dtl.Company;
var QuoteNum = Dtl.QuoteNum;
var QuoteLine = Dtl.QuoteLine;

var reference = Db.OrderDtl.Where(p => p.Company == Session.CompanyID && p.QuoteNum == QuoteNum && p.QuoteLine == QuoteLine).Select(x=> x.Reference).FirstOrDefault();

if (reference != null)
{
    reference = Dtl.Number09.ToString("0,000");

var quoteNum = Db.OrderDtl.Where(o => o.Company == Session.CompanyID && o.OrderNum == orderNum).Select(x => x.QuoteNum).FirstOrDefault();
if(quoteNum != null)
{

var quote = Db.QuoteHed.Where(q => q.Company == Session.CompanyID && q.QuoteNum == quoteNum).Select(x => new {x.UserChar1,}).FirstOrDefault();

if(quote != null)
{
//UD fields to copy to SO from Quote BldgType
using(var txScope = IceContext.CreateDefaultTransactionScope())
{
var order = Db.OrderHed.Where(o => o.Company == Session.CompanyID && o.OrderNum == orderNum).FirstOrDefault();

  order.UserChar1 = quote.UserChar1; 
  Db.Validate();
  txScope.Complete();     
}

}
}
}
}

System Information

==================

AppServer Connection: http://KINETICAPP.ezeflow.local/KineticTest
Form Name: Opportunity/Quote Entry v1.5
Customization Name: Ezeflow_ECS_1.6
Menu ID: EQMT2010
Software Version: 11.1.200.0

============

Server Side Exception

BPM runtime caught an unexpected exception of ‘EntityException’ type.
See more info in the Inner Exception section of Exception Details.

Exception caught in: Epicor.ServiceModel

Error Detail

============

##!Correlation ID:##! a80cf0c1-cd78-466c-9524-a4ae4467408d
##!Description:##! BPM runtime caught an unexpected exception of ‘EntityException’ type.
See more info in the Inner Exception section of Exception Details.
##!Inner Exception:##! The partner transaction manager has disabled its support for remote/network transactions. (Exception from HRESULT: 0x8004D025)
The partner transaction manager has disabled its support for remote/network transactions. (Exception from HRESULT: 0x8004D025)
##!Program:##! EntityFramework.dll
##!Method:##! EnlistTransaction
##!Original Exception Type:##! EntityException
##!Framework Method:##! A001_CustomCodeAction
##!Framework Line Number:##! 0
##!Framework Column Number:##! 0
##!Framework Source:##! A001_CustomCodeAction at offset 3662 in file:line:column :0:0

Client Stack Trace

==================
at Epicor.ServiceModel.Channels.ImplBase`1.ShouldRethrowNonRetryableException(Exception ex, DataSet[] dataSets)
at Erp.Proxy.BO.QuoteImpl.CreateOrder(QuoteDataSet ds, Int32& orderNum, String& warningMessage)
at Erp.Adapters.QuoteAdapter.CreateOrder(Int32& orderNum, String& warningMessage)

Inner Exception

===============
The underlying provider failed on EnlistTransaction.

Inner Exception

===============
The partner transaction manager has disabled its support for remote/network transactions. (Exception from HRESULT: 0x8004D025)

Inner Exception

===============
The partner transaction manager has disabled its support for remote/network transactions. (Exception from HRESULT: 0x8004D025)

Is that the entire code?
Why are you going through all records in the QuoteDtl table?
Where are you defining orderNum?
Before updating a record inside a transaction you should use the UpdLock hint to lock the record.
Can you try a simple BPM that only creates a TransactionScope, make a small change and complete it? To rule out if something else in the code is causing the error.