コード例 #1
0
ファイル: FrmValidarXML.aspx.cs プロジェクト: yeco96/FE
        /// <summary>
        /// consulta el consecutivo actual
        /// </summary>
        protected void obtenerConsecutivo()
        {
            //genera el consecutivo del documento
            string emisor        = Session["emisor"].ToString();
            string sucursal      = ConsecutivoDocElectronico.DEFAULT_SUCURSAL;;
            string caja          = ConsecutivoDocElectronico.DEFAULT_CAJA;
            string tipoDocumento = "";

            if (this.cmbMensaje.Value.Equals(TipoConsecutivo.ACEPTADO.ToString()))
            {
                tipoDocumento = TipoConsecutivo.DOCUMENTO_ACEPTADO;
            }
            else
            {
                if (this.cmbMensaje.Value.Equals(TipoConsecutivo.RECHAZADO_PARCIAL.ToString()))
                {
                    tipoDocumento = TipoConsecutivo.DOCUMENTO_RECHAZADO_PARCIAL;
                }
                else
                {
                    tipoDocumento = TipoConsecutivo.DOCUMENTO_RECHAZADO;
                }
            }

            using (var conexion = new DataModelFE())
            {
                object[] key = new object[] { emisor, sucursal, caja, tipoDocumento };
                ConsecutivoDocElectronico consecutivo = conexion.ConsecutivoDocElectronico.Find(key);
                if (consecutivo != null)
                {
                    this.txtNumConsecutivoReceptor.Text = consecutivo.getConsecutivo();
                }
                else
                {
                    consecutivo                   = new ConsecutivoDocElectronico();
                    consecutivo.sucursal          = ConsecutivoDocElectronico.DEFAULT_SUCURSAL;
                    consecutivo.caja              = ConsecutivoDocElectronico.DEFAULT_CAJA;
                    consecutivo.digitoVerificador = ConsecutivoDocElectronico.DEFAULT_DIGITO_VERIFICADOR;
                    consecutivo.emisor            = emisor;
                    consecutivo.tipoDocumento     = tipoDocumento;
                    consecutivo.consecutivo       = 1;
                    consecutivo.estado            = Estado.ACTIVO.ToString();
                    consecutivo.fechaCreacion     = Date.DateTimeNow();
                    conexion.ConsecutivoDocElectronico.Add(consecutivo);
                    conexion.SaveChangesAsync();

                    this.txtNumConsecutivoReceptor.Text = consecutivo.getConsecutivo();
                }
            }
        }