Por cada fila que se desea en un reporte realizar multiples subconsultas que devuelven un solo valor

tema enviado por bers en C#
tema iniciado el 09/03/2009
Se que es algo complicado entender algo asi casi que en el aire, pero traté de dar la mayor cantidad de datos que pude, en realidad tengo ya hice un codigo (SQL 2005) que lo hace pero me parece excesiva la cantidad de lineas y "subconsultas" entonces no se si cargarlo al cristal report .... cualquier ayuda ... muchas gracias desde ya.... Deseo realizar un reporte pero debe poseer la siguiente forma más o menos: Suponga que tengo la estructura de BD: Tabla contrato (no contrato, matricula, donde aparece Kms de apertura y liquidacion, fecha de apertura, liquidacion y liquidacion informacion, tiempo de renta) Tabla prorroga (no contrato, fecha realiza, tiempo de renta, kms) Entrada : Fecha en que se desea Salida: Columna 1 : Matricula vehiculo Columna 2 : Si esta rentado o no Columna 3 : Kilometros productivos Columna 4 : Nueva fecha de liquidacion La columna 3 depende de varias cosas: - si coincide con la fecha de liquidacion del contrato debe ser la cantidad de kilometros de apertura menos los ultimos kilometros que se encuentren (si se ha realizado prorroga al contrato es el ultimo de la ultima prorroga, si no se ha realizado prorroga es el kilometro de apertura del contrato) - si coincide con la fecha de alguna prorroga debe ser los kilometros suministrados en esa prorrogas menos los kilometros de la prorroga anterior a ella (si existe prorroga anterior) y si no existe prorroga anterior el kilometro de apertura del contrato. Columna 4: - Bueno parecido a la columna 3, pero en este caso dependiendo de la fecha pues se debe localizar si cae en periodo de renta o en el periodo de prorroga y sumar la cantidad de dias de renta unas vecez a la fecha de apertura y otras veces a la fecha en la que se realiza la prorroga... Tengase en cuenta tambien que la fecha de liquidacion es invalidad por la fecha de liquidacion de la informacion que es cuando se recibe la informacion y a pesar de que haya ocurrido la acción en otro momento solamente debe aparecer en los reportes a partir de la fecha de informacion