Beispiel #1
0
        private void runSapSession(byte session, List <RejectionsSapOrderProperty> list, string tableName)
        {
            ISAPLib sap;

            if (session > 0)
            {
                sap = Create.sapLib();
                sap.createSession();

                try {
                    sap = Create.sapLib(session);
                } catch (Exception) {
                    System.Threading.Thread.Sleep(3000);
                    sap = Create.sapLib(session);
                }
            }
            else
            {
                sap = Create.sapLib(session);
            }

            IVA02 va02 = new VA02(sap, idaLog);
            RejectionsVA02Runner va02Runner = new RejectionsVA02Runner(sap, idaLog, va02, isReleaseRejections, true);

            foreach (var rejObj in list)
            {
                var status = va02Runner.runRejections(rejObj, id, tableName);
                updateOrderLog(tableName, rejObj, status);
            }
        }
        private void runSapSession(byte session, List <RejectionFullOrderProperty> list)
        {
            ISAPLib sap;

            if (session > 0)
            {
                sap = Create.sapLib();
                sap.createSession();
                try {
                    sap = Create.sapLib(session);
                } catch (Exception) {
                    System.Threading.Thread.Sleep(3000);
                    sap = Create.sapLib(session);
                }
            }
            else
            {
                sap = Create.sapLib(session);
            }

            IVA02 va02 = new VA02(sap, idaLog);
            FullOrderRejectionVA02Runner va02Runner = new FullOrderRejectionVA02Runner(sap, idaLog, va02);

            foreach (var rejObject in list)
            {
                va02Runner.runFullOrderRejection(rejObject.orderNumber, id, rejObject.reason, rejObject.rejCode, tableName);
            }
        }
Beispiel #3
0
        private void runSapSession(byte session, List <SwitchesSapOrderProperty> list, string tableName)
        {
            ISAPLib sap;

            if (session > 0)
            {
                sap = Create.sapLib();
                sap.createSession();
                try {
                    sap = Create.sapLib(session);
                } catch (Exception) {
                    System.Threading.Thread.Sleep(3000);
                    sap = Create.sapLib(session);
                }
            }
            else
            {
                sap = Create.sapLib(session);
            }

            VA02 va02 = new VA02(sap, idaLog);
            SwitchesVA02Runner va02Runner = new SwitchesVA02Runner(sap, idaLog, va02);

            foreach (var switchObj in list)
            {
                var status = va02Runner.runSwitches(switchObj, id, tableName);
                updateOrderLog(tableName, switchObj, status);
            }
        }
Beispiel #4
0
        public void soarAction_Should_UploadFileToOrder_When_ButtonForUploadingOrdersExist()
        {
            IVA02 va02 = new VA02(sap, idaLog);

            sap.enterTCode("VA02");
            va02.enterOrder(208736896);
            va02.soarAction("this is testing the csr notes function to upload a note into the order with enough text", "DeliveryBlocks", 208736896);
        }
Beispiel #5
0
        public void runRddChanges_Should_ChangeRoutes_When_ConnectedToSap()
        {
            var           sap        = Create.sapLib();
            IdaLog        idaLog     = new IdaLog();
            VA02          va02       = new VA02(sap, idaLog);
            RDDVA02Runner va02Runner = new RDDVA02Runner(sap, idaLog, va02);

            // tCode.runRDDChange(206522986, #03/04/2020#, #03/03/2020#, "XUY", "IDA Test: testing greyed out csr entering", "DeliveryDatesLog")
            va02Runner.runRDDChange(206522986, DateTime.Parse("2020-04-03"), DateTime.Parse("2020-03-03"), "XUY", "IDA Test: testing greyed out csr entering", "DeliveryDatesLog");
        }
Beispiel #6
0
        public void runRejections_Should_SpltLineCorrectly_When_UnitsOfMeasuresAreMUN()
        {
            IVA02 va02 = new VA02(sap, idaLog);
            RejectionsSapOrderProperty rejectionsSapOrderProperty = getRejList();

            sap.enterTCode("VA02");
            va02.enterOrder(rejectionsSapOrderProperty.orderNumber);
            va02.bypassInitialPopups();
            ITable table = va02.getTable();
            var    rejectionsVA02Runner = new RejectionsVA02Runner(sap: sap, log: idaLog, va02: va02, isRelease: true, isLog: false);

            rejectionsVA02Runner.runRejections(rejectionsSapOrderProperty, "someID", "someTable");
        }
Beispiel #7
0
        public void runVA02(ISAPLib sap)
        {
            string tableName = "DeliveryDatesLog";
            IVA02  va02      = new VA02(sap, idaLog);

            foreach (var item in calculatedRDDList)
            {
                RDDVA02Runner va02RDDRunner = new RDDVA02Runner(sap, idaLog, va02);
                va02RDDRunner.runRDDChange(item.orderNumber, item.oldRdd, item.newRecommendedRdd, item.id, item.reason, tableName);
            }

            foreach (var item in calculatedDelBlockList)
            {
                DeliveryBlockVA02Runner va02DelBlockRunner = new DeliveryBlockVA02Runner(sap, idaLog, va02);
                va02DelBlockRunner.runDeliveryBlockChange(item.orderNumber, item.id, item.reason, item.delBlock, tableName);
            }

            foreach (var item in calculatedRouteCodeList)
            {
                RouteCodeVA02Runner va02RouteCodeRunner = new RouteCodeVA02Runner(sap, idaLog, va02);
                va02RouteCodeRunner.runRouteCodeChange(item.orderNumber, item.id, item.reason, item.newRecommendedRouteCode, tableName, salesOrg.ToUpper());
            }
        }
