Translate

miércoles, 12 de junio de 2013

Conciliación Bancaria en Concar Dbase con VBA + SQL y Microsoft Excel

Con respecto a la Conciliación Bancaria…no sé como les va o como les fue a ustedes pero en lo particular, a mí en la universidad me enseñaron poco de este tema, aunque lo tratamos no resultó eficaz ya que la práctica es muy importante para ello. Similar situación con el análisis de cuentas.

Por otro lado, para el postulante contable y el asistente contable, es importante conocer sobre conciliaciones bancarias.

Es muy útil para la empresa controlar las operaciones de efectivo. En toda empresa el movimiento de caja es importante, a través de las operaciones de efectivo se producen la mayoría de gastos, las compras de activos, el pago de deudas, el cobro de cuentas por cobrar, el pago de entregas a rendir, el pago de impuestos, etc. etc. etc.

Es decir, la caja centraliza el movimiento de otras cuentas, por lo que controlar esta área hace importante la operatividad de la empresa, además robustece el control contable, el análisis de cuentas y la eficiencia y la eficacia en la emisión de estados financieros y otros tipos de reportes.

También nos brinda datos para la planeación en la necesidad de efectivo, previendo la oportunidad de solicitar financiamiento, entre otros usos.

Ante esta situación vale la pena preguntarse:

¿Y que hacen las empresas para controlar la Tesorería?

¿Es eficiente la forma como controlan el efectivo?

¿El sistema que poseen les resulta beneficioso para efectuar la conciliación bancaria?

¿Deben las empresas ejecutar la conciliación bancaria a diario?, etc. etc. etc.

Nuevamente, en lo particular, he observado que la mayoría de empresas terminan ejecutando la conciliación bancaria al final del mes, no usan el sistema que poseen, utilizan Excel y/o el libro mayor impreso y realizan la verificación contra el estado de cuenta bancario mediante observación, es decir de manera manual.

En muchos de los casos, los softwares no son utilizados ya que la interfaz que brindan no es la adecuada.

Recuerdo que el implementador de SAP Business One hasta el 2010 no lograba con éxito implementar la interfaz de conciliación bancaria, al menos en la empresa en donde laboraba. Concar Dbase no es la excepción, en mi opinión tampoco logra su adecuación.


A continuación, la siguiente imagen muestra la interfaz de conciliación bancaria en Concar Dbase





Concar Dbase es un buen software contable, pero su interfaz de conciliación bancaria nos obliga a registrar las operaciones bancarias desde el estado de cuenta hacia el software de manera manual registro por registro.

Recuerdo que en alguna época trabaje en una empresa con un estado bancario que contaba con 100 páginas de manera mensual. Por lo tanto, en lo particular esta interfaz no me resulta práctica y obviamente queda en desuso.

La presente entrada no expone código de programación, aunque en algunos puntos mencione objetos de manera técnica, me centrare en la interfaz de usuario, de tal manera que se aprecie lo útil que resulta obtener conocimientos sobre Visual Basic para Aplicaciones, manejo de base de datos mediante SQL y Microsoft Excel.

La siguiente imagen muestra la interfaz que ayuda a ejecutar diariamente la conciliación bancaria


Este formulario de usuario tiene las siguientes características:

A pesar de pertenecer a Microsoft Excel el formulario cuenta con botones para minimizar, maximizar y restaurar.

Para lograr ello debemos declarar las funciones API de Windorws: FindWindow, DrawMenuBar, SetWindowLong, y GetWindowLong de la librería user32 en la sección de declaraciones generales del módulo del formulario. Además de las constantes WS_MINIMIZEBOX, WS_MAXIMIZEBOX y GWL_STYLE.

Luego, desde el evento UserForm_Initialize llamar a las funciones API declaradas anteriormente para crear los botones minimizar, maximizar y restaurar en el formulario.

Además de otorgar una mejor apariencia al formulario, nos permite interactuar con la hoja de cálculo.

 
Note que en la parte superior izquierda de Excel se ha creado una barra de comandos


La programación para crear este botón se coloca en el evento Workbook_Open y se utiliza el objeto CommandBar, las propiedades CommandBars y Controls.

Con este botón puede cerrar y abrir el formulario las veces que usted desea.

Cuando presiona la siguiente casilla de verificación 



 aparece un subformulario que lista los archivos Excel en ejecución.




Previamente y a modo de ejemplo hemos bajado desde la web del BCP el estado de cuenta bancario en formato Excel y lo hemos guardado con el nombre: BCP SOLES JUNIO.xls

