Scripts varios


Abrir formulario de objeto, o lanzar un script en concreto desde un programa externo. Previa petición de login si fuera necesario.
- ahorainicio.exe: Programa que lanza la aplicación. Puede recibir el parámetro de un id del objeto ahora_link para ejecutarlo.
- lanzalink.exe: Programa que ejecuta un ahora_link. Recibe los parámetros de servidor, base de datos y link.
Utilizaremos el objeto shell para abrir el programa o lanzar el link.

 

Ver código ejemplo


-- Previamente creamos un link asociado a un buscador y a una consulta.
-- Se recomienda generar un buscador o un script desde el erp, y el link generado sea el que usemos en el ejemplo.
-- El número 492 hace referencia al IdLink de la tabla ahora_links.
-- En este ejemplo generamos un link a un buscador, por lo tanto existe un registro en la tabla buscadores y otro en Ahora_Consultas.
-- Para el ejemplo, creamos un fichero .vbs con la siguiente instrucción.


Dim objShell
Set objShell = WScript.CreateObject( "WScript.Shell" )
    if not cbool(IsProcessRunning ("pc_055","ahoraini.exe")) then
      objShell.Run """C:\Program Files (x86)\AHORA Freeware ERP\AhoraIni.exe""492"
    else
      objShell.Run """C:\Program Files (x86)\AHORA Freeware ERP\Lib\LanzaLink.exe""miservsql;mibbdd;492 1"
   end if
Set objShell = Nothing

'Esta función retorna un boolean indicando si el programa del ERP está abierto
Function IsProcessRunning( strComputer, strProcess )
Dim Process, strObject
IsProcessRunning = False
strObject = "winmgmts://" & strComputer
For Each Process in GetObject( strObject ).InstancesOf( "win32_process" )
     If UCase( Process.name ) = UCase( strProcess ) Then
         IsProcessRunning = True
         Exit Function
     End If
Next
End Function

Autor: Daniel Ernesto Lutz Llano