- Notifications
You must be signed in to change notification settings - Fork6
Stock-management desktop app for an electronics company, built with Python, Qt and SQLite. First ever project!
License
ivov/admin-stock
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Stock-management desktop app for an electronics company.
Built with Python, Qt and SQLite. First ever project!
Desktop app for managing a company's stock of electronic components—stored at local and remote sites—through incoming and outgoing operations based on production reports. It relies on a lightweight database, uses modular components and offers various logging and configuration options.
Features:
- Basic CRUD ops for components and product recipes
- Stock calculation for incoming and outgoing ops
- Logs for components, movements and configs
- Storage in SQL and system registry settings
- Reports exported as Excel spreadsheets
- Autocompletion, coloring, filtering
- InstallPython 3.7
- Get package manager:
pip install pipenv
- Clone repo and get dependencies:
pipenv install
- Run:
pipenv run fbs run
The app displays a main table with all components and their four stock levels: total, local atDepósito
and three remotes at assemblers. Secondary tables for logs are available atCuadros secundarios
. Data is read from a db atsrc/main/resources/comp_stock.db
and is summarized inside the status bar at the bottom.
PressIngreso de componentes
and selectIngreso a Depósito
. Enter the packing list number inRemito
, the supplier name inProveedor
and an optional note inNota
. Enter component names and incoming amounts and pressEjecutar
.
Aproduction report is an Excel spreadsheet containing the products to be manufactured, the components needed, the components to be sent to the assembler considering their stock, and the number of components actually sent.
PressInforme de producción
. Enter an identification code inCódigo
(prefixed by the letterK
,B
orT
based on the assembler's initial). Enter product names and production amounts. PressCalcular
to preview the needed components and their total amounts. PressEjecutar
to issue a production report as an Excel spreadsheet into theoutput
directory.
Important: The final column of the production report needs to be filled in by an employee before executing this operation.
PressEgreso de componentes
and selectEgreso a armador
. PressSeleccionar informe...
to select a production report (INFORME DE PRODUCCIÓN
) from theoutput
directory. PressEjecutar
.
For each component listed in the report, the outgoing amount is subtracted from local stock and added to assembler's stock (according to the report prefix). Finally, the amounts needed for production are subtracted from the assembler's stock.
PressEgreso de componentes
and thenEgreso interno
. Enter component names and outgoing amounts and pressEjecutar
.
For the listed components, the outgoing amounts will be subtracted from local stock. Use this function for taking components out of stock for making experimental prototypes or samples for trade shows.
To create a component, PressIngreso de componentes
and selectCrear componente
. Enter the component name and an optional initial amount and pressEjecutar
.
To edit a component, PressIngreso de componentes
and selectEditar componente
. Search for, or double Press, a component. Enter a new name for the component and pressEjecutar
.
To delete a component, PressIngreso de componentes
and selectBorrar componente
. Search for a component and pressEjecutar
.
To view all the details logged for a component, double click on a component name in the main table. PressExportar detalles
to export them as an Excel spreadsheet into theoutput
directory.
Arecipe is a collection of components that make up a product.
To create a recipe, PressRecetas de productos
and selectCrear receta
. Enter the component name and an optional initial amount and pressEjecutar
.
To edit a recipe, PressRecetas de productos
and selectEditar receta
. Search for, or double Press, a component. Enter a new name for the component and pressEjecutar
.
To delete a recipe, PressRecetas de productos
and selectBorrar receta
. Search for a component and pressEjecutar
.
Critical components are those with total stock below a critical amount set by the user.
PressCuadro de inventario
and selectResaltar críticos
. PressAgregar
to add component names and amounts and pressGuardar
to save. Critical components will be colored orange in the main table.
Excluded components are those not included in any product recipe.
PressCuadro de inventario
and selectComponentes excluidos
. To have them colored in yellow in the main table, tick the checkboxResaltar excluidos en amarillo
.
PressCuadro de inventario
and selectExportar datos
to export the main table as an Excel spreadsheet into theoutput
directory.
PressCuadros secundarios
and selectMovimientos
. Filter by time period, movement (incoming or outgoing operation), component name, destination and username. PressBorrar historial
to delete the records. PressExportar historial
to export the records as an Excel spreadsheet into theoutput
directory.
PressCuadros secundarios
and selectConfiguraciones
. Filter by time period, movement (incoming or outgoing operation), component name, destination and username. PressBorrar historial
to delete the records. PressExportar historial
to export the records as an Excel spreadsheet into theoutput
directory.
PressBase de datos
and selectCambiar base
. PressExaminar...
to select a new database and finallyGuardar
.
If the path to the location becomes broken because the database is moved from the directory or deleted, the user will be prompted to select a new location.
PressBase de datos
, selectRespaldar base
and confirm. The backup database will be named like the original database plus the backup execution date and time.
PressBase de datos
, selectEditar usuario
and enter a new name for the user. This username will be reflected in the status bar and in the secondary tablesMovimientos
andConfiguraciones
.
Keys | Action |
---|---|
Alt+1 | Ingreso de componentes toolbutton on left-hand column |
Alt+2 | Informe de producción toolbutton on left-hand column |
Alt+3 | Egreso de componentes toolbutton on left-hand column |
Alt+4 | Recetas de productos toolbutton on left-hand column |
Alt+5 | Base de datos toolbutton on left-hand column |
Alt+[initial] | Action button in modal dialog, based on initial |
Alt+x | Export action button in modal dialog |
© 2019 Iván Ovejero
Distributed under the MIT License. SeeLICENSE.md
About
Stock-management desktop app for an electronics company, built with Python, Qt and SQLite. First ever project!
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Releases
Packages0
Uh oh!
There was an error while loading.Please reload this page.