Exemplo n.º 1
0
 /// <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);
         }
     }
 }
Exemplo n.º 2
0
 /// <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);
         }
     }
 }
Exemplo n.º 3
0
        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;
            }
        }