Enlace con DLL Externa

 

- Crear un proyecto con las librerías y funciones a emplear. Es importante asegurarse que está marcado el check de compatibilidad para COM (en Visual Studio).

- Generar la dll y registrarla.

- Llamarla desde el ERP de una forma similar a la expuesta:


  Set lObj = CreateObject ("<NombreLibreria.NombreClase>")

  lObj.<NombreProceso> <Parámetros>


Código ejemplo

Tenemos un proyecto con la siguiente clase:


Public Class Procesos


  Public Sub mensaje()

    MsgBox("MENSAJE A MOSTRAR")

  End Sub


  Public Sub crearPedido(ByVal gcn As Object, ByVal IdCliente As String, ByVal IdArticulo As String, ByVal Cantidad As Double)

    Dim lPed = gcn.obj.dameobjStr("Pedido")

    With lped

      .propiedades("IdCliente") = IdCliente

      .update()

      Dim lLinea = lPed.objetos("Pedido_Lineas").add

      llinea.propiedades("IdArticulo") = IdArticulo

      llinea.propiedades("Cantidad") = Cantidad

      llinea.update()

      .show()

    End With

  End Sub


End Class


Public Class ConexionCargaLib

  Private Shared pCn As Object

  Public Property conexion() As Object

    Get

      Return pCn

    End Get

    Set(ByVal value As Object)

      pCn = value

    End Set

  End Property


End Class


Para llamarla desde el ERP se realizaría de la siguiente forma:


Set lObj = CreateObject ("Prueba_ExternoNet.Procesos")

lObj.mensaje 

lObj.crearPedido gcn, "00001", "0", 25


En este ejemplo se mostraría un mensaje y se crearía un pedido.




Los pasos para generar una dll desde .net y poder utilizarla en el ERP son los siguientes:



  1. Crear  un Proyecto de Biblioteca de Clases en Visual Studio






    

  1. En dicho Proyecto, marcar “Registrar para interoperatividad COM”


    





  1. Una vez generada la dll de VS, copiarla en la carpeta donde está     instalado el ERP, normalmente      


C:\Program Files (x86)\AHORA Freeware ERP\Lib



  1.  Registar la librería de la siguiente forma:

C:\Windows\Microsoft.NET\Framework\v4.0.30319\RegAsm.exe " C:\Program Files (x86)\AHORA Freeware ERP \lib\NOMBRELIBRERIA.dll" /tlb:NOMBRELIBRERIA.tlb /codebase


En nuestro ejemplo, el Código de la DLL de .NET es el siguiente

 


  1.  Para llamarla desde el ERP sería de la siguiente manera:


Sub Main()

      frmAux.Descargar     'ATENCIÓN: DEBE ESTAR SIEMPRE QUE NO SE MUESTRE EL FORMULARIO.

 

      Set lPrueba = CreateObject("ClassLibrary1.Class1")

 lPrueba.MensajeDLL  

 

End Sub



Y el resultado es el siguiente: 


Autor: Daniel Ernesto Lutz Llano