He hecho algunas modificaciones al programa y también he cambiado en la DB
el tipo de datos (de Autoincremental a numero) de de las claves principales de las tablas Notas,
Tags y Tareas, con el fín de hacer posible un manejo más eficiente de las relaciones Maestro-Detalles
entre dichas tablas.
He utilizado nuevos elementos y nuevos conceptos como por ejemplo:
Un TDatasetProvider y 3 TClientDatsets basándome en el concepto de Datasets anidados para dar buen
manejo a la relación maestro-detalle en este caso entre las tablas Notas(maestra) y Tags y tareas (detalles).
Nótese que aunque haga cambios en las tablas de detalles e incluso haga un Post (DbNavigators de las tabalas de detalles)
sobre estas, los cambios no se guardaran en la DB hasta que lo haga con el Botón Aceptar (que aplica cambios en el ClientDataset maestro)
de la parte superior, si Ud hace cambios en los detalles y sale cerrando el Form o con el botón cancelar estos cambios no serán guardados.
También nótese que a lo largo del programa lo único que abro es el TClientDataset de nombre cdNotas.
He hecho uso de un TActionList para facilitar le habilitación y deshabilitación de botones según corresponda.
Haciendo dobleClik en le grid de el form principal si hay registros abre el form de edición y está listo para editar, y si no hay registros
queda listo para insertar.
Haciendo click en el título de las columnas del mismo grid se ordenaran los datos según convenga (ascendente o descendente) por deicha columna.
Las búsquedas se hacen al introduccir texto en el edit de busqueda.
Para agregar un nuvo creador o una nueva categoría hay dispuestos sus respectivos botones.
Quedan faltando muchos detalles que los iremos refinando de a pocos.
Si esto es mas o menos lo ESocrates esperaba, entonces con un poco mas de tiempo iré explicando y subiendo capturas de pantalla de cada
detalle de la configuración de los objetos del TDataModule que creo que es en donde radican las cosas mas complejas del ejemplo o de
de las partes que se consideren necesarias.
Saludos
PD : Revisar archivo adjunto