Last active
April 2, 2018 19:57
-
-
Save dafma/aa6f63715d22c59fcf37ef90eac13624 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ALTER PROCEDURE [dbo].[spCFDFlexTextoQRCode] | |
( | |
@Modulo varchar(5), | |
@ModuloID int | |
) | |
--exec spCFDFlexTExtoQRCode 'VTAS', 891160 | |
AS BEGIN | |
DECLARE | |
@Resultado varchar(255), | |
@EmisorRFC char(13), | |
@ReceptorRFC char(13), | |
@Importe varchar(25), -- SE CAMBIO A VARCHAR, TENIA FLOAT 26 DE ENERO 2018 | |
@UUID varchar(50), | |
@XML varchar(max), | |
@DocumentoXML xml, | |
@PrefijoCFDI varchar(255), | |
@RutaCFDI varchar(255), | |
@iDatos int, | |
@URLAccesoCFDI varchar(100), | |
@URLAccesoRET varchar(100), | |
@URLAcceso varchar(100), | |
@Sello CHAR(8) | |
SELECT @URLAccesoCFDI= 'https'+CHAR(58)+'//verificacfdi.facturaelectronica.sat.gob.mx/default.aspx' -- CFDI | |
SELECT @URLAccesoRET = 'https'+CHAR(58)+'//prodretencionverificacion.clouda.sat.gob.mx/' -- RETENCIONES | |
SELECT | |
@XML=t1.XML1, @Sello=substring(T1.XML1,(CHARINDEX('==',XML1)-6),8) , @URLAcceso=URLAcceso | |
FROM (SELECT c.Modulo, c.ModuloID as 'ModuloID', Documento as 'XML1', Sello, @URLAccesoCFDI as 'URLAcceso' | |
FROM CFD c | |
WHERE c.Modulo in( 'vtas', 'cxc') | |
UNION ALL | |
SELECT c.Modulo,c.IDModulo as 'ModuloID', Documento as 'XML1', Sello, @URLAccesoRET as 'URLAcceso' | |
FROM CFDICobroParcialTimbrado c | |
JOIN MOVTIPO mt ON c.Modulo= mt.Modulo AND c.Movimiento = mt.Mov AND c.Modulo IN ('CXC','DIN') AND mt.Clave IN ('CXC.C','DIN.D','DIN.DE','DIN.I') AND mt.Orden IN (120,10,20,210) | |
) t1 | |
WHERE t1.Modulo = @Modulo | |
AND t1.ModuloID = @ModuloID | |
SET @DocumentoXML = CONVERT(XML,@XML) | |
SET @PrefijoCFDI = '<ns xmlns' + CHAR(58) + 'cfdi="http' + CHAR(58) + '//www.sat.gob.mx/cfd/3" xmlns' + CHAR(58) + 'tfd="http' + CHAR(58) + '//www.sat.gob.mx/TimbreFiscalDigital"/>' | |
EXEC sp_xml_preparedocument @iDatos OUTPUT, @DocumentoXML, @PrefijoCFDI | |
SET @RutaCFDI = '/cfdi' + CHAR(58) + 'Comprobante' | |
SELECT | |
@Importe = Total | |
FROM OPENXML (@iDatos, @RutaCFDI, 1) WITH (Total Varchar(25)) -- SE QUITO EL FLOAT Y SE COLOCO A VARCHAR 26 ENE 2018 | |
SET @RutaCFDI = '/cfdi' + CHAR(58) + 'Comprobante/cfdi' + CHAR(58) + 'Receptor' | |
SELECT | |
@ReceptorRFC = LTRIM(Rfc) | |
FROM OPENXML (@iDatos, @RutaCFDI, 1) WITH (Rfc varchar(15)) | |
SET @RutaCFDI = '/cfdi' + CHAR(58) + 'Comprobante/cfdi' + CHAR(58) + 'Emisor' | |
SELECT | |
@EmisorRFC = LTRIM(Rfc) | |
FROM OPENXML (@iDatos, @RutaCFDI, 1) WITH (Rfc varchar(15)) | |
SET @RutaCFDI = '/cfdi' + CHAR(58) + 'Comprobante/cfdi' + CHAR(58) + 'Complemento/tfd' + CHAR(58) + 'TimbreFiscalDigital' | |
SELECT | |
@UUID = UUID | |
FROM OPENXML (@iDatos, @RutaCFDI, 1) WITH (UUID uniqueidentifier) | |
EXEC sp_xml_removedocument @iDatos | |
--SET @Resultado = ISNULL(@URLAcceso,'')+'?id='+ISNULL(@UUID,'')+'&re='+ISNULL(RTRIM(@EmisorRFC),'')+'&rr='+ISNULL(RTRIM(@ReceptorRFC),'')+'&tt='+ISNULL(CONVERT(VARCHAR(25),@Importe),'0')+'&fe='+ISNULL(@Sello,'') // SE COMENTO PARA MODIFICAR EL @IMPORTE. ESTA LINEA ES LA ORIGINAL Y ESTABA MAL. 26 ENE 2018 | |
SET @Resultado = ISNULL(@URLAcceso,'')+'?id='+ISNULL(@UUID,'')+'&re='+ISNULL(RTRIM(@EmisorRFC),'')+'&rr='+ISNULL(RTRIM(@ReceptorRFC),'')+'&tt='+@Importe+'&fe='+ISNULL(@Sello,'') | |
SELECT @Resultado | |
END | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment