Ejemplo n.º 1
0
        private void btnLlevar_Click(object sender, EventArgs e)
        {
            llenarArregloMaximo();
            ingresaBoton(btnLlevar);

            Program.sIDPERSONA = null;
            consultarDatos("02", "");

            if (Program.iSeleccionMesero == 1)
            {
                Pedidos.frmMeseroLlevar meseros = new Pedidos.frmMeseroLlevar(Program.iIdOrigenOrden, Program.sDescripcionOrigenOrden);
                meseros.ShowDialog();

                if (meseros.DialogResult == DialogResult.OK)
                {
                    meseros.Close();
                }
            }

            else
            {
                //Orden or = new Orden(Program.iIdOrigenOrden, Program.sDescripcionOrigenOrden, 0, 0, 0, "", Program.iIdPersona, Program.CAJERO_ID, Program.iIdMesero, Program.nombreMesero, 0, 0);
                ComandaNueva.frmComanda or = new ComandaNueva.frmComanda(Program.iIdOrigenOrden, Program.sDescripcionOrigenOrden, 0, 0, 0, "", Program.CAJERO_ID, Program.iIdMesero, Program.nombreMesero, "NINGUNA", 0, 0, Program.iIdPersona);
                or.ShowDialog();
            }
        }
Ejemplo n.º 2
0
        //FUNCION PARA CONSULTAR Y PERMITIR EL ACCESO A LA COMANDA
        private void abrirMenuComanda()
        {
            try
            {
                if ((lblMesero.Text == "MESERO") && (Program.iLeerMesero == 1))
                {
                    ok.LblMensaje.Text = "Favor seleccione un mesero para continuar.";
                    ok.ShowDialog();
                }

                else
                {
                    Program.iIdMesero    = iIdMesero;
                    Program.nombreMesero = lblMesero.Text;
                    this.DialogResult    = DialogResult.OK;

                    //ACTUALIZACION ELVIS COMANDA
                    //=======================================================================================================================
                    ComandaNueva.frmComanda or = new ComandaNueva.frmComanda(iIdOrigenOrden, sDescripcionOrigen, 0, 0, 0, "", Program.CAJERO_ID, iIdMesero, sNombreMesero, "NINGUNA", 0, 0, Program.iIdPersona);
                    or.ShowDialog();
                    //=======================================================================================================================

                    //Orden or = new Orden(iIdOrigenOrden, sDescripcionOrigen, 0, 0, 0, "", Program.iIdPersona, Program.CAJERO_ID, iIdMesero, sNombreMesero, 0, 0);
                    //or.ShowDialog();
                }
            }
            catch (Exception ex)
            {
                catchMensaje.LblMensaje.Text = ex.Message;
                catchMensaje.ShowInTaskbar   = false;
                catchMensaje.ShowDialog();
            }
        }
Ejemplo n.º 3
0
        private void listaClic(Object sender, EventArgs o)
        {
            try
            {
                listaSelecionada = sender as TextBox;

                //FUNCION PARA VERIFICAR SI LA COMANDA YA FUE COBRADA
                //=====================================================================================
                sSql  = "";
                sSql += "select estado_orden" + Environment.NewLine;
                sSql += "from cv403_cab_pedidos" + Environment.NewLine;
                sSql += "where id_pedido = " + Convert.ToInt32(listaSelecionada.Tag) + Environment.NewLine;
                sSql += "and estado = 'A'";

                dtConsulta = new DataTable();
                dtConsulta.Clear();

                bRespuesta = conexion.GFun_Lo_Busca_Registro(dtConsulta, sSql);

                if (bRespuesta == false)
                {
                    catchMensaje = new VentanasMensajes.frmMensajeCatch();
                    catchMensaje.LblMensaje.Text = "ERROR EN LA INSTRUCCIÓN:" + Environment.NewLine + sSql;
                    catchMensaje.ShowDialog();
                    return;
                }

                string sEstado_R = dtConsulta.Rows[0]["estado_orden"].ToString().Trim().ToUpper();

                if (sEstado_R == "PAGADA")
                {
                    ok = new VentanasMensajes.frmMensajeOK();
                    ok.LblMensaje.Text = "La comanda ya ha sido cobrada.";
                    ok.ShowDialog();
                    this.Close();
                    return;
                }

                //=====================================================================================


                this.DialogResult = DialogResult.OK;
                this.Close();

                //ACTUALIZACION ELVIS COMANDA
                //=======================================================================================================================
                ComandaNueva.frmComanda ord = new ComandaNueva.frmComanda(Convert.ToInt32(listaSelecionada.Tag), "OK");
                ord.ShowDialog();
                //=======================================================================================================================
            }

            catch (Exception ex)
            {
                catchMensaje = new VentanasMensajes.frmMensajeCatch();
                catchMensaje.LblMensaje.Text = ex.Message;
                catchMensaje.ShowDialog();
                return;
            }
        }
Ejemplo n.º 4
0
        private void btnLlevar_Click(object sender, EventArgs e)
        {
            ComandaNueva.frmComanda or = new ComandaNueva.frmComanda(Program.iIdOrigenOrden, Program.sDescripcionOrigenOrden, 0, 0, 0, "", Program.CAJERO_ID, Program.iIdMesero, Program.nombreMesero, "NINGUNA", 0, 0, Program.iIdPersonaConsumoVale);
            or.ShowDialog();

            this.DialogResult = DialogResult.OK;
            this.Close();
        }
