예제 #1
0
        public string Resumen(string sEmpresaCodigo, string sAnio, string sMes)
        {
            string json = string.Empty;


            using (SqlConnection conn = new SqlConnection(Conexion.ObtenerConexionReporte()))
            {
                conn.Open();

                string sql = string.Empty;

                sql = string.Format("select TIPO_DOCU, " +
                                    "       case TIPO_DOCU  " +
                                    "       when '01' then 'FACTURA' " +
                                    "       when '03' then 'BOLETA' " +
                                    "       when '07' then 'NOTA CREDITO' " +
                                    "       when '08' then 'NOTA DEBITO'  " +
                                    "       end as TIPO_DESC,  " +
                                    "       Count(*) as CANTIDAD, ESTADO_DOCU, " +
                                    "       CASE WHEN MONEDA_DOCU='PEN' THEN  SUM( cast( replace(IMPO_TOTAL,',','') as decimal(12,2)) ) ELSE 0 END as SOLES, " +
                                    "       CASE WHEN MONEDA_DOCU='USD' THEN  SUM( cast( replace(IMPO_TOTAL,',','') as decimal(12,2)) ) ELSE 0 END as DOLARES, " +
                                    "       case when ESTADO_DOCU='ACT' THEN  Count(*) else COUNT(*)*2 end as TRANSACCIONES " +
                                    "from vDOCUMENTO_REPORTE_CLIENTE " +
                                    "       where EMPRESA_CODIGO={0} and left(FECHA_DOCU,4)={1} and left(right(FECHA_DOCU,4),2)={2}  " +
                                    "group by TIPO_DOCU, ESTADO_DOCU, MONEDA_DOCU;", sEmpresaCodigo, sAnio, sMes);


                using (SqlCommand cmd = new SqlCommand(sql, conn))
                {
                    cmd.CommandType = CommandType.Text;
                    SqlDataReader         reader = cmd.ExecuteReader();
                    List <Entity.Resumen> lista  = null;

                    if (reader.HasRows)
                    {
                        lista = new List <Entity.Resumen>();
                    }

                    while (reader.Read())
                    {
                        lista.Add(new Entity.Resumen
                        {
                            Tipo_Docu     = reader["Tipo_Docu"].ToString(),
                            Tipo_Desc     = reader["Tipo_Desc"].ToString(),
                            Cantidad      = reader["Cantidad"].ToString(),
                            Estado_Docu   = reader["Estado_Docu"].ToString(),
                            Soles         = reader["Soles"].ToString(),
                            Dolares       = reader["Dolares"].ToString(),
                            Transacciones = reader["Transacciones"].ToString()
                        });
                    }

                    JavaScriptSerializer serializer = new JavaScriptSerializer();
                    serializer.MaxJsonLength = 2147483644;
                    json = serializer.Serialize(lista);
                }
            }

            return(json);
        }
예제 #2
0
        public void Eiminar(string sEmpresa, string codigo)
        {
            using (SqlConnection conn = new SqlConnection(Conexion.ObtenerConexionReporte()))
            {
                conn.Open();

                string sql = string.Format("delete from cliente where EMPRESA_CODIGO={0} and codigo='{1}'", sEmpresa, codigo);

                using (SqlCommand cmd = new SqlCommand(sql, conn))
                {
                    cmd.CommandType = CommandType.Text;
                    cmd.ExecuteNonQuery();
                }
            }
        }
예제 #3
0
        public void Editar(string sEmpresa, string codigo, string rolid)
        {
            using (SqlConnection conn = new SqlConnection(Conexion.ObtenerConexionReporte()))
            {
                conn.Open();

                string sql = string.Format("update cliente set ROL_CODIGO={2} where  EMPRESA_CODIGO={0} and codigo='{1}'", sEmpresa, codigo, rolid);

                using (SqlCommand cmd = new SqlCommand(sql, conn))
                {
                    cmd.CommandType = CommandType.Text;
                    cmd.ExecuteNonQuery();
                }
            }
        }
