private static Message GetListOfMessagesContent(SubmitFeedParamaters objSubmitFeedParams)
        {
            Message objMessage = new Message();

            objMessage.MessageID = objSubmitFeedParams.shipmentNbr;
            OrderFulfillment objOrderFulfillment = new OrderFulfillment();
            FulfillmentData  objFulfillmentData  = new FulfillmentData();

            objOrderFulfillment.AmazonOrderID = objSubmitFeedParams.amazonOrderID;

            objOrderFulfillment.FulfillmentDate = new DateTimeOffset(Convert.ToDateTime(objSubmitFeedParams.shipmentDate),
                                                                     PXTimeZoneInfo.FindSystemTimeZoneById("GMTM0800A").UtcOffset).ToString("yyyy-MM-ddTHH:mm:sszzz");

            PXTrace.WriteInformation(String.Format("Shipment# {0} FulfillmentDate {1}",
                                                   objMessage.MessageID, objOrderFulfillment.FulfillmentDate));
            objFulfillmentData.CarrierName           = objSubmitFeedParams.carrierCode;
            objFulfillmentData.ShippingMethod        = objSubmitFeedParams.shipVia;
            objFulfillmentData.ShipperTrackingNumber = objSubmitFeedParams.trackingNbr;
            objOrderFulfillment.FulfillmentData      = objFulfillmentData;
            if (objSubmitFeedParams.liShipItem != null && objSubmitFeedParams.liShipItem.Count > 0)
            {
                objOrderFulfillment.Item = objSubmitFeedParams.liShipItem;
            }
            objMessage.OrderFulfillment = objOrderFulfillment;
            return(objMessage);
        }
        protected void ProcessSyncCC(ProcessListDelegate processor, List <Table> list, AUSchedule schedule)
        {
            beforeScheduleProcessAll?.Invoke();
            PXLongOperation.SetCustomInfo(new List <SyncCCProcessingInfoEntry>(), ProcessingInfo.processingKey);
            list.Clear();
            _InProc = new PXResultset <Table>();
            base._ProcessScheduled(processor, list, schedule);
            var histCache = _Graph.Caches[typeof(AUScheduleHistory)];
            List <SyncCCProcessingInfoEntry> infoList = PXLongOperation.GetCustomInfoForCurrentThread(ProcessingInfo.processingKey) as List <SyncCCProcessingInfoEntry>;

            if (infoList != null)
            {
                foreach (SyncCCProcessingInfoEntry infoEntry in infoList)
                {
                    AUScheduleHistory hist = new PX.SM.AUScheduleHistory();
                    hist.ExecutionResult = infoEntry.ProcessingMessage.Message;
                    hist.ErrorLevel      = (short)infoEntry.ProcessingMessage.ErrorLevel;
                    hist.ScheduleID      = schedule.ScheduleID;
                    hist.ScreenID        = schedule.ScreenID;
                    var      timeZone = PXTimeZoneInfo.FindSystemTimeZoneById(schedule.TimeZoneID);
                    DateTime startUtc = PXTimeZoneInfo.UtcNow;
                    DateTime start    = PXTimeZoneInfo.ConvertTimeFromUtc(startUtc, timeZone);
                    hist.ExecutionDate = start;
                    hist.RefNoteID     = infoEntry.NoteId;
                    histCache.Insert(hist);
                }
            }

            histCache.Persist(PXDBOperation.Insert);
        }