Agregar README.md
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
b6c553fed3
commit
7efdcce113
1 file changed
+72
@@ -0,0 +1,72 @@
|
||||
# Devolución a Proveedores
|
||||
|
||||
Aplicación web (Angular + NestJS) para SAP Business One que genera **Devoluciones de mercancías**
|
||||
(ORPD) enlazadas a sus **Entradas de mercancías por compra** (OPDN), a partir de un listado de
|
||||
artículos y cantidades pegado desde Excel. Reemplaza al addon .NET anterior.
|
||||
|
||||
## Cómo funciona
|
||||
|
||||
1. **Pegar**: ItemCode + cantidad desde Excel. Se valida contra la **Consignación** del almacén elegido.
|
||||
2. **Procesar**: asignación FIFO contra las líneas abiertas de Entradas de mercancías del almacén,
|
||||
ordenadas por fecha. El usuario marca qué líneas devolver.
|
||||
3. **Crear devoluciones**: agrupa las líneas marcadas por proveedor y crea una Devolución por lote
|
||||
(11 líneas por defecto).
|
||||
4. **Descargar PDF**: pide al web service de BES el PDF de la Guía de despacho (DTE 52) de cada
|
||||
Devolución, con opción de unirlos en uno.
|
||||
|
||||
Cada ejecución (planificación) se guarda en el UDO `LIB_ODEV`. Solo puede haber una planificación
|
||||
abierta a la vez; se cierra a mano.
|
||||
|
||||
## Requisitos
|
||||
|
||||
- Node.js 22 LTS o superior.
|
||||
- SAP Business One con **Service Layer** (`/b1s/v1`), base **HANA** (producción) o **MSSQL** (pruebas).
|
||||
- El usuario de SAP inicia sesión en la web; sus credenciales no se guardan en la configuración.
|
||||
|
||||
## Estructura
|
||||
|
||||
```
|
||||
libs/shared/ @dp/shared tipos y lógica de dominio (parseo de Excel, FIFO)
|
||||
apps/api/ NestJS API REST (/api) sobre el Service Layer; en producción sirve también la web
|
||||
apps/web/ Angular interfaz
|
||||
scripts/ publicar.mjs arma la carpeta de despliegue en release/
|
||||
deploy/windows/ instalación como servicio de Windows (NSSM)
|
||||
```
|
||||
|
||||
## Puesta en marcha (desarrollo)
|
||||
|
||||
```sh
|
||||
npm install
|
||||
cp apps/api/.env.example apps/api/.env # completar SL_URL, SL_COMPANY_DB y DB_TYPE
|
||||
npm run dev:api # API NestJS (puerto PORT del .env)
|
||||
npm run dev:web # Angular en http://localhost:4215 (proxy /api → API)
|
||||
```
|
||||
|
||||
Variables principales del `.env`: `PORT`, `SL_URL`, `SL_COMPANY_DB`, `SL_REJECT_UNAUTHORIZED`,
|
||||
`DB_TYPE` (`HANA`/`MSSQL`) y `COOKIE_SECURE`. Para producción con HTTPS: `HTTPS_PFX_PATH` y
|
||||
`HTTPS_PFX_PASSPHRASE` (o `HTTPS_KEY_PATH`/`HTTPS_CERT_PATH`) y `HTTP_REDIRECT_PORT`.
|
||||
Ver `apps/api/.env.example`.
|
||||
|
||||
En el primer ingreso, **Configuración → Metadatos → Reconstruir** crea las tablas, los campos y
|
||||
el UDO necesarios en SAP.
|
||||
|
||||
## Pruebas y compilación
|
||||
|
||||
```sh
|
||||
npm test # shared + api + web
|
||||
npm run test:e2e -w api
|
||||
npm run lint -w api
|
||||
npm run build
|
||||
```
|
||||
|
||||
## Versiones y despliegue
|
||||
|
||||
La versión es el `version` del `package.json` raíz (SemVer); cada release lleva un tag `vX.Y.Z`.
|
||||
|
||||
```sh
|
||||
npm run version:parche # o version:menor / version:mayor
|
||||
npm run publicar # genera release/devolucion-proveedores/
|
||||
```
|
||||
|
||||
La aplicación se instala en Windows como un único servicio (NSSM) con HTTPS directo en Node.
|
||||
Guía completa: [`deploy/windows/DEPLOY.md`](deploy/windows/DEPLOY.md).
|
||||
Reference in new issue
Block a user