public ICReceive ICConfirm(ICReceive iCReceive) { string msg = "Success"; ICReceive ICReturn = iCReceive; try { ReceiptServices receipt = new ReceiptServices(); ICReceiveReceipt recDM = new ICReceiveReceipt(); List <ICReceiveDtlReceipt> recDMDtl = new List <ICReceiveDtlReceipt>(); recDM.Company = iCReceive.Company; ICReceiveDtlReceipt dtl = new ICReceiveDtlReceipt(); foreach (ICReceiveDtl det in iCReceive.Detail) { dtl = new ICReceiveDtlReceipt(); dtl.LineNo = det.LineNo; dtl.LotNum = det.LotNum; dtl.PartNum = det.PartNum; dtl.Qty = det.Qty; dtl.SUOM = det.SUOM; recDMDtl.Add(dtl); } recDM.Detail = recDMDtl; recDM.DONum = iCReceive.DONum; recDM.intQue = iCReceive.intQue; recDM.PONum = iCReceive.PONum; recDM.RejComment = iCReceive.RejComment; recDM.TranStatus = iCReceive.TranStatus; recDM.VendorNum = iCReceive.VendorNum; recDM.SupName = iCReceive.SupName; receipt.Begin(recDM); } catch (Exception ex) { msg = ex.Message; } ICReturn.TranStatus = msg; return(ICReturn); }
public void ICConfirm(string epicorUserID, string epiorUserPassword, UriBuilder builder, Guid sessionId, ICReceiveReceipt cReceive) { try { EndpointBindingType bindingType = EndpointBindingType.BasicHttp; builder.Path = $"{Conn.environment}/Erp/BO/Receipt.svc"; svcReceipt.ReceiptSvcContractClient _svcReceipt = GetClient <svcReceipt.ReceiptSvcContractClient, svcReceipt.ReceiptSvcContract>( builder.Uri.ToString(), epicorUserID, epiorUserPassword, bindingType); _svcReceipt.Endpoint.EndpointBehaviors.Add(new HookServiceBehavior(sessionId, epicorUserID)); svcReceipt.ReceiptTableset dsReceipt = new svcReceipt.ReceiptTableset(); string purPoint = string.Empty; string packSlip = string.Empty; bool requiresUserInput = false; string legalNumMsg = string.Empty; string closePO = string.Empty; _svcReceipt.ImportReceipt(cReceive.intQue, false, ref dsReceipt, out purPoint, out packSlip, out requiresUserInput, out legalNumMsg, out closePO); _svcReceipt.GetByID(cReceive.VendorNum, "", cReceive.DONum); _svcReceipt.CreateMassReceipts(cReceive.VendorNum, "", cReceive.DONum, cReceive.intQue, cReceive.PONum, ref dsReceipt); int Count = dsReceipt.RcvDtl.Count(); for (int i = 0; i < Count; i++) { dsReceipt.RcvDtl[i].Received = true; } _svcReceipt.Update(ref dsReceipt); _svcReceipt.ProcessIM(cReceive.intQue, cReceive.DONum, ref dsReceipt); } catch (Exception ex) { throw new Exception($"Epicor Error : {ex.Message.ToString()}"); } }
public void Begin(ICReceiveReceipt cReceive) { configCompany = cReceive.Company; EndpointBindingType bindingType = EndpointBindingType.BasicHttp; string epicorUserID = userName; string epiorUserPassword = password; Guid sessionId = Guid.Empty; svcSessionMod.SessionModSvcContractClient sessionModClient = null; string scheme = "https"; if (bindingType == EndpointBindingType.SOAPHttp) { scheme = "http"; } UriBuilder builder = new UriBuilder(scheme, Conn.hostName); builder.Path = $"{Conn.environment}/Ice/Lib/SessionMod.svc"; try { sessionModClient = GetClient <svcSessionMod.SessionModSvcContractClient, svcSessionMod.SessionModSvcContract> ( builder.Uri.ToString(), epicorUserID, epiorUserPassword, bindingType ); string siteID = "", siteName = "", workstationID = "", workstationDesc = ""; string employeeID = "", countryGroupCode = "", countryCode = "", tenantID = ""; sessionId = sessionModClient.Login(); builder.Path = $"{Conn.environment}/Ice/Lib/SessionMod.svc"; sessionModClient = GetClient <svcSessionMod.SessionModSvcContractClient, svcSessionMod.SessionModSvcContract>(builder.Uri.ToString(), epicorUserID, epiorUserPassword, bindingType); sessionModClient.Endpoint.EndpointBehaviors.Add(new HookServiceBehavior(sessionId, epicorUserID)); //** CHANGE configCompany & configPlant to read from input **// sessionModClient.SetCompany(configCompany, out siteID, out siteName, out workstationID, out workstationDesc, out employeeID, out countryGroupCode, out countryCode, out tenantID); sessionModClient.SetPlant(configPlant); if (sessionId != Guid.Empty) { ICConfirm(epicorUserID, epiorUserPassword, builder, sessionId, cReceive); } else { //Sessionid is Empty! } } catch (Exception ex) { throw new Exception($"Epicor Error : {ex.Message.ToString()}"); } finally { if (sessionId != Guid.Empty) { sessionModClient.Logout(); } } }