Inheritance: EditorWindow
Beispiel #1
0
        private void GridDetails_MouseDoubleClick(object sender, MouseButtonEventArgs e)
        {
            ProcessWindow pw = new ProcessWindow("Displaying File ...");

            try
            {
                //Para el selected Item despliega el archivo.
                if (GridDetails.SelectedItem == null)
                {
                    return;
                }

                ProcessEntityResource per = GridDetails.SelectedItem as ProcessEntityResource;
                if (per.Template != null)
                {
                    UtilWindow.ShowDocument(per.Template, per.EntityRowID, "", false);
                }

                else if (per.File != null)
                {
                    UtilWindow.ShowFile(per.File);
                }
            }
            catch (Exception ex) { Util.ShowError("Fiel could not be displayed.\n" + ex.Message); }
            finally { pw.Close(); }
        }
        private void OnProcessReplenish(object sender, EventArgs e)
        {
            //ViewRepPack.DgRepList.Items.Refresh();
            IList <ProductStock> list = ViewRepPack.Model.RepPackList
                                        .Where(f => f.PackStock > 0 && f.Mark == true)
                                        .ToList();

            ////foreach (Object obj in ViewRepPack.DgRepList.Items)
            //    if (((ProductStock)obj).Mark && ((ProductStock)obj).PackStock > 0)
            //        list.Add((ProductStock)obj);


            if (list.Count() == 0)
            {
                Util.ShowError("No record selected.");
                return;
            }

            ProcessWindow pw = new ProcessWindow("Creating Replenishment Order ... ");
            //1. Create a Replenishment order (new)
            Document repOrder = service.CreateReplenishOrder(list.ToList(), App.curUser.UserName, App.curLocation);

            pw.Close();

            //Refresh Document List.
            ViewRepPack.UCDocList.LoadDocuments("");

            Util.ShowMessage("Replenishment Order [" + repOrder.DocNumber + "] Created.");

            //Document to print
            UtilWindow.ShowDocument(repOrder.DocType.Template, repOrder.DocID, "", false);
        }
        void View_MoveSelected(object sender, EventArgs e)
        {
            if (View.LvLabelsToMove.SelectedItem == null)
            {
                Util.ShowError(Util.GetResourceLanguage("PLEASE_SELECT_RECORDS_IN_THE_LABELED_PRODUCT_LIST"));
                return;
            }

            if (View.Model.SourceLocation.LabelID == View.Model.DestLocation.LabelID)
            {
                Util.ShowError(Util.GetResourceLanguage("SOURCE_AND_DESTINATION_ARE_THE_SAME"));
                View.BinLocationD.Text = "";
                View.BinLocationD.Focus();
                View.Model.DestLocation = null;
                return;
            }

            //if (View.Model.SourceLocation.LabelType.DocTypeID == LabelType.ProductLabel &&
            //    View.Model.DestLocation.LabelType.DocTypeID != LabelType.BinLocation)
            //{
            //    Util.ShowError("Label can be moved only to a Bin.\n" + View.Model.DestLocation.Barcode + " is not a Bin.");
            //    return;
            //}


            MovingLabeledProduct();

            ResetToNext();

            if (showNextTime)
            {
                showNextTime = UtilWindow.ConfirmResult("Process Completed.");
            }
        }
        private void OnDelete(object sender, EventArgs e)
        {
            if (View.Model.Record == null)
            {
                Util.ShowError("No record selected.");
                return;
            }

            if (UtilWindow.ConfirmOK("Are you sure about delete this kit and all its components?").Value)
            {
                try
                {
                    // 1ero se eliminan los componentes del kit
                    foreach (KitAssemblyFormula kaf in View.LvFormula.Items)
                    {
                        service.DeleteKitAssemblyFormula(kaf);
                    }

                    View.Model.Record.ProductFormula = null;
                    service.DeleteKitAssembly(View.Model.Record);
                    View.StkEdit.Visibility   = Visibility.Hidden;
                    View.StkNewKit.Visibility = Visibility.Collapsed;

                    View.Model.EntityList.Remove(View.Model.Record);
                    View.ListRecords.Items.Refresh();

                    Util.ShowMessage("Record deleted.");
                }
                catch (Exception ex)
                {
                    Util.ShowError(ex.Message);
                }
            }
        }
