示例#1
0
        public override void proGrabar()
        {
            base.proGrabar();
            try {
                //Eliminamos las filas vacias del detalle de inventario
                objDetalle.RemoveAll(p => p.IteCodigo.Equals(""));
                //Verificamos las validaciones de los campos requeridos
                if (!varBanValidaciones)
                {
                    return;
                }
                //Recuperamos en la variable el valor del campo razon
                string varRazon = this.lueRazon.EditValue == null ? "" : this.lueRazon.EditValue.ToString();
                //Validamos que todos los datos se han llenado correctamente en el detalle
                string varMensaje = clsInvMovimientoDet.funValidarDetalle(objDetalle, varRazon, varReqChapetaLote);
                if (!varMensaje.Equals(""))
                {
                    throw new Exception(varMensaje);
                }
                //Asignamos los valores de la propiedades de la clase animal
                var csRegistro = new clsInvMovimientoCab()
                {
                    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),
                    IdMotivo  = int.Parse(this.lueMotivo.EditValue.ToString()),

                    CabFecha = (DateTime)datFecha.EditValue,

                    CabTipMovimiento = this.txtTipoMovimiento.Text,
                    BodCodigo        = this.lueBodega.EditValue.ToString(),
                    CabRazon         = this.lueRazon.EditValue.ToString(),
                    CabComentario    = this.memObsDocumento.Text,
                    CabComenDiario   = this.memObsDiario.Text,
                    CcoCodigo        = this.lueCenCosto.EditValue == null ? null : this.lueCenCosto.EditValue.ToString(),
                    PryCodigo        = this.lueProyecto.EditValue == null ? null : this.lueProyecto.EditValue.ToString()
                };
                //Enviamos la informacion a la base de datos
                int varCodigo = csRegistro.funMantenimiento(varOpeCodigo, objDetalle);
                //Si no hay ningun error procedemos a mostrar el mensaje respectivo
                switch (varOpeCodigo)
                {
                case 1:
                    XtraMessageBox.Show(string.Format("Registro ingresado con la nro: {0}", varCodigo), "Informacion", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    break;

                case 2:
                    XtraMessageBox.Show("Registro ha sido actualizado", "Informacion", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    break;

                default:
                    break;
                }
                this.Close();
            }
            catch (Exception ex) { XtraMessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); }
        }
示例#2
0
 //Procedimiento para enviar a SAP la informacion
 private void proEnviarSAP(int varRegistro)
 {
     try{
         string varMensaje = "";
         //Instanciamos la clase de movimientos de inventario
         clsInvMovimientoCab objMovimientoCab = new clsInvMovimientoCab();
         //Recuperamos la informacion de cabecera de movimientos de inventario
         objMovimientoCab = clsInvMovimientoCab.funListar(varRegistro)[0];
         //Verificamos si el documento ya ha sido ingresado en SAP
         DataTable objDtVerificarSAP;
         if (objMovimientoCab.CabTipMovimiento.ToUpper().Equals("ENTRADA"))
         {
             objDtVerificarSAP = clsInvMovimientoCab.funVerificarEntInventarioSAP(objMovimientoCab.DocNombre, objMovimientoCab.CabNumero);
         }
         else
         {
             objDtVerificarSAP = clsInvMovimientoCab.funVerificarSalInventarioSAP(objMovimientoCab.DocNombre, objMovimientoCab.CabNumero);
         }
         //Verifico si el documento no haya sido enviado a SAP
         if (objMovimientoCab.EstCodigo.ToUpper().Equals("SAP") || objDtVerificarSAP.Rows.Count > 0)
         {
             //Actualizacion en el formulario de movimientos de inventario
             objMovimientoCab.CabDocEntrySAP = int.Parse(objDtVerificarSAP.Rows[0]["DocEntry"].ToString());
             objMovimientoCab.CabNumeroSAP   = int.Parse(objDtVerificarSAP.Rows[0]["DocNum"].ToString());
             clsInvMovimientoCab.proActMovInventarioSalida(objMovimientoCab.CabDocEntrySAP, objMovimientoCab.CabNumeroSAP, objMovimientoCab.CabCodigo);
             clsInvMovimientoCab.proActCstAcumulado(objMovimientoCab.CabDocEntrySAP, objMovimientoCab.CabCodigo);
             XtraMessageBox.Show(string.Format("El registro nro. {0} ya ha sido enviado a SAP", objMovimientoCab.CabNumero), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
         }
         else
         {
             if (objMovimientoCab.CabTipMovimiento.ToUpper().Equals("ENTRADA"))
             {
             }
             else
             {
                 varMensaje = objMovimientoCab.funEnviarSalMercanciaSAP();
                 if (varMensaje.Equals(""))
                 {
                     XtraMessageBox.Show(string.Format("Registro nro {0} enviado a SAP", objMovimientoCab.CabNumero), "Informacion", MessageBoxButtons.OK, MessageBoxIcon.Information);
                 }
                 else
                 {
                     XtraMessageBox.Show(string.Format("Registro nro {0} presento el siguiente error: {1}", objMovimientoCab.CabNumero, varMensaje), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                 }
             }
         }
     }
     catch (Exception e) { throw new Exception(e.Message); }
 }