Ejemplo n.º 5
0
        private void btnTerminar_Click(object sender, EventArgs e)
        {
            if ((txtIdentificacion.Text == "") || (txtSector.Text == ""))
            {
                ok.lblMensaje.Text = "Favor rellene los campos para el domicilio";
                ok.ShowDialog();
            }

            else
            {
                //Program.sIDPERSONA = iIdDireccion.ToString();
                //Program.sIdentificacion = txtIdentificacion.Text.Trim();

                if (Program.iManejaRepartidor == 1)
                {
                    Domicilios.frmSeleccionarRepartidor rep = new frmSeleccionarRepartidor();
                    rep.ShowDialog();

                    if (rep.DialogResult == DialogResult.OK)
                    {
                        int iIdRepartidor_Recuperado = rep.iIdRepartidor;
                        rep.Close();

                        //ACTUALIZACION ELVIS COMANDA
                        //=======================================================================================================================
                        ComandaNueva.frmComanda or = new ComandaNueva.frmComanda(Program.iIdOrigenOrden, Program.sDescripcionOrigenOrden, 0, 0, 0, "", Program.CAJERO_ID, Program.CAJERO_ID, Program.sNombreCajero, "NINGUNA", iIdRepartidor_Recuperado, 0, iIdPersona);
                        or.ShowDialog();
                        this.DialogResult = DialogResult.OK;
                        this.Close();
                        //=======================================================================================================================

                        //Orden or = new Orden(Program.iIdOrigenOrden, Program.sDescripcionOrigenOrden, 0, 0, 0, "", iIdPersona, Program.CAJERO_ID, Program.CAJERO_ID, Program.sNombreCajero, 0, iIdRepartidor_Recuperado);
                        //or.ShowDialog();
                        //this.DialogResult = DialogResult.OK;
                        //this.Close();
                    }
                }

                else
                {
                    //ACTUALIZACION ELVIS COMANDA
                    //=======================================================================================================================
                    ComandaNueva.frmComanda or = new ComandaNueva.frmComanda(Program.iIdOrigenOrden, Program.sDescripcionOrigenOrden, 0, 0, 0, "", Program.CAJERO_ID, Program.CAJERO_ID, Program.sNombreCajero, "NINGUNA", Program.iIdPosRepartidor, 0, iIdPersona);
                    or.ShowDialog();
                    this.DialogResult = DialogResult.OK;
                    this.Close();
                    //=======================================================================================================================

                    //Orden or = new Orden(Program.iIdOrigenOrden, Program.sDescripcionOrigenOrden, 0, 0, 0, "", iIdPersona, Program.CAJERO_ID, Program.CAJERO_ID, Program.sNombreCajero, 0, Program.iIdPosRepartidor);
                    //or.ShowDialog();
                    //this.DialogResult = DialogResult.OK;
                    //this.Close();
                }
            }
        }
Ejemplo n.º 6
0
        private void btnEditar_Click(object sender, EventArgs e)
        {
            //ACTUALIZACION ELVIS COMANDA
            //=======================================================================================================================
            ComandaNueva.frmComanda o = new ComandaNueva.frmComanda(Convert.ToInt32(sIdOrden), "OK");
            o.ShowDialog();
            this.DialogResult = DialogResult.OK;
            //=======================================================================================================================

            //Orden o = new Orden(iIdOrigenOrden, sDescripcionOrigen, iNumeroPersonas, iIdMesa, Convert.ToInt32(sIdOrden), "OK", iIdPersona, iIdCajero, iIdMesero, sNombreMesero, 0, 0);
            //o.ShowDialog();
            //this.DialogResult = DialogResult.OK;
        }
Ejemplo n.º 7
0
        //FUNCION PARA RECUPERAR LOS DATOS DE LA COMANDA
        private void recuperarComanda(int iIdPedido_P)
        {
            try
            {
                //ACTUALIZACION ELVIS COMANDA
                //=======================================================================================================================
                ComandaNueva.frmComanda o = new ComandaNueva.frmComanda(iIdPedido_P, "OK");
                o.ShowDialog();
                this.Close();
                //=======================================================================================================================
            }

            catch (Exception ex)
            {
                catchMensaje = new VentanasMensajes.frmMensajeCatch();
                catchMensaje.LblMensaje.Text = ex.Message;
                catchMensaje.ShowDialog();
            }
        }
Ejemplo n.º 8
0
        private void btnDuplicar_Click(object sender, EventArgs e)
        {
            if (iIdPedido == 0)
            {
                ok = new VentanasMensajes.frmMensajeNuevoOk();
                ok.lblMensaje.Text = "Favor seleccione el pedido a duplicar.";
                ok.ShowDialog(); return;
            }

            SiNo = new VentanasMensajes.frmMensajeNuevoSiNo();
            SiNo.lblMensaje.Text = "¿Está seguro que desea duplicar la comanda seleccionada?";
            SiNo.ShowDialog();

            if (SiNo.DialogResult == DialogResult.OK)
            {
                SiNo.Close();

                if ((sCodigoOrigen == "01") || (sCodigoOrigen == "02") || (sCodigoOrigen == "03") || (sCodigoOrigen == "04") ||
                    (sCodigoOrigen == "05") || (sCodigoOrigen == "06") || (sCodigoOrigen == "07") || (sCodigoOrigen == "08"))
                {
                    ComandaNueva.frmComanda comanda = new ComandaNueva.frmComanda(iIdPedido, "COPIAR");
                    comanda.ShowDialog();
                }

                else if (sCodigoOrigen == "10")
                {
                    Comida_Rapida.frmComandaComidaRapida comanda = new Comida_Rapida.frmComandaComidaRapida(iIdPedido);
                    comanda.ShowDialog();
                }

                else
                {
                    ok = new VentanasMensajes.frmMensajeNuevoOk();
                    ok.lblMensaje.Text = "El sistema no permite duplicar este tipo de comandas.";
                    ok.ShowDialog();
                }
            }
        }