Beispiel #5
0
 private void btnStep2_Click(object sender, RoutedEventArgs e)
 {
     //string stringMsg = Util.GetConfigOption("General"]["CDKMSG"];
     if (UtilWindow.ConfirmOK("Cross Dock is ready to be completed.\nPress OK to confirm process ?.") == true)
     {
         ConfirmCrossDock(sender, e);
     }
 }
        private void btnDelete_Click(object sender, RoutedEventArgs e)
        {
            if (((Button)sender).Name == "btnDelete" && !UtilWindow.ConfirmOK("Really wish to delete the Rol and its permits?") == true)
            {
                return;
            }

            Delete(sender, e);
        }
Beispiel #7
0
        private void btnDelete_Click(object sender, RoutedEventArgs e)
        {
            if (!UtilWindow.ConfirmOK("Really wish to delete the User and its permits?") == true)
            {
                return;
            }

            Delete(sender, e);
        }
Beispiel #8
0
        private void btnMoveAll_Click(object sender, RoutedEventArgs e)
        {
            if (!UtilWindow.ConfirmOK("Really wish to consolidate Bins?") == true)
            {
                return;
            }

            MoveAll(sender, e);
        }
Beispiel #9
0
        private void Btn_GuardarPrea_Click_1(object sender, RoutedEventArgs e)
        {
            //Confirmo si desea confirmar el proceso
            if (!UtilWindow.ConfirmOK("Esta seguro de querer procesar estos registros?") == true)
            {
                return;
            }

            SaveDetailsPrealerta(sender, e);
        }
        private void Btn_Anular_Click(object sender, RoutedEventArgs e)
        {
            //Confirmo si desea eliminar el equipo
            if (!UtilWindow.ConfirmOK("Esta seguro que desea eliminar este equipo del sistema?") == true)
            {
                return;
            }

            DeleteData(sender, e);
        }
Beispiel #11
0
 private void OnShowTicket(object sender, EventArgs e)
 {
     try
     {
         pw = new ProcessWindow("Generating Document ... ");
         UtilWindow.ShowDocument(View.Model.Document.DocType.Template, View.Model.HistDoc.DocID, "", false); //"PDF995"
         pw.Close();
     }
     catch { pw.Close(); }
 }
        private void btnReversePosted_Click(object sender, RoutedEventArgs e)
        {
            string reason = UtilWindow.ConfirmWindow("Please enter the reason to Cancel the Shipment.");

            if (string.IsNullOrEmpty(reason))
            {
                return;
            }

            ReversePosted(sender, new DataEventArgs <string>(reason));
        }
        private void OnPrintPreview(object sender, EventArgs e)
        {
            if (View.PreviewTemplate.SelectedItem == null)
            {
                Util.ShowError("Please select a template to Preview.");
                return;
            }


            UtilWindow.ShowLabelsToPrint((LabelTemplate)View.PreviewTemplate.SelectedItem, true, View.Model.LabelsToPrint); //163 to Test
        }
