 
ALTER PROCEDURE [dbo].[a_sel_movimientosnoSerializados]
@p_id_detalleAlquier int
,@p_fechaInicial smalldatetime
,@p_fechaFinal smalldatetime
AS
BEGIN


declare @bodega as varchar(500)
select @bodega=valor from gen_config where modulo='alq' and config='bodegaPerdidos'
 declare @tablaMovimientos as  table 
 (
 id int
 ,id_catalogo int
 ,cantidadEjecutado int
 ,id_subtipo int
 ,fechacierre datetime
 ,fechacierrereal smalldatetime
 ,id_documento int
 ,documento varchar(30)
 ,id_tipo int
 ,norecibido float 
 ,id_docnorecibido int
 ,docnorecibido varchar(30)
 ,tipoCobro int 
)
 --Cargo los primero datos iniciales
 insert into @tablaMovimientos
 (
 id 
 ,id_catalogo 
 ,cantidadEjecutado 
 ,id_subtipo 
 ,fechacierre 
 ,fechacierrereal 
 ,id_documento 
 ,documento 
 ,id_tipo 
 ,norecibido 
 ,id_docnorecibido 
 ,docnorecibido
 ,tipoCobro 
)
 select 
 view_doc_itemDocumento.id
 ,view_doc_itemDocumento.id_catalogo
 ,view_doc_itemDocumento.cantidadEjecutado
 ,doc_documento_id_SubtipoDocumento as id_subtipo
 ,case when subtipo.tipoCobro=1 and  subtipo.id_tipoDocumento=5  then
				CAST(CAST(dateadd(DD,-1,view_doc_itemDocumento.doc_documento_fechaCierre_ff  ) AS VARCHAR(12)) as smalldatetime) 
			else   CAST(CAST(view_doc_itemDocumento.doc_documento_fechaCierre_ff AS VARCHAR(12)) as smalldatetime) 
			end 

 as fechacierre
 ,case when subtipo.tipoCobro=1 and  subtipo.id_tipoDocumento=5  then
			dateadd(DD,-1,view_doc_itemDocumento.doc_documento_fechaCierre_ff  )
			else  view_doc_itemDocumento.doc_documento_fechaCierre_ff 
			end  as fechacierrereal
 ,view_doc_itemDocumento.id_documento
 ,view_doc_itemDocumento.doc_documento_prefijo+'-'+ cast (view_doc_itemDocumento.doc_documento_documento_numero as varchar(50)) as documento
 ,(subtipo.id_tipoDocumento ) as id_tipo
 ,0,0,'',subtipo.tipoCobro 

 from view_doc_itemDocumento 
inner  join alq_detallealquiler_itemdocumento alqtem on alqtem.id_itemdocumento =view_doc_itemDocumento.id 
			and alqtem.active=1
inner join equ_detallealquiler detalle on detalle.id =alqtem.id_detallealquiler 
			and detalle.active=1 
			and detalle.[id_documento.alquiler]=view_doc_itemDocumento.doc_documento_id_documento
inner join doc_estadoTipoDocumento estado on estado.id=view_doc_itemDocumento.doc_documento_id_estadoTipoDocumento 
			and  estado. estadoTipoDocumento_codigo not in('CAN') and estado.active=1
inner join doc_subtipoDocumento subtipo on subtipo.id=view_doc_itemDocumento.doc_documento_id_subtipoDocumento 
			and subtipo.id_tipoDocumento  in(5,6)
where detalle.id=@p_id_detalleAlquier  
and view_doc_itemDocumento.id_bodega not in(select datos from [dbo].[Split] (@bodega,','))
and  view_doc_itemDocumento.doc_documento_fechaCierre_ff >=@p_fechaInicial 
and  view_doc_itemDocumento.doc_documento_fechaCierre_ff<=@p_fechaFinal

