I disabled it and ran POSTMAN and got this error in the Epicor logs (which makes sense): "There is no BPM customization attached to Update method of ‘U-POReceipt’ "
That’s the only BPM.
I disabled it and ran POSTMAN and got this error in the Epicor logs (which makes sense): "There is no BPM customization attached to Update method of ‘U-POReceipt’ "
That’s the only BPM.
Ok and re-enabling gets the same BPM Exception as before still?
Yup.
Success!
I recycled the App Pool.
… so dumb.
Then how in the … sigh… this doesn’t make any sense…
lets try the @hkeric.wci sugestion.
Comment out (back up_ all your code and replace it with this one
callContextBpmData.Character03 = "";
Ice.Diagnostics.Log.WriteEntry("1"); //etc
foreach(var tt in ttResults.Where(r=>r.Updated()))
{
Ice.Diagnostics.Log.WriteEntry("2"); //etc
int pNum = (int)tt.POHeader_PONum;
int pLine = (int)tt.PODetail_POLine;
decimal qty = (decimal)tt.Calculated_Quantity;
int qtyPer = (int)tt.Calculated_QtyPer;
string warehouse = (string)tt.Calculated_Warehouse;
string bin = (string)tt.Calculated_Bin;
string comments = (string)tt.Calculated_CalcComment;
msg="Got Values";
try
{
Ice.Diagnostics.Log.WriteEntry("3"); //etc
using(var rcvBO = Ice.Assemblies.ServiceRenderer.GetService<Erp.Contracts.ReceiptSvcContract>(Db))
{
Ice.Diagnostics.Log.WriteEntry("4"); //etc
msg="Instanciated BO";
ReceiptTableset rcvTS = new ReceiptTableset();
Ice.Diagnostics.Log.WriteEntry("5"); //etc
//ExistsRecvHead Method
int vendorNum = (int)tt.POHeader_VendorNum;
string purPoint = (string)tt.POHeader_PurPoint;
string packSlip = (string)tt.Calculated_PackSlip;
string warning = "";
msg="Before Exists";
Ice.Diagnostics.Log.WriteEntry("6"); //etc
rcvBO.ExistsRcvHead(vendorNum,
purPoint,
packSlip,
out warning);
Ice.Diagnostics.Log.WriteEntry("7"); //etc
if( !warning.Equals(string.Format("The Packing Slip {0} already exists. Do you want to continue?",packSlip)) )
{
//GetNewRcvHead Method
vendorNum = 0;
purPoint = "";
rcvBO.GetNewRcvHead(ref rcvTS,
vendorNum,
purPoint);
Ice.Diagnostics.Log.WriteEntry("8"); //etc
//GetPOInfo Method
bool fromReceiptEntryNewRcpt = true;
rcvBO.GetPOInfo(ref rcvTS,
pNum,
fromReceiptEntryNewRcpt,
out vendorNum,
out purPoint);
//GetWarningPOClosed Method
string cWarning = "";
Ice.Diagnostics.Log.WriteEntry("9"); //etc
rcvBO.GetWarningPOClosed(pNum,
out cWarning);
if( cWarning != "" )
;//Do Code
//HHCanEditPackSLip
Ice.Diagnostics.Log.WriteEntry("10"); //etc
//Update Method
rcvTS.RcvHead[0].ReceiptDate = DateTime.Today;
rcvTS.RcvHead[0].PackSlip = packSlip;
rcvTS.RcvHead[0].ReceivePerson = Session.UserID;
rcvTS.RcvHead[0].RowMod = "A";
rcvBO.Update(ref rcvTS);
}
Ice.Diagnostics.Log.WriteEntry("11"); //etc
//GetNewRcvDtl Method
rcvBO.GetNewRcvDtl(ref rcvTS,
vendorNum,
purPoint,
packSlip);
//GetDtlPOLineInfo Method
int packLine = 0;
string serialWarning = "";
Ice.Diagnostics.Log.WriteEntry("12"); //etc
rcvBO.GetDtlPOLineInfo(ref rcvTS,
vendorNum,
purPoint,
packSlip,
packLine,
pLine,
out serialWarning);
//GetDtlQtyInfo Method
decimal inputOurQty = qty;
string inputIUM = (string)tt.Calculated_UOM;
string whichField = "QTY";
string warnMsg = "";
Ice.Diagnostics.Log.WriteEntry("13"); //etc
rcvBO.GetDtlQtyInfo(ref rcvTS,
vendorNum,
purPoint,
packSlip,
packLine,
inputOurQty,
inputIUM,
whichField,
out warnMsg);
if( warnMsg != "" )
;//Do Code
Ice.Diagnostics.Log.WriteEntry("14"); //etc
//CheckDtlBeforeUpdate Method
string qMessageStr = "";
string sMessageStr = "";
string lcMessageStr = "";
string pcMessageStr = "";
rcvBO.CheckDtlBeforeUpdate(rcvTS,
vendorNum,
purPoint,
packLine,
packSlip,
out qMessageStr,
out sMessageStr,
out lcMessageStr,
out pcMessageStr);
//PreUpdate Method
bool RequiresUserInput = false;
rcvBO.PreUpdate(ref rcvTS,
out RequiresUserInput);
Ice.Diagnostics.Log.WriteEntry("15"); //etc
//Update Method
rcvTS.RcvDtl[rcvTS.RcvDtl.Count - 1].Received = true;
rcvTS.RcvDtl[rcvTS.RcvDtl.Count - 1].ReceiptDate = DateTime.Today;
rcvTS.RcvDtl[rcvTS.RcvDtl.Count - 1].POComment = comments;
rcvTS.RcvDtl[rcvTS.RcvDtl.Count - 1].BinNum = bin;
rcvTS.RcvDtl[rcvTS.RcvDtl.Count - 1].WareHouseCode = warehouse;
rcvTS.RcvDtl[rcvTS.RcvDtl.Count - 1]["QtyPer_c"] = qtyPer;
rcvTS.RcvDtl[rcvTS.RcvDtl.Count - 1].RowMod = "A";
rcvBO.Update(ref rcvTS);
Ice.Diagnostics.Log.WriteEntry("16"); //etc
}
}
catch(Exception e){callContextBpmData.Character03 = e.ToString();
Ice.Diagnostics.Log.WriteEntry("17"); //etc
}
}
Then go see how far (what number) is the last one you get to. In the EventViewer on the server.
Well this was uneventful
#Disappointed
I’ll try and whip up something more interesting next time.
Well it was interesting at first and then you went and ruined it by fixing it with a typical IT Reboot… #NotCool
I cant fathom what a Recycle would have to do with it. Odd.
Well the UBAQ generates a DLL maybe it got loaded funny / corrupted and recycle caused it to regen / reload.
That’s what I attempted todo by asking him to enable / disable.
But @hmwillett did it wrong
It’s possible!