Beispiel #14
0
 void View_ShowInitialTicket(object sender, EventArgs e)
 {
     try
     {
         pw = new ProcessWindow("Generating Document ... ");
         UtilWindow.ShowDocument(new LabelTemplate {
             Header = WmsSetupValues.CountTicketTemplate
         }, View.Model.Document.DocID, "", false);                                                                                         //"PDF995"
         pw.Close();
     }
     catch { pw.Close(); }
 }
        private void Btn_Cancelar_Click_1(object sender, RoutedEventArgs e)
        {
            //Confirmo si desea confirmar el proceso
            if (!UtilWindow.ConfirmOK("Esta seguro de querer cancelar la operacion?") == true)
            {
                return;
            }

            ClearDetails(sender, e);

            fUpload.IsEnabled = true;
        }
        void View_ShowShipTkt(object sender, EventArgs e)
        {
            ProcessWindow pw = new ProcessWindow(Util.GetResourceLanguage("GENERATING_DOCUMENT"));

            Document document = service.GetDocument(new Document {
                CustPONumber = View.Model.CurDoc.DocNumber
            }).First();

            UtilWindow.ShowDocument(document.DocType.Template, document.DocID, "", true);

            pw.Close();
        }
        private void ShowTicket(Document document)
        {
            if (document == null)
            {
                return;
            }

            ProcessWindow pw = new ProcessWindow(Util.GetResourceLanguage("GENERATING_DOCUMENT"));

            UtilWindow.ShowDocument(document.DocType.Template, document.DocID, "", true);

            pw.Close();
        }
Beispiel #18
0
        private void btnRemove_Click(object sender, RoutedEventArgs e)
        {
            //remover la linea de la Orden y de GP
            if (dgDetails.SelectedItem == null)
            {
                Util.ShowError("No line selected.");
                return;
            }

            if (UtilWindow.ConfirmOK("Are you sure about remove this line?") == true)
            {
                DocumentLine line = dgDetails.SelectedItem as DocumentLine;
                CancelLine(sender, new DataEventArgs <DocumentLine>(line));
            }
        }
        //private void btn_ActualizarListadoEstibaRecibo_Click_1(object sender, RoutedEventArgs e)
        //{
        //    ActualizarRegistrosRecibo(sender, e);
        //}


        private void Btn_Guardar_Click_1(object sender, RoutedEventArgs e)
        {
            //Confirmo si desea confirmar el proceso
            if (!UtilWindow.ConfirmOK("Esta seguro de querer procesar estos registros?") == true)
            {
                return;
            }

            //Mostrar ventana de Cargando...
            ProcessWindow pw = new ProcessWindow("Procesando registros...por favor espere...");

            SaveDetails(sender, e);
            //Cierro ventana de Cargando...
            pw.Visibility = Visibility.Collapsed;
            pw.Close();
        }
Beispiel #20
0
        /// <summary>
        /// Eliminar seriales de la lista.
        /// Falta poner el metodo!
        /// OK!
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void Btn_Eliminar_Seriales_Click_1(object sender, RoutedEventArgs e)
        {
            //Confirmo si desea eliminar el equipo
            if (!UtilWindow.ConfirmOK("Esta seguro que desea eliminar estos seriales del sistema?") == true)
            {
                return;
            }

            //Mostrar ventana de Cargando...
            ProcessWindow pw = new ProcessWindow("Eliminando registros...por favor espere...");

            //Metodo.
            EliminarSeriales(sender, e);
            pw.Visibility = Visibility.Collapsed;
            pw.Close();
            //Btn_Eliminar_Seriales.IsEnabled = false;
        }
        private void imgTicket_MouseDown(object sender, MouseButtonEventArgs e)
        {
            if (lvOrders.SelectedItem == null)
            {
                Util.ShowError("Please select a record.");
                return;
            }

            ProcessWindow pw = new ProcessWindow("Generating Document ... ");

            //Open the Document Ticket
            try
            {
                UtilWindow.ShowDocument(CurDocumentType.Template, ((Document)lvOrders.SelectedItem).DocID, "", false);
                pw.Close();
            }
            catch { pw.Close(); }
        }
