Compartir a través de


Menú Archivo en una aplicación de base de datos MFC

Si crea una aplicación de base de datos MFC y no usa la serialización, cómo debe interpretar los comandos Abrir, Cerrar, Guardar y Guardar como en el menú Archivo Aunque no hay directrices de estilo para esta pregunta, estas son algunas sugerencias:

  • Elimine el comando Abrir del menú Archivo por completo.

  • Interprete el comando Abrir como "base de datos abierta" y muestre al usuario una lista de orígenes de datos que reconoce la aplicación.

  • Interprete el comando Abrir como, quizás, "abrir perfil". Conserve Open para abrir un archivo serializado, pero use el archivo para almacenar un documento serializado que contenga información de "perfil de usuario", como las preferencias del usuario, incluido su identificador de inicio de sesión (opcionalmente excluyendo la contraseña) y el origen de datos con el que ha trabajado más recientemente.

El Asistente para aplicaciones MFC admite la creación de una aplicación sin comandos de menú Archivo relacionados con documentos. Seleccione la opción Vista de base de datos sin compatibilidad con archivos en la página Compatibilidad con bases de datos.

Para interpretar un comando de menú Archivo de forma especial, debe invalidar uno o varios controladores de comandos, principalmente en la clase derivada de CWinApp. Por ejemplo, si invalida OnFileOpen completamente (que implementa el comando ID_FILE_OPEN) para indicar "abrir base de datos:"

  • No llame a la versión de clase base de OnFileOpen, ya que reemplaza completamente la implementación predeterminada del marco del comando.

  • Use el controlador en su lugar para mostrar un cuadro de diálogo que enumera los orígenes de datos. Puede mostrar este cuadro de diálogo llamando a CDatabase::OpenEx o CDatabase::Open con el parámetro NULL. Se abre un cuadro de diálogo ODBC que muestra todos los orígenes de datos disponibles en el equipo del usuario.

  • Dado que las aplicaciones de base de datos normalmente no guardan un documento completo, es probable que quiera quitar las implementaciones Guardar y Guardar como a menos que use un documento serializado para almacenar información de perfil. De lo contrario, puede implementar el comando Guardar como, por ejemplo, "confirmar transacción". Consulte la Nota técnica 22 para obtener más información sobre cómo invalidar estos comandos.

Consulte también

Serialización: Serialización frente a entrada/salida de bases de datos