Disparar una Macro de access

Que tal estimado experto mi duda es poco singular, quiero saber como le hago para disparar o ejecutar una macro de access, quisiera si es posible un ejemplo de código, yo se que es un poco extraño, pero más vale preguntar que quedarse con la duda, trabajo con asp 3.0 y access 2000, y tengo la base conectada y el servidor es IIS.
De antemano gracias
Desde Mexico City
Armin Canto
Respuesta
1
Encontré unos links que te pueden servir, pero están en inglés.
http://www.eggheadcafe.com/forums/ForumPost.asp?ID=38451&INTID=5
http://www.eggheadcafe.com/PrintSearchContent.asp?LINKID=251
Atentamente. Manuel Fernández.
El problema es que cuando uno abre una base de datos con ASP, en realidad utiliza un motor sql de adodb, esto no emula al Access, por lo tanto sólo puede accederse a las tablas, y trabajar con ellas, pero los módulos, las macros, los informes, los formularios y las consultas no pueden manipularse.
A menos que se pueda instalar en el servidor las dll's que corresponden al Access 9.0 component library (o algo parecido) que es lo que se usa desde Visual Basic, y como supongo que sabrás, en ASP se puede trabajar con VBSCRIPT, jscript entre otros.
Atentamente. Manuel Fernández.

1 respuesta más de otro experto

Respuesta
1
Fíjate si te sirve. Saludos.
<html><body>
<%
strDbName = 'Put the path to your database here
Set objAccess = Server.CreateObject("Access.Application")
objAccess.Visible = False
objAccess.OpenCurrentDatabase Server.MapPath(strDbName)
Set objDB = objAccess.CurrentDb()
macroCount = objDB.containers("Scripts").Documents.Count
%>
<form name="MacroForm" action="accessmacro2.asp" method="post">
<select name="macro">
<%
If macroCount > 0 Then
For Each macro in objDB.Containers("Scripts").Documents
Response.Write("<option value='" & macro.Name & _
"'>" & macro.Name & "</option>" & vbCrLf)
Next
End if
%>
</select>
<input type=submit text="Submit">
</form>
<%
set objDB = nothing
objAccess.Quit acQuitSaveNone
Set objAccess = Nothing
%>
</body></html>
Te agradezco, en serio, por que de antemano me habían dicho que no se podía, pero tu me das una solución la voy a probar, la única duda que me queda (ojala no me critiques), es donde va el nombre de la macro a disparar, lo demás si le entiendo, gracias y de verdad que los favores regresan a uno de alguna manera
Armin Canto
Te pasé mal el link. Lo que hace el código anterior, es levantar todas las macros existentes en un mdb, y armarte un combo para seleccionar alguna.
El código completo lo encontrás en:
http://www.eggheadcafe.com/PrintSearchContent.asp?LINKID=251

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas