Escolar Documentos
Profissional Documentos
Cultura Documentos
comerciales en Visual
Basic .NET
contpaqi.com
20140116
Pgina
1-2
Este documento contiene la informacin necesaria para utilizar el SDK para el desarrollo de
aplicaciones externas creadas en Visual Basic .NET que enven informacin a los siguientes
sistemas comerciales de CONTPAQ i:
Objetivo
AdminPAQ
CONTPAQ i FACTURA ELECTRNICA
Cmo declarar funciones del SDK de los sistemas comerciales en Visual Basic .NET
En este
Pgina
I
Pgina
I
I
II
II
III
IV
1
1
3
3
6
7
9
9
10
10
11
11
12
12
13
13
contpaqi.com
Introduccin
Visin general
Introduccin
En este captulo conocers los conceptos bsicos del SDK de los sistemas comerciales, qu
es, para qu sirve y dnde encontrar documentacin para su uso.
Sistemas
come
rciale
s
AdminPAQ
CONTPAQ i FACTURA ELECTRNICA
El SDK es bsicamente el mismo para los 2 sistemas solo cambian algunas instrucciones que
se explicarn a lo largo de este documento.
Qu es el SDK
El SDK es un grupo de funciones creadas en C++ que permiten leer y guardar informacin en
la Base de Datos de los sistemas comerciales de CONTPAQ i.
Pgina
II
contpaqi.com
Documentacin
Documentacin
MGW_SDK.h
Pgina
III
3 Iniciar SDK
Inicializa el SDK con la funcin fSetNombrePAQ.
4 Abrir la empresa
Abre la empresa con la funcin fAbreEmpresa.
7 Terminar el SDK
Finaliza el SDK con la funcin fTerminaSDK.
Pgina
IV
El primer paso para poder usar el SDK de los sistemas comerciales es establecer el directorio
donde est ubicado el archivo MGW_SDK.DLL.
Este archivo se encuentra por omisin en las siguientes rutas:
Ubicacin del
MGW
_SDK
.DLL
Sistema
AdminPAQ
CONTPAQ i FACTURA ELECTRNICA
Registro de
Wind
ows
Sistema
AdminPAQ
CONTPAQ i FACTURA ELECTRNICA
Funcin de
Wind
ows
Declaracin de la
funci
n
Ubicacin
C:\Archivos de Programa\Compacw\AdminPAQ
C:\Archivos de Programa\Compacw\Facturacion
Ubicacin
HKEY_LOCAL_MACHINE\SOFTWARE\Computacin en Accin, SA
CV\AdminPAQ\DIRECTORIOBASE
HKEY_LOCAL_MACHINE\SOFTWARE\Computacin en Accin, SA
CV\ CONTPAQ I Facturacion\DIRECTORIOBASE
Continaenlasiguientepgina
Pgina
1
contpaqi.com
Pgina
1
contpaqi.com
Las funciones del SDK permiten la lectura y escritura en la base de datos de los sistemas. De
esta forma podrs enviar informacin a los sistemas comerciales.
Tipos
Lenguajes y
tipos
de
funci
ones
Solo podrs usar funciones de alto nivel en tu proyecto si el lenguaje de programacin que
ests utilizando soporta el manejo de estructuras de datos.
Ejemplos de lenguajes que s soportan el uso de Estructuras de Datos: Visual Basic for
Applications, Visual Basic, C#.
Ejemplo de un lenguaje que no soporta el uso de Estructuras de Datos: Visual Fox.
Documentacin
Para ver la sintaxis de las funciones y sus parmetros, auxliate de los archivos SDK de
AdminPAQ.pdf y MGW_SDK.h.
Valores de
En general la mayora de las funciones del SDK regresan un entero el cual ser:
retor
no
Parmetros de
las
funci
ones
Las funciones pueden recibir parmetros los cuales tienen un tipo y un uso:
Continaenlasiguientepgina
Pgina
3
Funciones, Continuacin
Consejos
Parmetros en
VB
.NET
Siempre ten en cuenta que las funciones del SDK estn en C++, el objetivo al
declarar las funciones en tu lenguaje es pasar los tipos de datos que C++ pueda
recibir. Busca el tipo de datos en tu lenguaje que coincida mejor con el tipo de C++.
En C++ no existe el tipo String sino que todas las cadenas son apuntadores a una
cadena de tipo Char *. Por lo que, en lenguajes que soporten datos de tipo String,
se recomienda hacer siempre la declaracin del parmetro Por valor.
Si al usar una funcin recibes un error de tipo Intento de escribir en memoria
protegida es porque ests utilizando un parmetro con tipo de datos incorrecto o
porque no lo ests pasando de forma correcta (Por Valor o Por Referencia).
Enseguida se muestra una tabla con los tipos de datos de los parmetros de funciones para
las declaraciones recomendados en Visual Basic .NET:
SDK de AdminPAQ.pdf
Tipo
Cadena
Cadena
Por Valor
*Cadena
Por Referencia
Entero
Por Valor
Entero
Por Referencia
Entero Largo
Por Valor
Entero Largo
Por Referencia
Doble
Por Valor
Doble
Por Referencia
Bool
Por Valor
Unsigned char
Por Valor
Estructuras (Dato
Por Referencia
abstracto)
VB .NET
Declaracin
ByVal parametro as String
ByVal parametro as String
ByVal parametro as Integer
ByRef parametro as Integer
ByVal parametro as Long
ByRef parametro as Long
ByVal parametro as Double
ByRef parametro as Double
ByVal parametro as Boolean
ByVal parametro as Byte
estructura as tEstructura
*Importante: En C++ las cadenas son apuntadores a datos de tipo Char, por lo que ya se
reciben por referencia, debido a esto, en VB .NET siempre declara todas las cadenas Por
valor (incluso si en la documentacin dice que su uso es Por Referencia).
Cadenas
Continaenlasiguientepgina
Pgina
4
Funciones, Continuacin
Ejemplo VB .NET
Declaracin en VB .NET:
Observa lo siguiente:
Pgina
5
Constantes
Constantes
Opcionalmente se sugiere declarar constantes de longitud para los datos de tipo cadena que
se utilizarn en las estructuras.
Documentacin
Para ver las longitudes de las constantes, auxliate de los archivos SDK de AdminPAQ.pdf
(seccin Tipos de dato Abstractos del SDK) y MGW_SDK.h.
Caracter nulo
Declarar
Pgina
6
Estructuras
Qu son
Las estructuras definen los datos con sus tipos y longitudes pertenecientes a un objeto.
Ejemplo: La estructura tDocumento define los datos que incluye este objeto, como su Folio,
Serie, Fecha, Total, etctera.
Funciones de
alto
nivel
Las funciones de alto nivel reciben como parmetro una estructura. Para utilizarlas el
lenguaje de programacin que manejes deber soportar el uso de estructuras.
Documentacin
Para ver la sintaxis de las estructuras, auxliate de los archivos SDK de AdminPAQ.pdf
(seccin Tipos de dato Abstractos del SDK) y MGW_SDK.h.
Caracter nulo
Tipos de datos
en
VB
.NET
Ejemplo VB .NET
SDK de AdminPAQ.pdf
Tipo
Cadena
Entero
Entero Largo
Doble
VB .NET
Declaracin
String
Integer
Long
Double
Continaenlasiguientepgina
Pgina
7
Estructuras, Continuacin
Declarar
Observa que los datos de tipo String tienen definido un tamao fijo en base a las constantes
previamente definidas.
Las constantes de longitud previamente definidas son: kLongCodigo y kLongReferencia.
Tamaos de los
datos
Pgina
8
3 Iniciar el SDK
Visin general
Inicializar SDK
Una vez que ya estableciste el directorio donde se ubica el archivo MGW_SDK.DLL debers
inicializar el SDK para esto:
Declara y llama la funcin fSetNombrePAQ(aSistema) dependiendo el sistema:
Sistema a usar
AdminPAQ
CONTPAQ i FACTURA
ELECTRNICA
Sistema
fSetNombrePAQ(AdminPAQ)
fSetNombrePAQ(CONTPAQ I Facturacion)
Nota: Para el caso exclusivo de AdminPAQ tambin se puede inicializar el SDK a travs de
la funcin fInicializaSDK(). Pero es importante que uses solo una de las dos funciones
(fInicializaSDK o fSetNombrePAQ) para que no inicialices el SDK 2 veces.
Recomendacin: Se recomienda inicializar solo una vez el SDK por proyecto.
Declarar
fSetN
ombr
ePAQ
Inicializar SDK
Pgina
9
4 Abrir la empresa
Visin general
Abrir empresa
Declarar
Abrir Empresa
Pgina
10
Despus de abrir la empresa podrs realizar las operaciones deseadas como crear clientes,
productos, documentos, etctera.
Operaciones
comu
nes
En la siguiente tabla se muestran las funciones del SDK requeridas para realizar las
operaciones ms comunes:
Operacin
Crear producto
Editar producto
Crear clientes
Editar clientes
Crear documentos
Timbrar XML
Pgina
11
6 Cerrar la empresa
Visin general
Cerrar empresa
Declarar
El siguiente cdigo declara la funcin que cierra la empresa que se abri previamente.
fCierr
aEmp
resa
Cierra Empresa
El siguiente cdigo declara la funcin que cierra la empresa que se abri previamente.
Pgina
12
7 Terminar SDK
Visin general
Terminar SDK
Al terminar de utilizar el SDK debers usar la funcin fTerminaSDK para finalizar la conexin
a este.
Declarar
Termina SDK
Pgina
13