Ejemplo n.º 9
0
        private void btnFuncionarios_Click(object sender, EventArgs e)
        {
            llenarArregloMaximo();
            ingresaBoton(btnFuncionarios);

            Program.sIDPERSONA = null;
            consultarDatos("05", "13");

            frmVerificadorOrigen verificador = new frmVerificadorOrigen(Program.sDescripcionOrigenOrden);

            verificador.ShowDialog();

            if (verificador.DialogResult == DialogResult.OK)
            {
                //ACTUALIZACION ELVIS COMANDA
                //=======================================================================================================================
                ComandaNueva.frmComanda or = new ComandaNueva.frmComanda(Program.iIdOrigenOrden, Program.sDescripcionOrigenOrden, 0, 0, 0, "", Program.CAJERO_ID, Program.iIdMesero, Program.nombreMesero, "NINGUNA", 0, 0, Program.iIdPersona);
                or.ShowDialog();
                //=======================================================================================================================

                //Orden or = new Orden(Program.iIdOrigenOrden, Program.sDescripcionOrigenOrden, 0, 0, 0, "", Program.iIdPersona, Program.CAJERO_ID, Program.iIdMesero, Program.nombreMesero, 0, 0);
                //or.ShowDialog();
            }
        }
Ejemplo n.º 10
0
        private void btnAceptar_Click(object sender, EventArgs e)
        {
            if (txtIdentificacion.Text == "" || txtNombreEmpleado.Text == "")
            {
                ok.LblMensaje.Text = "Por favor, seleccione un empleado.";
                ok.ShowDialog();
            }
            else
            {
                consultarDatos("06");
                //Program.dbValorPorcentaje = 25;
                Program.dbDescuento = Program.descuento_empleados / 100;
                frmVerificadorOrigen verificador = new frmVerificadorOrigen(Program.sDescripcionOrigenOrden);
                verificador.ShowDialog();

                if (verificador.DialogResult == DialogResult.OK)
                {
                    //ACTUALIZACION ELVIS COMANDA
                    //=======================================================================================================================
                    this.DialogResult = DialogResult.OK;
                    ComandaNueva.frmComanda or = new ComandaNueva.frmComanda(Program.iIdOrigenOrden, Program.sDescripcionOrigenOrden, 0, 0, 0, "", Program.CAJERO_ID, Program.iIdMesero, Program.nombreMesero, "NINGUNA", 0, 0, iIdEmpleado);
                    Program.sIDPERSONA = iIdEmpleado.ToString();
                    or.ShowDialog();
                    verificador.Close();
                    this.Close();
                    //=======================================================================================================================

                    //this.DialogResult = DialogResult.OK;
                    //Orden or = new Orden(Program.iIdOrigenOrden, Program.sDescripcionOrigenOrden, 0, 0, 0, "", iIdEmpleado, Program.CAJERO_ID, Program.CAJERO_ID, Program.sNombreCajero, 0, 0);
                    //Program.sIDPERSONA = iIdEmpleado.ToString();
                    //or.ShowDialog();
                    //verificador.Close();
                    //this.Close();
                }
            }
        }
Ejemplo n.º 11
0
        private void btnTerminar_Click(object sender, EventArgs e)
        {
            try
            {
                if ((txtIdentificacion.Text == "") || (txtSector.Text == ""))
                {
                    ok.LblMensaje.Text = "Favor rellene los campos para el domicilio";
                    ok.ShowDialog();
                }

                else
                {
                    Program.sIDPERSONA      = sIdPersona;
                    Program.sIdentificacion = txtIdentificacion.Text.Trim();

                    //ACTUALIZACION ELVIS COMANDA
                    //=======================================================================================================================
                    ComandaNueva.frmComanda or = new ComandaNueva.frmComanda(Program.iIdOrigenOrden, Program.sDescripcionOrigenOrden, 0, 0, 0, "", Program.CAJERO_ID, Program.iIdMesero, Program.sNombreCajero, "NINGUNA", Program.iIdPosRepartidor, 0, Convert.ToInt32(sIdPersona));
                    or.ShowDialog();
                    this.DialogResult = DialogResult.OK;
                    this.Close();
                    //=======================================================================================================================

                    //Orden or = new Orden(Program.iIdOrigenOrden, Program.sDescripcionOrigenOrden, 0, 0, 0, "", Convert.ToInt32(sIdPersona), Program.CAJERO_ID, Program.CAJERO_ID, Program.sNombreCajero, 0, Program.iIdPosRepartidor);
                    //or.ShowDialog();
                    //this.DialogResult = DialogResult.OK;
                    //this.Close();
                }
            }

            catch (Exception ex)
            {
                catchMensaje.LblMensaje.Text = ex.Message;
                catchMensaje.ShowDialog();
            }
        }