예제 #4
0
        public void Agregar(string sEmpresa, string documento, string nombre, string clave, string rolid)
        {
            using (SqlConnection conn = new SqlConnection(Conexion.ObtenerConexionReporte()))
            {
                conn.Open();

                string sql = string.Format("INSERT INTO Cliente(EMPRESA_CODIGO, CLIENTE_RUC_DNI, CLIENTE_NOMBRE, CLIENTE_CLAVE, ROL_CODIGO) " +
                                           "VALUES ('{0}','{1}','{2}','{3}','{4}')", sEmpresa, documento, nombre, clave, rolid);

                using (SqlCommand cmd = new SqlCommand(sql, conn))
                {
                    cmd.CommandType = CommandType.Text;
                    cmd.ExecuteNonQuery();
                }
            }
        }
예제 #5
0
        public string ConsultaRUC(string ruc)
        {
            string json = string.Empty;


            using (SqlConnection conn = new SqlConnection(Conexion.ObtenerConexionReporte()))
            {
                conn.Open();

                string sql = string.Empty;

                sql = string.Format("select ruc, nombre, estado, ubigeo, direccion, departamento, provincia, distrito " +
                                    "from Padron " +
                                    "where ruc='{0}';", ruc);


                using (SqlCommand cmd = new SqlCommand(sql, conn))
                {
                    cmd.CommandType = CommandType.Text;
                    SqlDataReader reader = cmd.ExecuteReader();
                    Entity.Padron obj    = new Entity.Padron();

                    while (reader.Read())
                    {
                        obj = new Entity.Padron
                        {
                            ruc          = reader["ruc"].ToString(),
                            nombre       = reader["nombre"].ToString(),
                            estado       = reader["estado"].ToString(),
                            ubigeo       = reader["ubigeo"].ToString(),
                            direccion    = reader["direccion"].ToString(),
                            departamento = reader["departamento"].ToString(),
                            provincia    = reader["provincia"].ToString(),
                            distrito     = reader["distrito"].ToString()
                        };
                    }

                    JavaScriptSerializer serializer = new JavaScriptSerializer();
                    serializer.MaxJsonLength = 2147483644;
                    json = serializer.Serialize(obj);
                }
            }

            return(json);
        }
예제 #6
0
        public string Load(string sEmpresa, string login, string rolid)
        {
            string json = string.Empty;
            string sql  = string.Empty;

            List <Entity.Usuario> listatmp = new List <Entity.Usuario>();

            sql = string.Format("select a.codigo, a.CLIENTE_RUC_DNI, a.CLIENTE_NOMBRE, a.ROL_CODIGO, " +
                                "       rol=(select z.name from rol z where z.id=a.ROL_CODIGO ) " +
                                "from CLIENTE a where a.EMPRESA_CODIGO={0} {1} {2} order by a.CLIENTE_NOMBRE ",
                                sEmpresa,
                                ((rolid != "") ? "and a.ROL_CODIGO=" + rolid : ""),
                                ((login != "") ? "and a.CLIENTE_NOMBRE like '%" + login + "%'" : "")
                                );

            using (SqlConnection conn = new SqlConnection(Conexion.ObtenerConexionReporte()))
            {
                conn.Open();

                using (SqlCommand cmd = new SqlCommand(sql, conn))
                {
                    cmd.CommandType = CommandType.Text;
                    SqlDataReader reader = cmd.ExecuteReader();

                    while (reader.Read())
                    {
                        listatmp.Add(new Entity.Usuario
                        {
                            codigo          = reader["codigo"].ToString(),
                            cliente_ruc_dni = reader["CLIENTE_RUC_DNI"].ToString(),
                            cliente_nombre  = reader["CLIENTE_NOMBRE"].ToString(),
                            rol_codigo      = reader["rol_codigo"].ToString(),
                            rol             = reader["rol"].ToString()
                        });
                    }
                }
            }

            JavaScriptSerializer serializer = new JavaScriptSerializer();

            json = serializer.Serialize(listatmp);


            return(json);
        }