Beispiel #22
0
        private void chkRep_Checked_1(object sender, RoutedEventArgs e)
        {
            //Confirmo si desea confirmar el proceso
            if (!UtilWindow.ConfirmOK("Esta seguro de querer replicar estos registros?") == true)
            {
                return;
            }

            //Mostrar ventana de Cargando...
            ProcessWindow pw = new ProcessWindow("Replicando registros...por favor espere...");

            //Replica la informacion de la primera linea en las demas.
            ReplicateDetails(sender, e);
            //Cierro ventana de Cargando...
            pw.Visibility = Visibility.Visible;
            pw.Close();
            chkRep.IsChecked = false;
        }
        void View_MoveAll(object sender, EventArgs e)
        {
            if (View.Model.SourceLocation.LabelID == View.Model.DestLocation.LabelID)
            {
                Util.ShowError(Util.GetResourceLanguage("SOURCE_AND_DESTINATION_ARE_THE_SAME"));
                View.BinLocationD.Text = "";
                View.BinLocationD.Focus();
                return;
            }


            ProcessWindow pw = new ProcessWindow(Util.GetResourceLanguage("MOVING_ALL_BIN_STOCK_TO") + View.Model.DestLocation.Barcode + " ... ");

            //Selecting all Labels
            if (View.Model.LabelsToProcess != null && View.Model.LabelsToProcess.Count > 0)
            {
                View.LvLabelsToMove.SelectAll();
                MovingLabeledProduct();
            }

            if (View.Model.LinesToProcess != null && View.Model.LinesToProcess.Count > 0)
            {
                foreach (ProductStock record in View.Model.LinesToProcess)
                {
                    //Moviendo el producto suelto.
                    MovingReatilProduct(record, record.Stock, true);
                }
            }

            //refresh
            //LoadRetailStock();
            //View.LvProductToMove.Items.Refresh();
            //View.LvProductMoved.Items.Refresh();

            pw.Close();

            ResetToNext();

            if (showNextTime)
            {
                showNextTime = UtilWindow.ConfirmResult("Process Completed.");
            }
        }
Beispiel #24
0
        void View_ShowTicket(object sender, EventArgs e)
        {
            try
            {
                pw = new ProcessWindow("Generating Document ... ");
                UtilWindow.ShowDocument(View.Model.Document.DocType.Template, View.Model.Document.DocID, "", false); //"PDF995"

                /*
                 * // CAA [2010/07/06]
                 * // Genera distinto formato de impresión; según el estado del doc.
                 * // Posted? mostrar todo (summary y detail)...  Si no, solo Summary
                 * if (string.IsNullOrEmpty(Util.GetConfigOption("CTREPDETAIL")) || Util.GetConfigOption("CTREPDETAIL").Equals("F"))
                 *  UtilWindow.ShowDocument(View.Model.Document.DocType.Template, View.Model.Document.DocID, "", false); //"PDF995"
                 * else
                 *  if (View.Model.Document.DocStatus.StatusID == DocStatus.Posted)
                 *      UtilWindow.ShowDocument(new LabelTemplate { Header = WmsSetupValues.CountTicketTemplate_Full }, View.Model.Document.DocID, "", false);
                 *  else
                 *      UtilWindow.ShowDocument(new LabelTemplate { Header = WmsSetupValues.CountTicketTemplate_Summary  }, View.Model.Document.DocID, "", false);
                 */
                pw.Close();
            }
            catch { pw.Close(); }
        }
Beispiel #25
0
        private void Btn_GuardarPrealer_Click_1(object sender, RoutedEventArgs e)
        {
            if (GetPreaConsecutivo.Text.Equals("") || GetPreaNro_Pedido.Text.Equals("") || GetPreaOrigen.Text.Equals("") || GetPreaTipo_Origen.Text.Equals("") || GetPreaTipo_Recoleccion.Text.Equals("") || GetPreFecha_Emision.Text.Equals(""))
            {
                Util.ShowMessage("Debe completar los campos obligatorios del formulario");
                return;
            }

            //Confirmo si desea confirmar el proceso
            if (!UtilWindow.ConfirmOK("Esta seguro de crear una nueva prealerta") == true)
            {
                return;
            }

            //Mostrar ventana de Cargando...
            ProcessWindow pw = new ProcessWindow("Procesando registros...por favor espere...");

            SavePrealertAll(sender, e);

            pw.Visibility = Visibility.Collapsed;
            fUpload_Prealerta.IsEnabled = true;
            pw.Close();
        }
