private bool isOpenStockAndDates(long sku, string plant) { sap.setText(CO09ID.SKU_INPUT_TEXT_FIELD_ID, sku.ToString()); sap.setText(CO09ID.PLANT_INPUT_TEXT_FIELD_ID, plant); sap.pressEnter(); if (sap.getInfoBarMsg().Contains("Text for MRP")) { sap.pressEnter(); } if (sap.getInfoBarMsg().Contains("not found")) { return(false); } return(true); }
public bool runQuantityChange(QtyConversionOrderProperty order) { sap.enterTCode("VA02"); sap.setText(lib.SAP_ALL_ID.VA02.ORDER_FLD, order.orderNumber.ToString()); sap.pressEnter(); va02.checkIfOrderBlocked(order.orderNumber); sap.pressEnter(); sap.getRidOfPopUps(); if (sap.getInfoBarMsg().Contains("exists with same PO")) { sap.pressEnter(); } sap.getRidOfPopUps(); var table = sap.getITableObject(); if (changeQuantityInTable(table, order)) { string csrNote = $"Order number {order.orderNumber} had qty's changed in the following - {va02.getChangedListForCSR(order)}"; va02.soarAction(csrNote, "Quantity Conversion", order.orderNumber); va02.save(); if (sap.getInfoBarMsg().Contains($"{order.orderNumber} has been saved")) { order.isSaved = true; var itemArr = order.documentLineChangeList.Select(x => x.item).ToArray(); log.update("QuantityConversionLog", new[] { "isSaved" }, new[] { "1" }, new[] { "orderNumber" }, new[] { order.orderNumber.ToString() }, $"item IN ({string.Join(",", itemArr)})"); return(true); } } return(false); }
public OrderStatus runSwitches(SwitchesSapOrderProperty switchObj, string id, string tableName) { string csrNote = ""; startSwitchesLog(switchObj, id, tableName); OrderStatus status = va02.enterOrder(switchObj.orderNumber); if (status == OrderStatus.blockedByUser || status == OrderStatus.blockedByBatchJob) { return(status); } va02.bypassInitialPopups(); status = va02.isChangeNeeded(); if (status != OrderStatus.available) { return(status); } ITable table = va02.getTable(); va02.moveRouteCodeColumnToIndexEight(table); foreach (var lineSwitch in switchObj.lineDetails) { int sapLineNumber = (lineSwitch.lineNumber / 10 - 1); bool shouldChange = isForChange(table, lineSwitch, sapLineNumber); bool isChanged = false; if (shouldChange) { string unitOfMeasure = table.getCellValue(sapLineNumber, "Un"); string itemCategory = table.getCellValue(sapLineNumber, "ItCa"); string routeCode = table.getCellValue(sapLineNumber, VA02.routeCodeColumnIndex); // have to use by index because the table retains its indexes by name after reordering but not actual indexes within a table string cmir = table.getCellValue(sapLineNumber, "Customer Material Numb"); table.setCellValue(sapLineNumber, "Material", lineSwitch.newSku); sap.pressEnter(); sap.getRidOfPopUps(); string tempReason = ""; isChanged = va02.isLineChanged(table, lineSwitch, sapLineNumber, ref tempReason); if (tempReason != "") { lineSwitch.reason = tempReason; } if (sap.getInfoBarMsg().Contains("Z4")) { return(OrderStatus.bothSkusAreZ4); } if (sap.getInfoBarMsg().Contains("not approved")) { return(OrderStatus.bothSkusAreNotApproved); } unitsOfMeasureAction(table, sapLineNumber, unitOfMeasure); itemCategoryAction(table, sapLineNumber, itemCategory); routeCodeAction(table, sapLineNumber, routeCode); cmirAction(switchObj, table, lineSwitch, sapLineNumber, cmir); } csrNote += $"sku {lineSwitch.oldSku} has{(isChanged ? " " : " not ")}been switched to {lineSwitch.newSku}. Reason: {lineSwitch.reason}{Constants.vbCr}"; endSwtichesLog(switchObj, id, tableName, lineSwitch, isChanged); } va02.soarAction(csrNote, "Line Switches", switchObj.orderNumber); va02.save(); return(va02.getOrderStatusAfterSaving()); }
public OrderStatus getOrderStatusAfterSaving() { if (sap.getInfoBarMsg().Contains("saved")) { return(OrderStatus.success); } else { for (int i = 0; i <= 5; i++) { System.Threading.Thread.Sleep(2000); save(); if (sap.getInfoBarMsg().Contains("saved")) { return(OrderStatus.success); } } return(OrderStatus.failedToSave); } }