Ver Mensaje Individual
  #6  
Antiguo 28-11-2006
Marymania Marymania is offline
Miembro
 
Registrado: nov 2006
Ubicación: La Habana, Cuba
Posts: 11
Reputación: 0
Marymania Va por buen camino
Smile Me explico mejor

Estoy trabajando en un Sistema de Inventario, este cuenta con 7 pantallas de captación: Almacén, Centro de Costo, Proveedor, Códigos de Gasto, Productos, Movimientos y Solicitud de Materiales.

Cada una de las pantallas tiene como formato un PageControl y en el dos TabSheet en el primero se ven los DBEdit junto con un navegador y en el segundoun DBGrid.

Las pantallas de captación Almacén, Centro de Costo, Proveedor y Códigos de Gasto cuentan con los mismos campos:
Código (número) Descripción

Si es en la pantalla Almacén Código del Almacén y Descripción de este y así sucederá en cada una de las otras pantallas.

En la pantalla de captación Productos se captan o dan entrada a nuevos productos. Esta pantalla cuenta con:

Un DBNavigator

Cuatro DBEdit en los que se muestran los datos de los siguientes campos: Código, Descripción, Unidad de Medida y Precio.

Dos DBLookupComboBox, el primero muestra la descripción de los almacenes y el segundo la descripción de los proveedores, cada uno capta los datosdel campo descripción de las pantallas Almacen y Proveedor respectivamente.

Así cuando se de entrada a un producto nuevo se introducirá el Código y la Descripción de este, el Precio y la Unidad de medida del mismo y mediante los DBLookupComboBox se seleccionará con el primero en que almacén estará almacenado y con el segundo quien es el proveedor de dicho producto.

En la pantalla Producto también hay un PageControl y en ella dos TabSheet en el primero se ven los DBEdit junto con un navegador y en el segundoun DBGrid, pero esta pantalla cuenta con una peculiaridad, que es la siguiente, en el primer TabSheet muestra como ya mencione todos los datos relacionado con los productos y en el segundo TabSheet que tiene un DBGrid muestra los mismos campos que en la primera y además un campo llamado Existencia. La existencia es la cantidad existente en el almacén. Dicho campo solo es para visualizar ya que este depende de si aumenta o disminuye del tipo de movimiento que se realice. Un ejemplo, si se hace un movimiento de Entrada del producto presillas, y este producto tiene como existencia 0 y se va a mover una Cantidad de 20 presillas, entonces esta campo Existencia aumentará en 20 presilla y así sucesivamente, si a este producto le hacemos un movimiento de Salida de una Cantidad de 15 entonces la Existenciade este producto disminuiría a 5.

Nota: el campo cantidad pertenece a la Tabla Movimiento. Cuando se explique la función de la pantalla Movimiento entonces entenderá todo lo relacionado con Existencia y Cantidad.

En la pantalla de captación Movimiento (que es la más complicada) se hacen los movimientos, que pueden ser de Salida o Entrada.

El movimiento de Entrada es aquel en el que al producto se le da entrada al almacén cuando está acabado de comprar.

El movimiento de Salida es aquel en el que al producto se le da salida del almacén en que esta a un determinado Centro de Costo.

Como la pantalla Movimiento mueve productos es necesario mostrarlos y para eso es necesario insertar de la tabla Productos los campos Código, Descripción, Precio, Unidad de medida, Descripción del proveedor, Descripción del almacén y Existencia (que es el campo que es de solo lectura y se muestra únicamente en el DBGrig). Todos los datos de la tabla Productos insertados son de solo lectura, su única función es mostrar mediante un navegador los datos del producto que el usuario desee mover.

Esta pantalla cuenta con:
Un DBNavigator

Un DBComboBox en el que se selecciona que tipo de movimiento hacer, si Entrada o Salida.

Tiene DateTimePicker en el que se selecciona la fecha en que se realizará el movimiento.

Entonces si se hace un movimiento de Entrada se activaran los campos Fecha de Factura y No. De Factura y se desactivará el campo Centro de Costo. De ser un movimiento de Salida seria de forma viceversa.

Hasta ahí no tengo problema, el problema comienza ahora.

Cuando se hace un movimiento de Salida, a ese producto que se movió es necesario hacerle un vale de Solicitud de Materiales en el quese deben mostrar los datos de ese movimiento en específico.

Hice una consulta en Access para que me mostrara los movimientos de salida, es decir los de Tipo S y que el usuario seleccione mediante un navegador el producto movido al que quiere hacerle el Modelo de Solicitud de Materiales.
El Modelo de Solicitud ya lo hice, está hecho en FastReport. Pero hasta el momento no me sale así, logre que me salieran todos los movimientos uno en cada hoja, pero ese no es el objetivo.

Otro problema que surge es que cuando introduzco un nuevo registro en una tabla automáticamente cuando voy al reporte de no carga la información, no es hasta después de reiniciado el proyecto que me carga la información en el reporte.

La Base de Datos está confeccionada en Access, para conectarla con el Delphi utilizo los componentes DataSource y ADOTable. La versión de Delphi utilizada para realizar el Sistema es la 7.

Le quedo inmensamente grata a todos los que terminaron de leer este mensaje, espero que puedan ayudarme y de no ser así no importa les estaré agradecidos de todas formas. Escucho críticas y sugerencias, mientras que sean constructivas bienvenidas sean. Si no supe explicarme bien, díganmelo, entonces tratare de hacerlo lo mejor posible de próxima vez.

Gracias
Saludos de Marilyn
Responder Con Cita