Beispiel #26
0
    static void Init()
    {
        UtilWindow window = (UtilWindow)EditorWindow.GetWindow(typeof(UtilWindow), false, "Util Window");

        window.Show();
    }
        private void btnCreateShipment_Click(object sender, RoutedEventArgs e)
        {
            //revisar que no quede producto en ROOT
            IList <ProductStock> lStock = service.GetLabelStock(rootPackage.PackLabel);

            if (lStock.Count > 0)
            {
                Util.ShowError("The Shipment still has product pending of packing.");
                return;
            }

            IEnumerable <DocumentPackage> listPackages = service.GetDocumentPackage(
                new DocumentPackage
            {
                Document = new Document {
                    DocID = rootPackage.Document.DocID
                },
                Level           = 0,
                PostingDocument = new Document {
                    DocID = -1
                },
            }
                ).Where(f => f.Weight == 0 && f.PackageType != "R");



            if (listPackages.Count() > 0 &&
                UtilWindow.ConfirmOK("Some Pallet(s)/Boxe(s) in level 1 appears without weight. Wish you continue anyway?") != true)
            {
                return;
            }


            if (rootPackage.PackLabel != null && rootPackage.PackLabel.LabelID != 0)
            {
                IList <WpfFront.WMSBusinessService.Label> lSN = service.GetUniqueTrackLabels(
                    new WpfFront.WMSBusinessService.Label
                {
                    FatherLabel = rootPackage.PackLabel,
                    LabelType   = new DocumentType {
                        DocTypeID = LabelType.UniqueTrackLabel
                    }
                });

                if (lSN.Count > 0)
                {
                    Util.ShowError("The Shipment still has product pending of packing.");
                    return;
                }
            }


            try
            {
                parentPresenter.CreateShipment();
            }
            finally
            {
                ((Popup)((Border)((StackPanel)this.Parent).Parent).Parent).IsOpen = false;
            }
        }