예제 #7
0
        public string GetUsuariosByNombreToJson(string sEmpresa, string sCliente)
        {
            string json = string.Empty;
            List <Entity.Usuario> lista = new List <Entity.Usuario>();

            using (SqlConnection conn = new SqlConnection(Conexion.ObtenerConexionReporte()))
            {
                conn.Open();

                string sql = string.Format("select codigo, empresa_codigo, cliente_ruc_dni, cliente_nombre,rol_codigo " +
                                           "from [dbo].[cliente] with(nolock) " +
                                           "where Empresa_codigo='{0}' and cliente_nombre like '%{1}%' " +
                                           "order by cliente_nombre asc", sEmpresa, sCliente);

                using (SqlCommand cmd = new SqlCommand(sql, conn))
                {
                    cmd.CommandType = CommandType.Text;
                    SqlDataReader reader = cmd.ExecuteReader();



                    while (reader.Read())
                    {
                        lista.Add(new Entity.Usuario
                        {
                            codigo          = reader["codigo"].ToString(),
                            empresa_codigo  = reader["empresa_codigo"].ToString(),
                            cliente_ruc_dni = reader["cliente_ruc_dni"].ToString(),
                            cliente_nombre  = reader["cliente_nombre"].ToString(),
                            rol_codigo      = reader["rol_codigo"].ToString()
                        });
                    }

                    JavaScriptSerializer serializer = new JavaScriptSerializer();
                    json = serializer.Serialize(lista);
                }
            }

            return(json);
        }
예제 #8
0
        public string LoadUsuario(string sEmpresa)
        {
            string json = string.Empty;

            using (SqlConnection conn = new SqlConnection(Conexion.ObtenerConexionReporte()))
            {
                conn.Open();

                string sql = string.Format("select distinct cliente_nombre name from cliente with(nolock) " +
                                           "where EMPRESA_CODIGO={0} order by cliente_nombre", sEmpresa);

                using (SqlCommand cmd = new SqlCommand(sql, conn))
                {
                    cmd.CommandType = CommandType.Text;
                    SqlDataReader         reader = cmd.ExecuteReader();
                    List <Entity.Entidad> lista  = null;

                    if (reader.HasRows)
                    {
                        lista = new List <Entity.Entidad>();
                    }

                    while (reader.Read())
                    {
                        lista.Add(new Entity.Entidad
                        {
                            nombre = reader["name"].ToString()
                        });
                    }

                    JavaScriptSerializer serializer = new JavaScriptSerializer();
                    json = serializer.Serialize(lista);
                }
            }

            return(json);
        }
예제 #9
0
        public string LoadRol()
        {
            string json = string.Empty;

            using (SqlConnection conn = new SqlConnection(Conexion.ObtenerConexionReporte()))
            {
                conn.Open();

                string sql = "select id, name as nombre from [dbo].[Rol] order by name";

                using (SqlCommand cmd = new SqlCommand(sql, conn))
                {
                    cmd.CommandType = CommandType.Text;
                    SqlDataReader         reader = cmd.ExecuteReader();
                    List <Entity.Entidad> lista  = null;

                    if (reader.HasRows)
                    {
                        lista = new List <Entity.Entidad>();
                    }

                    while (reader.Read())
                    {
                        lista.Add(new Entity.Entidad
                        {
                            id     = reader["id"].ToString(),
                            nombre = reader["nombre"].ToString()
                        });
                    }

                    JavaScriptSerializer serializer = new JavaScriptSerializer();
                    json = serializer.Serialize(lista);
                }
            }

            return(json);
        }
예제 #10
0
        public bool ValidateClient(string sEmpresa, string sCliente, string sClave)
        {
            bool blnOK = false;

            using (SqlConnection conn = new SqlConnection(Conexion.ObtenerConexionReporte()))
            {
                conn.Open();

                string sql = string.Format("select 1 from [dbo].[cliente] where EMPRESA_CODIGO={0} and CLIENTE_RUC_DNI ='{1}' and CLIENTE_CLAVE='{2}'", sEmpresa, sCliente, sClave);

                using (SqlCommand cmd = new SqlCommand(sql, conn))
                {
                    cmd.CommandType = CommandType.Text;
                    SqlDataReader reader = cmd.ExecuteReader();

                    if (reader.HasRows)
                    {
                        blnOK = true;
                    }
                }
            }

            return(blnOK);
        }