order by view_doc_itemDocumento.doc_documento_fechaCierre_ff asc,subtipo.id_tipoDocumento  desc
 
 
update  @tablaMovimientos set norecibido=itemno.cantidadEjecutado 
,id_docnorecibido =docno.id
,docnorecibido= docno.prefijo +'-'+ cast(docno.documento_numero as varchar(100))
from @tablaMovimientos temp1
inner join doc_documento docno on docno.id_documento= temp1.id_documento 
			and docno.active=1
inner join  doc_itemDocumento itemno on docno .id=itemno.id_documento  
			and itemno.id_catalogo = temp1.id_catalogo  and itemno.active=1

select id 
 ,id_catalogo 
 , cantidadEjecutado 
 ,id_subtipo 
 ,fechacierre 
 ,fechacierrereal 
 ,id_documento 
 ,documento 
 ,id_tipo 
 ,norecibido 
 ,id_docnorecibido 
 ,docnorecibido 
 ,tipocobro
 from 	@tablaMovimientos
END
 
 --and 
 --DataTable t_dtt_movimientos = doc_itemDocumento.f_dttdoc_itemDocumentos(t_str_bodegasPerdidos +
 --                   " id in (select id_itemdocumento from alq_detallealquiler_itemdocumento where active=1 and id_detallealquiler in (" + p_int_detalleAlquiler + ")) and active=1 and doc_documento_id_documento=" + p_int_alquiler
 --                   + " AND doc_documento_id_subtipoDocumento in (select id from doc_subtipoDocumento where id_tipodocumento in (" +
 --                  (int)enu_tipoDocumento.salida + "," + (int)enu_tipoDocumento.entrada + ")) and doc_documento_fechaCierre_ff>0  AND doc_documento_fechaCierre_ff<=" + Idae.f_str_fechaBD_hora(p_dat_final.AddDays(1))
 --                  + "  AND doc_documento_fechaCierre_ff>=" + Idae.f_str_fechaBD_hora(p_dat_inicial) + "  AND id_catalogo=" + p_int_catalogo
 --                  + " AND doc_documento_id_estadoTipoDocumento not in (SELECT id FROM doc_estadoTipoDocumento where estadoTipoDocumento_codigo='CAN')", " doc_documento_fechaCierre_ff asc,id_tipo desc "
 --                  , "id,id_catalogo,cantidadEjecutado,doc_documento_id_SubtipoDocumento as id_subtipo,CAST(CAST(doc_documento_fechaCierre_ff AS VARCHAR(12)) as smalldatetime) as fechacierre, doc_documento_fechaCierre_ff as fechacierrereal,id_documento,doc_documento_prefijo+'-'+ cast (doc_documento_documento_numero as varchar(50)) as documento,(select sub.id_tipodocumento from doc_subtipodocumento sub where sub.id = doc_documento_id_subtipodocumento ) as id_tipo "
 --                  + ",isnull((select top 1 itemno.cantidadejecutado from doc_itemdocumento itemno inner join doc_documento docno on docno .id=itemno.id_documento and docno.id_documento =view_doc_itemdocumento.id_documento and itemno.active=1 and itemno.id_catalogo =" + p_int_catalogo + " ),0) as norecibido"
 --                  + ",isnull((select top 1 docno.id from doc_itemdocumento itemno inner join doc_documento docno on docno .id=itemno.id_documento and docno.id_documento =view_doc_itemdocumento.id_documento and itemno.active=1 and itemno.id_catalogo =" + p_int_catalogo + " ),0)  as id_docnorecibido"
 --                  + ",isnull((select top 1 docno.prefijo +'-'+ cast(docno.documento_numero as varchar(100)) from doc_itemdocumento itemno inner join doc_documento docno on docno .id=itemno.id_documento and docno.id_documento =view_doc_itemdocumento.id_documento and itemno.active=1 and itemno.id_catalogo =" + p_int_catalogo + " ),'')  as  docnorecibido"
 --                  , "");