Beispiel #28
0
        private void OnSaveDetails(object sender, EventArgs e)
        {
            //Validacion si no existen datos para guardar
            if (View.Model.ListRecords.Rows.Count == 0)
            {
                return;
            }

            //Variables Auxiliares
            String ConsultaGuardar = "";
            String ConsultaGuardarTrack = "";
            Int32  ContadorFilas = 0;
            Int32  ContadorEquiposOK = 0, ContadorEquiposNOK = 0;

            try
            {
                if (!UtilWindow.ConfirmOK("¿Desea imprimir las etiquetas de los equipos ahora?") == false)
                {
                    // Se solicita al usuario seleccionar una impresora
                    System.Windows.Forms.PrintDialog pd = new System.Windows.Forms.PrintDialog();
                    pd.PrinterSettings = new PrinterSettings();

                    if (System.Windows.Forms.DialogResult.OK == pd.ShowDialog())
                    {
                        ProcessWindow pw = new ProcessWindow("Procesando registros...por favor espere...");

                        foreach (DataRow DataRow in View.Model.ListRecords.Rows)
                        {
                            //Aumento el contador de filas
                            ContadorFilas++;

                            //Construyo la consulta para guardar los datos
                            ConsultaGuardar += " UPDATE dbo.EquiposCLARO SET Ubicacion = 'VERIFICACION', Estado = 'P-VERIFICACION'";
                            ConsultaGuardar += ", REUSO = '" + DataRow["Reuso"].ToString() + "', OBSERVACIONES_ETIQUETADO = '" + DataRow["Observaciones_Etiquetado"].ToString() + "'";
                            ConsultaGuardar += " WHERE RowID = '" + DataRow["RowID"].ToString() + "';";

                            ConsultaGuardarTrack += "UPDATE dbo.TrackEquiposCLARO SET ESTADO_ETIQUETADO = 'VERIFICACION', FECHA_ETIQUETADO = GETDATE() WHERE ID_SERIAL = '" + DataRow["RowID"].ToString() + "';";

                            //Guardo en la tabla de movimientos el cambio de ubicacion del equipo
                            ConsultaGuardar += "EXEC sp_InsertarNuevo_Movimiento 'ETIQUETADO DE EQUIPO','ETIQUETADO','VERIFICACION','Sin pallet','" + DataRow["RowID"].ToString() + "','ETIQUETADO','UBICACIONPRODUCCION','" + this.user + "','';";

                            String archivo = DataRow["ProductoID"].ToString();
                            archivo = archivo.Replace("/", "");

                            try
                            {
                                PrinterControl.EtiquetadoEquipo(DataRow["Serial"].ToString(), DataRow["Mac"].ToString(), archivo, pd.PrinterSettings.PrinterName);
                                ContadorEquiposOK++;
                            }
                            catch (Exception ex)
                            {
                                ContadorEquiposNOK++;
                            }
                        }
                        pw.Visibility = Visibility.Collapsed;
                        pw.Close();
                    }
                }
                else
                {
                    foreach (DataRow DataRow in View.Model.ListRecords.Rows)
                    {
                        //Aumento el contador de filas
                        ContadorFilas++;

                        //Construyo la consulta para guardar los datos
                        ConsultaGuardar += " UPDATE dbo.EquiposCLARO SET Ubicacion = 'VERIFICACION', Estado = 'P-VERIFICACION'";
                        ConsultaGuardar += ", REUSO = '" + DataRow["Reuso"].ToString() + "', OBSERVACIONES_ETIQUETADO = '" + DataRow["Observaciones_Etiquetado"].ToString() + "'";
                        ConsultaGuardar += " WHERE RowID = '" + DataRow["RowID"].ToString() + "';";

                        //Guardo en la tabla de movimientos el cambio de ubicacion del equipo
                        ConsultaGuardar += "EXEC sp_InsertarNuevo_Movimiento 'ETIQUETADO DE EQUIPO','ETIQUETADO','VERIFICACION','Sin pallet','" + DataRow["RowID"].ToString() + "','ETIQUETADO','UBICACIONPRODUCCION','" + this.user + "','';";
                        Console.WriteLine("###### " + ConsultaGuardar);

                        ConsultaGuardarTrack += "UPDATE dbo.TrackEquiposCLARO SET ESTADO_ETIQUETADO = 'ETIQUETADO', FECHA_ETIQUETADO = GETDATE() WHERE ID_SERIAL = '" + DataRow["RowID"].ToString() + "'";
                    }
                }

                //Evaluo si la consulta no envio los ultimos registros para forzar a enviarlos
                if (!String.IsNullOrEmpty(ConsultaGuardar))
                {
                    //Ejecuto la consulta
                    service.DirectSQLNonQuery(ConsultaGuardar, Local);
                    service.DirectSQLNonQuery(ConsultaGuardarTrack, Local);

                    //Limpio la consulta para volver a generar la nueva
                    ConsultaGuardar      = "";
                    ConsultaGuardarTrack = "";
                }

                if (ContadorEquiposOK > 0)
                {
                    if (ContadorEquiposNOK > 0)
                    {
                        Util.ShowMessage("\t\t  Se encontrarón etiquetas de " + ContadorEquiposOK + " equipos.\n Número de etiquetas no encontradas " + ContadorEquiposNOK + ", Registros guardados satisfactoriamente");
                    }
                    else
                    {
                        Util.ShowMessage("   Número de etiquetas impresas " + ContadorEquiposOK + ",\nRegistros guardados satisfactoriamente");
                    }
                }
                else if (ContadorEquiposNOK > 0)
                {
                    Util.ShowMessage("Etiquetas no encontradas, número de etiquetas no encontradas " + ContadorEquiposNOK + ",\n\t  Registros guardados satisfactoriamente");
                }
                else
                {
                    //Muestro el mensaje de confirmacion
                    Util.ShowMessage("Registros guardados satisfactoriamente.");
                }

                //Reinicio los campos
                LimpiarDatosIngresoSeriales();
            }
            catch (Exception Ex) { Util.ShowError("Hubo un error al momento de guardar los registros. Error: " + Ex.Message); }
        }