예제 #11
0
        public bool Modificar(string sEmpresa, string sCliente, string sClave)
        {
            bool blnOK = false;

            using (SqlConnection conn = new SqlConnection(Conexion.ObtenerConexionReporte()))
            {
                conn.Open();

                string sql = string.Format("UPDATE [dbo].[CLIENTE] set CLIENTE_CLAVE='{2}' where EMPRESA_CODIGO={0} and CLIENTE_RUC_DNI='{1}';", sEmpresa, sCliente, sClave);

                using (SqlCommand cmd = new SqlCommand(sql, conn))
                {
                    cmd.CommandType = CommandType.Text;
                    int rows = cmd.ExecuteNonQuery();

                    if (rows > 0)
                    {
                        blnOK = true;
                    }
                }
            }

            return(blnOK);
        }
예제 #12
0
        public Entity.Documento LoadByCodigo(string sEmpresa, string sID)
        {
            string json = string.Empty;

            Entity.Documento documento = new Entity.Documento();
            Entity.Empresa   empresa   = new BusinessGlobal.Consulta().ConsultaEmpresaById(sEmpresa);

            using (SqlConnection conn = new SqlConnection(Conexion.ObtenerConexionReporte()))
            {
                conn.Open();

                string sql = string.Format("select " +
                                           "ID, CODIGO, CLIENTE_RUC_DNI, CLIENTE_NOMBRE, TIPO_DOCU, TIPO_DOCU_DES, NUMERO_SERIE_DOCU, NUMERO_DOC_DOCU,  " +
                                           "DOCUMENTO, FECHA_DOCU, FECHA_DOCU_FORMATO, MONEDA_DOCU, IMPO_TOTAL, ESTADO_DOCU, ESTATUS_ENVIADO,  " +
                                           "ESTATUS_RECEP, ESTATUS_ANUL, ESTATUS_RECHAZADO, ESTADO_ENVIO_CORREO_CLIENTE, " +
                                           "CODIGO_ERROR, DESCRIPCION_ERROR, CODIGO_OBS, DESCRIPCION_OBS, ARCHIVO_PDF_NOMBRE , ARCHIVO_RESU, ESTADO, NUMERO_TICKET " +
                                           "from vDOCUMENTO_REPORTE_CLIENTE " +
                                           "WHERE [EMPRESA_CODIGO]={0} AND ID={1}",
                                           sEmpresa, sID);


                using (SqlCommand cmd = new SqlCommand(sql, conn))
                {
                    cmd.CommandType = CommandType.Text;
                    SqlDataReader reader = cmd.ExecuteReader();

                    while (reader.Read())
                    {
                        string doc = reader["NUMERO_SERIE_DOCU"].ToString().Substring(0, 1);

                        documento = new Entity.Documento
                        {
                            ID                          = reader["ID"].ToString(),
                            CODIGO                      = reader["CODIGO"].ToString(),
                            CLIENTE_RUC_DNI             = reader["CLIENTE_RUC_DNI"].ToString(),
                            CLIENTE_NOMBRE              = reader["CLIENTE_NOMBRE"].ToString(),
                            TIPO_DOCU                   = reader["TIPO_DOCU"].ToString(),
                            TIPO_DOCU_DES               = reader["TIPO_DOCU_DES"].ToString(),
                            NUMERO_SERIE_DOCU           = reader["NUMERO_SERIE_DOCU"].ToString(),
                            NUMERO_DOC_DOCU             = reader["NUMERO_DOC_DOCU"].ToString(),
                            DOCUMENTO                   = reader["DOCUMENTO"].ToString(),
                            FECHA_DOCU                  = reader["FECHA_DOCU"].ToString(),
                            FECHA_DOCU_FORMATO          = reader["FECHA_DOCU_FORMATO"].ToString(),
                            MONEDA_DOCU                 = reader["MONEDA_DOCU"].ToString(),
                            IMPO_TOTAL                  = reader["IMPO_TOTAL"].ToString(),
                            ESTADO_DOCU                 = reader["ESTADO_DOCU"].ToString(),
                            ESTATUS_RECEP               = reader["ESTATUS_RECEP"].ToString(),
                            ESTATUS_ANUL                = reader["ESTATUS_ANUL"].ToString(),
                            ESTATUS_RECHAZADO           = reader["ESTATUS_RECHAZADO"].ToString(),
                            ESTADO_ENVIO_CORREO_CLIENTE = reader["ESTADO_ENVIO_CORREO_CLIENTE"].ToString(),
                            CODIGO_ERROR                = reader["CODIGO_ERROR"].ToString(),
                            DESCRIPCION_ERROR           = reader["DESCRIPCION_ERROR"].ToString(),
                            CODIGO_OBS                  = reader["CODIGO_OBS"].ToString(),
                            NUMERO_TICKET               = reader["NUMERO_TICKET"].ToString(),
                            DESCRIPCION_OBS             = reader["DESCRIPCION_OBS"].ToString(),
                            ARCHIVO_PDF_NOMBRE          = reader["ARCHIVO_PDF_NOMBRE"].ToString(),
                            ARCHIVO_PDF_PATH            = string.Format(@"{0}\{1}", empresa.CarpetaRecepcionPdf, reader["ARCHIVO_PDF_NOMBRE"].ToString()),
                            ARCHIVO_TICKET_PATH         = string.Format(@"{0}\{1}", empresa.CarpetaRecepcionTicket, reader["ARCHIVO_PDF_NOMBRE"].ToString()),

                            ARCHIVO_XML_PATH = string.Format(@"{0}\{1}\{2}.xml", empresa.CarpetaXml,
                                                             (doc == "B") ? "RC" : reader["TIPO_DOCU"].ToString(),
                                                             (doc == "B") ? reader["ARCHIVO_RESU"].ToString() : reader["CODIGO"].ToString()),

                            ARCHIVO_CDR_PATH = string.Format(@"{0}\{1}\R-{2}.xml", empresa.CarpetaCDR,
                                                             (doc == "B") ? "RC" : reader["TIPO_DOCU"].ToString(),
                                                             (doc == "B") ? reader["ARCHIVO_RESU"].ToString() : reader["CODIGO"].ToString()),

                            ARCHIVO_FILE1_PATH = string.Format(@"{0}\{1}.xml", empresa.CarpetaRespaldo, reader["ARCHIVO_PDF_NOMBRE"].ToString().Replace(".pdf", "")),
                            ARCHIVO_FILE2_PATH = string.Format(@"{0}\{1}-A.xml", empresa.CarpetaRespaldo, reader["ARCHIVO_PDF_NOMBRE"].ToString().Replace(".pdf", "")),
                            ARCHIVO_FILE3_PATH = string.Format(@"{0}\{1}.txt", empresa.CarpetaRespaldo, reader["ARCHIVO_PDF_NOMBRE"].ToString().Replace(".pdf", ""))
                                                 //ARCHIVO_XML_PATH_RESUMEN_ENVIO = (reader["ESTADO_DOCU"].ToString()=="ACT")?
                                                 //string.Format(@"{0}\RC\{1}.xml", empresa.CarpetaXml, reader["ARCHIVO_RESU"].ToString()):
                                                 //string.Format(@"{0}\{1}\{2}.xml", empresa.CarpetaXml,
                                                 //(reader["NUMERO_SERIE_DOCU"].ToString().Substring(1,1)=="B")?"RA":"RR",
                                                 //reader["ARCHIVO_RESU"].ToString()),

                                                 //ARCHIVO_XML_PATH_RESUMEN_RESPUESTA = (reader["ESTADO_DOCU"].ToString()=="ACT")?
                                                 //string.Format(@"{0}\RC\{1}.xml", empresa.CarpetaRecepcion,reader["CODIGO"].ToString()):
                                                 //string.Format(@"{0}\{1}\{2}.xml", empresa.CarpetaRecepcion,
                                                 //(reader["NUMERO_SERIE_DOCU"].ToString().Substring(1, 1) == "B") ? "RA" : "RR",
                                                 //reader["CODIGO"].ToString())
                        };
                    }
                }
            }

            return(documento);
        }
