Sospecho que mi observación no parece que quedase clara.
En base a un mismo conjunto de datos, se pueden crear diferentes formularios y cada uno de ellos presentar o manipular solo un subconjunto de ellos.
Formulario de ventas: una consulta que seleccione aquellos que sean ventas y que al crear uno nuevo se le adjudique el parámetro venta (active el campo que lo diferencia como tal)
Otro formulario para las devoluciones que puede ser copia del anterior, pero solo presenta o manipula a los que 'no sean ventas' y se distingue porque el campo (que antes estaba activado) ahora esta desactivado y si se crea un registro nuevo, lo crea con el campo desactivado.
La diferencia esta en el origen de datos, en uno filtra por la cualidad ventas (y la activa en cada registro que crea, asignándole la cualidad, el campo puede quedar oculto)
En el de devoluciones ... su origen de datos (incluso el mismo de las ventas) lo condiciona por el parámetro (campo/valor) que lo distingue como no-venta.
Ambos son independientes y pueden estar abiertos al mismo tiempo sin interferencias, si bien es cierto que provienen de la misma tabla, los registros no se comparten (solo se almacenan juntos).
Tampoco veo problema en crear una nueva tabla (copia de la actual) y ambas (que son gemelas) no comparten nada, a la hora de utilizar sus datos de forma conjunta, una consulta de unión a la que un campo mas que se crea en tiempo de ejecución, marca las ventas (activa el campo que las diferencia) o lo desactiva en el caso de las devoluciones.
Como ejemplo de la tabla común:
(campoxxx =Booleano que diferencia ventas y devoluciones)
Select * From detalle_remito Where (campoxx =-1); ===> ventas
Select * From detalle_remito Where (campoxx = 0); ===> devoluciones
Caso de tablas (idénticas) una ventas y otra devoluciones que se desean juntar para crear consultas:
Select * , -1 As Tipo From detalle_remito
Union
Select *, 0 As Tipo From detalle_remito;
Atención: esto es un ejemplo que devolverá los registros dos veces:
.- Una con el campo Tipo activado
.- Otra con el campo Tipo desactivado
Pues no hay condiciones en ninguna de las dos consultas.
(Espero que veas la idea y no te cree mas dudas que soluciones), en cualquier caso para las dudas esta el foro y alguien mas puede aportar una idea que te sea mas fácil adaptar en tu aplicación si esta no lo logra.