Esempio n. 1
0
        public override void proGrabar()
        {
            base.proGrabar();
            try {
                //Eliminamos las filas vacias del detalle de documentos preliminares
                objDetalle.RemoveAll(p => p.CueCodigo.Equals(""));
                //Verificamos las validaciones de los campos requeridos
                if (!varBanValidaciones)
                {
                    return;
                }

                var csRegistro = new clsFinDocPreliminarCab()
                {
                    CabCodigo = this.txtCodigo.Text.Equals("") ? 0 : int.Parse(this.txtCodigo.Text),
                    DocCodigo = this.txtCodSerie.Text.Equals("") ? 0 : int.Parse(this.txtCodSerie.Text),
                    CabNumero = this.txtNumero.Text.Equals("") ? 0 : int.Parse(this.txtNumero.Text),

                    CabFecha = (DateTime)this.datFecha.EditValue,

                    DocNombre      = this.txtNomSerie.Text,
                    CabComentario  = this.txtComentario.Text,
                    CabReferencia1 = this.txtReferencia1.Text,
                    CabReferencia2 = this.txtReferencia2.Text,
                    CabRuta        = this.butExaminar.Text,
                };
                //Enviamos la informacion a la base de datos
                int varCodigo = csRegistro.funMantenimiento(varOpeCodigo, objDetalle);
                switch (varOpeCodigo)
                {
                case 1:
                    XtraMessageBox.Show(string.Format("Registro ingresado con el nro: {0}", varCodigo), "Informacion", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    break;

                case 2:
                    XtraMessageBox.Show("Registro ha sido actualizado", "Informacion", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    break;
                }
                this.Close();
            }
            catch (Exception ex) {
                XtraMessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
        private void btnEnviarSAP_Click(object sender, EventArgs e)
        {
            try {
                int varRegistro = 0;
                //Verificamos si selecciono una sola fila
                if (grvListado.GetSelectedRows().Length.Equals(0))
                {
                    //Recuperamos el codigo del documento seleccionado
                    varCodDocumento = ((clsFinDocPreliminarCab)this.grvListado.GetRow(this.grvListado.FocusedRowHandle)).DocCodigo;
                    int varCuantos = clsSegAccFormulario.funAccesoOperacion(clsVariablesGlobales.varCodUsuario, varCodFormulario, varCodDocumento, 10);
                    //Si ya ha sido enviado a SAP terminamos el proceso
                    if (varCuantos.Equals(0))
                    {
                        XtraMessageBox.Show("El usuario no tiene acceso para enviar a SAP el documento seleccionado", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return;
                    }
                    //Recuperamos el codigo interno del registro de laboratorio
                    varRegistro = ((clsFinDocPreliminarCab)this.grvListado.GetRow(this.grvListado.FocusedRowHandle)).CabCodigo;
                    clsFinDocPreliminarCab csFinDocPreliminar = clsFinDocPreliminarCab.funListar(string.Format("Where a.CabCodigo = {0}", varRegistro))[0];
                    string varMensaje = csFinDocPreliminar.funEnviarDocPreliminarSAP();

                    if (varMensaje.Equals(""))
                    {
                        XtraMessageBox.Show(string.Format("Registro nro {0} enviado a SAP", csFinDocPreliminar.CabNumero), "Informacion", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                    else
                    {
                        XtraMessageBox.Show(string.Format("Registro nro {0} presento el siguiente error: {1}", csFinDocPreliminar.CabNumero, varMensaje), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
                else
                {
                    foreach (int varPosicion in this.grvListado.GetSelectedRows())
                    {
                        //Recuperamos el codigo del documento seleccionado
                        varCodDocumento = ((clsFinDocPreliminarCab)this.grvListado.GetRow(varPosicion)).DocCodigo;
                        int varCuantos = clsSegAccFormulario.funAccesoOperacion(clsVariablesGlobales.varCodUsuario, varCodFormulario, varCodDocumento, 10);
                        //Si ya ha sido enviado a SAP terminamos el proceso
                        if (varCuantos.Equals(0))
                        {
                            XtraMessageBox.Show("El usuario no tiene acceso para enviar a SAP el documento seleccionado", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return;
                        }
                        //Recuperamos el codigo interno del registro de laboratorio
                        varRegistro = ((clsFinDocPreliminarCab)this.grvListado.GetRow(varPosicion)).CabCodigo;
                        clsFinDocPreliminarCab csFinDocPreliminar = clsFinDocPreliminarCab.funListar(string.Format("Where a.CabCodigo = {0}", varRegistro))[0];
                        string varMensaje = csFinDocPreliminar.funEnviarDocPreliminarSAP();

                        if (varMensaje.Equals(""))
                        {
                            XtraMessageBox.Show(string.Format("Registro nro {0} enviado a SAP", csFinDocPreliminar.CabNumero), "Informacion", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        }
                        else
                        {
                            XtraMessageBox.Show(string.Format("Registro nro {0} presento el siguiente error: {1}", csFinDocPreliminar.CabNumero, varMensaje), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                }
                //Actualizamos los datos de listado despues de realizar los cambios
                this.proActListado();
            }
            catch (Exception ex) { XtraMessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); }
        }