public string PostInsertGasto(ParametrosGastos Datos) { SqlCommand comando = new SqlCommand("EnviaAutorizacion"); comando.CommandType = CommandType.StoredProcedure; //Declaracion de parametros comando.Parameters.Add("@idinforme", SqlDbType.Int); comando.Parameters.Add("@ualterno", SqlDbType.VarChar); //Asignacion de valores a parametros comando.Parameters["@idinforme"].Value = Datos.idinforme; comando.Parameters["@ualterno"].Value = ""; comando.Connection = new SqlConnection(VariablesGlobales.CadenaConexion); comando.CommandTimeout = 0; comando.Connection.Open(); //DA.SelectCommand = comando; // comando.ExecuteNonQuery(); DataTable DT = new DataTable(); SqlDataAdapter DA = new SqlDataAdapter(comando); comando.Connection.Close(); DA.Fill(DT); if (DT.Rows.Count > 0) { foreach (DataRow row in DT.Rows) { string usuarioResponsable = Convert.ToString(row["usuarioResponsable"]); string usuarioAutoriza = Convert.ToString(row["usuarioAutoriza"]); string mensaje = Convert.ToString(row["msn"]); string titulo = Convert.ToString(row["titulo"]); int idgasto = Convert.ToInt32(row["idgasto"]); //agregar altenerno del autorizador try { var ResultadoAlterno = GetUsuarioAlterno.UsuarioAlterno(usuarioAutoriza); string consulta = ""; if (ResultadoAlterno.Estatus == 1) { consulta = "UPDATE autorizarinforme SET a_ualterno = '" + ResultadoAlterno.Resultado + "' " + "WHERE a_idinforme = " + Datos.idinforme + " AND a_nivel = 1 AND a_uautoriza = '" + usuarioAutoriza + "'"; } else { consulta = "UPDATE autorizarinforme SET a_ualterno = '" + usuarioAutoriza + "' " + "WHERE a_idinforme = " + Datos.idinforme + " AND a_nivel = 1 AND a_uautoriza = '" + usuarioAutoriza + "'"; } DA = new SqlDataAdapter(consulta, VariablesGlobales.CadenaConexion); DA.Fill(DT); } catch (Exception ex) { //ex } EnvioCorreosELE.Envio(usuarioResponsable, "", "", usuarioAutoriza, "", titulo, mensaje, 0); try { DocumentoEntrada entrada = new DocumentoEntrada { Usuario = usuarioResponsable, Origen = "AdminWeb", Transaccion = 120090, Operacion = 13 }; entrada.agregaElemento("FiGasId", idgasto); entrada.agregaElemento("Accion", 5);//5 = envio (validacion/aprobación) DocumentoSalida respuesta = PeticionCatalogo(entrada.Documento); } catch (Exception) { //throw; } } return(""); } else { return(null); } }
public string PostInsertGasto(ParametrosGastos Datos) { SqlCommand comando = new SqlCommand("InsertGasto"); comando.CommandType = CommandType.StoredProcedure; //Declaracion de parametros comando.Parameters.Add("@idinforme", SqlDbType.Int); comando.Parameters.Add("@fgasto", SqlDbType.Date); comando.Parameters.Add("@ugasto", SqlDbType.Int); comando.Parameters.Add("@concepto", SqlDbType.VarChar); comando.Parameters.Add("@negocio", SqlDbType.VarChar); comando.Parameters.Add("@formapago", SqlDbType.Int); comando.Parameters.Add("@cuenta", SqlDbType.Int); comando.Parameters.Add("@subtotal", SqlDbType.Float); comando.Parameters.Add("@iva", SqlDbType.Float); comando.Parameters.Add("@total", SqlDbType.Float); comando.Parameters.Add("@ucreo", SqlDbType.Int); comando.Parameters.Add("@comprobante", SqlDbType.Int); comando.Parameters.Add("@estatus", SqlDbType.Int); comando.Parameters.Add("@idapp", SqlDbType.VarChar); comando.Parameters.Add("@dirxml", SqlDbType.VarChar); comando.Parameters.Add("@dirpdf", SqlDbType.VarChar); comando.Parameters.Add("@dirotros", SqlDbType.VarChar); comando.Parameters.Add("@observaciones", SqlDbType.VarChar); comando.Parameters.Add("@rfc", SqlDbType.VarChar); comando.Parameters.Add("@contacto", SqlDbType.VarChar); comando.Parameters.Add("@telefono", SqlDbType.VarChar); comando.Parameters.Add("@correo", SqlDbType.VarChar); //Asignacion de valores a parametros comando.Parameters["@idinforme"].Value = Datos.idinforme; comando.Parameters["@fgasto"].Value = Datos.fgasto; comando.Parameters["@ugasto"].Value = Datos.ugasto; comando.Parameters["@concepto"].Value = Datos.concepto; comando.Parameters["@negocio"].Value = Datos.negocio; comando.Parameters["@formapago"].Value = Datos.formapago; comando.Parameters["@cuenta"].Value = Datos.cuenta; comando.Parameters["@subtotal"].Value = Datos.subtotal; comando.Parameters["@iva"].Value = Datos.iva; comando.Parameters["@total"].Value = Datos.total; comando.Parameters["@ucreo"].Value = Datos.ucreo; comando.Parameters["@comprobante"].Value = Datos.comprobante; comando.Parameters["@estatus"].Value = Datos.estatus; comando.Parameters["@idapp"].Value = Datos.idapp; comando.Parameters["@dirxml"].Value = Datos.dirxml; comando.Parameters["@dirpdf"].Value = Datos.dirpdf; comando.Parameters["@dirotros"].Value = Datos.dirotros; comando.Parameters["@observaciones"].Value = Datos.observaciones; comando.Parameters["@rfc"].Value = Datos.rfc; comando.Parameters["@contacto"].Value = Datos.contacto; comando.Parameters["@telefono"].Value = Datos.telefono; comando.Parameters["@correo"].Value = Datos.correo; comando.Connection = new SqlConnection(VariablesGlobales.CadenaConexion); comando.CommandTimeout = 0; comando.Connection.Open(); //DA.SelectCommand = comando; comando.ExecuteNonQuery(); DataTable DT = new DataTable(); SqlDataAdapter DA = new SqlDataAdapter(comando); comando.Connection.Close(); DA.Fill(DT); if (DT.Rows.Count > 0) { DataRow row = DT.Rows[0]; return(""); } else { return(null); } }
public async Task <Resultado> Post() { try { Resultado Ruta; string TipoArchivo = ""; string ruta2 = HttpContext.Current.Server.MapPath("/"); string ruta3 = System.Web.Hosting.HostingEnvironment.MapPath("/"); HttpRequest httpRequest = HttpContext.Current.Request; ParametrosGastos Datos = new ParametrosGastos { id = Convert.ToInt16(httpRequest.Params["id"]), idinforme = Convert.ToInt32(httpRequest.Params["idinforme"]), dir = httpRequest.Params["dir"], Valida = httpRequest.Params["Valida"] }; if (Datos.Valida == "1") { Ruta = PostSave(Datos.dir, httpRequest); TipoArchivo = "PDF"; } else { Ruta = PostSaveImage(Datos.dir); TipoArchivo = "IMG"; } if (Ruta.UrlWeb.Contains("Error")) { Ruta.UrlWeb = ""; } SqlCommand comando = new SqlCommand("UpdateGastoPDFOtros"); comando.CommandType = CommandType.StoredProcedure; //Declaracion de parametros comando.Parameters.Add("@id", SqlDbType.Int); comando.Parameters.Add("@idinforme", SqlDbType.Int); comando.Parameters.Add("@dir", SqlDbType.VarChar); comando.Parameters.Add("@Valida", SqlDbType.VarChar); //Asignacion de valores a parametros comando.Parameters["@id"].Value = Datos.id; comando.Parameters["@idinforme"].Value = Datos.idinforme; comando.Parameters["@dir"].Value = Ruta.UrlWeb; comando.Parameters["@Valida"].Value = Datos.Valida; comando.Connection = new SqlConnection(VariablesGlobales.CadenaConexion); comando.CommandTimeout = 0; comando.Connection.Open(); //DA.SelectCommand = comando; comando.ExecuteNonQuery(); DataTable DT = new DataTable(); SqlDataAdapter DA = new SqlDataAdapter(comando); comando.Connection.Close(); DA.Fill(DT); if (DT.Rows.Count > 0) { DataRow row = DT.Rows[0]; string consulta = ""; if (TipoArchivo == "PDF") { consulta = "SELECT g_id FROM gastos WHERE g_idinforme = " + Datos.idinforme + " " + "AND g_id <> g_idgorigen " + "AND g_idgorigen = " + Datos.id + " " + "AND ISNULL(g_dirpdf, '') = '';"; } else if (TipoArchivo == "IMG") { consulta = "SELECT g_id FROM gastos WHERE g_idinforme = " + Datos.idinforme + " " + "AND g_id <> g_idgorigen " + "AND g_idgorigen = " + Datos.id + " " + "AND ISNULL(g_dirotros, '') = '';"; } if (consulta != "") { DataTable DT2 = new DataTable(); SqlDataAdapter DA2 = new SqlDataAdapter(consulta, VariablesGlobales.CadenaConexion); DA2.Fill(DT2); if (DT2.Rows.Count > 0) { foreach (DataRow RowGasto in DT2.Rows) { int IdGasto = Convert.ToInt32(RowGasto["g_id"]); if (TipoArchivo == "PDF") { string dirPDFAd = ""; string[] PDF = Ruta.UrlDisco.Split('.'); dirPDFAd = PDF[0] + "ad" + Convert.ToString(IdGasto) + "." + PDF[1]; if (File.Exists(dirPDFAd) == false) { File.Copy(Ruta.UrlDisco, dirPDFAd); } dirPDFAd = dirPDFAd.Replace(ruta2, ""); consulta = "UPDATE gastos SET " + "g_dirpdf = '" + dirPDFAd.Replace("\\", "/") + "' " + "WHERE g_idinforme = " + Datos.idinforme + " AND " + "g_idgorigen = " + Datos.id + " AND " + "g_id = " + IdGasto + ";"; DataTable DTq = new DataTable(); SqlDataAdapter DAq = new SqlDataAdapter(consulta, VariablesGlobales.CadenaConexion); DAq.Fill(DTq); } else if (TipoArchivo == "IMG") { string dirIMGAd = ""; string[] IMG = Ruta.UrlDisco.Split('.'); dirIMGAd = IMG[0] + "ad" + Convert.ToString(IdGasto) + "." + IMG[1]; if (File.Exists(dirIMGAd) == false) { File.Copy(Ruta.UrlDisco, dirIMGAd); } dirIMGAd = dirIMGAd.Replace(ruta2, ""); consulta = "UPDATE gastos SET " + "g_dirotros = '" + dirIMGAd.Replace("\\", "/") + "' " + "WHERE g_idinforme = " + Datos.idinforme + " AND " + "g_idgorigen = " + Datos.id + " AND " + "g_id = " + IdGasto + ";"; DataTable DTq = new DataTable(); SqlDataAdapter DAq = new SqlDataAdapter(consulta, VariablesGlobales.CadenaConexion); DAq.Fill(DTq); } } } } return(Ruta); } else { return(Ruta); } } catch (Exception) { return(null); } }
public List <ObtieneGastoResult> PostInsertGasto(ParametrosGastos Datos) { try { //string dir = ""; //if (Datos.Convierte == 1) // { // try // { // if (Datos.dirotros != "" && Datos.dirotros != null) // { // dir = PostSaveImage(Datos.dirotros); // } // else // { // dir = ""; // } // } // catch (Exception ex) // { // dir = ex.ToString(); // } //} //else //{ // dir = Datos.dirotros; //} SqlCommand comando = new SqlCommand("UpdateGastoApp"); comando.CommandType = CommandType.StoredProcedure; comando.Parameters.Add("@id", SqlDbType.Int); comando.Parameters.Add("@idinforme", SqlDbType.Int); comando.Parameters.Add("@fgasto", SqlDbType.Date); comando.Parameters.Add("@hgasto", SqlDbType.VarChar); comando.Parameters.Add("@formapago", SqlDbType.VarChar); comando.Parameters.Add("@categoria", SqlDbType.Int); comando.Parameters.Add("@total", SqlDbType.Float); comando.Parameters.Add("@observaciones", SqlDbType.VarChar); comando.Parameters.Add("@nombreCategoria", SqlDbType.VarChar); comando.Parameters.Add("@ivaCategoria", SqlDbType.Float); comando.Parameters.Add("@dirotros", SqlDbType.VarChar); comando.Parameters.Add("@rfc", SqlDbType.VarChar); comando.Parameters.Add("@contacto", SqlDbType.VarChar); comando.Parameters.Add("@telefono", SqlDbType.VarChar); comando.Parameters.Add("@correo", SqlDbType.VarChar); comando.Parameters.Add("@ncomensales", SqlDbType.Int); comando.Parameters.Add("@nmbcomensales", SqlDbType.VarChar); comando.Parameters.Add("@deducible", SqlDbType.Int); comando.Parameters.Add("@importenodeducible", SqlDbType.Float); comando.Parameters.Add("@importereembolsable", SqlDbType.Float); comando.Parameters.Add("@importenoreembolsable", SqlDbType.Float); comando.Parameters.Add("@importenoaceptable", SqlDbType.Float); //Asignacion de valores a parametros comando.Parameters["@id"].Value = Datos.id; comando.Parameters["@idinforme"].Value = Datos.idinforme; comando.Parameters["@fgasto"].Value = Convert.ToDateTime(Datos.fgasto); string hora = ""; if (Datos.hgasto != null) { hora = Datos.hgasto; } comando.Parameters["@hgasto"].Value = hora; comando.Parameters["@formapago"].Value = Datos.formapago; comando.Parameters["@categoria"].Value = Datos.categoria; comando.Parameters["@total"].Value = Datos.total; string Obs = ""; if (Datos.observaciones != null) { Obs = Datos.observaciones; } comando.Parameters["@observaciones"].Value = Obs; comando.Parameters["@nombreCategoria"].Value = Datos.nombreCategoria; comando.Parameters["@ivaCategoria"].Value = Datos.ivaCategoria; comando.Parameters["@dirotros"].Value = Datos.dirotros != null ? Datos.dirotros : ""; comando.Parameters["@rfc"].Value = Datos.rfc != null ? Datos.rfc : ""; comando.Parameters["@contacto"].Value = Datos.contacto != null ? Datos.contacto : ""; comando.Parameters["@telefono"].Value = Datos.telefono != null ? Datos.telefono : ""; comando.Parameters["@correo"].Value = Datos.correo != null ? Datos.correo : ""; comando.Parameters["@ncomensales"].Value = Datos.ncomensales; comando.Parameters["@nmbcomensales"].Value = Datos.nmbcomensales != null ? Datos.nmbcomensales : ""; comando.Parameters["@deducible"].Value = Datos.importenodeducible == 0 ? 1 : 0; comando.Parameters["@importenodeducible"].Value = Datos.importenodeducible; comando.Parameters["@importereembolsable"].Value = Datos.importereembolsable; comando.Parameters["@importenoreembolsable"].Value = Datos.importenoreembolsable; comando.Parameters["@importenoaceptable"].Value = Datos.importenoaceptable; comando.Connection = new SqlConnection(VariablesGlobales.CadenaConexion); comando.CommandTimeout = 0; comando.Connection.Open(); //DA.SelectCommand = comando; //comando.ExecuteNonQuery(); DataTable DT = new DataTable(); SqlDataAdapter DA = new SqlDataAdapter(comando); comando.Connection.Close(); DA.Fill(DT); List <ObtieneGastoResult> lista = new List <ObtieneGastoResult>(); if (DT.Rows.Count > 0) { foreach (DataRow row in DT.Rows) { ObtieneGastoResult ent = new ObtieneGastoResult { ACTUALIZADO = Datos.dirotros, //Convert.ToString(row["ACTUALIZADO"]), id = Convert.ToInt32(row["id"]), idinforme = Convert.ToInt32(row["idinforme"]), Ruta = Convert.ToString(row["Ruta"]) }; lista.Add(ent); } return(lista); } else { ObtieneGastoResult ent = new ObtieneGastoResult { ACTUALIZADO = "Error al actualizar", id = 0, idinforme = 0, }; lista.Add(ent); return(lista); } } catch (System.Exception ex) { List <ObtieneGastoResult> lista = new List <ObtieneGastoResult>(); ObtieneGastoResult ent = new ObtieneGastoResult { ACTUALIZADO = ex.ToString(), id = 0, idinforme = 0, }; lista.Add(ent); return(lista); } }
public string PostInsertGasto(ParametrosGastos Datos) { SqlCommand comando = new SqlCommand("UpdateGasto"); comando.CommandType = CommandType.StoredProcedure; //Declaracion de parametros comando.Parameters.Add("@id", SqlDbType.Int); comando.Parameters.Add("@idinforme", SqlDbType.Int); comando.Parameters.Add("@fgasto", SqlDbType.Date); comando.Parameters.Add("@hgasto", SqlDbType.VarChar); comando.Parameters.Add("@concepto", SqlDbType.VarChar); comando.Parameters.Add("@negocio", SqlDbType.VarChar); comando.Parameters.Add("@formapago", SqlDbType.VarChar); comando.Parameters.Add("@categoria", SqlDbType.Int); comando.Parameters.Add("@total", SqlDbType.Float); comando.Parameters.Add("@observaciones", SqlDbType.VarChar); comando.Parameters.Add("@nombreCategoria", SqlDbType.VarChar); comando.Parameters.Add("@ivaCategoria", SqlDbType.Float); comando.Parameters.Add("@ncomensales", SqlDbType.Int); comando.Parameters.Add("@nmbcomensales", SqlDbType.VarChar); comando.Parameters.Add("@deducible", SqlDbType.Int); comando.Parameters.Add("@importenodeducible", SqlDbType.Float); comando.Parameters.Add("@importereembolsable", SqlDbType.Float); comando.Parameters.Add("@importenoreembolsable", SqlDbType.Float); comando.Parameters.Add("@importenoaceptable", SqlDbType.Float); DateTime Fecha; string day = Datos.fgasto.Substring(0, 2); string month = Datos.fgasto.Substring(3, 2); string year = Datos.fgasto.Substring(6, 4); try { Fecha = Convert.ToDateTime(year + "-" + month + "-" + day); } catch (Exception) { Fecha = Convert.ToDateTime(day + "-" + month + "-" + year); } //Asignacion de valores a parametros comando.Parameters["@id"].Value = Datos.id; comando.Parameters["@idinforme"].Value = Datos.idinforme; comando.Parameters["@fgasto"].Value = Fecha; comando.Parameters["@ncomensales"].Value = Datos.ncomensales; comando.Parameters["@nmbcomensales"].Value = Datos.nmbcomensales != null ? Datos.nmbcomensales : ""; comando.Parameters["@deducible"].Value = Datos.importenodeducible == 0 ? 1 : 0; comando.Parameters["@importenodeducible"].Value = Datos.importenodeducible; comando.Parameters["@importereembolsable"].Value = Datos.importereembolsable; comando.Parameters["@importenoreembolsable"].Value = Datos.importenoreembolsable; comando.Parameters["@importenoaceptable"].Value = Datos.importenoaceptable; string hora = ""; if (Datos.hgasto != null) { hora = Datos.hgasto; } comando.Parameters["@hgasto"].Value = hora; comando.Parameters["@concepto"].Value = Datos.concepto; comando.Parameters["@negocio"].Value = Datos.negocio; comando.Parameters["@formapago"].Value = Datos.formapago; comando.Parameters["@categoria"].Value = Datos.categoria; comando.Parameters["@total"].Value = Datos.total; comando.Parameters["@nombreCategoria"].Value = Datos.nombreCategoria; comando.Parameters["@ivaCategoria"].Value = Datos.ivaCategoria; string Obs = ""; if (Datos.observaciones != null) { Obs = Datos.observaciones; } comando.Parameters["@observaciones"].Value = Obs; comando.Connection = new SqlConnection(VariablesGlobales.CadenaConexion); comando.CommandTimeout = 0; comando.Connection.Open(); //DA.SelectCommand = comando; comando.ExecuteNonQuery(); DataTable DT = new DataTable(); SqlDataAdapter DA = new SqlDataAdapter(comando); comando.Connection.Close(); DA.Fill(DT); if (DT.Rows.Count > 0) { DataRow row = DT.Rows[0]; var idinforme = row[2].ToString(); return(idinforme); } else { return(null); } }
public string Post(ParametrosGastos Datos) { string Ruta = ""; Ruta = PostSave(Datos.dir); double Total = 0; string Emisor = ""; string Receptor = ""; string UUID = ""; string Formapago = ""; string TipoDeComprobante = ""; string Folio = ""; string Serie = ""; string NmbEmisor = ""; int ValPosNeg = 1; if (Ruta != "") { string path = HttpContext.Current.Server.MapPath("/"); XmlTextReader reader = new XmlTextReader(path + Ruta); while (reader.Read()) { switch (reader.NodeType) { case XmlNodeType.Element: // The node is an element. if (reader.Name == "cfdi:Receptor") { while (reader.MoveToNextAttribute()) // Read the attributes. { if (reader.Name == "rfc" || reader.Name == "Rfc") { Receptor = Convert.ToString(reader.Value); } } } if (reader.Name == "cfdi:Emisor") { while (reader.MoveToNextAttribute()) { // Read the attributes. if (reader.Name == "rfc" || reader.Name == "Rfc") { Emisor = Convert.ToString(reader.Value); } if (reader.Name == "Nombre" || reader.Name == "nombre") { NmbEmisor = Convert.ToString(reader.Value); } } } if (reader.Name == "tfd:TimbreFiscalDigital") { while (reader.MoveToNextAttribute()) // Read the attributes { if (reader.Name == "uuid" || reader.Name == "UUID") { UUID = Convert.ToString(reader.Value); } } } if (reader.Name == "cfdi:Comprobante") { while (reader.MoveToNextAttribute()) { // Read the attributes if (reader.Name == "total" || reader.Name == "Total") { Total = Convert.ToDouble(reader.Value); } else { if (reader.Name == "FormaPago" || reader.Name == "FormaPago") { Formapago = Convert.ToString(reader.Value); } } if (reader.Name == "serie" || reader.Name == "Serie") { Serie = Convert.ToString(reader.Value); } if (reader.Name == "folio" || reader.Name == "Folio") { Folio = Convert.ToString(reader.Value); } if (reader.Name == "TipoDeComprobante") { TipoDeComprobante = Convert.ToString(reader.Value); } } } while (reader.MoveToNextAttribute()) { // Read the attributes. if ((reader.Name == "total" || reader.Name == "Total") && Total == 0) { Total = Convert.ToDouble(reader.Value); } if (reader.Name == "emisor") { Emisor = Convert.ToString(reader.Value); } if (reader.Name == "receptor") { Receptor = Convert.ToString(reader.Value); } if (reader.Name == "uuid" || reader.Name == "UUID") { UUID = Convert.ToString(reader.Value); } if (reader.Name == "FormaPago") { Formapago = Convert.ToString(reader.Value); } if (reader.Name == "TipoDeComprobante") { TipoDeComprobante = Convert.ToString(reader.Value); } if (reader.Name == "Folio" && Folio.Trim() == "") { Folio = Convert.ToString(reader.Value); } if (reader.Name == "Serie" && Serie.Trim() == "") { Serie = Convert.ToString(reader.Value); } } break; } } } if (string.IsNullOrEmpty(UUID)) { Deletexml(Ruta); return("XML invalido"); } //validar xml en AdminERP string usuarioxml = ""; int idrequisicion = 0; int idgasto = 0; SqlDataAdapter DA1; DataTable DT1 = new DataTable(); SqlConnection Conexion = new SqlConnection { ConnectionString = VariablesGlobales.CadenaConexion }; string consulta = "SELECT r_idrequisicion, r_idgasto, i_uresponsable FROM informe WHERE i_id = " + Datos.idinforme + "; "; DA1 = new SqlDataAdapter(consulta, Conexion); DA1.Fill(DT1); if (DT1.Rows.Count > 0) { // DataRow row = DT.Rows[0]; foreach (DataRow row in DT1.Rows) { usuarioxml = Convert.ToString(row["i_uresponsable"]).Trim(); idrequisicion = Convert.ToInt32(row["r_idrequisicion"]); idgasto = Convert.ToInt32(row["r_idgasto"]); } } else { usuarioxml = "imartinez"; } /* * DocumentoEntrada entradadoc = new DocumentoEntrada * { * Usuario = usuarioxml,//Variables.usuario; * Origen = "AdminWEB", * Transaccion = 120870, * Operacion = 6 * }; * entradadoc.agregaElemento("FiCfdUuid", UUID); * * DocumentoSalida respuesta = PeticionCatalogo(entradadoc.Documento); * * int FicfdTipoDocumento = 0; * int FiCfdNumeroDocumento = 0; * string FiCfdUuid = ""; * int existeAdminERP = 0; * * try * { * DataTable DTCFDI = new DataTable(); * * if (respuesta.Resultado == "1") * { * DTCFDI = respuesta.obtieneTabla("Llave"); * for (int i = 0; i < DTCFDI.Rows.Count; i++) * { * FicfdTipoDocumento = Convert.ToInt32(DTCFDI.Rows[i]["FicfdTipoDocumento"]); * FiCfdNumeroDocumento = Convert.ToInt32(DTCFDI.Rows[i]["FiCfdNumeroDocumento"]); * FiCfdUuid = Convert.ToString(DTCFDI.Rows[i]["FiCfdUuid"]); * } * } * } * catch (Exception) * { * * throw; * } * * if (FicfdTipoDocumento > 0 && FiCfdNumeroDocumento > 0) * { * string tipoDoc = ""; * string msn = ""; * switch (FicfdTipoDocumento) * { * case 95: * tipoDoc = "Gasto"; * if (idgasto != FiCfdNumeroDocumento) * existeAdminERP = 1; * else * mismoDocAdminERP = 1; * break; * case 96: * tipoDoc = "Recepción"; * existeAdminERP = 1; * break; * case 97: * tipoDoc = "Requisición"; * if (idrequisicion != FiCfdNumeroDocumento) * existeAdminERP = 1; * else * mismoDocAdminERP = 1; * break; * } * if (existeAdminERP == 1) * { * msn = "El XML No se puede cargar, el comprobante " + FiCfdUuid + " ya existe en AdminERP. " + tipoDoc + ": " + FiCfdNumeroDocumento.ToString(); * Deletexml(Ruta); * } * * if (msn != "") * return msn; * } */ //****************agregar xml a AdminERP****************// int cUuid = 0; string xuuid = ""; string msnError = ""; DT1 = new DataTable(); consulta = "SELECT g_dirxml, x_urlxml, ISNULL(x_uuid, '') AS x_uuid, ISNULL(LEN(x_uuid),0) AS cUuid " + "FROM gastos INNER JOIN " + "xmlinforme ON x_idinforme = g_idinforme AND x_idgasto = g_id " + "WHERE g_idinforme = " + Datos.idinforme + " AND g_id = " + Datos.id + "; "; DA1 = new SqlDataAdapter(consulta, Conexion); DA1.Fill(DT1); DocumentoEntrada entradadoc = new DocumentoEntrada(); DocumentoSalida respuesta; string[] xmlBorrado; if (DT1.Rows.Count > 0) { int st_respuesta = 1; foreach (DataRow row in DT1.Rows) { cUuid = Convert.ToInt16(row["cUuid"]); xuuid = Convert.ToString(row["x_uuid"]); } if (cUuid == 36) { xmlBorrado = BorrarUUIDAdminERP(usuarioxml, idgasto, xuuid); /*DocumentoEntrada entradadoc = new DocumentoEntrada * { * Usuario = usuarioxml,//Variables.usuario; * Origen = "AdminWEB", * Transaccion = 120092, * Operacion = 22 * };//21:Agregar XML, 22:Eliminar XML * entradadoc.agregaElemento("FiGfaGasto", idgasto); * entradadoc.agregaElemento("FiGfaUuid", xuuid); * * DocumentoSalida respuesta = PeticionCatalogo(entradadoc.Documento);*/ st_respuesta = Convert.ToInt16(xmlBorrado[0]); //(respuesta.Resultado); if (st_respuesta == 1 || st_respuesta == 0) { entradadoc = new DocumentoEntrada { Usuario = usuarioxml, //Variables.usuario; Origen = "AdminWEB", Transaccion = 120092, Operacion = 21 }; //21:Agregar XML, 22:Eliminar XML entradadoc.agregaElemento("FiGfaGasto", idgasto); entradadoc.agregaElemento("FiGfaUuid", UUID); respuesta = PeticionCatalogo(entradadoc.Documento); try { if (respuesta.Resultado == "0") { msnError = ""; XmlDocument xmErrores = new XmlDocument(); xmErrores.LoadXml(respuesta.Errores.InnerXml); XmlNodeList elemList = xmErrores.GetElementsByTagName("Descripcion"); for (int i = 0; i < elemList.Count; i++) { msnError += elemList[i].InnerXml; } if (msnError != "") { Deletexml(Ruta); return(msnError); } } } catch (Exception) { throw; } } else { msnError = xmlBorrado[1]; /*XmlDocument xmErrores = new XmlDocument(); * xmErrores.LoadXml(respuesta.Errores.InnerXml); * XmlNodeList elemList = xmErrores.GetElementsByTagName("Descripcion"); * for (int i = 0; i < elemList.Count; i++) * { * msnError += elemList[i].InnerXml; * }*/ if (msnError != "") { Deletexml(Ruta); return(msnError); } } } else { Deletexml(Ruta); return("El UUID " + xuuid + " es invalido."); } } else { entradadoc = new DocumentoEntrada { Usuario = usuarioxml, //Variables.usuario; Origen = "AdminWEB", Transaccion = 120092, Operacion = 21 }; //21:Agregar XML, 22:Eliminar XML entradadoc.agregaElemento("FiGfaGasto", idgasto); entradadoc.agregaElemento("FiGfaUuid", UUID); respuesta = PeticionCatalogo(entradadoc.Documento); try { if (respuesta.Resultado == "0") { msnError = ""; XmlDocument xmErrores = new XmlDocument(); xmErrores.LoadXml(respuesta.Errores.InnerXml); XmlNodeList elemList = xmErrores.GetElementsByTagName("Descripcion"); for (int i = 0; i < elemList.Count; i++) { msnError += elemList[i].InnerXml; } if (msnError != "") { Deletexml(Ruta); return(msnError); } } } catch (Exception) { throw; } } //***********fin agregar XML en AdminERP**********// if (Receptor.ToUpper() != "SPO830427DQ1") { if (UUID.Trim() != "") { xmlBorrado = BorrarUUIDAdminERP(usuarioxml, idgasto, UUID); } Deletexml(Ruta); return("El RFC es invalido."); } //FIN valida xml en AdminERP //validar tipo de comprobante if ((TipoDeComprobante.Substring(0, 1)).ToUpper() != "I") { ValPosNeg = -1; //if (UUID.Trim() != "") //{ // xmlBorrado = BorrarUUIDAdminERP(usuarioxml, idgasto, UUID); //} //Deletexml(Ruta); //return "XML no cargado documento no es un ingreso."; } //fin valida tipo de comprobante SqlCommand comando = new SqlCommand("UpdateGastoXML"); comando.CommandType = CommandType.StoredProcedure; //Declaracion de parametros comando.Parameters.Add("@id", SqlDbType.Int); comando.Parameters.Add("@idinforme", SqlDbType.Int); comando.Parameters.Add("@dir", SqlDbType.VarChar); comando.Parameters.Add("@Monto", SqlDbType.Float); comando.Parameters.Add("@Emisor", SqlDbType.VarChar); comando.Parameters.Add("@Receptor", SqlDbType.VarChar); comando.Parameters.Add("@UUID", SqlDbType.VarChar); comando.Parameters.Add("@FormaPago", SqlDbType.VarChar); comando.Parameters.Add("@TipoDeComprobante", SqlDbType.VarChar); comando.Parameters.Add("@NmbEmisor", SqlDbType.VarChar); comando.Parameters.Add("@Serie", SqlDbType.VarChar); comando.Parameters.Add("@Folio", SqlDbType.VarChar); //Asignacion de valores a parametros comando.Parameters["@id"].Value = Datos.id; comando.Parameters["@idinforme"].Value = Datos.idinforme; comando.Parameters["@dir"].Value = Ruta; comando.Parameters["@Monto"].Value = (Total * ValPosNeg); comando.Parameters["@Emisor"].Value = Emisor; comando.Parameters["@Receptor"].Value = Receptor; comando.Parameters["@UUID"].Value = UUID; comando.Parameters["@FormaPago"].Value = Formapago; comando.Parameters["@TipoDeComprobante"].Value = TipoDeComprobante.ToUpper(); comando.Parameters["@NmbEmisor"].Value = NmbEmisor; comando.Parameters["@Serie"].Value = Serie; comando.Parameters["@Folio"].Value = Folio; comando.Connection = new SqlConnection(VariablesGlobales.CadenaConexion); comando.CommandTimeout = 0; comando.Connection.Open(); //DA.SelectCommand = comando; //comando.ExecuteNonQuery(); DataTable DT = new DataTable(); SqlDataAdapter DA = new SqlDataAdapter(comando); comando.Connection.Close(); DA.Fill(DT); //aqui verificar en base al mensaje,que es lo que se va regresar if (DT.Rows.Count > 0) { DataRow row = DT.Rows[0]; string Mensaje = row[0].ToString(); //if (Mensaje == "Gasto Actualizado") //{ //} if (Mensaje == "No se puede guardar el comprobante, el importe es igual o mayor a $ 2000.00 y la forma de pago es efectivo.") { if (UUID.Trim() != "") { xmlBorrado = BorrarUUIDAdminERP(usuarioxml, idgasto, UUID); } Deletexml(Ruta); } if (Mensaje == "El UUID ingresado ya existe" || Mensaje.Contains("El UUID ingresado ya existe")) { if (UUID.Trim() != "") { xmlBorrado = BorrarUUIDAdminERP(usuarioxml, idgasto, UUID); } Deletexml(Ruta); } if (Mensaje == "El RFC es invalido.") { if (UUID.Trim() != "") { xmlBorrado = BorrarUUIDAdminERP(usuarioxml, idgasto, UUID); } Deletexml(Ruta); } return(Mensaje); } else { if (UUID.Trim() != "") { xmlBorrado = BorrarUUIDAdminERP(usuarioxml, idgasto, UUID); } Deletexml(Ruta); return(null); } }
public string Post(ParametrosGastos Datos) { // string Ruta = ""; //// Ruta = PostSave(Datos.dir); // double Total = 0; // string Emisor = ""; // string Receptor = ""; // string UUID = ""; // string Formapago = ""; // if (Ruta != "") // { // string path = HttpContext.Current.Server.MapPath("/"); // } SqlCommand comando = new SqlCommand("DeleteComprobantes"); comando.CommandType = CommandType.StoredProcedure; //Declaracion de parametros comando.Parameters.Add("@id", SqlDbType.Int); comando.Parameters.Add("@idinforme", SqlDbType.Int); comando.Parameters.Add("@comprobante", SqlDbType.VarChar); //Asignacion de valores a parametros comando.Parameters["@id"].Value = Datos.id; comando.Parameters["@idinforme"].Value = Datos.idinforme; comando.Parameters["@comprobante"].Value = Datos.comprobante; comando.Connection = new SqlConnection(VariablesGlobales.CadenaConexion); comando.CommandTimeout = 0; comando.Connection.Open(); //DA.SelectCommand = comando; //comando.ExecuteNonQuery(); DataTable DT = new DataTable(); SqlDataAdapter DA = new SqlDataAdapter(comando); comando.Connection.Close(); DA.Fill(DT); //aqui verificar en base al mensaje,que es lo que se va regresar if (DT.Rows.Count > 0) { //@g_dirxml as RutaXML,@g_dirpdf as RutaPDF ,@g_dirotros as RutaComp DataRow row = DT.Rows[0]; var RutaXML = row[0].ToString(); var RutaPDF = row[1].ToString(); var RutaComprobantes = row[2].ToString(); string UUID = row[3].ToString(); int idGasto = Convert.ToInt16(row[4].ToString()); string uResponsable = row[5].ToString(); if (Datos.comprobante == "OTRO") { Deletexml(RutaComprobantes); } if (Datos.comprobante == "PDF") { Deletexml(RutaPDF); } if (Datos.comprobante == "XML") { if (UUID.Trim() != "") { try { DocumentoEntrada entradadoc = new DocumentoEntrada { Usuario = uResponsable, //Variables.usuario; Origen = "AdminWEB", Transaccion = 120092, Operacion = 22 }; //21:Agregar XML, 22:Eliminar XML entradadoc.agregaElemento("FiGfaGasto", idGasto); entradadoc.agregaElemento("FiGfaUuid", UUID); DocumentoSalida respuesta = PeticionCatalogo(entradadoc.Documento); } catch (Exception) { throw; } } Deletexml(RutaXML); } return(""); } else { //Deletexml(Ruta); return(null); } }