Paquimm

Drivers dBase: Apertura de COMPCAB.DBF y COMPDET.DBF

Recommended Posts

Estimados. Cómo están?

Estoy intentando seleccionar registros de las tablas del sistema a través de .NET. Estoy usando controlador Microsoft.Jet.OLEDB.4.0 Dbase 5.0. 

Puedo seleccionar tranquilamente los registros de las tablas de Stock, Ventas pero no puedo acceder a las tablas de cabecera y detalle del comprobante emitido (COMPCAB y COMPDET). Muestra el siguiente error:

 "La tabla externa no tiene el formato esperado"

¿Sabrán que podrá ser? He probando con DBase III, IV y V.

GRacias!!!

  • Like 1

Compartir este mensaje


Enlace al mensaje

 

 

? Conoce las diferencias entre nuestro Sistema de Facturacion, y nuestro Software de Gestion Empresarial en la nube » ¡Clic Aquí! ?

 

 

Tienes la opción de abrir esos archivos en formato dBase III DBF/CDX?

 

Te explico la diferencia:

  1. La mayoria de los DBFs de StockBase POS usan el driver dBase III DBF/NTX
  2. Algunos casos puntuales usan el driver dBase III DBF/CDX

 

La diferencia entre NTX y CDX hace referencia a los archivos de indices, que son archivos temporales que se reconstruyen cada vez que se realiza una re-organización de archivos.

 

Por favor realiza es prueba y comentanos como te fue!  :contento:

  • Like 2

Compartir este mensaje


Enlace al mensaje

Muchas Gracias Emi por la respuesta. Te comento que probé con un driver de FoxPro (Provider = vfpoledb) y pude acceder a la tabla COMPDET. El tema es que necesito hacer in join entre la COMPDET y la STOCK y con el mismo controlador no pude hacerlo.

 

El tema está ahí, en el controlador usado para acceder.

 

Muchas Gracias Nuevamente!!

  • Like 1

Compartir este mensaje


Enlace al mensaje

Para poder darme un mucho, pero mucho mejor asesoramiento, me gustaría que me comentes que tipo de solución estas queriendo construir, o que tipo de problema necesitas resolver.

De esa manera, podremos aconsejarte con soluciones que ya hemos aplicado en otros clientes!  :contento: 

 

Muchas Gracias Emi por la respuesta. Te comento que probé con un driver de FoxPro (Provider = vfpoledb) y pude acceder a la tabla COMPDET. El tema es que necesito hacer in join entre la COMPDET y la STOCK y con el mismo controlador no pude hacerlo.

 
Estas usando exactamente esto?:
https://msdn.microsoft.com/en-us/library/0xzsac67(VS.80).aspx
 
Y que ocurre al abrir STOCK.DBF con vfpoledb?

  • Like 2

Compartir este mensaje


Enlace al mensaje

Gracias Emi!!.

 

El tema es así: Preciso hacer un reporte de ventas pero filtrando por un campo Genio. Es por eso que necesito hacer un join entre la tabla STOCKy la tabla COMPDET. De esa manera, filtro por campo genio  (Campo CUSTOM_1)  y por la fecha de venta. Lo estoy haciendo .NET (C#). 

 

Cuando llego a casa te mando el código que estoy usando junto con el error que me tira.

 

Gracias Totales!!!

  • Like 1

Compartir este mensaje


Enlace al mensaje

Bueno. Te comento:

 

1- Usando el siguiente driver puedo acceder a la tabla COMPDET correctamente:

 

     "Provider = vfpoledb.1;Data Source=C:\\StockBase_POS_2014.766\\;Collating Sequence=general"

 

    Pero cuando quiero acceder a la tabla STOCK, me muestra el siguiente mensaje: "Error: stock.dbf no es una tabla".

 

2- Usando este otro driver, puedo acceder a la tabla stock;

 

    "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\StockBase_POS_2014.766\\;Extended Properties= dBase 5.0";

 

     Pero al acceder a la tabla COMPDET, muestra el siguiente error:"Error: la tabla externa no tiene el formato esperado"

 

Como te comenté en el otro mensaje, preciso hacer unos reportes, entre ellos, uno que filtre la venta de productos con un determinado valor en el campo custom (Genio). Es por eso que necesito acceder a ambas tablas simultáneamente.

 

Muchas Gracias Emi. Saludos.!

  • Like 1

Compartir este mensaje


Enlace al mensaje

En tu aplicacion escrita en Microsoft C#, te es posible usar una base de datos en SQL o Microsoft Access?

  • Like 1

Compartir este mensaje


Enlace al mensaje

Lo que muchos programadores hacen, es esto:

 

post-2447-0-53629200-1431630226.jpg

 

Explicado en palabras:

  1. En tu aplicación, crea una base de datos (en Access, SQL o lo que sea)
  2. Esta base de datos, debe tener el formato del JOIN de STOCK.DBF y COMPDET.DBF
  3. Para poblar tu base de datos, primero puedes realizar una conexión para STOCK.DBF con un driver, y luego otra conexión a COMPDET.DBF con el otro driver

 

El resultado de esto va a ser el mismo que estas buscando, pero con estas ventajas:

  1. La información la vas a tener local en la carpeta de tu aplicación
  2. No vas a enlentecer el funcionamiento de StockBase POS al hacer sucesivas consultas cada vez que se ejecute el reporte

 

Que te parece?

  • Like 1

Compartir este mensaje


Enlace al mensaje

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Invitado
Responder a este tema...

×   Has pegado contenido con formato.   Eliminar formato

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Se ha restaurado el contenido anterior.   Limpiar editor

×   You cannot paste images directly. Upload or insert images from URL.