Beispiel #8
0
        public static void Main()
        {
            var                log      = Create.serverLogger(135);
            var                idaLog   = new IdaLog();
            string             salesOrg = "ZA01";
            IDBServerConnector dbServer = Create.dbServer();
            string             id       = $"{DateTime.Now} {Environment.MachineName}";

            idaLog.insertToActivityLog("KiwiConversions", "start", id, salesOrg);
            log.start();
            ISAPLib                 sapLib           = Create.sapLib();
            DataCollectorSap        dataCollector    = new DataCollectorSap(sapLib, Create.exportParses());
            List <ZV04IProperty>    zv04IList        = dataCollector.getZV04IList(salesOrg, IDAEnum.Task.quantityConversion);
            KiwiConversionException kiwiExceptionObj = new KiwiConversionException();

            //removes lines that match exception criteria from zv04iList for furthur calculation
            zv04IList = zv04IList.Where(x => !(kiwiExceptionObj.material.Contains(x.material) && kiwiExceptionObj.soldTo.Contains(x.soldTo))).ToList();

            var  orderList              = zv04IList.Select(x => x.order);
            long maxOrder               = orderList.Max();
            long minOrder               = orderList.Min();
            var  conversionDAO          = new ConversionDAO(dbServer);
            var  materialConversionList = conversionDAO.getQuantityConversionMaterialList();
            var  shipToConversionList   = conversionDAO.getQuantityConversionShipToList();
            var  logConversionList      = conversionDAO.getQuantityConversionLogList(minOrder, maxOrder);
            var  dataCompareService     = new DataCompareService();
            var  salesDocumetList       = dataCompareService.getSalesDocumentToChangeQuantity(zv04IList, shipToConversionList, materialConversionList);

            dataCompareService.removeAlreadyConvertedLines(logConversionList, ref salesDocumetList);
            var    mailUtil     = Create.mailUtil();
            var    emailService = new EmailService(mailUtil);
            var    distList     = new DistributionListCalculator(dbServer);
            string emails       = distList.getDistList(salesOrg, "quantityConversions");

            if (salesDocumetList.Count > 0)
            {
                try {
                    emailService.sendEmailNotification(emails, "", "ZA01 Kiwi conversion", salesDocumetList);
                } catch (Exception) {
                    mailUtil.mailSimple(IDAConsts.adminEmail, $"{salesOrg} Kiwi Conv: Error {Information.Err().Description}", $"Empty mail list for this task");
                }
                IVA02 va02 = new VA02(sapLib, idaLog);
                QuantityConversionVA02Runner va02Runner = new QuantityConversionVA02Runner(sapLib, idaLog, va02);

                try {
                    foreach (var document in salesDocumetList)
                    {
                        va02Runner.runQuantityChange(document);
                    }
                } catch (Exception ex) {
                    string filepath  = $"{IDAConsts.Paths.errorFilePath}{salesOrg} Kiwi error: {DateTime.Now}";
                    var    sTextFile = new System.Text.StringBuilder();
                    if (!System.IO.File.Exists(filepath))
                    {
                        System.IO.File.Create(filepath).Dispose();
                    }

                    sTextFile.AppendLine(ex.StackTrace);
                    System.IO.File.AppendAllText(filepath, sTextFile.ToString());
                    mailUtil.mailSimple(IDAConsts.adminEmail, $"{salesOrg} Kiwi Conv: Error {Information.Err().Number}", $"{mailUtil.getLink(filepath, "Your error info is here")}");
                    log.finish("fail");
                    idaLog.insertToActivityLog("KiwiConversions", "fail", id, salesOrg);
                    return;
                }

                log.finish("success");
                idaLog.insertToActivityLog("KiwiConversions", "success", id, salesOrg);
                logConversionList = conversionDAO.getQuantityConversionLogList(minOrder, maxOrder);
                dataCompareService.removeAlreadyConvertedLines(logConversionList, ref salesDocumetList);
                if (salesDocumetList.Count > 0)
                {
                    emailService.sendEmailNotification(emails, "", "ZA01 Kiwi conversion failed items", salesDocumetList);
                }
            }
            else
            {
                try {
                    mailUtil.mailSimple(emails, $"ZA01 Kiwi conversion {DateTime.Now}", "No Kiwi conversions found");
                } catch (Exception) {
                    mailUtil.mailSimple($"{IDAConsts.adminEmail};{Environment.UserName}", $"{salesOrg} Kiwi Conv: Error {Information.Err().Description}", $"Empty mail list for this task");
                }

                idaLog.insertToActivityLog("KiwiConversions", "empty list", id, salesOrg);
                log.finish("empty list");
            }
        }