Compactar con código un único End y tres Front. |
Responder |
Autor | |
katsumoto
Habitual Unido: 24/Julio/2011 Localización: Ciudad Real Estado: Sin conexión Puntos: 171 |
Tema: Compactar con código un único End y tres Front. Enviado: 10/Noviembre/2019 a las 12:34 |
Desde 1995 –con sucesivas actualizaciones a las también sucesivas
versiones de la plataforma ACCESS- vengo trabajando con tres .accdb Front Back
que vienen a constituir una especie de suite de Gestión Agrícola. Estos
tres ficheros atacan un único Back End. Últimamente he creado un nuevo Front Back -sin siquiera vínculos a tablas- cuyo único papel se limitaría a recoger tres llamadas (evento Al hacer clic en tres botones en el casi único formulario de que consta) a los tres Front Back básicos de que he hablado antes, ello mediante el método Application.FollowHyperlink (perdón si no utilizo adecuadamente los términos de VBA: no es mi fuerte...) que me funciona perfectamente. El caso es que en el Ribbon del nuevo Front Back de puente creado ahora, quisiera incorporar en una de sus tab cuatro botones que al ser accionados ejecutasen la tarea de compactar/reparar, sucesivamente claro, el Back End común y único a la suite, y cada uno de los tres Front Back de las aplicaciones básicas. Lo he intentado todo, método Application.FollowHyperlink, uso de la función Shell para ejecutar un .bat específicamente creado al efecto: Shell ("C:\Agricultura\CompactarTablas.bat"), ubicado en la ruta indicada y cuyo texto plano es el siguiente: C:\Agricultura\AGRICULTURA_Tablas.accdb /compact , siendo su único objetivo el compactar el Back End; también he intentado una combinación de ambas metodologías… pero nada, no hay forma. Una cosa curiosa: cuando ejecuto el .bat con la Shell, me abre la base de datos –y la deja abierta..- pero no la compacta, sin embargo si ejecuto con doble clic el .bat la compactación se realiza, o sea que el .bat está bien escrito... Alguien me puede ayudar, por favor? |
|
xavi
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Administrador Terrassa-BCN Unido: 10/Mayo/2005 Localización: Catalunya |||| Estado: Sin conexión Puntos: 14738 |
Enviado: 10/Noviembre/2019 a las 18:53 |
No se si te entendí... ¿quieres compactar una base de datos distinta a la activa? Yo tengo este código para eso:
Un saludo
|
|
katsumoto
Habitual Unido: 24/Julio/2011 Localización: Ciudad Real Estado: Sin conexión Puntos: 171 |
Enviado: 10/Noviembre/2019 a las 19:14 |
Gracias por responder, Xavi.
Intentaré descifrar tu función, pero...
|
|
katsumoto
Habitual Unido: 24/Julio/2011 Localización: Ciudad Real Estado: Sin conexión Puntos: 171 |
Enviado: 11/Diciembre/2019 a las 20:31 |
Simplemente por cerrar el hilo.
La 'solución', supongo que pedestre, que he utilizado es crear un bat del tipo: "C:\Program Files (x86)\Microsoft Office\Office14\MSAccess.exe" "C:\CarpetaContenedora\MiBaseDeDatos.accdb" /compact He ubicado ese bat en la carpeta que antes he llamado 'Carpeta contenedora' y en el Ribbon de una BD puente que se limita a ser enlace de las aplicaciones que pretendía compactar, Módulo CallBacks, he escrito simplemente las líneas: Case "btnN" Shell ("C:\CarpetaContenedora\NombreDelBat.bat") Como he dicho por ahí arriba se puede cerrar el hilo.
|
|
Responder | |
Tweet
|
Ir al foro | Permisos de foro Usted No puede publicar nuevos temas en este foro Usted No puede responder a temas en este foro Usted No puede borrar sus mensajes en este foro Usted No puede editar sus mensajes en este foro Usted No puede crear encuestas en este foro Usted No puede votar en encuestas en este foro |