forked from reingart/pyafipws
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
WSCDC: subo ejemplo en VB para constacion de comprobantes
--HG-- rename : ejemplos/wsfev1/wsfev1.bas => ejemplos/wscdc/wscdc.bas rename : ejemplos/wsfev1/wsfev1.vbp => ejemplos/wscdc/wscdc.vbp
- Loading branch information
Showing
2 changed files
with
144 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,105 @@ | ||
Attribute VB_Name = "Modulo1" | ||
' Ejemplo de Uso de Interface COM con Web Service Constatación de Comprobantes AFIP | ||
' para Visual Basic 5.0 o superior (VB5 o VB6) | ||
' Documentación: http://www.sistemasagiles.com.ar/trac/wiki/ConstatacionComprobantes | ||
' 2013 (C) Mariano Reingart <reingart@gmail.com> | ||
' Licencia: GPLv3 | ||
|
||
Sub Main() | ||
Dim WSAA As Object, WSCDC As Object | ||
|
||
' Crear objeto interface Web Service Autenticación y Autorización | ||
Set WSAA = CreateObject("WSAA") | ||
Debug.Print WSAA.Version | ||
If WSAA.Version < "2.07" Then | ||
MsgBox "Debe instalar una versión más actualizada de PyAfipWs WSAA!" | ||
End | ||
End If | ||
|
||
' Especificar la ubicacion de los archivos certificado y clave privada | ||
Path = CurDir() + "\" | ||
' Certificado: certificado es el firmado por la AFIP | ||
' ClavePrivada: la clave privada usada para crear el certificado | ||
CRT = Path + "..\..\reingart.crt" ' certificado de prueba | ||
Key = Path + "..\..\reingart.key" ' clave privada de prueba | ||
URL_WSAA = "" ' cambiar en producción | ||
|
||
ta = WSAA.Autenticar("wscdc", CRT, Key, URL_WSAA) | ||
If ta = "" Then | ||
MsgBox WSAA.Excepcion, vbCritical, "No se puede gestionar el Ticket de Acceso" | ||
End | ||
End If | ||
|
||
' Crear objeto interface Web Service de Constatación de Comprobantes emitidos | ||
Set WSCDC = CreateObject("WSCDC") | ||
Debug.Print WSCDC.Version | ||
If WSAA.Version < "1.12" Then | ||
MsgBox "Debe instalar una versión mas actualizada de PyAfipWs WSCDC!" | ||
End | ||
End If | ||
'Debug.Print WSCDC.InstallDir | ||
|
||
' Setear tocken y sing de autorización (pasos previos) | ||
WSCDC.Token = WSAA.Token | ||
WSCDC.Sign = WSAA.Sign | ||
|
||
' CUIT del emisor (debe estar registrado en la AFIP) | ||
WSCDC.Cuit = "20267565393" | ||
|
||
' deshabilito errores no manejados | ||
WSCDC.LanzarExcepciones = False | ||
|
||
' Conectar al Servicio Web | ||
proxy = "" ' "usuario:clave@localhost:8000" | ||
wsdl = "https://wswhomo.afip.gov.ar/WSCDC/service.asmx?WSDL" | ||
cache = "" 'Path | ||
wrapper = "" ' libreria http (httplib2, urllib2, pycurl) | ||
cacert = WSAA.InstallDir & "\geotrust.crt" ' certificado de la autoridad de certificante (solo pycurl) | ||
|
||
ok = WSCDC.Conectar(cache, wsdl, proxy, wrapper, cacert) ' homologación | ||
If Not ok Then | ||
MsgBox WSCDC.Traceback, vbCritical, WSCDC.Excepcion | ||
End | ||
End If | ||
|
||
' Llamo a un servicio nulo, para obtener el estado del servidor (opcional) | ||
ok = WSCDC.Dummy() | ||
Debug.Print "appserver status", WSCDC.AppServerStatus | ||
Debug.Print "dbserver status", WSCDC.DbServerStatus | ||
Debug.Print "authserver status", WSCDC.AuthServerStatus | ||
|
||
' Establezco los valores de la factura a constatar: | ||
cbte_modo = "CAE" | ||
cuit_emisor = "20267565393" | ||
pto_vta = 4002 | ||
cbte_tipo = 1 | ||
cbte_nro = 109 | ||
cbte_fch = "20131227" | ||
imp_total = "121.0" | ||
cod_autorizacion = "63523178385550" | ||
doc_tipo_receptor = 80 | ||
doc_nro_receptor = "30628789661" | ||
|
||
' llamar al webservice para verificar la factura: | ||
ok = WSCDC.ConstatarComprobante(cbte_modo, cuit_emisor, pto_vta, cbte_tipo, _ | ||
cbte_nro, cbte_fch, imp_total, cod_autorizacion, _ | ||
doc_tipo_receptor, doc_nro_receptor) | ||
If Not ok Then | ||
MsgBox WSCDC.Traceback, vbCritical, WSCDC.Excepcion | ||
End | ||
Else | ||
MsgBox WSCDC.Obs + WSCDC.ErrMsg, vbInformation, "Resultado: " & WSCDC.Resultado | ||
' controlar los datos devueltos del webservice | ||
Debug.Print "Resultado:", WSCDC.Resultado | ||
Debug.Print "Fecha Comprobante:", WSCDC.FechaCbte | ||
Debug.Print "Nro Comprobante:", WSCDC.CbteNro | ||
Debug.Print "Punto Venta:", WSCDC.PuntoVenta | ||
Debug.Print "Importe Total:", WSCDC.ImpTotal | ||
Debug.Print "Tipo Doc Receptor:", WSCDC.DocTipo | ||
Debug.Print "Nro Doc Receptor:", WSCDC.DocNro | ||
Debug.Print "Modalidad Emision Comprobante:", WSCDC.EmisionTipo | ||
Debug.Print "CAI:", WSCDC.CAI | ||
Debug.Print "CAE:", WSCDC.CAE | ||
Debug.Print "CAEA:", WSCDC.CAEA | ||
End If | ||
End Sub |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
Type=Exe | ||
Reference=*\G{00020430-0000-0000-C000-000000000046}#2.0#0#C:\WINDOWS\system32\stdole2.tlb#OLE Automation | ||
Object={831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0; MSCOMCTL.OCX | ||
Module=Modulo1; wscdc.bas | ||
Startup="Sub Main" | ||
HelpFile="" | ||
Title="wsfev1" | ||
Command32="" | ||
Name="WSCDC" | ||
HelpContextID="0" | ||
Description="Ejemplo Web Service Constataci�n de Comprobantes emitidos AFIP (Visual Basic)" | ||
CompatibleMode="0" | ||
MajorVer=1 | ||
MinorVer=0 | ||
RevisionVer=0 | ||
AutoIncrementVer=0 | ||
ServerSupportFiles=0 | ||
VersionComments="Requiere interfaz PyAfipWs" | ||
VersionCompanyName="http://www.sistemasagiles.com.ar/" | ||
VersionFileDescription="Ejemplo Web Service Constataci�n de Comprobantes" | ||
VersionLegalCopyright="2013 (C) Mariano Reingart reingart@gmail.com" | ||
VersionProductName="PyAfipWs" | ||
CompilationType=0 | ||
OptimizationType=0 | ||
FavorPentiumPro(tm)=0 | ||
CodeViewDebugInfo=0 | ||
NoAliasing=0 | ||
BoundsCheck=0 | ||
OverflowCheck=0 | ||
FlPointCheck=0 | ||
FDIVCheck=0 | ||
UnroundedFP=0 | ||
StartMode=0 | ||
Unattended=0 | ||
ThreadPerObject=0 | ||
MaxNumberOfThreads=1 | ||
|
||
[MS Transaction Server] | ||
AutoRefresh=1 |