All, I found an old thread speaking about this issue, but has it been resolved in 10.2.200? I’m trying to update the PlantWhse table within the EngWorkBench.CheckIn method and getting the “The partner transaction manager has disabled its support for remote/network transactions” error. My source code in the BPM is below:
Erp.Tables.ECORev ECORev;
Erp.Tables.ECOOpr ECOOpr;
Erp.Tables.PlantWhse PlantWhse;
string DebugMsg = string.Empty;
string PrimBin = string.Empty;
DebugMsg = "In Checkin BPM..";
this.PublishInfoMessage(DebugMsg, Ice.Common.BusinessObjectMessageType.Information, Ice.Bpm.InfoMessageDisplayMode.Individual, "", "");
foreach (var ECORev_iterator in (from ECORev_Row in Db.ECORev
where ECORev_Row.Company == Session.CompanyID
&& ECORev_Row.GroupID == ipGroupID
&& ECORev_Row.PartNum == ipPartNum
select ECORev_Row))
{
ECORev = ECORev_iterator;
DebugMsg = $@"Part: {ECORev.PartNum} Rev: {ECORev.RevisionNum} CheckedOut: {ECORev.CheckedOut} Final Op: {ECORev.FinalOpr} Auto Rec: {ECORev.AutoRecOpr}";
this.PublishInfoMessage(DebugMsg, Ice.Common.BusinessObjectMessageType.Information, Ice.Bpm.InfoMessageDisplayMode.Individual, "", "");
if (ECORev.FinalOpr != 0 &&
ECORev.FinalOpr == ECORev.AutoRecOpr)
{
ECOOpr = (from ECOOpr_Row in Db.ECOOpr
where string.Compare(ECOOpr_Row.Company, ECORev.Company, true) == 0
&& string.Compare(ECOOpr_Row.GroupID, ECORev.GroupID, true) == 0
&& string.Compare(ECOOpr_Row.PartNum, ECORev.PartNum, true) == 0
&& string.Compare(ECOOpr_Row.RevisionNum, ECORev.RevisionNum, true) == 0
&& string.Compare(ECOOpr_Row.AltMethod, ECORev.AltMethod, true) == 0
&& ECOOpr_Row.OprSeq == ECORev.FinalOpr
select ECOOpr_Row).FirstOrDefault();
DebugMsg = $@"Part: {ECOOpr.PartNum} Op Code: {ECOOpr.OpCode} Op Desc: {ECOOpr.OpDesc}";
this.PublishInfoMessage(DebugMsg, Ice.Common.BusinessObjectMessageType.Information, Ice.Bpm.InfoMessageDisplayMode.Individual, "", "");
PrimBin = "";
if (ECOOpr != null)
{
if (ECOOpr.OpDesc.StartsWith("P100", StringComparison.OrdinalIgnoreCase))
{
PrimBin = "PAINT";
}
else if (ECOOpr.OpDesc.StartsWith("TK1", StringComparison.OrdinalIgnoreCase) ||
ECOOpr.OpDesc.StartsWith("TK2", StringComparison.OrdinalIgnoreCase) ||
ECOOpr.OpDesc.StartsWith("TK3", StringComparison.OrdinalIgnoreCase) ||
ECOOpr.OpDesc.StartsWith("TK7", StringComparison.OrdinalIgnoreCase))
{
PrimBin = "FAB";
}
else if (ECOOpr.OpDesc.StartsWith("TK4", StringComparison.OrdinalIgnoreCase))
{
PrimBin = "TRACK4";
}
else if (string.Compare(ECOOpr.OpCode, "ASEM5", true) == 0)
{
PrimBin = "SMT";
}
DebugMsg = $@"Prim Bin: {PrimBin}";
this.PublishInfoMessage(DebugMsg, Ice.Common.BusinessObjectMessageType.Information, Ice.Bpm.InfoMessageDisplayMode.Individual, "", "");
if (!String.IsNullOrEmpty(PrimBin))
{
using (System.Transactions.TransactionScope txScope = IceDataContext.CreateDefaultTransactionScope())//start the transaction
{
PlantWhse = (from PlantWhse_Row in Db.PlantWhse.With(LockHint.UpdLock)
where PlantWhse_Row.Company == Session.CompanyID
&& string.Compare(PlantWhse_Row.PartNum, ECORev.PartNum, true) == 0
select PlantWhse_Row).FirstOrDefault();
if (PlantWhse != null &&
string.Compare(PlantWhse.PrimBin, PrimBin, true) != 0 &&
!PlantWhse.PrimBin.StartsWith("FAB-TK", StringComparison.OrdinalIgnoreCase) &&
string.Compare(PlantWhse.PrimBin, "GAZINTA", true) != 0)
{
PlantWhse.PrimBin = PrimBin;
Db.Validate();//commit the transaction
} /* if (PlantWhse != null */
txScope.Complete();
} /* txScope */
} /* if (!String.IsNullOrEmpty(PrimBin)) */
} /* if (ECOOpr != null) */
} /* if (ECORev.FinalOpr != 0 */
} /* foreach */