예제 #13
0
        public string Load(string sEmpresa, string sDocumento, string Top)
        {
            string json = string.Empty;

            Entity.Empresa empresa = new BusinessGlobal.Consulta().ConsultaEmpresaById(sEmpresa);

            using (SqlConnection conn = new SqlConnection(Conexion.ObtenerConexionReporte()))
            {
                conn.Open();

                string sql = string.Format("select " + ((Top != "") ? (" top " + Top) : "") + " " +
                                           "ID, CODIGO, CLIENTE_RUC_DNI, CLIENTE_NOMBRE, TIPO_DOCU, TIPO_DOCU_DES, NUMERO_SERIE_DOCU, NUMERO_DOC_DOCU,  " +
                                           "DOCUMENTO, FECHA_DOCU, FECHA_DOCU_FORMATO, MONEDA_DOCU, IMPO_TOTAL, ESTADO_DOCU, ESTATUS_ENVIADO,  " +
                                           "ESTATUS_RECEP, ESTATUS_ANUL, ESTATUS_RECHAZADO, ESTATUS_SUNAT, CODIGO_SUNAT, ESTADO_ENVIO_CORREO_CLIENTE, " +
                                           "CODIGO_ERROR, DESCRIPCION_ERROR, CODIGO_OBS, DESCRIPCION_OBS, ARCHIVO_PDF_NOMBRE, ARCHIVO_RESU, ESTADO " +
                                           "from vDOCUMENTO_REPORTE_CLIENTE " +
                                           "WHERE EMPRESA_CODIGO={0} {1} " +
                                           "ORDER BY TIPO_DOCU, NUMERO_SERIE_DOCU, NUMERO_DOC_DOCU DESC",
                                           sEmpresa,
                                           (sDocumento == "") ? "" : string.Format("AND ESTADO_DOCU='ACT' AND ESTADO='ACEPTADO' AND CLIENTE_RUC_DNI='{0}'", sDocumento)
                                           );


                using (SqlCommand cmd = new SqlCommand(sql, conn))
                {
                    cmd.CommandType = CommandType.Text;
                    SqlDataReader reader = cmd.ExecuteReader();
                    List <Entity.DocumentoInterno> lista = null;

                    if (reader.HasRows)
                    {
                        lista = new List <Entity.DocumentoInterno>();
                    }

                    while (reader.Read())
                    {
                        lista.Add(new Entity.DocumentoInterno
                        {
                            ID                          = reader["ID"].ToString(),
                            CODIGO                      = reader["CODIGO"].ToString(),
                            CLIENTE_RUC_DNI             = reader["CLIENTE_RUC_DNI"].ToString(),
                            CLIENTE_NOMBRE              = reader["CLIENTE_NOMBRE"].ToString(),
                            TIPO_DOCU_DES               = reader["TIPO_DOCU_DES"].ToString(),
                            DOCUMENTO                   = reader["DOCUMENTO"].ToString(),
                            FECHA_DOCU_FORMATO          = reader["FECHA_DOCU_FORMATO"].ToString(),
                            MONEDA_DOCU                 = reader["MONEDA_DOCU"].ToString(),
                            IMPO_TOTAL                  = reader["IMPO_TOTAL"].ToString(),
                            ESTADO_DOCU                 = reader["ESTADO_DOCU"].ToString(),
                            ESTADO_ENVIO_CORREO_CLIENTE = reader["ESTADO_ENVIO_CORREO_CLIENTE"].ToString(),
                            ESTADO                      = reader["ESTADO"].ToString()

                                                          //ARCHIVO_PDF_PATH = string.Format(@"{0}\{1}" ,empresa.CarpetaRecepcionPdf,reader["ARCHIVO_PDF_NOMBRE"].ToString()),
                                                          //ARCHIVO_XML_PATH = string.Format(@"{0}\{1}\{2}.xml", empresa.CarpetaXml, reader["TIPO_DOCU"].ToString(),reader["CODIGO"].ToString())
                        });
                    }

                    JavaScriptSerializer serializer = new JavaScriptSerializer();
                    serializer.MaxJsonLength = 2147483644;
                    json = serializer.Serialize(lista);
                }
            }

            return(json);
        }
