/// <summary> /// Llama al WebService FEParamGetTiposMonedas /// Devuelve los Códigos de Tipos Monedas y su descripción. /// Guarda en la B.D. el Tipo Monedas y su descripción /// </summary> /// <param name="pTicket_Rta"></param> public Entidades.WebServices_AFIP.RespuestaWS FEParamGetTiposMonedas(Entidades.Tickets_Acceso pTicket_Rta) { Entidades.WebServices_AFIP.RespuestaWS objEntidadesWebService_AFIP_Rta = new Entidades.WebServices_AFIP.RespuestaWS(); /* * https://servicios1.afip.gov.ar/wsfev1/service.asmx?op=FEParamGetTiposMonedas */ /*WebService*/ AFIP_WSFEV1_Produccion.FEAuthRequest autorizacion = new AFIP_WSFEV1_Produccion.FEAuthRequest(); AFIP_WSFEV1_Produccion.MonedaResponse respuesta = new AFIP_WSFEV1_Produccion.MonedaResponse(); /*Tipos de Monedas Recuperados*/ Entidades.TiposMonedas objEntidadesTiposMonedas = new Entidades.TiposMonedas(); Logica.TiposMonedas objLogicaTiposMonedas = new Logica.TiposMonedas(); /*Errores Devueltos*/ Entidades.Errores_WS objEntidadesErroresWS = new Entidades.Errores_WS(); Logica.Errores_WS objLogicaErroresWS = new Logica.Errores_WS(); /*Eventos Devueltos*/ Entidades.Eventos_WS objEntidadesEventosWS = new Entidades.Eventos_WS(); Logica.Eventos_WS objLogicaEventosWS = new Logica.Eventos_WS(); /*Asigno los datos a la autorización*/ autorizacion.Cuit = pTicket_Rta.Cuit; autorizacion.Sign = pTicket_Rta.Sign; autorizacion.Token = pTicket_Rta.Token; /*Llamo al WebService*/ AFIP_WSFEV1_Produccion.Service webService = new AFIP_WSFEV1_Produccion.Service(); respuesta = webService.FEParamGetTiposMonedas(autorizacion); /*Por cada Error devuelto lo agrego en la B.D.*/ if (respuesta.Errors != null) { foreach (AFIP_WSFEV1_Produccion.Err errorItem in respuesta.Errors) { objEntidadesErroresWS.Codigo = errorItem.Code; objEntidadesErroresWS.Mensaje = errorItem.Msg; objEntidadesErroresWS.Fecha = DateTime.Now; objEntidadesErroresWS.Observaciones = "Llamando al WS: FEParamGetTiposMonedas"; objLogicaErroresWS.Agregar(objEntidadesErroresWS); } objEntidadesWebService_AFIP_Rta = Entidades.WebServices_AFIP.RespuestaWS.Error; } /*Por cada Evento devuelto lo agrego en la B.D.*/ if (respuesta.Events != null) { foreach (AFIP_WSFEV1_Produccion.Evt eventoItem in respuesta.Events) { objEntidadesEventosWS.Codigo = eventoItem.Code; objEntidadesEventosWS.Mensaje = eventoItem.Msg; objEntidadesEventosWS.Fecha = DateTime.Now; objEntidadesEventosWS.Observaciones = "Llamando al WS: FEParamGetTiposMonedas"; objLogicaEventosWS.Agregar(objEntidadesEventosWS); } objEntidadesWebService_AFIP_Rta = Entidades.WebServices_AFIP.RespuestaWS.Evento; } /*Por cada Documento devuelto lo agrego en la B.D.*/ if (respuesta.ResultGet != null) { /*Primero Borra el listado de la base para cargarlo de Cero*/ objLogicaTiposMonedas.BorrarTodos(); foreach (AFIP_WSFEV1_Produccion.Moneda monedaTipoItem in respuesta.ResultGet) { objEntidadesTiposMonedas.Id_TipoMoneda = monedaTipoItem.Id; objEntidadesTiposMonedas.Descripcion = monedaTipoItem.Desc; if (monedaTipoItem.FchDesde != "NULL") { objEntidadesTiposMonedas.FchDesde = DateTime.ParseExact(monedaTipoItem.FchDesde, "yyyyMMdd", System.Globalization.CultureInfo.InvariantCulture); } if (monedaTipoItem.FchHasta != "NULL") { objEntidadesTiposMonedas.FchHasta = DateTime.ParseExact(monedaTipoItem.FchHasta, "yyyyMMdd", System.Globalization.CultureInfo.InvariantCulture); } objLogicaTiposMonedas.Agregar(objEntidadesTiposMonedas); } objEntidadesWebService_AFIP_Rta = Entidades.WebServices_AFIP.RespuestaWS.Correcta; } return objEntidadesWebService_AFIP_Rta; }
public Entidades.WebServices_AFIP.RespuestaWS FECAESolicitar(Entidades.Tickets_Acceso pTicket_Rta, Entidades.Comprobantes pCbte) { Entidades.WebServices_AFIP.RespuestaWS objEntidadesWebService_AFIP_Rta = new Entidades.WebServices_AFIP.RespuestaWS(); /* * https://servicios1.afip.gov.ar/wsfev1/service.asmx?op=FEParamGetPtosVenta */ /*WebService*/ AFIP_WSFEV1_Produccion.FEAuthRequest autorizacion = new AFIP_WSFEV1_Produccion.FEAuthRequest(); AFIP_WSFEV1_Produccion.FECAEResponse respuesta = new AFIP_WSFEV1_Produccion.FECAEResponse(); AFIP_WSFEV1_Produccion.FECAERequest cbtePedido = new AFIP_WSFEV1_Produccion.FECAERequest(); /*Puntos de Venta Recuperados*/ Entidades.PtosVenta objEntidadesPtosVenta = new Entidades.PtosVenta(); Logica.PtosVenta objLogicaPtosVenta = new Logica.PtosVenta(); /*Errores Devueltos*/ Entidades.Errores_WS objEntidadesErroresWS = new Entidades.Errores_WS(); Logica.Errores_WS objLogicaErroresWS = new Logica.Errores_WS(); /*Eventos Devueltos*/ Entidades.Eventos_WS objEntidadesEventosWS = new Entidades.Eventos_WS(); Logica.Eventos_WS objLogicaEventosWS = new Logica.Eventos_WS(); /*Asigno los datos a la autorización*/ autorizacion.Cuit = pTicket_Rta.Cuit; autorizacion.Sign = pTicket_Rta.Sign; autorizacion.Token = pTicket_Rta.Token; /*Asigno al CbteRequest los datos del Cbte*/ /*CABECERA*/ cbtePedido.FeCabReq.CantReg = 1; cbtePedido.FeCabReq.PtoVta = pCbte.Id_PtoVenta; cbtePedido.FeCabReq.CbteTipo = pCbte.Id_TipoCbte; /*DETALLE*/ int i = 0; cbtePedido.FeDetReq[i].Concepto = pCbte.Id_TipoConcepto; //pCbte.Id_Cliente; cbtePedido.FeDetReq[i].DocTipo = 80; /*ARREGLAR*/ cbtePedido.FeDetReq[i].DocNro = 20335542402; /*ARREGLAR*/ cbtePedido.FeDetReq[i].CbteDesde = pCbte.Nro_CbteDesde; cbtePedido.FeDetReq[i].CbteHasta = pCbte.Nro_CbteHasta; cbtePedido.FeDetReq[i].CbteFch = pCbte.CbteFch.ToString("yyyyMMdd"); cbtePedido.FeDetReq[i].ImpTotal = pCbte.ImpTotal; cbtePedido.FeDetReq[i].ImpTotConc = pCbte.ImpTotConc; cbtePedido.FeDetReq[i].ImpNeto = pCbte.ImpNeto; cbtePedido.FeDetReq[i].ImpOpEx = pCbte.ImpOpEx; cbtePedido.FeDetReq[i].ImpIVA = pCbte.ImpIVA; cbtePedido.FeDetReq[i].ImpTrib = pCbte.ImpTrib; cbtePedido.FeDetReq[i].FchServDesde = pCbte.FchServDesde.ToString("yyyyMMdd"); cbtePedido.FeDetReq[i].FchServHasta = pCbte.FchServHasta.ToString("yyyyMMdd"); cbtePedido.FeDetReq[i].FchVtoPago = pCbte.FchVtoPago.ToString("yyyyMMdd"); cbtePedido.FeDetReq[i].MonId = pCbte.Id_TipoMoneda; cbtePedido.FeDetReq[i].MonCotiz = pCbte.MonCotiz; /*CBTES ASOCIADOS*/ //cbtePedido.FeDetReq[i].CbtesAsoc[a].Tipo = ; //cbtePedido.FeDetReq[i].CbtesAsoc[a].PtoVta = ; //cbtePedido.FeDetReq[i].CbtesAsoc[a].Nro = ; /*TRIBUTOS*/ //cbtePedido.FeDetReq[i].Tributos[t].Id = ; //cbtePedido.FeDetReq[i].Tributos[t].Desc = ; //cbtePedido.FeDetReq[i].Tributos[t].BaseImp = ; //cbtePedido.FeDetReq[i].Tributos[t].Alic = ; //cbtePedido.FeDetReq[i].Tributos[t].Importe = ; /*IVA*/ //cbtePedido.FeDetReq[i].Iva[v].Id = ; //cbtePedido.FeDetReq[i].Iva[v].BaseImp = ; //cbtePedido.FeDetReq[i].Iva[v].Importe = ; /*OPCIONALES*/ //cbtePedido.FeDetReq[i].Opcionales[o].Id = ; //cbtePedido.FeDetReq[i].Opcionales[o].Valor = ; /*Llamo al WebService*/ AFIP_WSFEV1_Produccion.Service webService = new AFIP_WSFEV1_Produccion.Service(); respuesta = webService.FECAESolicitar(autorizacion, cbtePedido); return objEntidadesWebService_AFIP_Rta; }
/// <summary> /// Llama al WebService FECompConsultar (Homologacion) /// Devuelve los Comprobantes ya aprobados. /// </summary> /// <param name="pTicket_Rta"></param> public Entidades.WebServices_AFIP.RespuestaWS FECompConsultar_Homologacion(Entidades.Tickets_Acceso pTicket_Rta, int pPtoVenta, int pTipoCbte, long NroCbteDesde, long NroCbteHasta) { Entidades.WebServices_AFIP.RespuestaWS objEntidadesWebService_AFIP_Rta = new Entidades.WebServices_AFIP.RespuestaWS(); /* * https://wswhomo.afip.gov.ar/wsfev1/service.asmx?op=FECompConsultar */ /*WebService*/ AFIP_WSFEV1_Homologacion.FEAuthRequest autorizacion = new AFIP_WSFEV1_Homologacion.FEAuthRequest(); AFIP_WSFEV1_Homologacion.FECompConsultaResponse respuesta = new AFIP_WSFEV1_Homologacion.FECompConsultaResponse(); /*Comprobante a Consultar*/ AFIP_WSFEV1_Homologacion.FECompConsultaReq cbteAConsultar = new AFIP_WSFEV1_Homologacion.FECompConsultaReq(); /*Comprobantes Recuperados*/ Entidades.Comprobantes_Autorizados objEntidadesCbtesAutorizados = new Entidades.Comprobantes_Autorizados(); Logica.Comprobantes_Autorizados objLogicaCbtesAutorizados = new Logica.Comprobantes_Autorizados(); /*Comprobantes Recuperados*/ Logica.UltCbtesAutorizados objLogicaUltCbteAutorizado = new Logica.UltCbtesAutorizados(); /*Errores Devueltos*/ Entidades.Errores_WS objEntidadesErroresWS = new Entidades.Errores_WS(); Logica.Errores_WS objLogicaErroresWS = new Logica.Errores_WS(); /*Eventos Devueltos*/ Entidades.Eventos_WS objEntidadesEventosWS = new Entidades.Eventos_WS(); Logica.Eventos_WS objLogicaEventosWS = new Logica.Eventos_WS(); /*Asigno los datos a la autorización*/ autorizacion.Cuit = pTicket_Rta.Cuit; autorizacion.Sign = pTicket_Rta.Sign; autorizacion.Token = pTicket_Rta.Token; /*Asigno los datos al Comprobante a Consultar*/ cbteAConsultar.PtoVta = pPtoVenta; cbteAConsultar.CbteTipo = pTipoCbte; /*Busco cual es el Ultimo Nro de Comprobante Autorizado para recorrer hasta ese*/ long ultCbteAutorizado = objLogicaUltCbteAutorizado.TraerUltNro(cbteAConsultar.PtoVta, cbteAConsultar.CbteTipo); /*Si el Pedido es mayor al Ultimo CbteAutorizado lo actualizo*/ if (NroCbteHasta > ultCbteAutorizado) { NroCbteHasta = ultCbteAutorizado; } /*Primero Borra el listado de la base para cargarlo de Cero*/ objLogicaCbtesAutorizados.BorrarCbtesEspecifico(cbteAConsultar.PtoVta, cbteAConsultar.CbteTipo); for (long i = NroCbteDesde; i <= NroCbteHasta; i++) { /*Asigno el Nro a Comprobar*/ cbteAConsultar.CbteNro = i; /*Llamo al WebService*/ AFIP_WSFEV1_Homologacion.Service webService = new AFIP_WSFEV1_Homologacion.Service(); respuesta = webService.FECompConsultar(autorizacion, cbteAConsultar); /*Por cada Error devuelto lo agrego en la B.D.*/ if (respuesta.Errors != null) { foreach (AFIP_WSFEV1_Homologacion.Err errorItem in respuesta.Errors) { objEntidadesErroresWS.Codigo = errorItem.Code; objEntidadesErroresWS.Mensaje = errorItem.Msg; objEntidadesErroresWS.Fecha = DateTime.Now; objEntidadesErroresWS.Observaciones = "Llamando al WS: FECompConsulta. Nro. Cbte = " + cbteAConsultar.CbteNro.ToString() + " Tipo Cbte = " + cbteAConsultar.CbteTipo.ToString() + " Punto Venta = " + cbteAConsultar.PtoVta.ToString(); objLogicaErroresWS.Agregar(objEntidadesErroresWS); } objEntidadesWebService_AFIP_Rta = Entidades.WebServices_AFIP.RespuestaWS.Error; } /*Por cada Evento devuelto lo agrego en la B.D.*/ if (respuesta.Events != null) { foreach (AFIP_WSFEV1_Homologacion.Evt eventoItem in respuesta.Events) { objEntidadesEventosWS.Codigo = eventoItem.Code; objEntidadesEventosWS.Mensaje = eventoItem.Msg; objEntidadesEventosWS.Fecha = DateTime.Now; objEntidadesErroresWS.Observaciones = "Llamando al WS: FECompConsulta. Nro. Cbte = " + cbteAConsultar.CbteNro.ToString() + " Tipo Cbte = " + cbteAConsultar.CbteTipo.ToString() + " Punto Venta = " + cbteAConsultar.PtoVta.ToString(); objLogicaEventosWS.Agregar(objEntidadesEventosWS); } objEntidadesWebService_AFIP_Rta = Entidades.WebServices_AFIP.RespuestaWS.Evento; } /*Por cada Comprobante Autorizado devuelto lo agrego en la B.D.*/ if (respuesta.ResultGet != null) { objEntidadesCbtesAutorizados.Id_PtoVenta = Convert.ToInt16(respuesta.ResultGet.PtoVta); objEntidadesCbtesAutorizados.Id_TipoCbte = respuesta.ResultGet.CbteTipo; objEntidadesCbtesAutorizados.Id_TipoConcepto = respuesta.ResultGet.Concepto; objEntidadesCbtesAutorizados.Id_TipoDoc = respuesta.ResultGet.DocTipo; objEntidadesCbtesAutorizados.DocNro = respuesta.ResultGet.DocNro; objEntidadesCbtesAutorizados.Nro_CbteDesde = respuesta.ResultGet.CbteDesde; objEntidadesCbtesAutorizados.Nro_CbteHasta = respuesta.ResultGet.CbteHasta; objEntidadesCbtesAutorizados.CbteFch = DateTime.ParseExact(respuesta.ResultGet.CbteFch, "yyyyMMdd", System.Globalization.CultureInfo.InvariantCulture); objEntidadesCbtesAutorizados.ImpTotal = respuesta.ResultGet.ImpTotal; objEntidadesCbtesAutorizados.ImpTotConc = respuesta.ResultGet.ImpTotConc; objEntidadesCbtesAutorizados.ImpNeto = respuesta.ResultGet.ImpNeto; objEntidadesCbtesAutorizados.ImpOpEx = respuesta.ResultGet.ImpOpEx; objEntidadesCbtesAutorizados.ImpTrib = respuesta.ResultGet.ImpTrib; objEntidadesCbtesAutorizados.ImpIVA = respuesta.ResultGet.ImpIVA; objEntidadesCbtesAutorizados.FchServDesde = DateTime.ParseExact(respuesta.ResultGet.FchServDesde, "yyyyMMdd", System.Globalization.CultureInfo.InvariantCulture); objEntidadesCbtesAutorizados.FchServHasta = DateTime.ParseExact(respuesta.ResultGet.FchServHasta, "yyyyMMdd", System.Globalization.CultureInfo.InvariantCulture); objEntidadesCbtesAutorizados.FchVtoPago = DateTime.ParseExact(respuesta.ResultGet.FchVtoPago, "yyyyMMdd", System.Globalization.CultureInfo.InvariantCulture); objEntidadesCbtesAutorizados.Id_TipoMoneda = respuesta.ResultGet.MonId; objEntidadesCbtesAutorizados.MonCotiz = respuesta.ResultGet.MonCotiz; objEntidadesCbtesAutorizados.Resultado = respuesta.ResultGet.Resultado; objEntidadesCbtesAutorizados.CodAutorizacion = respuesta.ResultGet.CodAutorizacion; objEntidadesCbtesAutorizados.EmisionTipo = respuesta.ResultGet.EmisionTipo; objEntidadesCbtesAutorizados.FchVto = DateTime.ParseExact(respuesta.ResultGet.FchVto, "yyyyMMdd", System.Globalization.CultureInfo.InvariantCulture); objEntidadesCbtesAutorizados.FchProceso = DateTime.ParseExact(respuesta.ResultGet.FchProceso, "yyyyMMddHHmmss", System.Globalization.CultureInfo.InvariantCulture); objLogicaCbtesAutorizados.Agregar(objEntidadesCbtesAutorizados); objEntidadesWebService_AFIP_Rta = Entidades.WebServices_AFIP.RespuestaWS.Correcta; } } return objEntidadesWebService_AFIP_Rta; }
/// <summary> /// Llama al WebService FEParamGetTiposPaises /// Devuelve los Códigos de Paises y su descripción. /// Guarda en la B.D. el Código de País y su descripción /// </summary> /// <param name="pTicket_Rta"></param> public Entidades.WebServices_AFIP.RespuestaWS FEParamGetTiposPaises(Entidades.Tickets_Acceso pTicket_Rta) { Entidades.WebServices_AFIP.RespuestaWS objEntidadesWebService_AFIP_Rta = new Entidades.WebServices_AFIP.RespuestaWS(); /* * https://servicios1.afip.gov.ar/wsfev1/service.asmx?op=FEParamGetTiposPaises */ /*WebService*/ AFIP_WSFEV1_Produccion.FEAuthRequest autorizacion = new AFIP_WSFEV1_Produccion.FEAuthRequest(); AFIP_WSFEV1_Produccion.FEPaisResponse respuesta = new AFIP_WSFEV1_Produccion.FEPaisResponse(); /*Paises Recuperados*/ Entidades.TiposPaises objEntidadesPaises = new Entidades.TiposPaises(); Logica.TiposPaises objLogicaPaises = new Logica.TiposPaises(); /*Errores Devueltos*/ Entidades.Errores_WS objEntidadesErroresWS = new Entidades.Errores_WS(); Logica.Errores_WS objLogicaErroresWS = new Logica.Errores_WS(); /*Eventos Devueltos*/ Entidades.Eventos_WS objEntidadesEventosWS = new Entidades.Eventos_WS(); Logica.Eventos_WS objLogicaEventosWS = new Logica.Eventos_WS(); /*Asigno los datos a la autorización*/ autorizacion.Cuit = pTicket_Rta.Cuit; autorizacion.Sign = pTicket_Rta.Sign; autorizacion.Token = pTicket_Rta.Token; /*Llamo al WebService*/ AFIP_WSFEV1_Produccion.Service webService = new AFIP_WSFEV1_Produccion.Service(); respuesta = webService.FEParamGetTiposPaises(autorizacion); /*Por cada Error devuelto lo agrego en la B.D.*/ if (respuesta.Errors != null) { foreach (AFIP_WSFEV1_Produccion.Err errorItem in respuesta.Errors) { objEntidadesErroresWS.Codigo = errorItem.Code; objEntidadesErroresWS.Mensaje = errorItem.Msg; objEntidadesErroresWS.Fecha = DateTime.Now; objEntidadesErroresWS.Observaciones = "Llamando al WS: FEParamGetTiposPaises"; objLogicaErroresWS.Agregar(objEntidadesErroresWS); } objEntidadesWebService_AFIP_Rta = Entidades.WebServices_AFIP.RespuestaWS.Error; } /*Por cada Evento devuelto lo agrego en la B.D.*/ if (respuesta.Events != null) { foreach (AFIP_WSFEV1_Produccion.Evt eventoItem in respuesta.Events) { objEntidadesEventosWS.Codigo = eventoItem.Code; objEntidadesEventosWS.Mensaje = eventoItem.Msg; objEntidadesEventosWS.Fecha = DateTime.Now; objEntidadesEventosWS.Observaciones = "Llamando al WS: FEParamGetTiposPaises"; objLogicaEventosWS.Agregar(objEntidadesEventosWS); } objEntidadesWebService_AFIP_Rta = Entidades.WebServices_AFIP.RespuestaWS.Evento; } /*Por cada Pais devuelto lo agrego en la B.D.*/ if (respuesta.ResultGet != null) { /*Primero Borra el listado de la base para cargarlo de Cero*/ objLogicaPaises.BorrarTodos(); foreach (AFIP_WSFEV1_Produccion.PaisTipo paisItem in respuesta.ResultGet) { objEntidadesPaises.Id_Pais = paisItem.Id; objEntidadesPaises.Descripcion = paisItem.Desc; objLogicaPaises.Agregar(objEntidadesPaises); } objEntidadesWebService_AFIP_Rta = Entidades.WebServices_AFIP.RespuestaWS.Correcta; } return objEntidadesWebService_AFIP_Rta; }
/// <summary> /// Llama al WebService FECompUltimoAutorizado (Homologacion) /// Devuelve los Puntos de Venta y su descripción. /// Guarda en la B.D. el Puntos de Ventas y su descripción /// </summary> /// <param name="pTicket_Rta"></param> public Entidades.WebServices_AFIP.RespuestaWS FECompUltimoAutorizado_Homologacion(Entidades.Tickets_Acceso pTicket_Rta, int pPtoVenta) { Entidades.WebServices_AFIP.RespuestaWS objEntidadesWebService_AFIP_Rta = new Entidades.WebServices_AFIP.RespuestaWS(); /* * https://wswhomo.afip.gov.ar/wsfev1/service.asmx?op=FECompUltimoAutorizado */ /*WebService*/ AFIP_WSFEV1_Homologacion.FEAuthRequest autorizacion = new AFIP_WSFEV1_Homologacion.FEAuthRequest(); AFIP_WSFEV1_Homologacion.FERecuperaLastCbteResponse respuesta = new AFIP_WSFEV1_Homologacion.FERecuperaLastCbteResponse(); int cbteTipo = 0; /*Ultimos Nros de Comprobantes Recuperados*/ Entidades.UltCbtesAutorizados objEntidadesUltNroCbte = new Entidades.UltCbtesAutorizados(); Logica.UltCbtesAutorizados objLogicaUltNroCbte = new Logica.UltCbtesAutorizados(); /*Tipos de Comprobantes*/ Entidades.TiposCbtes objEntidadTiposCbtes = new Entidades.TiposCbtes(); Logica.TiposCbtes objLogicaTiposCbtes = new Logica.TiposCbtes(); /*Errores Devueltos*/ Entidades.Errores_WS objEntidadesErroresWS = new Entidades.Errores_WS(); Logica.Errores_WS objLogicaErroresWS = new Logica.Errores_WS(); /*Eventos Devueltos*/ Entidades.Eventos_WS objEntidadesEventosWS = new Entidades.Eventos_WS(); Logica.Eventos_WS objLogicaEventosWS = new Logica.Eventos_WS(); /*Asigno los datos a la autorización*/ autorizacion.Cuit = pTicket_Rta.Cuit; autorizacion.Sign = pTicket_Rta.Sign; autorizacion.Token = pTicket_Rta.Token; /*Tipos de Comprobantes*/ objLogicaTiposCbtes.TraerTodos(); /*Primero Borra el listado de la base para cargarlo de Cero*/ objLogicaUltNroCbte.BorrarTodos(); foreach (DataRow filaTipoCbte in objLogicaTiposCbtes.TraerTodos().Rows) { cbteTipo = Convert.ToInt32(filaTipoCbte[0]); //filaTipoCbte[0] Id_TipoCbte /*Llamo al WebService*/ AFIP_WSFEV1_Homologacion.Service webService = new AFIP_WSFEV1_Homologacion.Service(); respuesta = webService.FECompUltimoAutorizado(autorizacion, pPtoVenta, cbteTipo); /*Por cada Error devuelto lo agrego en la B.D.*/ if (respuesta.Errors != null) { foreach (AFIP_WSFEV1_Homologacion.Err errorItem in respuesta.Errors) { objEntidadesErroresWS.Codigo = errorItem.Code; objEntidadesErroresWS.Mensaje = errorItem.Msg; objEntidadesErroresWS.Fecha = DateTime.Now; objEntidadesErroresWS.Observaciones = "Llamando al WS: FECompUltimoAutorizado"; objLogicaErroresWS.Agregar(objEntidadesErroresWS); } objEntidadesWebService_AFIP_Rta = Entidades.WebServices_AFIP.RespuestaWS.Error; } /*Por cada Evento devuelto lo agrego en la B.D.*/ if (respuesta.Events != null) { foreach (AFIP_WSFEV1_Homologacion.Evt eventoItem in respuesta.Events) { objEntidadesEventosWS.Codigo = eventoItem.Code; objEntidadesEventosWS.Mensaje = eventoItem.Msg; objEntidadesEventosWS.Fecha = DateTime.Now; objEntidadesEventosWS.Observaciones = "Llamando al WS: FECompUltimoAutorizado"; objLogicaEventosWS.Agregar(objEntidadesEventosWS); } objEntidadesWebService_AFIP_Rta = Entidades.WebServices_AFIP.RespuestaWS.Evento; } /*Por cada Ultimo Nro Comprobante Autorizado devuelto lo agrego en la B.D.*/ if (respuesta.CbteTipo != 0) { objEntidadesUltNroCbte.Id_PtoVenta = respuesta.PtoVta; objEntidadesUltNroCbte.Id_TipoCbte = respuesta.CbteTipo; objEntidadesUltNroCbte.Nro_Cbte = respuesta.CbteNro; objLogicaUltNroCbte.Agregar(objEntidadesUltNroCbte); objEntidadesWebService_AFIP_Rta = Entidades.WebServices_AFIP.RespuestaWS.Correcta; } } return objEntidadesWebService_AFIP_Rta; }
/// <summary> /// Llama al WebService FEParamGetPtosVenta (Homologacion) /// Devuelve los Puntos de Venta y su descripción. /// Guarda en la B.D. el Puntos de Ventas y su descripción /// </summary> /// <param name="pTicket_Rta"></param> public Entidades.WebServices_AFIP.RespuestaWS FEParamGetPtosVenta_Homologacion(Entidades.Tickets_Acceso pTicket_Rta) { Entidades.WebServices_AFIP.RespuestaWS objEntidadesWebService_AFIP_Rta = new Entidades.WebServices_AFIP.RespuestaWS(); /* * https://wswhomo.afip.gov.ar/wsfev1/service.asmx?op=FEParamGetPtosVenta */ /*WebService*/ AFIP_WSFEV1_Homologacion.FEAuthRequest autorizacion = new AFIP_WSFEV1_Homologacion.FEAuthRequest(); AFIP_WSFEV1_Homologacion.FEPtoVentaResponse respuesta = new AFIP_WSFEV1_Homologacion.FEPtoVentaResponse(); /*Puntos de Venta Recuperados*/ Entidades.PtosVenta objEntidadesPtosVenta = new Entidades.PtosVenta(); Logica.PtosVenta objLogicaPtosVenta = new Logica.PtosVenta(); /*Errores Devueltos*/ Entidades.Errores_WS objEntidadesErroresWS = new Entidades.Errores_WS(); Logica.Errores_WS objLogicaErroresWS = new Logica.Errores_WS(); /*Eventos Devueltos*/ Entidades.Eventos_WS objEntidadesEventosWS = new Entidades.Eventos_WS(); Logica.Eventos_WS objLogicaEventosWS = new Logica.Eventos_WS(); /*Asigno los datos a la autorización*/ autorizacion.Cuit = pTicket_Rta.Cuit; autorizacion.Sign = pTicket_Rta.Sign; autorizacion.Token = pTicket_Rta.Token; /*Llamo al WebService*/ AFIP_WSFEV1_Homologacion.Service webService = new AFIP_WSFEV1_Homologacion.Service(); respuesta = webService.FEParamGetPtosVenta(autorizacion); /*Por cada Error devuelto lo agrego en la B.D.*/ if (respuesta.Errors != null) { foreach (AFIP_WSFEV1_Homologacion.Err errorItem in respuesta.Errors) { objEntidadesErroresWS.Codigo = errorItem.Code; objEntidadesErroresWS.Mensaje = errorItem.Msg; objEntidadesErroresWS.Fecha = DateTime.Now; objEntidadesErroresWS.Observaciones = "Llamando al WS: FEParamGetPtosVenta (Homologacion)"; objLogicaErroresWS.Agregar(objEntidadesErroresWS); } objEntidadesWebService_AFIP_Rta = Entidades.WebServices_AFIP.RespuestaWS.Error; } /*Por cada Evento devuelto lo agrego en la B.D.*/ if (respuesta.Events != null) { foreach (AFIP_WSFEV1_Homologacion.Evt eventoItem in respuesta.Events) { objEntidadesEventosWS.Codigo = eventoItem.Code; objEntidadesEventosWS.Mensaje = eventoItem.Msg; objEntidadesEventosWS.Fecha = DateTime.Now; objEntidadesEventosWS.Observaciones = "Llamando al WS: FEParamGetPtosVenta (Homologacion)"; objLogicaEventosWS.Agregar(objEntidadesEventosWS); } objEntidadesWebService_AFIP_Rta = Entidades.WebServices_AFIP.RespuestaWS.Evento; } /*Por cada Documento devuelto lo agrego en la B.D.*/ if (respuesta.ResultGet != null) { /*Primero Borra el listado de la base para cargarlo de Cero*/ objLogicaPtosVenta.BorrarTodos(); foreach (AFIP_WSFEV1_Homologacion.PtoVenta ptoVentaItem in respuesta.ResultGet) { objEntidadesPtosVenta.Id_PtoVenta = ptoVentaItem.Nro; objEntidadesPtosVenta.EmisionTipo = ptoVentaItem.EmisionTipo; objEntidadesPtosVenta.Bloqueado = Convert.ToChar(ptoVentaItem.Bloqueado); if (ptoVentaItem.FchBaja != "NULL") { objEntidadesPtosVenta.FchBaja = DateTime.ParseExact(ptoVentaItem.FchBaja, "yyyyMMdd", System.Globalization.CultureInfo.InvariantCulture); } objLogicaPtosVenta.Agregar(objEntidadesPtosVenta); } objEntidadesWebService_AFIP_Rta = Entidades.WebServices_AFIP.RespuestaWS.Correcta; } return objEntidadesWebService_AFIP_Rta; }