|
From: Luis Martin-S. G. <lma...@we...> - 2010-11-11 16:17:00
|
Buenas tardes,
Por lo que veo aquí hay algunas cosas que todavía no están demasiado claras.
1) CegaiaGlue y CegaiaDLL
En 2006 los ERPeros realizaron un desarrollo para conectarse a la plataforma de TLR. Para ello se utilizó la librería AtidenetDll.Dll. Cuando a principios de 2008 se le pidió a Webalianza que reemplazase la plataforma de TLR por otra basada en estándares abiertos, se puso como pre-condición que los desarrollos del conector realizados anteriormente no tuviesen que cambiar. Por ello Webalianza desarrollo:
a) La implementación de la plataforma (dack & registry) que es el "lado servidor"
b) Una librería de .NET que sirviese de API para el acceso a los servicios del dack y del registry
c) Una librería en C++ (CegaiaGlue) que tuviese la misma firma de métodos que la DLL de Atidenetdll.dll
De esta manera, un ERPero que antes utilizase este esquema:
ERP <---> AtidenetDll.Dll <---> TLR <---> AtidenetDll.Dll <---> ERP
Ahora utilizaría
ERP <---> CegaiaGlue.dll (renombrada a AtidenetDll.dll) <---> CegaiaDll.Dll <---> Dack/Registry <---> CegaiaDll.Dll <---> CegaiaGlue.dll <---> ERP
Es decir, añadimos una capa de abstracción que es la Glue.
Ahora bien, esto se realizó trasladando que cualquier nuevo desarrollo debería de ser hecho con la CegaiaDll.Dll dado que era la única librería que iba a ser mantenida en el tiempo, siendo la CegaiaGlue un desarrollo para no tirar lo desarrollado anteriormente. De hecho, algún proveedor ha tenido que ir directamente contra la CegaiaDll.Dll porque entre tanta capa de abstracción no fuimos capaces (nosotros) de ver porqué un método estaba teniendo un aparente memory leak.
Entonces, por favor, cuando habléis de la DLL o de la librería, por favor, referiros a la librería exacta con la que estáis trabajando.
2) Importación de una Librería de .NET
Existe una infinidad de métodos para conocer los métodos de un ensamblado de .NET, es algo que daba por hecho, de todas maneras, el namespace es CegaiaDll y las clases son DackInterface, EventResponse, EventListResponse, DocumentResponse y DocumentListResponse, además de una clase privada que es DackProxy. El documento del conector contiene todos los métodos.
> ox = CREATE ('Minamespace.sumodos')
> ? ox.Addtr(1,2)
ox = CREATE ('CegaiaDll.DackInterface')
if (ox.Login ("username","password")) { ---- }
3) ¿Puedo entender que estáis realizando un desarrollo desde cero de vuestro conector? Lo pregunto porque sino, en esta conversación estaríamos hablando de la CegaiaGlue no de la CegaiaDll.
Saludos.
Luis Martín-Santos García - lu...@we...
Gerente - Chief Executive Officer
Webalianza Consultoría Tecnológica - IT Consulting
------------------------------------------------------------------
Portuetxe Bidea 23 Edificio CEMEI Piso 3 Oficina 4
20018 Donostia-San Sebastian, Gipuzkoa, Spain.
Tfn : +34 902 364 368 ext 2001.
Fax : +34 943 212 920
Skype: lmartinsantos
|