Amigos.
Tengo la siguiente Stored Procedure que apunta a un servidor linkeado.    
Código SQL:
Ver original- ALTER PROCEDURE SpRetornaIdExpediente 
-   
- @VALOR1 VARCHAR(50)=NULL, 
- @VALOR2 VARCHAR(4)= NULL, 
- @SQL VARCHAR(8000)=NULL, 
- @finalQuery VARCHAR(8000)=NULL, 
- @msg AS VARCHAR(8000) OUTPUT 
-   
- AS 
- BEGIN 
-     SET NOCOUNT ON; 
-   
-     BEGIN Tran Tadd 
-   
-     BEGIN Try 
-   
- SET @SQL = 'SELECT SEP.ID ID_EXPEDIENTE,  SEP.FECHA 
- FROM TABLA SEP 
- WHERE SEP.HISTORICO = 0 
- AND SEP.VALOR1 = ' + ''''+ '''' + @MIC+''''+'''' 
-   
- SET @finalQuery = 'SELECT * FROM OPENQUERY(SERVERLINK,' + '''' + @SQL + '''' + ')' 
-   
- EXEC(@finalQuery) 
-   
-         SET @msg = 'Operación realizada correctamente.' 
-   
-         COMMIT TRAN Tadd 
-   
-     END try 
-     BEGIN Catch 
-   
-     SET @msg = 'Ocurrio un Error: ' + ERROR_MESSAGE() + ' en la línea ' + CONVERT(NVARCHAR(4000), ERROR_LINE() ) + '.' 
-         ROLLBACK TRAN Tadd 
-   
-     END Catch 
-   
- END 
- GO 
Ahora el cuento es que además de filtrar por un valor (VALOR1) filtre por un segundo valor (VALOR2) que para colmo es el año contenido en una fecha.    
Código SQL:
Ver original- SET @SQL = 'SELECT SEP.ID ID_EXPEDIENTE,  SEP.FECHA 
- FROM TABLA SEP 
- WHERE SEP.HISTORICO = 0 
- AND SEP.COMPARACION = ' + ''''+ '''' + @VALOR1+''''+'''' 
- AND TO_CHAR(SEP.FECHA,'YYYY') = ' + ''''+ '''' + @VALOR1+''''+'''' 
así devería ser pero arroja una enormidad de errores con las condenadas Comillas... Agradeceré toda la ayuda respecto a esto 
Un Abrazo.