Ejemplo n.º 12
0
        //FUNCION PARA CONSULTAR Y PERMITIR EL ACCESO A LA COMANDA
        private void abrirMenuComanda()
        {
            try
            {
                if (iBanderaPersonas == 1)
                {
                    Program.iNuevoNumeroPersonas = Convert.ToInt32(txtValor.Text);
                    this.DialogResult            = DialogResult.OK;
                    this.Close();
                }
                else
                {
                    //int numeroMaximo = 99;

                    if (txtValor.Text.Trim() == "")
                    {
                        ok = new VentanasMensajes.frmMensajeOK();
                        ok.LblMensaje.Text = "Favor ingrese la cantidad de personas para la mesa.";
                        ok.ShowDialog();

                        txtValor.Focus();
                        txtValor.SelectionStart = txtValor.Text.Trim().Length;
                    }

                    else if (Convert.ToInt32(txtValor.Text.Trim()) > 99)
                    {
                        ok = new VentanasMensajes.frmMensajeOK();
                        ok.LblMensaje.Text = "El número de Personas ha excedido el límite.";
                        ok.ShowDialog();
                        txtValor.Text = "";

                        txtValor.Focus();
                        txtValor.SelectionStart = txtValor.Text.Trim().Length;
                    }

                    else if (Convert.ToInt32(txtValor.Text.Trim()) == 0)
                    {
                        ok = new VentanasMensajes.frmMensajeOK();
                        ok.LblMensaje.Text = "El número de Personas debe ser diferente de 0.";
                        ok.ShowDialog();
                        txtValor.Text = "";

                        txtValor.Focus();
                        txtValor.SelectionStart = txtValor.Text.Trim().Length;
                    }

                    else if ((lblMesero.Text == "MESERO") && (Program.iLeerMesero == 1))
                    {
                        ok = new VentanasMensajes.frmMensajeOK();
                        ok.LblMensaje.Text = "Favor seleccione un mesero para continuar.";
                        ok.ShowDialog();

                        txtValor.Focus();
                        txtValor.SelectionStart = txtValor.Text.Trim().Length;
                    }

                    else
                    {
                        //Program.iIdMesero = Convert.ToInt32(cmbMesero.SelectedValue);
                        //Program.nombreMesero = cmbMesero.Text;

                        if (Program.iLeerMesero == 1)
                        {
                            Program.iIdMesero    = iIdMesero;
                            Program.nombreMesero = lblMesero.Text;
                        }

                        else
                        {
                            iIdMesero = Program.iIdMesero;
                        }

                        //ACTUALIZACION ELVIS COMANDA

                        int iIdPersona_Rec;

                        if (Program.iBanderaConsumoVale == 1)
                        {
                            iIdPersona_Rec = Program.iIdPersonaConsumoVale;
                        }
                        else
                        {
                            iIdPersona_Rec = Program.iIdPersona;
                        }

                        //=======================================================================================================================
                        ComandaNueva.frmComanda o = new ComandaNueva.frmComanda(Program.iIdOrigenOrden, Program.sDescripcionOrigenOrden, Convert.ToInt32(txtValor.Text.Trim()), iIdMesa, 0, "", Program.CAJERO_ID, iIdMesero, sNombreMesero, Program.sNombreMesa, 0, 0, iIdPersona_Rec);
                        this.DialogResult = DialogResult.OK;
                        o.ShowDialog();
                        //=======================================================================================================================

                        //Orden o = new Orden(Program.iIdOrigenOrden, Program.sDescripcionOrigenOrden, Convert.ToInt32(txtValor.Text.Trim()), iIdMesa, 0, "", Program.iIdPersona, Program.CAJERO_ID, iIdMesero, sNombreMesero, 0, 0);
                        //this.DialogResult = DialogResult.OK;
                        //o.ShowDialog();
                    }
                }
            }
            catch (Exception ex)
            {
                catchMensaje = new VentanasMensajes.frmMensajeCatch();
                catchMensaje.LblMensaje.Text = ex.Message;
                catchMensaje.ShowDialog();
            }
        }