예제 #14
0
        public string Load(string sEmpresa, string sTipo, string sSerie, string sCorrelativo,
                           string sFechaInicio, string sFechaFin, string sEstado, string sSunat)
        {
            string json = string.Empty;

            Entity.Empresa empresa = new BusinessGlobal.Consulta().ConsultaEmpresaById(sEmpresa);

            using (SqlConnection conn = new SqlConnection(Conexion.ObtenerConexionReporte()))
            {
                conn.Open();

                string sql    = string.Empty;
                string filtro = (sTipo != "") ? string.Format(" and tipocodigo='{0}'", sTipo) : "";

                sql = string.Format("select " +
                                    "ID, CODIGO, CLIENTE_RUC_DNI, CLIENTE_NOMBRE, TIPO_DOCU, TIPO_DOCU_DES, NUMERO_SERIE_DOCU, NUMERO_DOC_DOCU,  " +
                                    "DOCUMENTO, FECHA_DOCU, FECHA_DOCU_FORMATO, MONEDA_DOCU, IMPO_TOTAL, ESTADO_DOCU, ESTATUS_ENVIADO,  " +
                                    "ESTATUS_RECEP, ESTATUS_ANUL, ESTATUS_RECHAZADO, ESTATUS_SUNAT, CODIGO_SUNAT, ESTADO_ENVIO_CORREO_CLIENTE, " +
                                    "CODIGO_ERROR, DESCRIPCION_ERROR, CODIGO_OBS, DESCRIPCION_OBS, ARCHIVO_PDF_NOMBRE, ARCHIVO_RESU, ESTADO, " +
                                    "FECHA_ENVIADO, CLIENTE_CORREO, EMPRESA_CODIGO " +
                                    "from vDOCUMENTO_REPORTE_CLIENTE " +
                                    "WHERE EMPRESA_CODIGO={0} {1} {2} {3} {4} {5} {6} {7} " +
                                    //"ORDER BY FECHA_DOCU desc, TIPO_DOCU, NUMERO_SERIE_DOCU, NUMERO_DOC_DOCU DESC",
                                    "ORDER BY FECHA_DOCU desc , TIPO_DOCU, NUMERO_SERIE_DOCU, NUMERO_DOC_DOCU DESC",
                                    sEmpresa,
                                    (sTipo == "00" || sTipo == "") ? "" : string.Format("AND TIPO_DOCU='{0}'", sTipo),
                                    (sSerie == "") ? "" : string.Format("AND NUMERO_SERIE_DOCU like'%{0}%'", sSerie),
                                    (sCorrelativo == "") ? "" : string.Format("AND CAST( NUMERO_DOC_DOCU AS NUMERIC(8))='{0}'", sCorrelativo),
                                    (sFechaInicio == "") ? "" : string.Format("AND FECHA_DOCU>={0}", sFechaInicio),
                                    (sFechaFin == "") ? "" : string.Format("AND FECHA_DOCU<={0}", sFechaFin),
                                    (sEstado == "00" || sEstado == "") ? "" : string.Format("AND ESTADO_DOCU='{0}'", sEstado),
                                    (sSunat == "00" || sSunat == "") ? "" : (sSunat == "ACEPTADO") ? "AND ESTADO='ACEPTADO'" : "AND coalesce(ESTADO,'')<>'ACEPTADO'"
                                    );


                using (SqlCommand cmd = new SqlCommand(sql, conn))
                {
                    cmd.CommandType = CommandType.Text;
                    SqlDataReader reader = cmd.ExecuteReader();
                    List <Entity.DocumentoInterno> lista = null;

                    if (reader.HasRows)
                    {
                        lista = new List <Entity.DocumentoInterno>();
                    }

                    while (reader.Read())
                    {
                        lista.Add(new Entity.DocumentoInterno
                        {
                            ID                          = reader["ID"].ToString(),
                            CODIGO                      = reader["CODIGO"].ToString(),
                            CLIENTE_RUC_DNI             = reader["CLIENTE_RUC_DNI"].ToString(),
                            CLIENTE_NOMBRE              = reader["CLIENTE_NOMBRE"].ToString(),
                            TIPO_DOCU_DES               = reader["TIPO_DOCU_DES"].ToString(),
                            DOCUMENTO                   = reader["DOCUMENTO"].ToString(),
                            FECHA_DOCU_FORMATO          = reader["FECHA_DOCU_FORMATO"].ToString(),
                            MONEDA_DOCU                 = reader["MONEDA_DOCU"].ToString(),
                            IMPO_TOTAL                  = reader["IMPO_TOTAL"].ToString(),
                            ESTADO_DOCU                 = reader["ESTADO_DOCU"].ToString(),
                            ESTADO_ENVIO_CORREO_CLIENTE = reader["ESTADO_ENVIO_CORREO_CLIENTE"].ToString(),
                            ESTADO                      = reader["ESTADO"].ToString(),
                            ERROR                       = string.Format("{0}-{1}", reader["CODIGO_ERROR"].ToString(), reader["DESCRIPCION_ERROR"].ToString()),
                            FECHA_ENVIADO               = reader["FECHA_ENVIADO"].ToString(),
                            CLIENTE_CORREO              = reader["CLIENTE_CORREO"].ToString(),
                            EMPRESA_CODIGO              = reader["EMPRESA_CODIGO"].ToString(),
                            ARCHIVO_RESU                = reader["ARCHIVO_RESU"].ToString()
                                                          //ARCHIVO_PDF_PATH = string.Format(@"{0}\{1}" ,empresa.CarpetaRecepcionPdf,reader["ARCHIVO_PDF_NOMBRE"].ToString()),
                                                          //ARCHIVO_XML_PATH = string.Format(@"{0}\{1}\{2}.xml", empresa.CarpetaXml, reader["TIPO_DOCU"].ToString(),reader["CODIGO"].ToString())
                        });
                    }

                    JavaScriptSerializer serializer = new JavaScriptSerializer();
                    serializer.MaxJsonLength = 2147483644;
                    json = serializer.Serialize(lista);
                }
            }

            return(json);
        }
