Muy estimados todos, aquí les dejo este query que en general les servirá en caso de que como su servidor hayan migrado a cfdi y no hayan tenido la finura de generar el reporte de CFDS del mes de DICIEMBRE 2013 (posibilidad que desaparece con el hecho de activar CFDI) saludos !

Declare @Mes as nvarchar(2)

Declare @Ejercicio as nvarchar(4)

/* Cambiar las variables segun corresponda */

Set @Mes =’12’                      –Aquí el mes a generar

Set @Ejercicio =’2013′              –Aquí el año a generar

/*————————– Query para Facturas ———————————*/

SELECT

‘|’+t0.LicTradNum+’|’+t0.EDocPrefix+’|’+convert(varchar(50),t0.DocNum)+’|’+(convert(varchar(50),t1.ApprovYear)+convert(varchar(50),t1.ApprovNum))+’|’+CONVERT(VARCHAR(10), t0.docdate, 103)+’ ‘+

stuff(

(stuff(

(RIGHT(REPLICATE(‘0’,6) + CONVERT(varchar( 6 ) , t0.createts) ,6))

,3,0,’:’))

,6,0,’:’)

+’|’+ convert(varchar(50),(convert(numeric(10,2),round(t0.doctotal,2,1))))+’|’+CONVERT(varchar(50),(convert(numeric(10,2),round(t0.VatSum,2,1))))+’|’+t0.U_Cancelado+’|’+’I’+’||||’

FROM

OINV t0 inner join NNM4 t1 on t0.DocNum between t1.initialnum and t1.lastnum and t0.EDocPrefix = t1.Prefix

WHERE

year(t0.DocDate) = @Ejercicio and MONTH(t0.docdate) = @Mes

UNION ALL   /*—————– Para unir los dos querys————————–*/

/*—————————Query para Notas de crédito—————————*/

SELECT

‘|’+t0.LicTradNum+’|’+t0.EDocPrefix+’|’+convert(varchar(50),t0.DocNum)+’|’+(convert(varchar(50),t1.ApprovYear)+convert(varchar(50),t1.ApprovNum))+’|’+CONVERT(VARCHAR(10), t0.docdate, 103)+’ ‘+

stuff(

(stuff(

(RIGHT(REPLICATE(‘0’,6) + CONVERT(varchar( 6 ) , t0.createts) ,6))

,3,0,’:’))

,6,0,’:’)

+’|’+ convert(varchar(50),(convert(numeric(10,2),round(t0.doctotal,2,1))))+’|’+CONVERT(varchar(50),(convert(numeric(10,2),round(t0.VatSum,2,1))))+’|’+t0.U_Cancelado+’|’+’E’+’||||’

FROM

ORIN t0 inner join NNM4 t1 on t0.DocNum between t1.initialnum and t1.lastnum and t0.EDocPrefix = t1.Prefix

WHERE

year(t0.DocDate) =@Ejercicio and MONTH(t0.docdate) = @Mes

Ya solo indiquen el campo en en el que guardan el status de su documento electrónico en nuestro caso usamos U_Cancelado (campo de usuario), nosotros reporteamos solo los campos doctotal y vatsum porque no nos aplican otros pero de igual manera es sencillo añadir los demas en caso que ustedes hagan otras operaciones, saludos

New NetWeaver Information at SAP.com

Very Helpfull

User Rating: Be the first one !