Escolar Documentos
Profissional Documentos
Cultura Documentos
contpaqi.com
20140116
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:
AdminPAQ
CONTPAQ i FACTURA ELECTRNICA
Objetivo
Cmo declarar funciones del SDK de los sistemas comerciales en Visual Basic .NET
En este
documento
Tema
SDK de los sistemas comerciales en Visual Basic .NET
Visin general
Introduccin
Visin general
Documentacin
Diagrama para crear un desarrollo en SDK
1 Establecer directorio del SDK
Visin general
2 - Declaraciones del SDK
Funciones
Constantes
Estructuras
3 Iniciar el SDK
Visin general
4 Abrir la empresa
Visin general
5 Realizar las operaciones deseadas
Visin general
6 Cerrar la empresa
Visin general
7 Terminar SDK
Visin general
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
comerciales
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
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
Windows
Ubicacin
C:\Archivos de Programa\Compacw\AdminPAQ
C:\Archivos de Programa\Compacw\Facturacion
AdminPAQ
CONTPAQ i FACTURA ELECTRNICA
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
Funcin de
Windows
Declaracin de la
funcin
Pgina
1
contpaqi.com
Pgina
2
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
funciones
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
retorno
En general la mayora de las funciones del SDK regresan un entero el cual ser:
Parmetros de
las funciones
Las funciones pueden recibir parmetros los cuales tienen un tipo y un uso:
Pgina
3
Funciones, Continuacin
Consejos
generales
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
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
constantes
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
VB .NET
Declaracin
String
Integer
Long
Double
Pgina
7
Estructuras, Continuacin
Declarar
Estructuras
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
fSetNombrePAQ
Inicializar SDK
Pgina
9
4 Abrir la empresa
Visin general
Abrir empresa
Declarar
fAbreEmpresa
Abrir Empresa
Pgina
10
Despus de abrir la empresa podrs realizar las operaciones deseadas como crear clientes,
productos, documentos, etctera.
Operaciones
comunes
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
fCierraEmpresa
El siguiente cdigo declara la funcin que cierra la empresa que se abri previamente.
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
fTerminaSDK
Termina SDK
Pgina
13