/// <summary> /// Transação -WO Criação de Ordem de Produção (Desmontagem) /// </summary> private void TransNegWO() { try { // Tipo Desmontagem TransactionWO.Start(BoProductionOrderTypeEnum.bopotDisassembly); } finally { if (SAPConnection.DI.InTransaction) { SAPConnection.DI.EndTransaction(BoWfTransOpt.wf_Commit); } } }
/// <summary> /// Transação WO - Criação de Ordem de Produção (Montagem) /// </summary> private void TransWO() { try { // Tipo Padrão principal.GravaAudit("Start"); TransactionWO.Start(BoProductionOrderTypeEnum.bopotStandard); } finally { if (SAPConnection.DI.InTransaction) { SAPConnection.DI.EndTransaction(BoWfTransOpt.wf_Commit); } } }
public static void Start(BoProductionOrderTypeEnum type) { switch (type) { case BoProductionOrderTypeEnum.bopotStandard: #region Montagem Padrão try { //while (TWODAO.TransactionOpen()) //{ // 1º Procura as novas ordem de produção var twolista = TWODAO.GetDados(true); var sapTrans = new TransactionWO(); MyLibs.v2.local.Register.Log.Register("Transação WO" , System.Diagnostics.EventLogEntryType.Information , "0 - Criando as Ordens de Produção."); foreach (var two in twolista) { if (!two.Exist_OWOR) { sapTrans.OWORWithProductTreeDefault(two); } else { two.MSG_SAP = "Ordem de Produção já criada. Número da Ordem " + two.OWOR_DocNum; TWODAO.UpdateStatus(two); } } twolista.Clear(); twolista = null; //} } catch (Exception ex) { MyLibs.v2.local.Register.Log.Register("Transação WO" , System.Diagnostics.EventLogEntryType.Error , ex.Message); } #endregion break; case BoProductionOrderTypeEnum.bopotDisassembly: // #region Desmontagem try { // 1º Procura as ordens a desmontar var tnwolista = TWONegDAO.GetForOWOR(); var sapTrans = new TransactionWO(); MyLibs.v2.local.Register.Log.Register("Transação -WO" , System.Diagnostics.EventLogEntryType.Information , "0 - Criando as Ordens de Produção (Desmontagem)."); foreach (var tnwo in tnwolista) { var valido = false; //if (Properties.Settings.Default.ValidarDesmontagem) // valido = tnwo.Exist_OWOR; //else //{ // valido = true; // MyLibs.v2.local.Register.Log.Register("Transação -WO" // , System.Diagnostics.EventLogEntryType.Warning // , "A desmontagem não está validando as montagens criadas."); //} if (valido) { sapTrans.OWORWithProductTreeDefault(tnwo); } else { tnwo.ReadBySAP = 'E'; tnwo.MSG_SAP = "Não foi localizada nenhuma ordem de produção no SAP vinculada a ordem de produção Jomar nº " + tnwo.OWOR_U_ORDER_JOMAR + "."; TWODAO.UpdateStatus(tnwo); MyLibs.v2.local.Register.Log.Register("Transação -WO" , System.Diagnostics.EventLogEntryType.Error , tnwo.MSG_SAP); } } tnwolista.Clear(); tnwolista = null; } catch (Exception ex) { MyLibs.v2.local.Register.Log.Register("Transação WO" , System.Diagnostics.EventLogEntryType.Error , ex.Message); } #endregion break; } }