Разберемся с формами и представлениями.
1. Есть представление mainView, отбирающее документы по форме formA.
2. На форме formA есть встроенное представление embeddedView, отбирающее документы по форме formB.
3. Опционально на форме formB есть то же встроенное представление embeddedView, что и на форме formA.
Что требуется:
1. При открытии документа formA из mainView уже открытый документ formA или formB закрывается.
2. Открыт документ formA. Пользователь открывает документ formB из embeddedView. Документ formA закрывается.
3. Открыт документ formB. Пользователь открывает еще один документ formB. Предыдущий formB закрывается.
Как удовлетворить требование 1, я не знаю.
Решение для требований 2 и 3.
Создаем фреймсет DocumentFrameset с одним фреймом DocumentFrame.
В свойствах форм formA и formB на третьей вкладке устанавливаем Auto Frame: Frameset = DocumentFrameset, Frame = DocumentFrame.
В свойствах встроенного представления на каждой из форм formA и formB на первой вкладке устанавливаем Target Frame = DocumentFrame (for double click).
Теперь документ formA будет открываться во фрейме DocumentFrame. Документ formB из embeddedView будет открываться в том же фрейме, при этом предыдущий открытый в этом же фрейме документ будет закрыт.
Было бы еще здорово если бы вылетал prompt ... при попытке перейти в другой документ если текущий в режиме редактирования.
Это нужно в QueryClose проверять и устанавливать Continue = False, если надо.