Cuando elegimos desde el subformulario la opción BCP SOLES JUNIO.xls el archivo se selecciona automáticamente.



Cuando presionamos el botón RefEdit



el formulario principal se minimiza y nos permite indicarle el rango que contiene los datos proporcionados por el banco.



Maximize el botón RefEdit, el siguiente paso es presionar el botón EJECUTAR



El botón EJECUTAR contiene una conexión ADO que nos permite declarar la ruta y un conjunto de registros llamado Recordset. Luego mediante sentencias SQL ejecutamos la consulta de selección que nos permite volcar los datos hacia la hoja de cálculo OWC que contiene el formulario.



De la misma forma, ahora seleccionemos las partidas conciliatorias del mes anterior con la casilla de verificación





Presionamos el botón RefEdit para minimizar el formulario y e indicar el rango que contiene las partidas conciliatorias del mes anterior.



Presione el botón EJECUTAR para volcar los datos hacia la hoja de cálculo OWC que contiene el formulario




Note que esta hoja de cálculo OWC se encuentra dentro de un control MultiPage. Este control de página múltiple contiene 2 fichas: PARTIDAS CONCILIATORIAS y MAYOR

Seleccione la ficha MAYOR, elija la cuenta, el mes, el año y presione EJECUTAR



Nuevamente mediante una conexión ADO y sentencias SQL podemos ejecutar una consulta de selección hacia la base de datos del Concar, específicamente hacia la tabla CCD0313.dbf para volcar los registros del libro diario hacia la hoja de cálculo OWC que contiene el formulario. La sentencia SQL utiliza WHERE para especificar criterios y filtrar la cuenta, el mes y el año especificado.




Ya tenemos las tres áreas básicas para realizar una conciliación bancaria: El estado de cuenta bancario, las partidas abiertas del mes anterior y el libro mayor del mes a conciliar.

El formulario calcula el saldo bancario al cierre del mes, el saldo según conciliación y el saldo en libros y los muestra en etiquetas (Label), por reserva no muestro la imagen con los cálculos.

Cuando se identifica una coincidencia entre el estado de cuenta bancario y el libro mayor o las partidas conciliatorias anteriores, seleccione el registro y presione el botón AGREGAR




La fila se pinta de color amarillo y unas etiquetas controlan que la diferencia llegue a cero.



En este momento podemos presionar el botón CONCILIAR


para enviar ambos registros a una base de datos de Microsoft Access y borrarlos de pantalla.

También puede seleccionar varios registros, si las sumas cuadran la etiqueta DIFERENCIA será cero y el formulario procederá a registrar todos los registros en amarillo hacia la base de datos Access, borrándolos de pantalla.

Si por algún motivo agrego un registro por error, puede presionar el botón



Para enviar registros desde Excel hacia Access también he utilizado una conexión ADO, la diferencia radica en el motor de la base datos, cada base de datos tiene un controlador eficaz y adecuado de manera particular. La sentencia SQL cambia de ser una consulta de selección por una de inserción.

Luego de haber registrado los registros conciliados en Access y cerrado el formulario, al día siguiente por ejemplo, puede volver a cargar los datos.

No será necesario volver a conciliar los registros ya conciliados, para ello presione el botón REFRESCAR



El botón RECONCILIACION AUTOMATICA es muy útil cuando los campos de fecha, monto y número de operación del estado de cuenta bancario coinciden los correspondientes campos del mayor o de las partidas conciliatorias. En este caso los registros coincidentes se pintan de color amarillo y si la diferencia se calcula en cero le permitirá conciliar varios registros de manera masiva.



Finalmente, si la etiqueta DIFERENCIA da como resultado cero, le será permitido imprimir



Presione el botón IMPRIMIR para descargar el formulario e imprimir la conciliación bancaria.






Bien! Eso fue todo, reitero los datos NO son reales, se han expuestos para fines didácticos.

A diferencia de las anteriores entradas en esta ocasión no expongo código de programación.

El formulario ejecuta la conciliación bancaria para diferentes bancos, espero les haya sido de su agrado, sobretodo para quienes se inician en la labor contable y tengan oportunidad aprender sobre conciliaciones bancarias.


Saludos,
Abraham


3 comentarios:

  1. Hola buenos días, muy buen sistema!!!. Existe forma de que me lo pudieras compartir?. Saludos y gracias.

    ResponderEliminar
  2. cual es el precio del aplicativo de Conciliación Bancaria en Concar Dbase con VBA + SQL y Microsoft Excel

    ResponderEliminar