Relacionamento NxN excluindo registros

Criei um formulário de uma tabela (Linha) que possui relacionamento NxN com 3 outras tabelas (Coleção, Modelo e Acionamento) tendo, então, 3 tabelas de entidade relacionamento atualizadas via NxN Relations do SC 7.1. Anexei um print do formulário para facilitar o entendimento da implementação.
O grande problema é que o SC sempre faz delete e insert de todos os registros do relacionamento NxN. Se tenho, por exemplo, 2 coleções associadas e adiciono(marco/seleciono) mais uma, ele deleta o registro das 2 anteriores e insere os 3 registros, sendo os 2 relacionamentos antigos e o novo.
Isso está gerando ima grande confusão, tanto no registro do log/histórico quanto na propagação das FKs, uma vez que os registros NxN possuem filhos e estes são apagados com a deleção do pai. Se eu mudar as FKs para restrict não resolve, pois o SC exclui os filhos NxN automaticamente.
Alguém já passou por isso e descobriu alguma configuração do form ou meio alternativo para evitar a deleção, apenas inserindo e deletando registros NxN efetivamente alterados?

Observação: não estou conseguindo inserir a imagem no post. Portanto, basta carregarem o link abaixo

http://startsys.com.br/linha.jpg

Tenho o mesmo problema.

Encontrou alguma solução?

Makoto,

Sinceramente não cheguei a encontrar uma solução, até porque pouco depois o projeto foi suspenso e não usei o recurso em nenhum outro.

Oi, Erikson,

Achei a seguinte discussão:

http://www.scriptcase.net/forum/forum/scriptcase-8/bugs-aa/8617-n-n-relations-on-update-problem

Estou ainda pesquisando uma forma, mas como não tenho muito tempo, resolvi retirar a restrição do banco e verificar a consistência através de SPs na entrada dos programas.

Você sabe se é possível escrever um trigger que aborte a exclusão de determindos registro? Isto pode solucionar.

Obrigado pela atenção

Makoto

Makoto,
Sobre sua pergunta sobre a trigger, é possível sim. Basta criar uma trigger que testa a condição que deseja e, se for o caso de abortar/impedir a exclusão do registro, ela dispara/levanta uma exceção (exception). Porém, vale lembrar que isso resultará em um erro de banco/query, que deverá ser trataro nos eventos do SC, afim de evitar a exibição desse erro ao usuário do seu sistema.

ok, obrigado