Ejemplo n.º 13
0
        //=================================================================================================
        private void insertarPedido()
        {
            try
            {
                sFecha = Program.sFechaSistema.ToString("yyyy/MM/dd");

                //EXTRAER EL NUMERO DE PEDIDO DE LA TABLA TP_LOCALIDADES_IMPRESORAS
                sSql  = "";
                sSql += "select numero_pedido" + Environment.NewLine;
                sSql += "from tp_localidades_impresoras" + Environment.NewLine;
                sSql += "where id_localidad = " + Program.iIdLocalidad + Environment.NewLine;
                sSql += "and estado = 'A'";

                dtConsulta = new DataTable();
                dtConsulta.Clear();

                bRespuesta = conexion.GFun_Lo_Busca_Registro(dtConsulta, sSql);

                if (bRespuesta == true)
                {
                    if (dtConsulta.Rows.Count > 0)
                    {
                        iNumeroPedido = Convert.ToInt32(dtConsulta.Rows[0][0].ToString());
                    }
                }

                else
                {
                    catchMensaje.LblMensaje.Text = sSql;
                    catchMensaje.ShowDialog();
                    goto reversa;
                }

                //INSTRUCCION PARA INSERTAR EN LA TABLA CV403_CAB_PEDIDOS
                sSql  = "";
                sSql += "Insert Into cv403_cab_pedidos (idEmpresa, cg_empresa, Id_Localidad," + Environment.NewLine;
                sSql += "Fecha_Pedido, id_persona, Cg_Tipo_Cliente, Cg_Moneda, Porcentaje_Iva," + Environment.NewLine;
                sSql += "id_vendedor, Fabricante, referencia, Comentarios, cg_estado_Pedido," + Environment.NewLine;
                sSql += "Porcentaje_Dscto, Cg_Facturado, Fecha_Ingreso, Usuario_Ingreso," + Environment.NewLine;
                sSql += "Terminal_Ingreso, Estado, numero_replica_trigger, numero_control_replica, porcentaje_servicio, id_pos_cierre_cajero) " + Environment.NewLine;
                sSql += "Values (" + Environment.NewLine;
                sSql += Program.iIdEmpresa + ", " + Program.iCgEmpresa + ", " + Program.iIdLocalidad + "," + Environment.NewLine;
                sSql += "'" + sFecha + "', " + Program.iIdPersona + ", 8032, " + Program.iMoneda + "," + Environment.NewLine;
                sSql += (Program.iva * 100) + ", " + Program.iIdVendedor + ", 78, '', '', 6967, 0, 7469," + Environment.NewLine;
                sSql += "GETDATE(), '" + Program.sDatosMaximo[0] + "', '" + Program.sDatosMaximo[1] + "'," + Environment.NewLine;
                sSql += "'A', 0, 0, " + (Program.servicio * 100) + ", " + Program.iIdPosCierreCajero + ")";

                //EJECUTA INSTRUCCION SQL
                if (!conexion.GFun_Lo_Ejecuta_SQL(sSql))
                {
                    catchMensaje.LblMensaje.Text = sSql;
                    catchMensaje.ShowDialog();
                    goto reversa;
                }

                //PROCEDIMINTO PARA EXTRAER EL ID DE LA TABLA CV403_CAB_PEDIDOS
                dtConsulta = new DataTable();
                dtConsulta.Clear();

                sTabla = "cv403_cab_pedidos";
                sCampo = "Id_Pedido";

                iMaximo = conexion.GFun_Ln_Saca_Maximo_ID(sTabla, sCampo, "", Program.sDatosMaximo);

                if (iMaximo == -1)
                {
                    ok.LblMensaje.Text = "No se pudo obtener el codigo de la tabla " + sTabla;
                    ok.ShowDialog();
                    goto reversa;
                }

                else
                {
                    iIdCabPedido_F = Convert.ToInt32(iMaximo);
                }

                //INSTRUCCION PARA INSERTAR EN LA TABLA CV403_CAB_DESPACHOS
                sSql  = "";
                sSql += "Insert Into cv403_cab_despachos (idEmpresa, id_persona, cg_empresa, Id_Localidad," + Environment.NewLine;
                sSql += "Fecha_Despacho, Cg_Motivo_Despacho, Id_Destinatario, Punto_Partida, Cg_Ciudad_Entrega," + Environment.NewLine;
                sSql += "Direccion_Entrega, Id_Transportador, Fecha_Inicio_Transporte, Fecha_Fin_Transporte," + Environment.NewLine;
                sSql += "cg_estado_Despacho, Punto_Venta, Comentarios, Fecha_Ingreso, Usuario_Ingreso, Terminal_Ingreso," + Environment.NewLine;
                sSql += "Estado, numero_replica_trigger, numero_control_replica)" + Environment.NewLine;
                sSql += "Values (" + Environment.NewLine;
                sSql += Program.iIdEmpresa + ", " + Program.iIdPersona + ", " + Program.iCgEmpresa + ", " + Program.iIdLocalidad + "," + Environment.NewLine;
                sSql += "'" + sFecha + "', 6972, " + Program.iIdPersona + ", '" + Program.sCiudadDefault + "'," + Environment.NewLine;
                sSql += "0, '" + Program.sCiudadDefault + "', " + Program.iIdPersona + ", '" + sFecha + "'," + Environment.NewLine;
                sSql += "'" + sFecha + "', 6970, 1, '', GETDATE(), '" + Program.sDatosMaximo[0] + "'," + Environment.NewLine;
                sSql += "'" + Program.sDatosMaximo[1] + "', 'A', 0, 0)";

                //EJECUTA INSTRUCCION SQL
                if (!conexion.GFun_Lo_Ejecuta_SQL(sSql))
                {
                    catchMensaje.LblMensaje.Text = sSql;
                    catchMensaje.ShowDialog();
                    goto reversa;
                }

                //PROCEDIMINTO PARA EXTRAER EL ID DE LA TABLA CV403_CAB_DESPACHOS
                dtConsulta = new DataTable();
                dtConsulta.Clear();

                sTabla = "cv403_cab_despachos";
                sCampo = "Id_Despacho";

                iMaximo = conexion.GFun_Ln_Saca_Maximo_ID(sTabla, sCampo, "", Program.sDatosMaximo);

                if (iMaximo == -1)
                {
                    ok.LblMensaje.Text = "No se pudo obtener el codigo de la tabla " + sTabla;
                    ok.ShowDialog();
                    goto reversa;
                }

                else
                {
                    iIdCabDespacho_F = Convert.ToInt32(iMaximo);
                }

                //INSTRUCCION PARA INSERTAR EN LA TABLA CV403_DESPACHOS_PEDIDOS
                sSql  = "";
                sSql += "Insert Into cv403_despachos_pedidos (Id_Despacho, Id_Pedido, fecha_ingreso," + Environment.NewLine;
                sSql += "usuario_ingreso, terminal_ingreso, Estado, numero_replica_trigger, numero_control_replica)" + Environment.NewLine;
                sSql += "Values (" + Environment.NewLine;
                sSql += iIdCabDespacho_F + ", " + iIdCabPedido_F + ", GETDATE(), '" + Program.sDatosMaximo[0] + "'," + Environment.NewLine;
                sSql += "'" + Program.sDatosMaximo[1] + "', 'A', 0, 0)";

                //EJECUTA INSTRUCCION SQL
                if (!conexion.GFun_Lo_Ejecuta_SQL(sSql))
                {
                    catchMensaje.LblMensaje.Text = sSql;
                    catchMensaje.ShowDialog();
                    goto reversa;
                }

                //PROCEDIMINTO PARA EXTRAER EL ID DE LA TABLA CV403_DESPACHOS_PEDIDOS
                dtConsulta = new DataTable();
                dtConsulta.Clear();

                sTabla = "cv403_despachos_pedidos";
                sCampo = "Id_Despacho_Pedido";

                iMaximo = conexion.GFun_Ln_Saca_Maximo_ID(sTabla, sCampo, "", Program.sDatosMaximo);

                if (iMaximo == -1)
                {
                    ok.LblMensaje.Text = "No se pudo obtener el codigo de la tabla " + sTabla;
                    ok.ShowDialog();
                    goto reversa;
                }

                else
                {
                    iIdDespachoPedido_F = Convert.ToInt32(iMaximo);
                }

                //INSTRUCCION PARA INSERTAR EN  LA TABLA CV403_NUMERO_CAB_PEDIDO
                sSql  = "";
                sSql  = "insert into cv403_numero_cab_pedido (" + Environment.NewLine;
                sSql += "idtipocomprobante,id_pedido, numero_pedido," + Environment.NewLine;
                sSql += "fecha_ingreso, usuario_ingreso, terminal_ingreso, estado," + Environment.NewLine;
                sSql += "numero_control_replica, numero_replica_trigger)" + Environment.NewLine;
                sSql += "values (" + Environment.NewLine;
                sSql += "1," + iIdCabPedido_F + ", " + iNumeroPedido + ", GETDATE()," + Environment.NewLine;
                sSql += "'" + Program.sDatosMaximo[0] + "', '" + Program.sDatosMaximo[1] + "', 'A', 0, 0)";

                if (!conexion.GFun_Lo_Ejecuta_SQL(sSql))
                {
                    catchMensaje.LblMensaje.Text = sSql;
                    catchMensaje.ShowDialog();
                    goto reversa;
                }

                //ACTUALIZAR EL NUMERO DE PEDIDO EN LA TABLA TP_LOCALIDADES_IMPRESORAS
                sSql  = "";
                sSql += "update tp_localidades_impresoras set" + Environment.NewLine;
                sSql += "numero_pedido = numero_pedido + 1" + Environment.NewLine;
                sSql += "where id_localidad = " + Program.iIdLocalidad + Environment.NewLine;
                sSql += "and estado = 'A'";

                if (!conexion.GFun_Lo_Ejecuta_SQL(sSql))
                {
                    catchMensaje.LblMensaje.Text = sSql;
                    catchMensaje.ShowDialog();
                    goto reversa;
                }

                //INSTRUCCION PARA INSERTAR EN LA TABLA CV403_DET_PEDIDOS
                sSql  = "";
                sSql += "Insert Into cv403_det_pedidos(Id_Pedido, id_producto, Cg_Unidad_Medida, precio_unitario," + Environment.NewLine;
                sSql += "Cantidad, Valor_Dscto, Valor_Ice, Valor_Iva, comentario, Id_Definicion_Combo," + Environment.NewLine;
                sSql += "fecha_ingreso, Usuario_Ingreso, Terminal_ingreso, Estado, numero_replica_trigger, numero_control_replica)" + Environment.NewLine;
                sSql += "Values (" + Environment.NewLine;
                sSql += iIdCabPedido_F + ", " + Program.iIdProductoAnular + ", 546, " + Program.dValorProductoAnular + "," + Environment.NewLine;
                sSql += "1, 0, 0, " + (Program.iva * 100) + ", '', null, GETDATE(), '" + Program.sDatosMaximo[0] + "'," + Environment.NewLine;
                sSql += "'" + Program.sDatosMaximo[1] + "', 'A', 0, 0)";

                //EJECUTA INSTRUCCION SQL
                if (!conexion.GFun_Lo_Ejecuta_SQL(sSql))
                {
                    catchMensaje.LblMensaje.Text = sSql;
                    catchMensaje.ShowDialog();
                    goto reversa;
                }

                //INSTRUCCION PARA INSERTAR EN LA TABLA CV403_CANTIDADES_DESPACHADAS
                sSql  = "";
                sSql += "Insert Into cv403_cantidades_despachadas (Id_Despacho_Pedido, id_producto," + Environment.NewLine;
                sSql += "Cantidad, Estado, numero_replica_trigger, numero_control_replica) " + Environment.NewLine;
                sSql += "Values (" + Environment.NewLine;
                sSql += iIdDespachoPedido_F + ", " + Program.iIdProductoAnular + ", 1, 'A', 0, 0)";

                //EJECUTA INSTRUCCION SQL
                if (!conexion.GFun_Lo_Ejecuta_SQL(sSql))
                {
                    catchMensaje.LblMensaje.Text = sSql;
                    catchMensaje.ShowDialog();
                    goto reversa;
                }

                //INSTRUCCION PARA INSERTAR EN LA TABLA CV403_EVENTOS_COBROS
                sSql  = "";
                sSql += "Insert Into cv403_eventos_cobros (idEmpresa, cg_empresa, id_persona, Id_Localidad," + Environment.NewLine;
                sSql += "Cg_Evento_Cobro, Cg_Moneda, Valor,Fecha_Ingreso, Usuario_Ingreso, Terminal_Ingreso," + Environment.NewLine;
                sSql += "Estado, numero_replica_trigger, numero_control_replica)" + Environment.NewLine;
                sSql += "Values (" + Environment.NewLine;
                sSql += Program.iIdEmpresa + ", " + Program.iCgEmpresa + ", " + Program.iIdPersona + "," + Environment.NewLine;
                sSql += Program.iIdLocalidad + ", 7466, " + Program.iMoneda + ", " + Program.dValorProductoAnular + "," + Environment.NewLine;
                sSql += "GETDATE(), '" + Program.sDatosMaximo[0] + "', '" + Program.sDatosMaximo[1] + "', 'A', 0, 0)";

                //EJECUTA INSTRUCCION SQL
                if (!conexion.GFun_Lo_Ejecuta_SQL(sSql))
                {
                    catchMensaje.LblMensaje.Text = sSql;
                    catchMensaje.ShowDialog();
                    goto reversa;
                }

                //PROCEDIMINTO PARA EXTRAER EL ID DE LA TABLA CV403_EVENTOS_COBROS
                dtConsulta = new DataTable();
                dtConsulta.Clear();

                sTabla = "cv403_eventos_cobros ";
                sCampo = "id_evento_cobro";

                iMaximo = conexion.GFun_Ln_Saca_Maximo_ID(sTabla, sCampo, "", Program.sDatosMaximo);

                if (iMaximo == -1)
                {
                    ok.LblMensaje.Text = "No se pudo obtener el codigo de la tabla " + sTabla;
                    ok.ShowDialog();
                    goto reversa;
                }

                else
                {
                    iIdEventoCobro_F = Convert.ToInt32(iMaximo);
                }

                //INSTRUCCIONES PARA OBTENER DATOS DE LAS TABLAS CV403_FACTURAS_PEDIDOS Y CV403_NUMEROS_FACTURAS
                sSql  = "";
                sSql += "select FP.id_facturas_pedidos, FP.id_factura, NF.numero_factura" + Environment.NewLine;
                sSql += "from cv403_facturas_pedidos FP, cv403_numeros_facturas NF" + Environment.NewLine;
                sSql += "where FP.id_factura = NF.id_factura" + Environment.NewLine;
                sSql += "and FP.id_pedido = " + Convert.ToInt32(sIdOrden) + Environment.NewLine;
                sSql += "and FP.estado = 'A'" + Environment.NewLine;
                sSql += "and NF.estado = 'A'" + Environment.NewLine;

                dtConsulta = new DataTable();
                dtConsulta.Clear();

                bRespuesta = conexion.GFun_Lo_Busca_Registro(dtConsulta, sSql);

                if (bRespuesta == true)
                {
                    if (dtConsulta.Rows.Count > 0)
                    {
                        iIdFacturasPedidos_F = Convert.ToInt32(dtConsulta.Rows[0][0].ToString());
                        iIdFactura_F         = Convert.ToInt32(dtConsulta.Rows[0][1].ToString());
                        iNumeroFactura_F     = Convert.ToInt32(dtConsulta.Rows[0][2].ToString());
                    }

                    else
                    {
                        ok.LblMensaje.Text = "No existen datos en las tablas cv403_facturas_pedidos" + Environment.NewLine + "y" + Environment.NewLine + "cv403_numeros_facturas";
                        ok.ShowDialog();
                        goto reversa;
                    }
                }

                else
                {
                    catchMensaje.LblMensaje.Text = sSql;
                    catchMensaje.ShowDialog();
                    goto reversa;
                }

                //INSTRUCCION PARA INSERTAR EL MOTIVO DE ANULACIÓN DE LA FACTURA
                sSql  = "";
                sSql += "insert into pos_anulacion_factura (" + Environment.NewLine;
                sSql += "id_factura, motivo_anulacion, estado, fecha_ingreso," + Environment.NewLine;
                sSql += "usuario_ingreso, terminal_ingreso)" + Environment.NewLine;
                sSql += "values (" + Environment.NewLine;
                sSql += iIdFactura_F + ", '" + sMotivoAnulacion + "', 'A'," + Environment.NewLine;
                sSql += "GETDATE(), '" + Program.sDatosMaximo[0] + "', '" + Program.sDatosMaximo[1] + "')";

                if (!conexion.GFun_Lo_Ejecuta_SQL(sSql))
                {
                    catchMensaje.LblMensaje.Text = sSql;
                    catchMensaje.ShowDialog();
                    goto reversa;
                }

                //INSTRUCCION PARA INSERTAR EN LA TABLA CV403_DCTOS_POR_COBRAR
                sSql  = "";
                sSql += "Insert Into cv403_dctos_por_cobrar (id_evento_cobro, cg_tipo_documento," + Environment.NewLine;
                sSql += "id_factura, Numero_Documento, Fecha_Vcto, Cg_moneda, Valor, cg_estado_dcto," + Environment.NewLine;
                sSql += "Estado, Fecha_Ingreso, Usuario_Ingreso, Terminal_Ingreso," + Environment.NewLine;
                sSql += "numero_replica_trigger, numero_control_replica)" + Environment.NewLine;
                sSql += "Values (" + Environment.NewLine;
                sSql += iIdEventoCobro_F + ", 2725, " + iIdFactura_F + ", " + iNumeroFactura_F + "," + Environment.NewLine;
                sSql += "'" + sFecha + "', " + Program.iMoneda + ", " + Program.dValorProductoAnular + ", 7460," + Environment.NewLine;
                sSql += "'A', GETDATE(), '" + Program.sDatosMaximo[0] + "', '" + Program.sDatosMaximo[1] + "', 0, 0)";

                //EJECUTA INSTRUCCION SQL
                if (!conexion.GFun_Lo_Ejecuta_SQL(sSql))
                {
                    catchMensaje.LblMensaje.Text = sSql;
                    catchMensaje.ShowDialog();
                    goto reversa;
                }

                //INSTRUCCION PARA ACTUALIZAR EL ID DEL PEDIDO EN LA TABLA CV403_FACTURAS_PEDIDOS
                sSql  = "";
                sSql += "update cv403_facturas_pedidos set" + Environment.NewLine;
                sSql += "id_pedido = " + iIdCabPedido_F + Environment.NewLine;
                sSql += "where id_facturas_pedidos = " + iIdFacturasPedidos_F;

                //EJECUTA INSTRUCCION SQL
                if (!conexion.GFun_Lo_Ejecuta_SQL(sSql))
                {
                    catchMensaje.LblMensaje.Text = sSql;
                    catchMensaje.ShowDialog();
                    goto reversa;
                }

                //INSTRUCCION PARA DEJAR LOS CAMPOS NULOS EN CV403_DCTOS_POR_COBRAR
                sSql  = "";
                sSql += "update cv403_dctos_por_cobrar set" + Environment.NewLine;
                sSql += "id_factura = null," + Environment.NewLine;
                sSql += "numero_documento = null" + Environment.NewLine;
                sSql += "where id_pedido = " + Convert.ToInt32(sIdOrden);

                //EJECUTA INSTRUCCION SQL
                if (!conexion.GFun_Lo_Ejecuta_SQL(sSql))
                {
                    catchMensaje.LblMensaje.Text = sSql;
                    catchMensaje.ShowDialog();
                    goto reversa;
                }

                if (eliminarPagos() == false)
                {
                    goto reversa;
                }

                //INSTRUCCION PARA CAMBIAR EL ESTADO A ABIERTA DE LA ORDEN
                sSql  = "";
                sSql += "update cv403_cab_pedidos set" + Environment.NewLine;
                sSql += "estado_orden = 'Abierta'," + Environment.NewLine;
                sSql += "recargo_tarjeta = 0," + Environment.NewLine;
                sSql += "remover_iva = 0" + Environment.NewLine;
                sSql += "where id_pedido = " + Convert.ToInt32(sIdOrden);

                //EJECUTA INSTRUCCION SQL
                if (!conexion.GFun_Lo_Ejecuta_SQL(sSql))
                {
                    catchMensaje.LblMensaje.Text = sSql;
                    catchMensaje.ShowDialog();
                    goto reversa;
                }

                conexion.GFun_Lo_Maneja_Transaccion(Program.G_TERMINA_TRANSACCION);

                consultarRegistro();

                //ABRIR EL FORMULARIO DE ORDEN
                //ACTUALIZACION ELVIS COMANDA
                //=======================================================================================================================
                ComandaNueva.frmComanda o = new ComandaNueva.frmComanda(Convert.ToInt32(sIdOrden), "OK");
                o.ShowDialog();
                this.DialogResult       = DialogResult.OK;
                Program.iBanderaReabrir = 1;
                //=======================================================================================================================

                //Orden o = new Orden(iIdOrigenOrden, sDescripcionOrigen, iNumeroPersonas, iIdMesa, Convert.ToInt32(sIdOrden), "OK", Program.iIdPersona, iIdCajero, iIdMesero, sNombreMesero, 0, 0);
                //o.ShowDialog();
                //this.DialogResult = DialogResult.OK;
                //Program.iBanderaReabrir = 1;

                goto fin;
            }

            catch (Exception ex)
            {
                catchMensaje.LblMensaje.Text = ex.Message;
                catchMensaje.ShowDialog();
            }

reversa:
            {
                conexion.GFun_Lo_Maneja_Transaccion(Program.G_REVERSA_TRANSACCION);
            }

            fin : { }
        }