De Basap
Escriu les propostes de millora a la solapa de discussió.
- Sistema de seguiment públic d'errors pendent d'implantar (provablement amb Savane)
Per la primera versió estable
- taules: permetre reanomenar taules i camps
- autovalors: Utilitzar ReanomenarCamp() per l'actualització 2011.03.01
- Resoldre error de sintaxi SQL en incloure dobles cometes a les descripcions.
- Mantenir relacions en reanomenar un automatisme, menú, etc.
- Les opcions de menú no han de ser text lliure, sinó desplegable d'automatismes.
- Externalitzar tots els textos integrats per a què siguin traduïbles
- Consultes
- SubFormularis
- Informes, SubInformes
- Sistema d'usuaris i permisos de grups, control de sessió.
- Comptadors per claus d'usuari (autovalors)
- Mo permetre crear taules ni camps amb el prefix reservat "Basap_".
- Controlar que no es pugui eliminar registres crítics de BASAP (com els usuaris, grups, etc).
Ruta de creixement de l'aplicació
- Documnentar instal·lació en granja
- Evitar l'enregistrament repetit quan l'usuari tira pàgina enrere:
- Que la pàgina caduqui al moment (cal esbrinar com es fa)
- Arrossegar sempre un camp amb valor incremental (emmagatzemar-lo com a cookie?); si es reb un valor menor és que l'usuari està tirant enrere.
- Poder ordenar camps per a què es generin formularis amb les caselles ordenades.
- Més propietats pels camps de formulari, per exemple l'amplada de la casella.
- Traduccions al castellà i anglès (BASAP, mòduls i documentació)
- Propietat de valor requerit, i això també s'ha d'aplicar a les pròpies taules de BASAP.
- Propietat de valor predeterminat, per proposar un valor depenent d'una fórmula, valor que l'usuari pugui modificar.
- Propietat de primer valor automàtic, per no deixar a l'usuari establir el valor, sinó establir-lo en afegir el registre i depenent d'una fórmula.
- Propietat de valor automàtic actualitzat, per no deixar a l'usuari establir el valor, sinó establir-lo en actualitzar el registre i depenent d'una fórmula.
- Desenvolupar la comanda 'reg-edi' per modificar valors d'un registre sense eliminar-lo.
- Ampliar la capacitat d'administració de BBDD aliena i sense taules pròpies de Basap:
- Poder editar dades directament amb formularis automàtics.
- Contemplar tots els tipus de dada
- Contemplar tot tipus d'índex
- Implementar camps requerits
- Combinar relacions amb claus forànees de InnoDB
- Evitar crear el camp Basap_IdRegistre quan no es tracta d'una aplicació BASAP.
- Incorporar la funcionalitat de l'assistent gestionarbd.sh
- Generador d'informes RTF i PDF
- Estètiques i CSS
- Que l'aplicació d'usuari sigui redistribuïble (exportar-importar)
- Permetre un prefix general pel nom de les taules, que faciliti compartir base de dades en una web.
- Generador de codi PHP pels desenvolupadors de CMS.
- Revisar la documentació de totes les funcions, que poden ser utilitzades per tercers.
- Revisar la validació de paràmetres subministrats a totes les funcions, que poden ser utilitzades per tercers.
- Revisar que hi hagi índexos per tots els camps de BASAP que convingui.
- Plantilles: {mac:nommacro:formulariseguent} per aparèixer un botó que executi una macro.
- Plantilles: al costat d'un desplegable per relació, maquetar un enllaç {for:nomformulari} per tal d'afegir registres a la relació.
- Botons per a fer "CHECK TABLE" i "REPAIR TABLE"
- relacions: No permetre crear relacions on la mida de les dades d'origen pugui ser major que la de destinació.
- relacions: Demanar confirmació quan es vagi a eliminar en cascada per dependències.
- relacions: Revisar l'eliminació per dependències bifurcades, com en el cas de les instruccions de macro, que poden dependre de qualsevol objecte.
- relacions: En modificar un valor vinculat per dependència, modificar també les dades de taules dependents.
- relacions: En eliminar una taula, eliminar objectes que en depenen (consultes, formularis, informes)
- relacions: En eliminar una consulta, desvincular els objectes que en depenen (formularis, informes)
Futuribles (o no)
- Eina de traducció comunitària (amb Basap?)
- Fitxers adjunts
- Bitàcola d'operacions
- Crear una pàgina-mapa dels menús (informe integrat):
menu1
opcio1 (macro1)
instruccio1 (objecte1, objecte2)
instruccio2 (objecte1, objecte2)
opcio2 (macro2)
instruccio1 (objecte1, objecte2)
opcio3 (macro3)
instruccio1 (objecte1, objecte2)
menu2
opcio1 (macro4)
instruccio1 (objecte1, objecte2)
opcio2 (macro5)
instruccio1 (objecte1, objecte2)
- Crear igualment una pàgina-mapa de les macros (informe integrat):
macro1
instruccio1 (objecte1, objecte2)
macro2
instruccio1 (objecte1, objecte2)
instruccio2 (objecte1, objecte2)
macro3
instruccio1 (objecte1, objecte2)
instruccio2 (objecte1, objecte2)
instruccio3 (objecte1, objecte2)
macro4
instruccio1 (objecte1, objecte2)
macro5
instruccio1 (objecte1, objecte2)
- Secció d'administració per analitzar dades i relacions:
- Mapa de taules relacionades
- Mapa de dades relacionades
- Traçar a la capçalera el camí seguit en les pàgines, per a què l'usuari no utilitzi el botó del navegador "Enrere"
- Revisar compatibilitat amb PHP4 i MySQL4
- Revisar si es poden implementar més sistemes de "cache" a l'estil de la línia SQL de les Consultes.
- Utilitzar la parcela inferior (com a barra d'estat?)
- Que el mòdul relacions utilitzi claus foranies (Foreign Keys) quan ambdues taules siguin InnoDB.
- Permetre crear taules ENGINE = INNODB per a possibilitar les claus foranies (Foreign Keys) i rendir amb enormes volums de dades. (les claus forànies mantenen actualitzades les dades relacionades)
CREATE TABLE nomtaula (nomcamp INT) ENGINE = INNODB;
- Permetre alterar una taula per a canviar-li el motor (engine), i amnb això migrar-li el model relacional.
Altres referències