Impresora Fiscal desde PHP mediante OCX

hasar

Luego de intentar conectarme a una impresora fiscal sobre GNU/Linux durante varios meses y sin éxito, decidí enfrentar este desarrollo sobre Windows. Al investigar el tema me encontré varios documentos informativos provistos por la fábrica de la impresora, en este caso Hasar. En dichos documentos una de las opciones mencionadas para conectar con la impresora es utilizando un control OCX desarrollado y dristribuído de forma gratuita por la fábrica.

Decidí profundizar sobre este método de conexión con la impresora y me puse manos a la obra. Encontré que es necesario registrar en Windows el control OCX que queremos utilizar y podemos hacerlo del siguiente modo.

Dependiendo de si el sistema operativo sobre el que trabajamos es de 32 o 64 bits tenemos que colocar nuestro archivo OCX en las siguientes rutas respectivamente:

c:\windows\system32 ( para 32 bits )
c:\windows\syswow64 ( para 64 bits )

Una vez hecho esto abrimos una consola MS-DOS como administrador y situados en la carpeta del paso anterior ejecutamos por ejemplo:

regsvr32 fiscal150423.ocx

Llegado este punto ya tenemos registrado en Windows el control OCX necesario y podemos incorporarlo a nuestro proyecto de desarrollo.

Como en mi caso necesito acceder a la impresora fiscal desde una aplicación PHP que ya tengo desarrollada comencé a investigar como utilizar el control OCX ya registrado desde PHP. El acceso es muy simple.

Como primer paso es preciso cargar la extensión correspondiente en el archivo php.ini del siguiente modo:

extension=php_com_dotnet.dll

Hecho esto podemos instanciar el objeto OCX para poder trabajar con él:

$hasar = new COM( "hasar.fiscal.1" );

Luego podemos utilizar cualquiera de los métodos disponibles en dicho control, por ejemplo:

$hasar->Puerto = 2;
$hasar->Transporte = PUERTO_SERIE;
$hasar->AutodetectarControlador();
$hasar->AutodetectarModelo();
echo $hasar->Version;
$hasar->PedidoDeStatus;
var_dump( $hasar->Respuesta(0) );

Bueno, hasta acá ya podemos trabajar con lo que necesitemos. El resto dependerá del desarrollo de nuestra aplicación.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s