243 lines
4.6 KiB
Markdown
243 lines
4.6 KiB
Markdown
# List of Values (LOVs) Documentation
|
|
|
|
This document contains all 12 List of Values defined in the APEX application.
|
|
|
|
## Overview
|
|
|
|
| LOV Name | Source Type | Description |
|
|
|----------|-------------|-------------|
|
|
| ARTICOLI | SQL Query | Article selection |
|
|
| CATEGORIE | SQL Query | Category selection |
|
|
| CLIENTI | SQL Query | Client selection |
|
|
| LOCATION | SQL Query | Location selection |
|
|
| RISORSE | SQL Query | Resource (staff) selection |
|
|
| STATO_EVENTO | Static | Event status values |
|
|
| TIPI MAT | SQL Query | Material type selection |
|
|
| TIPI RISORSE | SQL Query | Resource type selection |
|
|
| TIPO_EVENTO | SQL Query | Event type selection |
|
|
| TIPO_OSPITI | SQL Query | Guest type selection |
|
|
| TIPO_PASTO | Static | Meal type values |
|
|
| USERS | SQL Query | User selection |
|
|
|
|
---
|
|
|
|
## ARTICOLI
|
|
|
|
**Source Type:** SQL Query (LEGACY_SQL)
|
|
|
|
**Query:**
|
|
```sql
|
|
select /*a.cod_categ || ' - ' || c.descrizione || ' - ' ||*/ a.DESCRIZIONE as descrizione, a.COD_ARTICOLO
|
|
from articoli a
|
|
join tb_codici_categ c on a.cod_categ = c.cod_categ
|
|
order by 1
|
|
```
|
|
|
|
**Usage:** Selecting articles in pick lists and event details.
|
|
|
|
---
|
|
|
|
## CATEGORIE
|
|
|
|
**Source Type:** SQL Query (LEGACY_SQL)
|
|
|
|
**Query:**
|
|
```sql
|
|
SELECT descrizione as d,
|
|
cod_categ as r
|
|
FROM tb_codici_categ
|
|
ORDER BY 1
|
|
```
|
|
|
|
**Usage:** Filtering articles by category, category selection in forms.
|
|
|
|
---
|
|
|
|
## CLIENTI
|
|
|
|
**Source Type:** SQL Query (LEGACY_SQL)
|
|
|
|
**Query:**
|
|
```sql
|
|
select CLIENTE, ID
|
|
from clienti
|
|
```
|
|
|
|
**Usage:** Client selection in event forms.
|
|
|
|
---
|
|
|
|
## LOCATION
|
|
|
|
**Source Type:** SQL Query (LEGACY_SQL)
|
|
|
|
**Query:**
|
|
```sql
|
|
select location || ' - ' || indirizzo, id
|
|
from location
|
|
```
|
|
|
|
**Usage:** Location selection in event forms. Displays location name with address.
|
|
|
|
---
|
|
|
|
## RISORSE
|
|
|
|
**Source Type:** SQL Query (LEGACY_SQL)
|
|
|
|
**Query:**
|
|
```sql
|
|
select NOME || ' ' || COGNOME d, id r
|
|
from risorse
|
|
```
|
|
|
|
**Usage:** Resource (staff) assignment in events. Displays full name.
|
|
|
|
---
|
|
|
|
## STATO_EVENTO
|
|
|
|
**Source Type:** Static
|
|
|
|
**Values:**
|
|
|
|
| Display Value | Return Value | Sequence |
|
|
|---------------|--------------|----------|
|
|
| Scheda Evento (Preparazione) | 0 | 10 |
|
|
| Preventivo | 10 | 20 |
|
|
| Confermato | 20 | 30 |
|
|
|
|
**Note:** The actual status values in the database have been expanded:
|
|
- 100 = Preventivo
|
|
- 200 = Scheda
|
|
- 300 = Confermata
|
|
- 350 = Quasi Confermato
|
|
- 400 = Confermato
|
|
- 900 = Superato
|
|
|
|
**Usage:** Event status display and selection.
|
|
|
|
---
|
|
|
|
## TIPI MAT
|
|
|
|
**Source Type:** SQL Query (LEGACY_SQL)
|
|
|
|
**Query:**
|
|
```sql
|
|
SELECT descrizione as d,
|
|
cod_tipo as r
|
|
FROM tb_tipi_mat
|
|
ORDER BY 1
|
|
```
|
|
|
|
**Usage:** Material type filtering in pick lists. Controls the step-by-step wizard flow.
|
|
|
|
---
|
|
|
|
## TIPI RISORSE
|
|
|
|
**Source Type:** SQL Query (LEGACY_SQL)
|
|
|
|
**Query:**
|
|
```sql
|
|
select descrizione, cod_tipo
|
|
from tb_tipi_risorsa
|
|
```
|
|
|
|
**Usage:** Resource type classification (camerieri, cuochi, etc.).
|
|
|
|
---
|
|
|
|
## TIPO_EVENTO
|
|
|
|
**Source Type:** SQL Query (LEGACY_SQL)
|
|
|
|
**Query:**
|
|
```sql
|
|
select trim(DESCRIZIONE) || decode(tipo_pasto, 'C', ' - Cena', 'P', ' - Pranzo', null) as d,
|
|
COD_TIPO as r
|
|
from tb_tipi_evento
|
|
```
|
|
|
|
**Usage:** Event type selection. Displays description with meal type indicator (Pranzo/Cena).
|
|
|
|
---
|
|
|
|
## TIPO_OSPITI
|
|
|
|
**Source Type:** SQL Query (LEGACY_SQL)
|
|
|
|
**Query:**
|
|
```sql
|
|
select descrizione as d,
|
|
cod_tipo as r
|
|
from tb_tipi_ospiti
|
|
order by 1
|
|
```
|
|
|
|
**Usage:** Guest type selection in event guest details.
|
|
|
|
---
|
|
|
|
## TIPO_PASTO
|
|
|
|
**Source Type:** Static
|
|
|
|
**Values:**
|
|
|
|
| Display Value | Return Value | Sequence |
|
|
|---------------|--------------|----------|
|
|
| Pranzo | P | 1 |
|
|
| Cena | C | 2 |
|
|
| Pranzo Buffet | A | 3 |
|
|
| Cena Buffet | B | 4 |
|
|
|
|
**Usage:** Meal type classification for events and event types.
|
|
|
|
---
|
|
|
|
## USERS
|
|
|
|
**Source Type:** SQL Query
|
|
|
|
**Query:**
|
|
```sql
|
|
select user_name D, user_name R
|
|
from WWV_FLOW_USERS
|
|
```
|
|
|
|
**Return Column:** R
|
|
**Display Column:** D
|
|
|
|
**Usage:** User selection for permissions and assignments.
|
|
|
|
---
|
|
|
|
## Migration Notes
|
|
|
|
When migrating to React TypeScript:
|
|
|
|
1. **Static LOVs** (STATO_EVENTO, TIPO_PASTO) can be implemented as TypeScript enums or const objects
|
|
2. **SQL-based LOVs** should be converted to API endpoints
|
|
3. Consider caching strategy for frequently used LOVs (CATEGORIE, TIPI MAT, etc.)
|
|
4. TIPO_EVENTO uses Oracle `decode()` function - convert to CASE WHEN or handle in API
|
|
|
|
### Example TypeScript Implementation
|
|
|
|
```typescript
|
|
// Static LOV - TIPO_PASTO
|
|
export const TIPO_PASTO = {
|
|
PRANZO: { value: 'P', label: 'Pranzo' },
|
|
CENA: { value: 'C', label: 'Cena' },
|
|
PRANZO_BUFFET: { value: 'A', label: 'Pranzo Buffet' },
|
|
CENA_BUFFET: { value: 'B', label: 'Cena Buffet' },
|
|
} as const;
|
|
|
|
// Dynamic LOV - API endpoint
|
|
// GET /api/lovs/articoli
|
|
// GET /api/lovs/categorie
|
|
// GET /api/lovs/clienti
|
|
// etc.
|
|
```
|