Beispiel #29
0
 private static void Init()
 {
     window = GetWindow <UtilWindow>();
     window.Show();
 }
        private void OnGuardarNuevaClasificacion(object sender, EventArgs e)
        {
            //Variables Auxiliares
            String ConsultaSQL, NuevaUbicacion, NuevoEstado, ConsultaTrack, ConsultaMovSQL;

            //Evaluo que haya sido seleccionado un registro
            if (View.ListadoBusquedaCambioClasificacion.SelectedItems.Count == 0)
            {
                return;
            }


            //Evaluo que haya seleccionado la nueva clasificacion
            if (View.NuevaClasificacion.SelectedIndex == -1)
            {
                Util.ShowError("Por favor seleccionar la nueva clasificacion.");
                return;
            }

            if (!UtilWindow.ConfirmOK("¿Esta seguro que quiere cambiar la ubicación de los pallets seleccionados?") == true)
            {
                return;
            }

            //Coloco la ubicacion
            NuevaUbicacion = ((DataRowView)View.NuevaClasificacion.SelectedItem).Row["UbicacionDestino"].ToString();


            foreach (DataRowView fila in View.ListadoBusquedaCambioClasificacion.SelectedItems)
            {
                if (NuevaUbicacion == "TRANSITO A REP.")
                {
                    NuevoEstado = "PARA REPARACION";
                    if (fila.Row["Estado"].ToString() == "CUARENTENA")
                    {
                        Util.ShowError("No es posible enviar pallet en CUARENTENA para REPARACION");
                        return;
                    }
                    else
                    {
                        //Creo la consulta la cambiar la clasificacion de la estiba
                        ConsultaSQL   = "UPDATE dbo.EquiposDIRECTVC SET Estado = '" + NuevoEstado + "', Ubicacion = '" + NuevaUbicacion + "', Posicion = NULL, CodigoEmpaque = '" + fila.Row["idPallet"].ToString() + "' WHERE IdPallet = '" + fila.Row["idPallet"].ToString() + "' AND ESTADO = 'ALMACENAMIENTO' AND ESTADO != 'DESPACHADO';";
                        ConsultaTrack = "UPDATE dbo.TrackEquiposDIRECTV SET ESTADO_MOVMERCANCIA = '" + NuevoEstado + "' WHERE ESTIBA_ENTRADA = '" + fila.Row["idPallet"].ToString() + "';";
                        //Guardo en la tabla de movimientos el cambio de ubicacion del equipo
                        ConsultaMovSQL = "EXEC sp_InsertarNuevo_MovimientoDIRECTV 'ENVIO A PRODUCCIÓN " + NuevoEstado + "','ALMACENAMIENTO','REPARACIÓN','" + fila.Row["idPallet"].ToString() + "','','ALMACENAMIENTO','UBICACIONALMACEN','" + this.user + "','';";

                        //Ejecuto la consulta
                        service.DirectSQLNonQuery(ConsultaSQL, Local);
                        service.DirectSQLNonQuery(ConsultaTrack, Local);
                        service.DirectSQLNonQuery(ConsultaMovSQL, Local);
                    }
                }
                else if (NuevaUbicacion == "TRANSITO A DIAG.")
                {
                    NuevoEstado = "PARA DIAGNOSTICO";
                    if (fila.Row["Estado"].ToString() == "CUARENTENA")
                    {
                        Util.ShowError("No es posible enviar pallet en CUARENTENA para DIAGNOSTICO");
                        return;
                    }
                    else
                    {
                        //Creo la consulta la cambiar la clasificacion de la estiba
                        ConsultaSQL    = "UPDATE dbo.EquiposDIRECTVC SET Estado = '" + NuevoEstado + "', Ubicacion = '" + NuevaUbicacion + "' WHERE IdPallet = '" + fila.Row["idPallet"].ToString() + "' AND ESTADO = 'ALMACENAMIENTO' AND ESTADO != 'DESPACHADO';";
                        ConsultaTrack  = "UPDATE dbo.TrackEquiposDIRECTV SET ESTADO_MOVMERCANCIA = '" + NuevoEstado + "' WHERE ESTIBA_ENTRADA = '" + fila.Row["idPallet"].ToString() + "';";
                        ConsultaMovSQL = "EXEC sp_InsertarNuevo_MovimientoDIRECTV 'ENVIO A PRODUCCIÓN " + NuevoEstado + "','ALMACENAMIENTO','DIAGNOSTICO','" + fila.Row["idPallet"].ToString() + "','','ALMACENAMIENTO','UBICACIONALMACEN','" + this.user + "','';";
                        //Ejecuto la consulta
                        service.DirectSQLNonQuery(ConsultaSQL, Local);
                        service.DirectSQLNonQuery(ConsultaTrack, Local);
                        service.DirectSQLNonQuery(ConsultaMovSQL, Local);
                    }
                }
                else
                {
                    NuevoEstado = "DESPACHO";
                    if (fila.Row["Estado"].ToString() == "CUARENTENA")
                    {
                        Util.ShowError("No es posible enviar pallet en CUARENTENA para DESPACHO");
                        return;
                    }
                    else
                    {
                        //Creo la consulta la cambiar la clasificacion de la estiba
                        ConsultaSQL = "UPDATE dbo.equiposDIRECTVC SET CodigoEmpaque2 = IdPallet, Estado = '" + NuevoEstado + "', Ubicacion = '" + NuevaUbicacion + "' WHERE IdPallet = '" + fila.Row["idPallet"].ToString() + "'  AND ESTADO = 'ALMACENAMIENTO' AND ESTADO != 'DESPACHADO';";
                        //Guardo en la tabla de movimientos el cambio de ubicacion del equipo
                        ConsultaMovSQL = "EXEC sp_InsertarNuevo_MovimientoDIRECTV 'ENVIO A " + NuevoEstado + "','ALMACENAMIENTO','DESPACHO','" + fila.Row["idPallet"].ToString() + "','','ALMACENAMIENTO','UBICACIONALMACEN','" + this.user + "','';";
                        ConsultaTrack  = "UPDATE dbo.TrackEquiposDIRECTV SET ESTADO_MOVMERCANCIA = '" + NuevoEstado + "' WHERE ESTIBA_ENTRADA = '" + fila.Row["idPallet"].ToString() + "';";

                        //Ejecuto la consulta
                        service.DirectSQLNonQuery(ConsultaSQL, Local);
                        service.DirectSQLNonQuery(ConsultaMovSQL, Local);
                        service.DirectSQLNonQuery(ConsultaTrack, Local);
                    }
                }
            }

            //Muestro el mensaje de confirmacion
            Util.ShowMessage("Cambio de clasificacion realizado satisfactoriamente.");

            ////Ejecuto la consulta
            //service.DirectSQLNonQuery(ConsultaSQL, Local);

            ////Muestro el mensaje de confirmacion
            //Util.ShowMessage("Cambio de clasificacion realizado satisfactoriamente.");

            //Hago la busqueda de registros para actualizar el listado
            BuscarRegistrosCambioClasificacion();

            //Oculto el bloque de actualizacion
            View.StackCambioClasificacion.Visibility = Visibility.Collapsed;

            //Quito la selecion de la nueva ubicacion
            View.NuevaClasificacion.SelectedIndex = -1;

            Actualizar_UbicacionDisponible();

            //Quito la seleccion del listado
            View.ListadoBusquedaCambioClasificacion.SelectedIndex = -1;
            View.Model.Listado_PalletSerial.Rows.Clear();
            View.TotalSeriales.Text        = "0";
            View.estibasSeleccionadas.Text = "0";
        }