Nu pot folosi CROSS APPLY intr-un filtru join de "merge replication".
Eu trebuie sa dau ce urmeaza dupa "SELECT <replicated fields> FROM [ParentTable]
INNER JOIN [ChildTable] ON", doar de aici inainte pot scrie clauza de join, nu pot shimba join-ul respectiv in outer join sau cross apply sau alt tip de join, pentru ca SQL serverul creaza pana la acel punct selectul si concateneaza conditia de join care o specific eu.
Mai specific, un join filter se creaza in felul urmator, exemplu din MSDN :
-- Add a merge join filter between SalesOrderHeader and SalesOrderDetail.
EXEC sp_addmergefilter
@publication = @publication,
@article = @table3,
@filtername = N'SalesOrderDetail_SalesOrderHeader',
@join_articlename = @table2,
@join_filterclause = N'SalesOrderHeader.SalesOrderID = SalesOrderDetail.SalesOrderID',
@join_unique_key = 1,
@filter_type = 1,
@force_invalidate_snapshot = 1,
@force_reinit_subscription = 1;
GO