Ver Mensaje Individual
  #3 (permalink)  
Antiguo 03/12/2010, 02:05
Avatar de Joch_pa
Joch_pa
 
Fecha de Ingreso: octubre-2009
Ubicación: Pachuca De Soto, Hidalgo, Mexico, Mexico
Mensajes: 122
Antigüedad: 15 años, 2 meses
Puntos: 7
Información Respuesta: transformar periodos contables a fechas

haber, prueba con lo siguiente:

Código SQL:
Ver original
  1. DECLARE @FECHAINICIAL DATETIME
  2. DECLARE @FECHAFINAL DATETIME
  3. DECLARE @PERIODO_INICIAL INT
  4. DECLARE @PERIODO_FINAL INT
  5. DECLARE @PIc VARCHAR(10)
  6. DECLARE @PFc VARCHAR(10)
  7.  
  8.  
  9. SET @PERIODO_INICIAL ='201002'
  10. SET @PERIODO_FINAL = '201004'
  11. --convierto de entero a caracter
  12. SET @PIc = CONVERT(VARCHAR, @PERIODO_INICIAL)
  13. SET @PFc = CONVERT(VARCHAR, @PERIODO_FINAL)
  14. --conpongo la cadena
  15. SET @PIc = SUBSTRING( @PIc ,1,4)+'-'+SUBSTRING( @PIc ,5,6)+'-01'
  16. SET @PFc = SUBSTRING( @PFc ,1,4)+'-'+SUBSTRING( @PFc ,5,6)+'-01'
  17. --convierto a datetime la cadena
  18. SET @FECHAINICIAL = CONVERT(datetime,@PIc,103)
  19. --a la fecha final, le sumo un mes y le resto un dia
  20. SET @FECHAFINAL = dateadd( MONTH,1,@PFc) -1
  21. --Vemos los resultados
  22. SELECT
  23.     @FECHAINICIAL AS [Fecha Arreglada F_Inicial]
  24.     ,@FECHAFINAL AS [Fecha Arreglada F_Final]
  25.     ,CONVERT(VARCHAR(10),@FECHAINICIAL,105) AS [Tu Formato F_Inicial]
  26.     ,CONVERT(VARCHAR(10),@FECHAFINAL,105) AS [Tu Formato F_Final]
es un poco rudimentario, pero creo que seria funcional