예제 #15
0
        public string LoadReporte101(string empresaid, string periodo)
        {
            string str = string.Empty;

            using (SqlConnection connection = new SqlConnection(Conexion.ObtenerConexionReporte()))
            {
                connection.Open();

                string sql = string.Format("" +
                                           "SELECT MesCodigo, MesNombre as name, CAST( sum(SOLES)  as  decimal(12,0)) as amount  " +
                                           "FROM " +
                                           "( " +
                                           "   select right(left(FECHA_DOCU,6),2) as MesCodigo, " +
                                           "       case right(left(FECHA_DOCU,6),2) " +
                                           "       when '01' then 'Ene' " +
                                           "       when '02' then 'Feb' " +
                                           "       when '03' then 'Mar' " +
                                           "       when '04' then 'Abr' " +
                                           "       when '05' then 'May' " +
                                           "       when '06' then 'Jun' " +
                                           "       when '07' then 'Jul' " +
                                           "       when '08' then 'Ago' " +
                                           "       when '09' then 'Sep' " +
                                           "       when '10' then 'Oct' " +
                                           "       when '11' then 'Nov' " +
                                           "       when '12' then 'Dic' end MesNombre, " +
                                           "       CASE WHEN MONEDA_DOCU='PEN' " +
                                           "       THEN  " +
                                           "           CASE WHEN TIPO_DOCU='07' " +
                                           "           THEN cast( replace(IMPO_TOTAL,',','') as decimal(12,2))*-1  " +
                                           "           ELSE cast( replace(IMPO_TOTAL,',','') as decimal(12,2))  " +
                                           "           END " +
                                           "       ELSE 0 END as SOLES " +
                                           "  from vDOCUMENTO_REPORTE_CLIENTE " +
                                           "  where EMPRESA_CODIGO={0} and left(FECHA_DOCU,4)={1} and ESTADO_DOCU='ACT' " +
                                           ") a  " +
                                           "group by MesCodigo, MesNombre " +
                                           "order by MesCodigo ",
                                           empresaid, periodo);

                using (SqlCommand command = new SqlCommand(sql, connection))
                {
                    command.CommandType = CommandType.Text;
                    SqlDataReader       reader = command.ExecuteReader();
                    List <ListaReporte> list   = new List <ListaReporte>();


                    while (reader.Read())
                    {
                        NumberFormatInfo provider = new NumberFormatInfo();
                        provider.NumberDecimalSeparator = ".";
                        ListaReporte item = new ListaReporte();
                        item.name   = reader["name"].ToString();
                        item.amount = decimal.Parse(reader["amount"].ToString(), provider);
                        list.Add(item);
                    }

                    str = new JavaScriptSerializer().Serialize(list);
                }
            }
            return(str);
        }