2011-04-03 2 views
0

У меня есть три таблицы в SQL Server 2008SyncFramework с SQL Server

  • счета
  • Case
  • CaseStatus

Таблица Case имеет ссылку, используя колонку AccountId для AccountTable и CaseStatus имеет ссылка на caseId на таблицу Case.

Мне нужно синхронизировать эти три таблицы в зависимости от AccountId(AccountTable). Пожалуйста, помогите мне написать код (шаблон) в Microsoft Sync Framework

ответ

0

вы фильтруете на AccountID?

вы можете установить FilterClause для таблицы случая, чтобы "side.AccountId в (Select ACCOUNTID из AccountTable)"

и для CaseStatus таблице "side.CaseId в (Выбрать CaseId от случая)"

+0

Hear Я даю только тогда Id счета в зависимости от Id счета я должен получить данные из всех трех таблиц. Пожалуйста, помогите мне – Shankar

+0

@Shankar: Вы уже оставили комментарий, почему вам нужно отредактировать и вставить свой комментарий? – BoltClock

+0

@ Шаккар - сообщение Стефана Т должно сделать трюк. вы должны изменить FilterClause для CaseStatus для запроса из таблицы the_tracking, хотя, поскольку внутренний запрос не будет извлекать Delete e.g: Таблица CaseStatus: side.CaseId in (Выбрать CaseId из Case_tracking Где AccountId = @AccountId) – JuneT

1

Если я правильно понимаю, вы хотите использовать AccountId, выбранный на стороне клиента, для синхронизации данных из всех трех таблиц с клиентом, но ограниченных AccountId.

Pass по ACCOUNTID в качестве параметра при фильтрации (см How to: Filter Data for Database Synchronization (SQL Server))

Далее, вам нужно переписать filterclause с подзапросы к чему-то вроде этого, если вы называете ваш параметр «AccountId»:
таблицу счета: side.AccountId = @AccountId
Case таблица: side.AccountId = @AccountId
CaseStatus стол: side.CaseId in (Select CaseId from Case Where AccountId = @AccountId)

Смежные вопросы