public DataSet envioAnulacion(String xml, String cod) { String xmlDoc = ""; String xmlGenerado = ""; DataSet ds = new DataSet(); try { XMLAnular xMLAnular = new XMLAnular(); xmlGenerado = xMLAnular.getXML(xml, "", cod); ds = wsSolicitudAnulacion(xmlGenerado, cod, xmlGenerado); } catch (Exception ex) { DataSet dsError = new DataSet(); DataTable dt = new DataTable("resultado"); dt.Columns.Add(new DataColumn("resultado", typeof(string))); DataRow dr = dt.NewRow(); dr["resultado"] = ex.ToString(); dt.Rows.Add(dr); dsError.Tables.Add(dt); ds = dsError; } return(ds); }
public DataSet annularDocument(String token, String XMLInvoice, String path, String fac_num) { try { XMLInvoice = "<?xml version = \"1.0\" encoding=\"Windows-1252\" standalone=\"yes\"?><VFPData><temp_fact_detail> <numerodocumentoanular>990005034</numerodocumentoanular><nitemisor>3225607</nitemisor>" + "<idreceptor>34506004</idreceptor><nitcertificadordocumentoanular>50510231</nitcertificadordocumentoanular> <fechaemisiondocumentoanular>2019-04-03T14:42:00</fechaemisiondocumentoanular>"+ "<fechahoraanulacion>2019-04-03T15:13:47</fechahoraanulacion><uuid>71EC0B81-80DD-479B-8462-244ADC1C3698</uuid><motivoanulacion>Anulación de factura</motivoanulacion></temp_fact_detail></VFPData>"; //VALIDAR QUE NO ESTEN VACIOS LOS DATOS ENVIADOS if (!validateEmply(token, XMLInvoice)) { return(strreponsexml); } //SE ENVIA DATOS PARA QUE ARME LA ESTRUCTURA DE XML String xmlDoc = xml.getXML(XMLInvoice, path, fac_num); //SE ENVIA XML PARA REGISTRAR DOCUMENTO XmlDocument register = ws.annularDte(token, xmlDoc); //SE VALIDA RESPUESTA DEL SERVICIO XmlNodeList resReg = register.GetElementsByTagName("tipo_respuesta"); string errorRes = resReg[0].InnerXml; // SI EL SERVICIO RETORNA ERROR SE ARMA LA ESTRUCTURA PARA RESPONDER LOS ERRORES A PROFIT if ("1".Equals(errorRes.ToString())) { String errorDescp = getError(register); strreponsexml = GetResponseXML(errorDescp, errorRes, this.strreponsexml); return(strreponsexml); } //SI EL SERVICIO FUE RETORNA EXITOSO RETORNA UUID GENERADO POR EL FIRMADO ELECTRONICO XmlNodeList uuidNodo = register.GetElementsByTagName("uuid"); string uuid = uuidNodo[0].InnerXml; strreponsexml = GetResponseXML("Transacción Exitosa", uuid, errorRes, this.strreponsexml); return(strreponsexml); } catch (Exception e) { this.strreponsexml = GetResponseXML("Ha ocurrido una excepción no controlada en el sistema \n " + e.Message, "1", this.strreponsexml); return(strreponsexml); } }