extracted objects
This commit is contained in:
14
docs/views/GET_CONSUNTIVI_USERS.md
Normal file
14
docs/views/GET_CONSUNTIVI_USERS.md
Normal file
@@ -0,0 +1,14 @@
|
||||
# GET_CONSUNTIVI_USERS
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| USERS | VARCHAR2(4000) |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW GET_CONSUNTIVI_USERS AS
|
||||
select result as users from table(string_to_table_enum(get_param_value('PERMES_CONSUNTIVI'), 0, ':'))
|
||||
```
|
||||
53
docs/views/GET_COSTO_ART_BY_EVT.md
Normal file
53
docs/views/GET_COSTO_ART_BY_EVT.md
Normal file
@@ -0,0 +1,53 @@
|
||||
# GET_COSTO_ART_BY_EVT
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| ID_EVENTO | NUMBER |
|
||||
| COD_ARTICOLO | VARCHAR2(10) |
|
||||
| COSTO_UNI | NUMBER |
|
||||
| NUMERO | NUMBER |
|
||||
| COSTO_CALC | NUMBER |
|
||||
| COSTO_CALC_IVA | NUMBER |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW GET_COSTO_ART_BY_EVT AS
|
||||
SELECT p.id_evento, ca.COD_ARTICOLO, nvl(p.COSTO_ARTICOLO, ca.costo_uni) as costo_uni,
|
||||
(
|
||||
case when a.flg_qta_type = 'S' then nvl(qta_std_prel_tot, 0) else 1 end
|
||||
*
|
||||
case when a.flg_qta_type = 'C' then nvl(qta_coeff_prel_tot, 0) else 1 end
|
||||
*
|
||||
case when a.flg_qta_type = 'P' then nvl(qta_prec_prel_tot, 0) else 1 end
|
||||
) as numero,
|
||||
NVL(p.COSTO_ARTICOLO, ca.COSTO_UNI)
|
||||
*
|
||||
(
|
||||
case when a.flg_qta_type = 'S' then nvl(qta_std_prel_tot, 0) else 1 end
|
||||
*
|
||||
case when a.flg_qta_type = 'C' then nvl(qta_coeff_prel_tot, 0) else 1 end
|
||||
*
|
||||
case when a.flg_qta_type = 'P' then nvl(qta_prec_prel_tot, 0) else 1 end
|
||||
) as costo_calc,
|
||||
(NVL(p.COSTO_ARTICOLO, ca.COSTO_UNI)+NVL(p.COSTO_ARTICOLO, ca.COSTO_UNI)*(a.perc_iva/100))
|
||||
*
|
||||
(
|
||||
case when a.flg_qta_type = 'S' then nvl(qta_std_prel_tot, 0) else 1 end
|
||||
*
|
||||
case when a.flg_qta_type = 'C' then nvl(qta_coeff_prel_tot, 0) else 1 end
|
||||
*
|
||||
case when a.flg_qta_type = 'P' then nvl(qta_prec_prel_tot, 0) else 1 end
|
||||
)
|
||||
as costo_calc_iva
|
||||
FROM ARTICOLI a
|
||||
left JOIN COSTI_ARTICOLI ca ON a.COD_ARTICOLO = ca.COD_ARTICOLO
|
||||
left join get_prel_art_tot p on a.cod_articolo = p.cod_articolo
|
||||
left join eventi ed on ed.id = p.id_evento
|
||||
left join eventi e on e.id = p.id_evento and e.data in (SELECT b.DATA_COSTO FROM COSTI_ARTICOLI b where b.cod_articolo = a.cod_articolo)
|
||||
left join EVENTI_DET_OSPITI d on d.id_evento = nvl(e.id, ed.id) and d.cod_tipo_ospite = 8 -- adulti (se non trovo un evento per quel costo articolo lo devo ignorare)
|
||||
WHERE (e.id is not null and ca.DATA_COSTO = nvl(e.data, (SELECT max(b.DATA_COSTO) FROM COSTI_ARTICOLI b where b.cod_articolo = a.cod_articolo)))
|
||||
or (e.id is null and ca.cod_articolo is not null and ca.DATA_COSTO = nvl(e.data, (SELECT max(b.DATA_COSTO) FROM COSTI_ARTICOLI b where b.cod_articolo = a.cod_articolo)))
|
||||
```
|
||||
32
docs/views/GET_COSTO_ART_EVT.md
Normal file
32
docs/views/GET_COSTO_ART_EVT.md
Normal file
@@ -0,0 +1,32 @@
|
||||
# GET_COSTO_ART_EVT
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| ID_EVENTO | NUMBER |
|
||||
| COD_ARTICOLO | VARCHAR2(10) |
|
||||
| NUMERO | NUMBER |
|
||||
| COSTO_UNI | NUMBER |
|
||||
| COSTO | NUMBER |
|
||||
| COSTO_IVATO | NUMBER |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW GET_COSTO_ART_EVT AS
|
||||
SELECT
|
||||
edp.ID_EVENTO,
|
||||
a.COD_ARTICOLO,
|
||||
sum(ca.numero) as numero,
|
||||
sum(ca.costo_uni) as costo_uni,
|
||||
SUM(ca.costo_calc) AS costo,
|
||||
SUM(ca.costo_calc_iva) AS costo_ivato
|
||||
FROM EVENTI e
|
||||
join EVENTI_DET_OSPITI edoa on edoa.id_evento = e.id and edoa.cod_tipo_ospite = 8 -- adulti
|
||||
JOIN EVENTI_DET_PREL edp ON edp.ID_EVENTO = e.ID
|
||||
JOIN ARTICOLI a ON a.COD_ARTICOLO = edp.COD_ARTICOLO
|
||||
LEFT JOIN GET_COSTO_ART_BY_EVT ca ON ca.COD_ARTICOLO = a.COD_ARTICOLO AND ca.id_evento = e.id
|
||||
LEFT JOIN GET_ULTIMI_COSTI guc ON guc.COD_ARTICOLO = a.COD_ARTICOLO
|
||||
GROUP BY edp.ID_EVENTO, a.COD_ARTICOLO
|
||||
```
|
||||
35
docs/views/GET_COSTO_CATEG_EVT.md
Normal file
35
docs/views/GET_COSTO_CATEG_EVT.md
Normal file
@@ -0,0 +1,35 @@
|
||||
# GET_COSTO_CATEG_EVT
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| ID_EVENTO | NUMBER |
|
||||
| COD_CATEG | VARCHAR2(10) |
|
||||
| NUMERO | NUMBER |
|
||||
| COSTO_UNI | NUMBER |
|
||||
| COSTO | NUMBER |
|
||||
| COSTO_IVATO | NUMBER |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW GET_COSTO_CATEG_EVT AS
|
||||
SELECT
|
||||
edp.ID_EVENTO,
|
||||
tcc.COD_CATEG,
|
||||
sum(ca.numero) as numero,
|
||||
sum(ca.costo_uni) as costo_uni,
|
||||
SUM(ca.costo_calc) AS costo,
|
||||
SUM(ca.costo_calc_iva) AS costo_ivato
|
||||
FROM EVENTI e
|
||||
join EVENTI_DET_OSPITI edoa on edoa.id_evento = e.id and edoa.cod_tipo_ospite = 8 -- adulti
|
||||
JOIN EVENTI_DET_PREL edp ON edp.ID_EVENTO = e.ID
|
||||
JOIN ARTICOLI a ON a.COD_ARTICOLO = edp.COD_ARTICOLO
|
||||
JOIN TB_CODICI_CATEG tcc ON tcc.COD_CATEG = a.COD_CATEG
|
||||
JOIN TB_TIPI_MAT ttm ON ttm.COD_TIPO = tcc.COD_TIPO
|
||||
LEFT JOIN GET_COSTO_ART_BY_EVT ca ON ca.COD_ARTICOLO = a.COD_ARTICOLO AND ca.id_evento = e.id
|
||||
LEFT JOIN GET_ULTIMI_COSTI guc ON guc.COD_ARTICOLO = a.COD_ARTICOLO
|
||||
WHERE ttm.COD_TIPO = 'SP'
|
||||
GROUP BY edp.ID_EVENTO, tcc.COD_CATEG
|
||||
```
|
||||
30
docs/views/GET_COSTO_DEGUS_EVT.md
Normal file
30
docs/views/GET_COSTO_DEGUS_EVT.md
Normal file
@@ -0,0 +1,30 @@
|
||||
# GET_COSTO_DEGUS_EVT
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| ID_EVENTO | NUMBER |
|
||||
| COSTO | NUMBER |
|
||||
| NUMERO | NUMBER |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW GET_COSTO_DEGUS_EVT AS
|
||||
select "ID_EVENTO","COSTO","NUMERO" from (
|
||||
SELECT
|
||||
edd.ID_EVENTO,
|
||||
--SUM(nvl(n_paganti, 0)*NVL(edd.COSTO_DEGUSTAZIONE, 0)) AS costo,
|
||||
--sum(nvl(n_paganti, 0)) as numero
|
||||
SUM(2*NVL(edd.COSTO_DEGUSTAZIONE, 0)) AS costo,
|
||||
sum(2) as numero
|
||||
FROM EVENTI e
|
||||
JOIN EVENTI_DET_DEGUST edd ON edd.ID_EVENTO = e.ID
|
||||
JOIN TB_TIPI_MAT ttm ON ttm.COD_TIPO = 'DEGUS'
|
||||
WHERE ttm.COD_TIPO = 'DEGUS'
|
||||
and edd.detraibile = 1
|
||||
GROUP BY edd.ID_EVENTO
|
||||
)
|
||||
where costo > 0
|
||||
```
|
||||
18
docs/views/GET_COSTO_OSPITI_EVT.md
Normal file
18
docs/views/GET_COSTO_OSPITI_EVT.md
Normal file
@@ -0,0 +1,18 @@
|
||||
# GET_COSTO_OSPITI_EVT
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| ID_EVENTO | NUMBER |
|
||||
| NUMERO | NUMBER |
|
||||
| COSTO | NUMBER |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW GET_COSTO_OSPITI_EVT AS
|
||||
SELECT edr.ID_EVENTO, sum(edr.numero) as numero, SUM(edr.numero * (edr.COSTO - (edr.COSTO*(edr.sconto/100)))) AS costo
|
||||
FROM EVENTI_DET_OSPITI edr
|
||||
GROUP BY edr.ID_EVENTO
|
||||
```
|
||||
17
docs/views/GET_COSTO_RIS_EVT.md
Normal file
17
docs/views/GET_COSTO_RIS_EVT.md
Normal file
@@ -0,0 +1,17 @@
|
||||
# GET_COSTO_RIS_EVT
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| ID_EVENTO | NUMBER |
|
||||
| COSTO | NUMBER |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW GET_COSTO_RIS_EVT AS
|
||||
SELECT edr.ID_EVENTO, SUM(edr.COSTO) AS costo
|
||||
FROM EVENTI_DET_RIS edr
|
||||
GROUP BY edr.ID_EVENTO
|
||||
```
|
||||
34
docs/views/GET_COSTO_TIPI_EVT.md
Normal file
34
docs/views/GET_COSTO_TIPI_EVT.md
Normal file
@@ -0,0 +1,34 @@
|
||||
# GET_COSTO_TIPI_EVT
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| ID_EVENTO | NUMBER |
|
||||
| COD_TIPO | VARCHAR2(10) |
|
||||
| NUMERO | NUMBER |
|
||||
| COSTO_UNI | NUMBER |
|
||||
| COSTO | NUMBER |
|
||||
| COSTO_IVATO | NUMBER |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW GET_COSTO_TIPI_EVT AS
|
||||
SELECT
|
||||
edp.ID_EVENTO,
|
||||
ttm.COD_TIPO,
|
||||
sum(ca.numero) as numero,
|
||||
sum(ca.costo_uni) as costo_uni,
|
||||
SUM(ca.costo_calc) AS costo,
|
||||
SUM(ca.costo_calc_iva) AS costo_ivato
|
||||
FROM EVENTI e
|
||||
join EVENTI_DET_OSPITI edoa on edoa.id_evento = e.id and edoa.cod_tipo_ospite = 8 -- adulti
|
||||
JOIN EVENTI_DET_PREL edp ON edp.ID_EVENTO = e.ID
|
||||
JOIN ARTICOLI a ON a.COD_ARTICOLO = edp.COD_ARTICOLO
|
||||
JOIN TB_CODICI_CATEG tcc ON tcc.COD_CATEG = a.COD_CATEG
|
||||
JOIN TB_TIPI_MAT ttm ON ttm.COD_TIPO = tcc.COD_TIPO
|
||||
LEFT JOIN GET_COSTO_ART_BY_EVT ca ON ca.COD_ARTICOLO = a.COD_ARTICOLO AND ca.id_evento = e.id
|
||||
LEFT JOIN GET_ULTIMI_COSTI guc ON guc.COD_ARTICOLO = a.COD_ARTICOLO
|
||||
GROUP BY edp.ID_EVENTO, ttm.COD_TIPO
|
||||
```
|
||||
76
docs/views/GET_EVENTI_DA_PAGARE_ENTRO_65GG.md
Normal file
76
docs/views/GET_EVENTI_DA_PAGARE_ENTRO_65GG.md
Normal file
@@ -0,0 +1,76 @@
|
||||
# GET_EVENTI_DA_PAGARE_ENTRO_65GG
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| ID | NUMBER |
|
||||
| CLIENTE | VARCHAR2(100) |
|
||||
| DATA | DATE |
|
||||
| LOCATION | VARCHAR2(200) |
|
||||
| DESCRIZIONE_TIPO_EVENTO | VARCHAR2(100) |
|
||||
| STATO | NUMBER |
|
||||
| TOTALE_CAPARRE_DOVUTE | NUMBER |
|
||||
| TOTALE_VERSATO | NUMBER |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW GET_EVENTI_DA_PAGARE_ENTRO_65GG AS
|
||||
SELECT
|
||||
e.ID,
|
||||
e.CLIENTE,
|
||||
e.DATA,
|
||||
loc.LOCATION, -- Campo aggiornato per mostrare il nome della location
|
||||
te.DESCRIZIONE AS DESCRIZIONE_TIPO_EVENTO,
|
||||
e.STATO,
|
||||
NVL(caparre.TOTALE_DOVUTO, 0) AS TOTALE_CAPARRE_DOVUTE,
|
||||
NVL(pagamenti.TOTALE_PAGATO, 0) AS TOTALE_VERSATO
|
||||
FROM
|
||||
EVENTI e
|
||||
LEFT JOIN
|
||||
TB_TIPI_EVENTO te ON e.COD_TIPO = te.COD_TIPO
|
||||
LEFT JOIN
|
||||
LOCATION loc ON e.ID_LOCATION = loc.ID -- JOIN aggiunta per la tabella LOCATION
|
||||
LEFT JOIN
|
||||
(
|
||||
-- Calcola il totale dovuto per la prima e seconda caparra (importi positivi)
|
||||
SELECT
|
||||
ID_EVENTO,
|
||||
SUM(ACCONTO) AS TOTALE_DOVUTO
|
||||
FROM
|
||||
EVENTI_ACCONTI
|
||||
WHERE
|
||||
ORDINE IN (10, 20)
|
||||
GROUP BY
|
||||
ID_EVENTO
|
||||
) caparre ON e.ID = caparre.ID_EVENTO
|
||||
LEFT JOIN
|
||||
(
|
||||
-- Calcola il totale versato, invertendo il segno della somma (gli importi sono negativi)
|
||||
SELECT
|
||||
ID_EVENTO,
|
||||
SUM(ACCONTO) * -1 AS TOTALE_PAGATO
|
||||
FROM
|
||||
EVENTI_ACCONTI
|
||||
WHERE
|
||||
ORDINE >= 1000
|
||||
GROUP BY
|
||||
ID_EVENTO
|
||||
) pagamenti ON e.ID = pagamenti.ID_EVENTO
|
||||
WHERE
|
||||
-- Lo stato deve essere 'Scheda Confermata'
|
||||
e.STATO = 300
|
||||
-- Filtra per eventi futuri entro 65 giorni
|
||||
AND e.DATA BETWEEN SYSDATE AND SYSDATE + 65
|
||||
|
||||
-- ====================================================================================
|
||||
-- CONDIZIONE DI PAGAMENTO CON TOLLERANZA
|
||||
AND NVL(pagamenti.TOTALE_PAGATO, 0) < (NVL(caparre.TOTALE_DOVUTO, 0) * (1 - /* TOLLERANZA */ 10 /* % */ / 100))
|
||||
-- ====================================================================================
|
||||
|
||||
-- Assicuriamoci di considerare solo eventi per cui è richiesta almeno una caparra
|
||||
AND caparre.TOTALE_DOVUTO IS NOT NULL AND caparre.TOTALE_DOVUTO > 0
|
||||
ORDER BY
|
||||
e.DATA
|
||||
```
|
||||
182
docs/views/GET_EVT_DATA.md
Normal file
182
docs/views/GET_EVT_DATA.md
Normal file
@@ -0,0 +1,182 @@
|
||||
# GET_EVT_DATA
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| ID | NUMBER |
|
||||
| DESCRIZIONE | VARCHAR2(4000) |
|
||||
| COD_TIPO | VARCHAR2(10) |
|
||||
| CLIENTE | VARCHAR2(100) |
|
||||
| INDIRIZZO | VARCHAR2(200) |
|
||||
| DATA | DATE |
|
||||
| DATA_CHAR | VARCHAR2(10) |
|
||||
| TOT_OSPITI | NUMBER |
|
||||
| STATO | NUMBER |
|
||||
| TORTA_A | VARCHAR2(4000) |
|
||||
| NOTE | VARCHAR2(4000) |
|
||||
| DATA_DOC | DATE |
|
||||
| APX_USER | VARCHAR2(20) |
|
||||
| ID_CLIENTE | NUMBER |
|
||||
| ID_LOCATION | NUMBER |
|
||||
| FLG_TEMPLATE | NUMBER |
|
||||
| ORA_CERIMONIA | DATE |
|
||||
| ORA_EVENTO | DATE |
|
||||
| PERC_SEDUTE_APER | NUMBER |
|
||||
| CONFETTATA_A | VARCHAR2(4000) |
|
||||
| STAMPA_MENU | VARCHAR2(100) |
|
||||
| ALLERGIE | VARCHAR2(4000) |
|
||||
| EXTRA_INFO | VARCHAR2(1000) |
|
||||
| EXTRA_COSTI | VARCHAR2(1000) |
|
||||
| NUM_LISTA | NUMBER |
|
||||
| DISTANZA_LOCATION | VARCHAR2(1000) |
|
||||
| PRIMI | VARCHAR2(4000) |
|
||||
| SECONDI | VARCHAR2(4000) |
|
||||
| VINI | VARCHAR2(4000) |
|
||||
| CARICOSPOSI | VARCHAR2(4000) |
|
||||
| CARICOAPOLL | VARCHAR2(4000) |
|
||||
| STILE_COLORI | VARCHAR2(255) |
|
||||
| ALLEST_BUFF | VARCHAR2(4000) |
|
||||
| GIRO_BRACCIO | VARCHAR2(255) |
|
||||
| GRAN_BUFFET_A | VARCHAR2(4000) |
|
||||
| SERVIZIO_TAVOLO_A | VARCHAR2(4000) |
|
||||
| BUFFET_DOLCI_A | VARCHAR2(4000) |
|
||||
| CLIENTE_TEL | VARCHAR2(255) |
|
||||
| CLIENTE_EMAIL | VARCHAR2(255) |
|
||||
| REFERENTE_TEL | VARCHAR2(255) |
|
||||
| BUFFET_INIZIALE | VARCHAR2(4000) |
|
||||
| BUFFET_FINALE | VARCHAR2(4000) |
|
||||
| TIPOL_TAV_SPOSI | VARCHAR2(255) |
|
||||
| TIPOL_TAV_OSPITI | VARCHAR2(255) |
|
||||
| SEDIA | VARCHAR2(255) |
|
||||
| TOVAGLIA | VARCHAR2(255) |
|
||||
| TOVAGLIOLO | VARCHAR2(255) |
|
||||
| RUNNER | VARCHAR2(255) |
|
||||
| SOTTOPIATTI | VARCHAR2(255) |
|
||||
| PIATTINO_PANE | VARCHAR2(255) |
|
||||
| POSATE | VARCHAR2(255) |
|
||||
| BICCHIERI | VARCHAR2(255) |
|
||||
| NUM_FLORIST | VARCHAR2(255) |
|
||||
| NUM_MUSICISTI | VARCHAR2(255) |
|
||||
| NUM_FOTOGRAFI | VARCHAR2(255) |
|
||||
| NUM_ALTRI | VARCHAR2(4000) |
|
||||
| BUFFET | VARCHAR2(255) |
|
||||
| BUFFET_SEDIE | VARCHAR2(255) |
|
||||
| BUFFET_TAVOLI | VARCHAR2(255) |
|
||||
| CONFETTATA_B | VARCHAR2(4000) |
|
||||
| GRAN_BUFFET_B | VARCHAR2(4000) |
|
||||
| SERVIZIO_TAVOLO_B | VARCHAR2(4000) |
|
||||
| BUFFET_DOLCI_B | VARCHAR2(4000) |
|
||||
| TORTA_B | VARCHAR2(4000) |
|
||||
| TORTA | VARCHAR2(4000) |
|
||||
| CONFETTATA | VARCHAR2(4000) |
|
||||
| ALTRO | VARCHAR2(4000) |
|
||||
| FLG_SUPERATO | NUMBER |
|
||||
| DATA_SCAD_PREVENTIVO | DATE |
|
||||
| PIATTI | VARCHAR2(4000) |
|
||||
| NOTE_INVIO | VARCHAR2(1000) |
|
||||
| PRE_BOUV_A | VARCHAR2(4000) |
|
||||
| PRE_BOUV_B | VARCHAR2(4000) |
|
||||
| ALTRO_A | VARCHAR2(4000) |
|
||||
| ALTRO_B | VARCHAR2(4000) |
|
||||
| DATORASCARICO | DATE |
|
||||
| DATORASCARICO_NOTE | VARCHAR2(4000) |
|
||||
| IS_TEMPLATE | NUMBER |
|
||||
| ID_EVT_PADRE | NUMBER |
|
||||
| ID_EVT_FIGLIO | NUMBER |
|
||||
| LOCATION | VARCHAR2(200) |
|
||||
| TIPO_PASTO | VARCHAR2(6) |
|
||||
| DESCRIZIONE_TIPO | VARCHAR2(100) |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW GET_EVT_DATA AS
|
||||
select
|
||||
e.ID,
|
||||
e.DESCRIZIONE,
|
||||
e.COD_TIPO,
|
||||
e.CLIENTE,
|
||||
e.INDIRIZZO,
|
||||
e.data,
|
||||
to_char(e.DATA, 'dd-mm-yyyy') as data_char,
|
||||
e.TOT_OSPITI,
|
||||
e.STATO,
|
||||
e.TORTA_A,
|
||||
e.NOTE,
|
||||
e.DATA_DOC,
|
||||
e.APX_USER,
|
||||
e.ID_CLIENTE,
|
||||
e.ID_LOCATION,
|
||||
e.FLG_TEMPLATE,
|
||||
e.ORA_CERIMONIA,
|
||||
e.ORA_EVENTO,
|
||||
e.PERC_SEDUTE_APER,
|
||||
e.CONFETTATA_A,
|
||||
e.STAMPA_MENU,
|
||||
e.ALLERGIE,
|
||||
e.EXTRA_INFO,
|
||||
e.EXTRA_COSTI,
|
||||
e.NUM_LISTA,
|
||||
e.DISTANZA_LOCATION,
|
||||
e.PRIMI,
|
||||
e.SECONDI,
|
||||
e.VINI,
|
||||
e.CARICOSPOSI,
|
||||
e.CARICOAPOLL,
|
||||
e.STILE_COLORI,
|
||||
e.ALLEST_BUFF,
|
||||
e.GIRO_BRACCIO,
|
||||
e.GRAN_BUFFET_A,
|
||||
e.SERVIZIO_TAVOLO_A,
|
||||
e.BUFFET_DOLCI_A,
|
||||
e.CLIENTE_TEL,
|
||||
e.CLIENTE_EMAIL,
|
||||
e.REFERENTE_TEL,
|
||||
e.BUFFET_INIZIALE,
|
||||
e.BUFFET_FINALE,
|
||||
e.TIPOL_TAV_SPOSI,
|
||||
e.TIPOL_TAV_OSPITI,
|
||||
e.SEDIA,
|
||||
e.TOVAGLIA,
|
||||
e.TOVAGLIOLO,
|
||||
e.RUNNER,
|
||||
e.SOTTOPIATTI,
|
||||
e.PIATTINO_PANE,
|
||||
e.POSATE,
|
||||
e.BICCHIERI,
|
||||
e.NUM_FLORIST,
|
||||
e.NUM_MUSICISTI,
|
||||
e.NUM_FOTOGRAFI,
|
||||
e.NUM_ALTRI,
|
||||
e.BUFFET,
|
||||
e.BUFFET_SEDIE,
|
||||
e.BUFFET_TAVOLI,
|
||||
e.CONFETTATA_B,
|
||||
e.GRAN_BUFFET_B,
|
||||
e.SERVIZIO_TAVOLO_B,
|
||||
e.BUFFET_DOLCI_B,
|
||||
e.TORTA_B,
|
||||
e.TORTA,
|
||||
e.CONFETTATA,
|
||||
e.ALTRO,
|
||||
e.FLG_SUPERATO,
|
||||
e.DATA_SCAD_PREVENTIVO,
|
||||
e.PIATTI,
|
||||
e.NOTE_INVIO,
|
||||
e.PRE_BOUV_A,
|
||||
e.PRE_BOUV_B,
|
||||
e.ALTRO_A,
|
||||
e.ALTRO_B,
|
||||
e.DATORASCARICO,
|
||||
e.DATORASCARICO_NOTE,
|
||||
e.IS_TEMPLATE,
|
||||
e.ID_EVT_PADRE,
|
||||
e.ID_EVT_FIGLIO,
|
||||
l.location,
|
||||
decode(p.tipo_pasto, 'C', 'Cena', 'P', 'Pranzo', 'Altro') as tipo_pasto,
|
||||
p.descrizione as descrizione_tipo
|
||||
from eventi e
|
||||
left join location l on e.id_location = l.id
|
||||
left join tb_tipi_evento p on p.cod_tipo = e.cod_tipo
|
||||
```
|
||||
106
docs/views/GET_EVT_DATA_PRINT.md
Normal file
106
docs/views/GET_EVT_DATA_PRINT.md
Normal file
@@ -0,0 +1,106 @@
|
||||
# GET_EVT_DATA_PRINT
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| ID | NUMBER |
|
||||
| DESCRIZIONE | VARCHAR2(4000) |
|
||||
| COD_TIPO | VARCHAR2(10) |
|
||||
| CLIENTE | VARCHAR2(100) |
|
||||
| INDIRIZZO | VARCHAR2(200) |
|
||||
| DATA | DATE |
|
||||
| DATA_CHAR | VARCHAR2(10) |
|
||||
| TOT_OSPITI | NUMBER |
|
||||
| STATO | NUMBER |
|
||||
| TORTA_A | VARCHAR2(4000) |
|
||||
| NOTE | VARCHAR2(4000) |
|
||||
| DATA_DOC | DATE |
|
||||
| APX_USER | VARCHAR2(20) |
|
||||
| ID_CLIENTE | NUMBER |
|
||||
| ID_LOCATION | NUMBER |
|
||||
| FLG_TEMPLATE | NUMBER |
|
||||
| ORA_CERIMONIA | DATE |
|
||||
| ORA_EVENTO | DATE |
|
||||
| PERC_SEDUTE_APER | NUMBER |
|
||||
| CONFETTATA_A | VARCHAR2(4000) |
|
||||
| STAMPA_MENU | VARCHAR2(100) |
|
||||
| ALLERGIE | VARCHAR2(4000) |
|
||||
| EXTRA_INFO | VARCHAR2(1000) |
|
||||
| EXTRA_COSTI | VARCHAR2(1000) |
|
||||
| NUM_LISTA | NUMBER |
|
||||
| DISTANZA_LOCATION | VARCHAR2(1000) |
|
||||
| PRIMI | VARCHAR2(4000) |
|
||||
| SECONDI | VARCHAR2(4000) |
|
||||
| VINI | VARCHAR2(4000) |
|
||||
| CARICOSPOSI | VARCHAR2(4000) |
|
||||
| CARICOAPOLL | VARCHAR2(4000) |
|
||||
| STILE_COLORI | VARCHAR2(255) |
|
||||
| ALLEST_BUFF | VARCHAR2(4000) |
|
||||
| GIRO_BRACCIO | VARCHAR2(255) |
|
||||
| GRAN_BUFFET_A | VARCHAR2(4000) |
|
||||
| SERVIZIO_TAVOLO_A | VARCHAR2(4000) |
|
||||
| BUFFET_DOLCI_A | VARCHAR2(4000) |
|
||||
| CLIENTE_TEL | VARCHAR2(255) |
|
||||
| CLIENTE_EMAIL | VARCHAR2(255) |
|
||||
| REFERENTE_TEL | VARCHAR2(255) |
|
||||
| BUFFET_INIZIALE | VARCHAR2(4000) |
|
||||
| BUFFET_FINALE | VARCHAR2(4000) |
|
||||
| TIPOL_TAV_SPOSI | VARCHAR2(255) |
|
||||
| TIPOL_TAV_OSPITI | VARCHAR2(255) |
|
||||
| SEDIA | VARCHAR2(255) |
|
||||
| TOVAGLIA | VARCHAR2(255) |
|
||||
| TOVAGLIOLO | VARCHAR2(255) |
|
||||
| RUNNER | VARCHAR2(255) |
|
||||
| SOTTOPIATTI | VARCHAR2(255) |
|
||||
| PIATTINO_PANE | VARCHAR2(255) |
|
||||
| POSATE | VARCHAR2(255) |
|
||||
| BICCHIERI | VARCHAR2(255) |
|
||||
| NUM_FLORIST | VARCHAR2(255) |
|
||||
| NUM_MUSICISTI | VARCHAR2(255) |
|
||||
| NUM_FOTOGRAFI | VARCHAR2(255) |
|
||||
| NUM_ALTRI | VARCHAR2(4000) |
|
||||
| BUFFET | VARCHAR2(255) |
|
||||
| BUFFET_SEDIE | VARCHAR2(255) |
|
||||
| BUFFET_TAVOLI | VARCHAR2(255) |
|
||||
| CONFETTATA_B | VARCHAR2(4000) |
|
||||
| GRAN_BUFFET_B | VARCHAR2(4000) |
|
||||
| SERVIZIO_TAVOLO_B | VARCHAR2(4000) |
|
||||
| BUFFET_DOLCI_B | VARCHAR2(4000) |
|
||||
| TORTA_B | VARCHAR2(4000) |
|
||||
| TORTA | VARCHAR2(4000) |
|
||||
| CONFETTATA | VARCHAR2(4000) |
|
||||
| ALTRO | VARCHAR2(4000) |
|
||||
| FLG_SUPERATO | NUMBER |
|
||||
| DATA_SCAD_PREVENTIVO | DATE |
|
||||
| PIATTI | VARCHAR2(4000) |
|
||||
| NOTE_INVIO | VARCHAR2(1000) |
|
||||
| PRE_BOUV_A | VARCHAR2(4000) |
|
||||
| PRE_BOUV_B | VARCHAR2(4000) |
|
||||
| ALTRO_A | VARCHAR2(4000) |
|
||||
| ALTRO_B | VARCHAR2(4000) |
|
||||
| DATORASCARICO | DATE |
|
||||
| DATORASCARICO_NOTE | VARCHAR2(4000) |
|
||||
| IS_TEMPLATE | NUMBER |
|
||||
| ID_EVT_PADRE | NUMBER |
|
||||
| ID_EVT_FIGLIO | NUMBER |
|
||||
| LOCATION | VARCHAR2(200) |
|
||||
| TIPO_PASTO | VARCHAR2(6) |
|
||||
| DESCRIZIONE_TIPO | VARCHAR2(100) |
|
||||
| PRELIEVO_ANGOLI_INIZIALI | VARCHAR2(4000) |
|
||||
| PRELIEVO_ANGOLI_FINALI | VARCHAR2(4000) |
|
||||
| PRELIEVO_SERVIZIO_TAVOLA | VARCHAR2(4000) |
|
||||
| PRELIEVO_VINI | VARCHAR2(4000) |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW GET_EVT_DATA_PRINT AS
|
||||
select e."ID",e."DESCRIZIONE",e."COD_TIPO",e."CLIENTE",e."INDIRIZZO",e."DATA",e."DATA_CHAR",e."TOT_OSPITI",e."STATO",e."TORTA_A",e."NOTE",e."DATA_DOC",e."APX_USER",e."ID_CLIENTE",e."ID_LOCATION",e."FLG_TEMPLATE",e."ORA_CERIMONIA",e."ORA_EVENTO",e."PERC_SEDUTE_APER",e."CONFETTATA_A",e."STAMPA_MENU",e."ALLERGIE",e."EXTRA_INFO",e."EXTRA_COSTI",e."NUM_LISTA",e."DISTANZA_LOCATION",e."PRIMI",e."SECONDI",e."VINI",e."CARICOSPOSI",e."CARICOAPOLL",e."STILE_COLORI",e."ALLEST_BUFF",e."GIRO_BRACCIO",e."GRAN_BUFFET_A",e."SERVIZIO_TAVOLO_A",e."BUFFET_DOLCI_A",e."CLIENTE_TEL",e."CLIENTE_EMAIL",e."REFERENTE_TEL",e."BUFFET_INIZIALE",e."BUFFET_FINALE",e."TIPOL_TAV_SPOSI",e."TIPOL_TAV_OSPITI",e."SEDIA",e."TOVAGLIA",e."TOVAGLIOLO",e."RUNNER",e."SOTTOPIATTI",e."PIATTINO_PANE",e."POSATE",e."BICCHIERI",e."NUM_FLORIST",e."NUM_MUSICISTI",e."NUM_FOTOGRAFI",e."NUM_ALTRI",e."BUFFET",e."BUFFET_SEDIE",e."BUFFET_TAVOLI",e."CONFETTATA_B",e."GRAN_BUFFET_B",e."SERVIZIO_TAVOLO_B",e."BUFFET_DOLCI_B",e."TORTA_B",e."TORTA",e."CONFETTATA",e."ALTRO",e."FLG_SUPERATO",e."DATA_SCAD_PREVENTIVO",e."PIATTI",e."NOTE_INVIO",e."PRE_BOUV_A",e."PRE_BOUV_B",e."ALTRO_A",e."ALTRO_B",e."DATORASCARICO",e."DATORASCARICO_NOTE",e."IS_TEMPLATE",e."ID_EVT_PADRE",e."ID_EVT_FIGLIO",e."LOCATION",e."TIPO_PASTO",e."DESCRIZIONE_TIPO",
|
||||
(select LISTAGG('• ' || g.descrizione_articolo, chr(13)) WITHIN GROUP (ORDER BY g.ordine ASC) from get_prel_by_evt g where g.id_evento = e.id and g.cod_tipo = 'AN') as prelievo_angoli_iniziali,
|
||||
(select LISTAGG('• ' || g.descrizione_articolo, chr(13)) WITHIN GROUP (ORDER BY g.ordine ASC) from get_prel_by_evt g where g.id_evento = e.id and g.cod_tipo = 'ANG-FIN') as prelievo_angoli_finali,
|
||||
(select LISTAGG('• ' || g.descrizione_articolo, chr(13)) WITHIN GROUP (ORDER BY g.ordine ASC) from get_prel_by_evt g where g.id_evento = e.id and g.cod_tipo = 'MENU') as prelievo_servizio_tavola,
|
||||
(select LISTAGG('• ' || g.descrizione_articolo, chr(13)) WITHIN GROUP (ORDER BY g.ordine ASC) from get_prel_by_evt g where g.id_evento = e.id and g.cod_tipo = 'BEV SED') as prelievo_vini
|
||||
from get_evt_data e
|
||||
left join location l on e.id_location = l.id
|
||||
```
|
||||
14
docs/views/GET_GESTORI_USERS.md
Normal file
14
docs/views/GET_GESTORI_USERS.md
Normal file
@@ -0,0 +1,14 @@
|
||||
# GET_GESTORI_USERS
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| USERS | VARCHAR2(4000) |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW GET_GESTORI_USERS AS
|
||||
select result as users from table(string_to_table_enum(get_param_value('PERMES_GESTORI'), 0, ':'))
|
||||
```
|
||||
35
docs/views/GET_PREL_ART_TOT.md
Normal file
35
docs/views/GET_PREL_ART_TOT.md
Normal file
@@ -0,0 +1,35 @@
|
||||
# GET_PREL_ART_TOT
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| ID_EVENTO | NUMBER |
|
||||
| ID | NUMBER |
|
||||
| COD_ARTICOLO | VARCHAR2(10) |
|
||||
| QTA | NUMBER |
|
||||
| NOTE | VARCHAR2(4000) |
|
||||
| QTA_APE | NUMBER |
|
||||
| QTA_SEDU | NUMBER |
|
||||
| QTA_BUFDOL | NUMBER |
|
||||
| QTA_MAN_APE | NUMBER |
|
||||
| QTA_MAN_SEDU | NUMBER |
|
||||
| QTA_MAN_BUFDOL | NUMBER |
|
||||
| COSTO_ARTICOLO | NUMBER |
|
||||
| PERC_OSPITI | NUMBER |
|
||||
| QTA_STD_PREL_TOT | NUMBER |
|
||||
| QTA_COEFF_PREL_TOT | NUMBER |
|
||||
| QTA_PREC_PREL_TOT | NUMBER |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW GET_PREL_ART_TOT AS
|
||||
select p."ID_EVENTO",p."ID",p."COD_ARTICOLO",p."QTA",p."NOTE",p."QTA_APE",p."QTA_SEDU",p."QTA_BUFDOL",p."QTA_MAN_APE",p."QTA_MAN_SEDU",p."QTA_MAN_BUFDOL",p."COSTO_ARTICOLO",p."PERC_OSPITI",
|
||||
p.QTA_APE + p.QTA_SEDU + p.QTA_BUFDOL + p.QTA_MAN_APE + p.QTA_MAN_SEDU + p.QTA_MAN_BUFDOL as qta_std_prel_tot,
|
||||
p.QTA_APE*nvl(a.coeff_a, 1) + p.QTA_SEDU*nvl(a.coeff_s, 1) + p.QTA_BUFDOL*nvl(a.coeff_b, 1) + p.QTA_MAN_APE*nvl(a.coeff_a, 1) + p.QTA_MAN_SEDU*nvl(a.coeff_s, 1) + p.QTA_MAN_BUFDOL*nvl(a.coeff_b, 1) as qta_coeff_prel_tot,
|
||||
nvl(d.numero, 1)*nvl(nvl2(p.perc_ospiti, p.perc_ospiti/100, a.perc_ospiti/100), 0) as qta_prec_prel_tot
|
||||
from eventi_det_prel p
|
||||
join articoli a on p.cod_articolo = a.cod_articolo
|
||||
join EVENTI_DET_OSPITI d on d.id_evento = p.id_evento and d.cod_tipo_ospite = 8
|
||||
```
|
||||
38
docs/views/GET_PREL_BY_EVT.md
Normal file
38
docs/views/GET_PREL_BY_EVT.md
Normal file
@@ -0,0 +1,38 @@
|
||||
# GET_PREL_BY_EVT
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| ID_EVENTO | NUMBER |
|
||||
| COD_TIPO | VARCHAR2(10) |
|
||||
| DESCRIZIONE_TIPO | VARCHAR2(1000) |
|
||||
| COD_CATEG | VARCHAR2(10) |
|
||||
| DESCRIZIONE_CATEGORIA | VARCHAR2(1000) |
|
||||
| COD_RELATIVO | VARCHAR2(10) |
|
||||
| COD_ARTICOLO | VARCHAR2(10) |
|
||||
| DESCRIZIONE_ARTICOLO | VARCHAR2(4000) |
|
||||
| ORDINE | NUMBER |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW GET_PREL_BY_EVT AS
|
||||
select
|
||||
e.id as id_evento,
|
||||
m.cod_tipo,
|
||||
m.descrizione as descrizione_tipo,
|
||||
a.cod_categ,
|
||||
g.descrizione as descrizione_categoria,
|
||||
a.cod_relativo,
|
||||
a.cod_articolo,
|
||||
trim(a.descrizione) || ' - ' || trim(d.note) as descrizione_articolo,
|
||||
d.ordine
|
||||
from eventi e
|
||||
join eventi_det_prel d on e.id = d.id_evento
|
||||
join articoli a on a.cod_articolo = d.cod_articolo
|
||||
join tb_codici_categ g on g.cod_categ = a.cod_categ
|
||||
join tb_tipi_mat m on m.cod_tipo = g.cod_tipo
|
||||
where g.show_print = 1
|
||||
order by d.ordine
|
||||
```
|
||||
120
docs/views/GET_REPORT_CONSUNTIVO_PER_DATA.md
Normal file
120
docs/views/GET_REPORT_CONSUNTIVO_PER_DATA.md
Normal file
@@ -0,0 +1,120 @@
|
||||
# GET_REPORT_CONSUNTIVO_PER_DATA
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| ORDINE | NUMBER |
|
||||
| ID | NUMBER |
|
||||
| DATA | DATE |
|
||||
| TIPO | VARCHAR2(4000) |
|
||||
| NUMERO | NUMBER |
|
||||
| COSTO | NUMBER |
|
||||
| SCONTO | NUMBER |
|
||||
| PERCIVA | NUMBER |
|
||||
| TOTALE | NUMBER |
|
||||
| IVA | NUMBER |
|
||||
| TOTALE_IVATO | NUMBER |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW GET_REPORT_CONSUNTIVO_PER_DATA AS
|
||||
select
|
||||
edo.ordine,
|
||||
e.id,
|
||||
e.data,
|
||||
nvl2(edo.note, tto.descrizione || ': ' || edo.note, tto.descrizione) as tipo,
|
||||
nullif(edo.numero, 0) as numero,
|
||||
nullif(edo.costo, 0) as costo,
|
||||
nullif(edo.sconto, 0) as sconto,
|
||||
nullif(case when edo.numero > 0 then 0.10 else 0 end, 0) as perciva,
|
||||
nullif(edo.numero * (edo.COSTO - (edo.COSTO*(edo.sconto/100))), 0) as totale,
|
||||
nullif((edo.numero * (edo.COSTO - (edo.COSTO*(edo.sconto/100))) * 0.10), 0) as iva,
|
||||
edo.numero * (edo.COSTO - (edo.COSTO*(edo.sconto/100))) + (edo.numero * (edo.COSTO - (edo.COSTO*(edo.sconto/100))) * 0.10) as totale_ivato
|
||||
from eventi e
|
||||
left join eventi_det_ospiti edo on edo.id_evento = e.id
|
||||
left join tb_tipi_ospiti tto on tto.cod_tipo = edo.cod_tipo_ospite
|
||||
where edo.ordine != 3
|
||||
|
||||
union all
|
||||
|
||||
select
|
||||
rownum+49 as ordine,
|
||||
e.id_evento as id,
|
||||
d.data,
|
||||
'Degustazioni effettuate' as tipo,
|
||||
nullif(numero, 0) as numero,
|
||||
nullif(costo, 0) as costo,
|
||||
null as sconto,
|
||||
null as perciva,
|
||||
nullif(costo*-1, 0) as totale,
|
||||
null as iva,
|
||||
costo*-1 as totale_ivato
|
||||
from get_costo_degus_evt e
|
||||
join eventi d on d.id = e.id_evento
|
||||
|
||||
union all
|
||||
|
||||
select rownum+99 as ordine, t."ID",t."DATA",t."TIPO",t."NUMERO",t."COSTO",t."SCONTO",t."PERCIVA",t."TOTALE",t."IVA",t."TOTALE_IVATO" from (
|
||||
select
|
||||
e.id_evento as id,
|
||||
d.data,
|
||||
replace(REGEXP_REPLACE(replace(a.descrizione, ' ', '_'), '[^0-9A-Za-z_()]', ''), '_', ' ') as tipo,
|
||||
nullif(e.numero, 0) as numero,
|
||||
nullif(e.costo_uni, 0) as costo,
|
||||
null as sconto,
|
||||
nullif(case when e.COSTO > 0 then (a.perc_iva/100) else 0 end, 0) as perciva,
|
||||
nullif(e.COSTO, 0) as totale,
|
||||
nullif(case when e.COSTO > 0 then e.COSTO_IVATO - e.COSTO else 0 end, 0) as iva,
|
||||
nullif(case when e.COSTO > 0 then e.COSTO_IVATO else 0 end, 0) as totale_ivato
|
||||
from get_costo_art_evt e
|
||||
join articoli a on e.cod_articolo = a.cod_articolo
|
||||
join EVENTI_DET_OSPITI edoa on edoa.id_evento = e.id_evento and edoa.cod_tipo_ospite = 8
|
||||
join tb_codici_categ g on g.cod_categ = a.cod_categ
|
||||
join eventi d on d.id = e.id_evento
|
||||
where nvl(e.COSTO, 0) > 0
|
||||
and g.show_print = 1
|
||||
|
||||
union all
|
||||
|
||||
select
|
||||
e.id_evento as id,
|
||||
d.data,
|
||||
'Altri Articoli (dettaglio a pagina 3)' as tipo,
|
||||
null as numero,
|
||||
null as costo,
|
||||
null as sconto,
|
||||
null as perciva,
|
||||
nullif(sum(e.COSTO), 0) as totale,
|
||||
nullif(sum(case when e.COSTO > 0 then e.COSTO_IVATO - e.COSTO else 0 end), 0) as iva,
|
||||
nullif(sum(case when e.COSTO > 0 then e.COSTO_IVATO else 0 end), 0) as totale_ivato
|
||||
from get_costo_art_evt e
|
||||
join articoli a on e.cod_articolo = a.cod_articolo
|
||||
join EVENTI_DET_OSPITI edoa on edoa.id_evento = e.id_evento and edoa.cod_tipo_ospite = 8
|
||||
join tb_codici_categ g on g.cod_categ = a.cod_categ
|
||||
join eventi d on d.id = e.id_evento
|
||||
where nvl(e.COSTO, 0) > 0
|
||||
and g.show_print = 0
|
||||
group by 'Altri Articoli', e.id_evento, d.data, 0, 0, 0, 0
|
||||
) t
|
||||
|
||||
union all
|
||||
|
||||
select
|
||||
ea.ordine+199 as ordine,
|
||||
e.id,
|
||||
e.data,
|
||||
ea.descrizione as tipo,
|
||||
ea.quantity as numero,
|
||||
nullif(ea.costo, 0) as costo,
|
||||
null as sconto,
|
||||
nullif(case when ea.costo > 0 then 0.1 else 0 end, 0) as perciva,
|
||||
nullif(ea.costo * ea.quantity, 0) as totale,
|
||||
nullif(case when ea.COSTO > 0 then (ea.costo * ea.quantity) * 0.10 else 0 end, 0) as iva,
|
||||
nullif(case when ea.COSTO > 0 then (ea.costo * ea.quantity) + ((ea.costo * ea.quantity) * 0.10) else (ea.costo * ea.quantity) end, 0) as totale_ivato
|
||||
from eventi e
|
||||
left join eventi_altricosti ea on ea.id_evento = e.id
|
||||
where ea.costo is not null
|
||||
order by 1
|
||||
```
|
||||
17
docs/views/GET_ULTIMI_COSTI.md
Normal file
17
docs/views/GET_ULTIMI_COSTI.md
Normal file
@@ -0,0 +1,17 @@
|
||||
# GET_ULTIMI_COSTI
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| COD_ARTICOLO | VARCHAR2(10) |
|
||||
| COSTO_UNI | NUMBER |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW GET_ULTIMI_COSTI AS
|
||||
SELECT a.COD_ARTICOLO, a.costo_uni
|
||||
FROM COSTI_ARTICOLI a
|
||||
WHERE a.DATA_COSTO = (SELECT max(b.DATA_COSTO) FROM COSTI_ARTICOLI b where b.cod_articolo = a.cod_articolo)
|
||||
```
|
||||
16
docs/views/GET_USERS_LIST.md
Normal file
16
docs/views/GET_USERS_LIST.md
Normal file
@@ -0,0 +1,16 @@
|
||||
# GET_USERS_LIST
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| USERS | VARCHAR2(100) |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW GET_USERS_LIST AS
|
||||
select user_name as users
|
||||
from APEX_WORKSPACE_APEX_USERS
|
||||
where workspace_name = USER
|
||||
```
|
||||
90
docs/views/README.md
Normal file
90
docs/views/README.md
Normal file
@@ -0,0 +1,90 @@
|
||||
# Viste Database
|
||||
|
||||
Questa cartella contiene la documentazione di tutte le 26 viste del database.
|
||||
|
||||
## Viste per Calcolo Costi
|
||||
|
||||
| Vista | Descrizione |
|
||||
|-------|-------------|
|
||||
| [GET_COSTO_ART_BY_EVT](GET_COSTO_ART_BY_EVT.md) | Calcola costo articoli per singolo evento |
|
||||
| [GET_COSTO_ART_EVT](GET_COSTO_ART_EVT.md) | Aggregazione costi articoli per evento |
|
||||
| [GET_COSTO_CATEG_EVT](GET_COSTO_CATEG_EVT.md) | Costi aggregati per categoria |
|
||||
| [GET_COSTO_DEGUS_EVT](GET_COSTO_DEGUS_EVT.md) | Costo degustazioni (da detrarre) |
|
||||
| [GET_COSTO_OSPITI_EVT](GET_COSTO_OSPITI_EVT.md) | Costo per ospiti con sconti |
|
||||
| [GET_COSTO_RIS_EVT](GET_COSTO_RIS_EVT.md) | Costo risorse/personale |
|
||||
| [GET_COSTO_TIPI_EVT](GET_COSTO_TIPI_EVT.md) | Costi aggregati per tipo materiale |
|
||||
| [GET_ULTIMI_COSTI](GET_ULTIMI_COSTI.md) | Ultimo costo registrato per articolo |
|
||||
|
||||
## Viste per Dati Evento
|
||||
|
||||
| Vista | Descrizione |
|
||||
|-------|-------------|
|
||||
| [GET_EVT_DATA](GET_EVT_DATA.md) | Dati completi evento con join |
|
||||
| [GET_EVT_DATA_PRINT](GET_EVT_DATA_PRINT.md) | Dati evento formattati per stampa |
|
||||
| [GET_PREL_ART_TOT](GET_PREL_ART_TOT.md) | Totali quantità prelievo calcolate |
|
||||
| [GET_PREL_BY_EVT](GET_PREL_BY_EVT.md) | Prelievi per evento con descrizioni |
|
||||
|
||||
## Viste Calendario e Stati
|
||||
|
||||
| Vista | Descrizione |
|
||||
|-------|-------------|
|
||||
| [VW_CALENDARIO_EVENTI](VW_CALENDARIO_EVENTI.md) | Vista per calendario con colori e CSS |
|
||||
| [VW_EVENT_COLOR](VW_EVENT_COLOR.md) | Mapping stati → colori |
|
||||
| [VW_EVENT_COLOR_OLD](VW_EVENT_COLOR_OLD.md) | Vecchia logica colori (deprecata) |
|
||||
| [VW_EVENTI_STATUSES](VW_EVENTI_STATUSES.md) | Elenco stati distinti con colori |
|
||||
|
||||
## Viste Giacenze e Impegni
|
||||
|
||||
| Vista | Descrizione |
|
||||
|-------|-------------|
|
||||
| [V_IMPEGNI_ARTICOLI](V_IMPEGNI_ARTICOLI.md) | Quantità impegnate per articolo/data |
|
||||
| [V_IMPEGNI_ARTICOLI_LOC](V_IMPEGNI_ARTICOLI_LOC.md) | Impegni con dettaglio location |
|
||||
|
||||
## Viste Report
|
||||
|
||||
| Vista | Descrizione |
|
||||
|-------|-------------|
|
||||
| [V_REP_ALLESTIMENTI](V_REP_ALLESTIMENTI.md) | Dati per report allestimenti |
|
||||
| [VW_REP_DEGUSTAZIONI](VW_REP_DEGUSTAZIONI.md) | Dati per report degustazioni |
|
||||
| [V_GRIGLIA](V_GRIGLIA.md) | Vista griglia settimanale |
|
||||
| [GET_REPORT_CONSUNTIVO_PER_DATA](GET_REPORT_CONSUNTIVO_PER_DATA.md) | Report consuntivo dettagliato |
|
||||
|
||||
## Viste Utenti e Permessi
|
||||
|
||||
| Vista | Descrizione |
|
||||
|-------|-------------|
|
||||
| [GET_CONSUNTIVI_USERS](GET_CONSUNTIVI_USERS.md) | Utenti con accesso consuntivi |
|
||||
| [GET_GESTORI_USERS](GET_GESTORI_USERS.md) | Utenti con ruolo gestore |
|
||||
| [GET_USERS_LIST](GET_USERS_LIST.md) | Lista utenti APEX workspace |
|
||||
|
||||
## Viste Pagamenti
|
||||
|
||||
| Vista | Descrizione |
|
||||
|-------|-------------|
|
||||
| [GET_EVENTI_DA_PAGARE_ENTRO_65GG](GET_EVENTI_DA_PAGARE_ENTRO_65GG.md) | Eventi con caparre non pagate |
|
||||
|
||||
## Note Tecniche
|
||||
|
||||
### Calcolo Totale Evento
|
||||
Il totale evento viene calcolato sommando diverse viste:
|
||||
```sql
|
||||
TOTALE = GET_COSTO_TIPI_EVT
|
||||
- GET_COSTO_DEGUS_EVT (detrazione)
|
||||
+ GET_COSTO_RIS_EVT
|
||||
+ GET_COSTO_OSPITI_EVT (+ 10% IVA)
|
||||
+ EVENTI_ALTRICOSTI (+ 10% IVA se > 0)
|
||||
```
|
||||
|
||||
### V_IMPEGNI_ARTICOLI
|
||||
Questa vista è fondamentale per il controllo giacenze:
|
||||
- Include solo eventi con stato 200-400
|
||||
- Esclude eventi con versioni successive (`ID_EVT_FIGLIO IS NULL`)
|
||||
- Usata dalla funzione `F_GET_QTA_IMPEGNATA`
|
||||
|
||||
### VW_CALENDARIO_EVENTI
|
||||
Costruisce la descrizione dinamica per il calendario:
|
||||
- Numero progressivo evento nel giorno
|
||||
- Indicatore preventivo scaduto (`!!!`)
|
||||
- Indicatore contratto non firmato (`*`)
|
||||
- Location e numero ospiti adulti
|
||||
- Classe CSS per colorazione
|
||||
60
docs/views/VW_CALENDARIO_EVENTI.md
Normal file
60
docs/views/VW_CALENDARIO_EVENTI.md
Normal file
@@ -0,0 +1,60 @@
|
||||
# VW_CALENDARIO_EVENTI
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| WEEK | VARCHAR2(2) |
|
||||
| GIORNO | VARCHAR2(1) |
|
||||
| DATA | DATE |
|
||||
| DESCRI | VARCHAR2(294) |
|
||||
| ID | NUMBER |
|
||||
| STATUS | VARCHAR2(28) |
|
||||
| COLOR | CHAR(7) |
|
||||
| CSS_CLASS | VARCHAR2(47) |
|
||||
| STATO | NUMBER |
|
||||
| LOCATION | VARCHAR2(200) |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW VW_CALENDARIO_EVENTI AS
|
||||
select to_char(data,'IW') week,to_char(data,'d', 'NLS_DATE_LANGUAGE = italian') giorno,
|
||||
e.data,
|
||||
-- Daniele Trombettoni 15/03/2020
|
||||
-- Conteggio eventi giornalieri e stato
|
||||
(case when F_EVENTO_SCADUTO(e.data_scad_preventivo, e.stato, 0, 299) = 1 then '!!! ' end) || ROW_NUMBER() OVER (PARTITION BY e.data, e.stato ORDER BY e.id )|| ') ' || (case when e.contratto_firmato = 0 and e.stato >= 300 then '* ' else '' end) || l.LOCATION || ' Os:'|| F_GET_TOT_OSPITI(e.id, 8) ||(case when tp.TIPO_PASTO is not null then '/' else null end)|| tp.TIPO_PASTO descri,
|
||||
--l.LOCATION descri,
|
||||
e.id,
|
||||
c.status,
|
||||
-- Daniele Viti 18/01/2020
|
||||
-- Aggiunto il controllo sul numero di eventi massimi per giorno
|
||||
-- 20200315 - disattivo temporaneamente il cambio di colore rosso
|
||||
--case when (select count(*) from eventi ev where ev.data = e.data) > 7 then '#ff2e2e' else c.color end as color
|
||||
c.color as color,
|
||||
case c.STATUS
|
||||
when 'Scheda Quasi Confermata'
|
||||
then 'apex-cal-SchedaQuasiConfermata' || (case when F_EVENTO_SCADUTO(e.data_scad_preventivo, e.stato, 0, 299) = 1 then ' apex-cal-Scaduto' end)
|
||||
when 'Scheda Confermata'
|
||||
then 'apex-cal-SchedaConfermata' || (case when F_EVENTO_SCADUTO(e.data_scad_preventivo, e.stato, 0, 299) = 1 then ' apex-cal-Scaduto' end)
|
||||
when 'Preventivo'
|
||||
then 'apex-cal-Preventivo' || (case when F_EVENTO_SCADUTO(e.data_scad_preventivo, e.stato, 0, 299) = 1 then ' apex-cal-Scaduto' end)
|
||||
when 'Scheda Evento (preparazione)'
|
||||
then 'apex-cal-Preparazione'
|
||||
when 'Confermato'
|
||||
then 'apex-cal-Confermato'
|
||||
end as css_class,
|
||||
e.stato,
|
||||
l.LOCATION
|
||||
from eventi e
|
||||
left join tb_tipi_evento tp on tp.cod_tipo = e.cod_tipo
|
||||
left join location l on e.id_location = l.id
|
||||
left join vw_event_color c on e.id = c.id
|
||||
-- 20200315 - escludo nn accettato/superato
|
||||
where e.stato != 900
|
||||
and disabled = 0
|
||||
and nvl(is_template, 0) = 0
|
||||
and e.ID_EVT_FIGLIO is null
|
||||
and deleted = 0
|
||||
order by e.stato
|
||||
```
|
||||
19
docs/views/VW_EVENTI_STATUSES.md
Normal file
19
docs/views/VW_EVENTI_STATUSES.md
Normal file
@@ -0,0 +1,19 @@
|
||||
# VW_EVENTI_STATUSES
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| STATO | NUMBER |
|
||||
| COLOR | CHAR(7) |
|
||||
| COLOR_SLANG | VARCHAR2(7) |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW VW_EVENTI_STATUSES AS
|
||||
select distinct e.stato, v.color, v.color_slang
|
||||
from eventi e
|
||||
join vw_event_color v on v.id = e.id
|
||||
order by 1
|
||||
```
|
||||
57
docs/views/VW_EVENT_COLOR.md
Normal file
57
docs/views/VW_EVENT_COLOR.md
Normal file
@@ -0,0 +1,57 @@
|
||||
# VW_EVENT_COLOR
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| ID | NUMBER |
|
||||
| STATUS | VARCHAR2(28) |
|
||||
| COLOR | CHAR(7) |
|
||||
| COLOR_SLANG | VARCHAR2(7) |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW VW_EVENT_COLOR AS
|
||||
select e.id ,
|
||||
case when e.stato = 900
|
||||
then 'Prev non Accettato/Superato'
|
||||
when e.stato = 100
|
||||
then 'Preventivo'
|
||||
when e.stato = 200
|
||||
then 'Scheda Evento (preparazione)'
|
||||
when e.stato = 300
|
||||
then 'Scheda Confermata'
|
||||
when e.stato = 350
|
||||
then 'Scheda Quasi Confermata'
|
||||
when e.stato = 400
|
||||
then 'Confermato'
|
||||
end as status,
|
||||
case when e.stato = 900
|
||||
then '#913096'
|
||||
when e.stato = 100
|
||||
then '#ffffff'
|
||||
when e.stato = 200
|
||||
then '#CAE3FC'
|
||||
when e.stato = 300
|
||||
then '#FFFFB8'
|
||||
when e.stato = 350
|
||||
then '#FFCD59'
|
||||
when e.stato = 400
|
||||
then '#B8FFB8'
|
||||
end as color,
|
||||
case when e.stato = 900
|
||||
then 'viola'
|
||||
when e.stato = 100
|
||||
then 'bianco'
|
||||
when e.stato = 200
|
||||
then 'celeste'
|
||||
when e.stato = 300
|
||||
then 'giallo'
|
||||
when e.stato = 350
|
||||
then 'arancio'
|
||||
when e.stato = 400
|
||||
then 'verde'
|
||||
end as color_slang
|
||||
from eventi e
|
||||
```
|
||||
43
docs/views/VW_EVENT_COLOR_OLD.md
Normal file
43
docs/views/VW_EVENT_COLOR_OLD.md
Normal file
@@ -0,0 +1,43 @@
|
||||
# VW_EVENT_COLOR_OLD
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| ID | NUMBER |
|
||||
| STATUS | VARCHAR2(28) |
|
||||
| COLOR | CHAR(7) |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW VW_EVENT_COLOR_OLD AS
|
||||
select e.id ,
|
||||
case when e.flg_superato = 1
|
||||
then 'Prev non Accettato/Superato'
|
||||
when e.stato = 0 and d.id_evento is null
|
||||
then 'Preventivo'
|
||||
when e.stato = 0
|
||||
then 'Scheda Evento (preparazione)'
|
||||
when e.stato = 10
|
||||
then 'Scheda Confermata'
|
||||
when e.stato = 20
|
||||
then 'Confermato'
|
||||
end as status,
|
||||
case when e.flg_superato = 1
|
||||
then '#913096'
|
||||
when e.stato = 0 and d.id_evento is null
|
||||
then '#ffffff'
|
||||
when e.stato = 0
|
||||
then '#CAE3FC'
|
||||
when e.stato = 10
|
||||
then '#FFFFB8'
|
||||
when e.stato = 20
|
||||
then '#B8FFB8'
|
||||
end as color
|
||||
from eventi e
|
||||
left join (select max(data) data_deg , id_evento
|
||||
from eventi_det_degust
|
||||
group by id_evento
|
||||
) d on e.id = d.id_evento
|
||||
```
|
||||
70
docs/views/VW_REP_DEGUSTAZIONI.md
Normal file
70
docs/views/VW_REP_DEGUSTAZIONI.md
Normal file
@@ -0,0 +1,70 @@
|
||||
# VW_REP_DEGUSTAZIONI
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| ID_EVENTO | NUMBER |
|
||||
| ID | NUMBER |
|
||||
| DATA | DATE |
|
||||
| ORA | VARCHAR2(20) |
|
||||
| NOME | VARCHAR2(100) |
|
||||
| TELEFONO | VARCHAR2(255) |
|
||||
| EMAIL | VARCHAR2(255) |
|
||||
| LOCATION | VARCHAR2(200) |
|
||||
| N_PERSONE | NUMBER |
|
||||
| MENU | VARCHAR2(1000) |
|
||||
| N_PAGANTI | NUMBER |
|
||||
| NOTE | VARCHAR2(4000) |
|
||||
| N_DEGUSTAZIONE | NUMBER |
|
||||
| DES_EVENTO | VARCHAR2(407) |
|
||||
| DATA_EVENTO | DATE |
|
||||
| LOCATION_DEG | VARCHAR2(1000) |
|
||||
| COUNT_RIGA | NUMBER |
|
||||
| STATO | NUMBER |
|
||||
| STATUS | VARCHAR2(28) |
|
||||
| SCADUTO | CHAR(2) |
|
||||
| TIPO_PASTO | VARCHAR2(6) |
|
||||
| DESCRIZIONE_TIPO | VARCHAR2(100) |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW VW_REP_DEGUSTAZIONI AS
|
||||
select
|
||||
d.ID_EVENTO,
|
||||
d.ID,
|
||||
d.DATA,
|
||||
d.ORA,
|
||||
e.CLIENTE NOME,
|
||||
e.cliente_tel as TELEFONO,
|
||||
e.cliente_email as EMAIL,
|
||||
l.LOCATION,
|
||||
d.N_PERSONE,
|
||||
d.MENU,
|
||||
d.N_PAGANTI,
|
||||
d.NOTE,
|
||||
d.N_DEGUSTAZIONE,
|
||||
e.data || ' - ' || t.DESCRIZIONE || ' - ' || l.location || ' - ' || substr(cliente,1,20) des_evento,
|
||||
e.data as data_evento,
|
||||
d.location as location_deg,
|
||||
1 AS COUNT_RIGA,
|
||||
e.stato as stato,
|
||||
c.status,
|
||||
case when e.data_scad_preventivo <= trunc(sysdate)
|
||||
then CASE WHEN e.stato >= 400 THEN 'NO' ELSE 'SI' END
|
||||
else 'NO'
|
||||
end scaduto,
|
||||
decode(p.tipo_pasto, 'C', 'Cena', 'P', 'Pranzo', 'Altro') as tipo_pasto,
|
||||
p.descrizione as descrizione_tipo
|
||||
from eventi e
|
||||
left join EVENTI_DET_DEGUST d on d.id_evento = e.id
|
||||
left join vw_event_color c on d.id_evento = c.id
|
||||
left join tb_tipi_evento t on e.cod_tipo = t.COD_TIPO
|
||||
left join location l on e.id_location = l.ID
|
||||
left join tb_tipi_evento p on p.cod_tipo = e.cod_tipo
|
||||
where e.disabled = 0
|
||||
and e.deleted = 0
|
||||
and e.stato < 900
|
||||
order by d.data, d.ora
|
||||
```
|
||||
69
docs/views/V_GRIGLIA.md
Normal file
69
docs/views/V_GRIGLIA.md
Normal file
@@ -0,0 +1,69 @@
|
||||
# V_GRIGLIA
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| ID | NUMBER |
|
||||
| TIPO_RIEPILOGO | VARCHAR2(20) |
|
||||
| RNK | NUMBER |
|
||||
| DES_TIPO | VARCHAR2(1000) |
|
||||
| LUN | VARCHAR2(4000) |
|
||||
| MAR | VARCHAR2(4000) |
|
||||
| MER | VARCHAR2(4000) |
|
||||
| GIO | VARCHAR2(4000) |
|
||||
| VEN_1 | VARCHAR2(4000) |
|
||||
| VEN_2 | VARCHAR2(4000) |
|
||||
| SAB_1 | VARCHAR2(4000) |
|
||||
| SAB_2 | VARCHAR2(4000) |
|
||||
| DOM_1 | VARCHAR2(4000) |
|
||||
| DOM_2 | VARCHAR2(4000) |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW V_GRIGLIA AS
|
||||
with t as (
|
||||
select to_char(data,'IW') week,
|
||||
-- to_char(data,'d', 'NLS_DATE_LANGUAGE = italian') giorno,
|
||||
to_char(data,'d') giorno,
|
||||
-- to_char(data,'d', 'NLS_DATE_LANGUAGE = italian') * 100000 + E.ID giorno,
|
||||
E.ID ,
|
||||
DENSE_RANK() OVER (PARTITION BY to_char(data,'d', 'NLS_DATE_LANGUAGE = italian') * 100000 ORDER BY e.id) rnk,
|
||||
e.data,e.descrizione,
|
||||
p.cod_articolo,
|
||||
a.descrizione des_art,
|
||||
a.cod_categ,
|
||||
c.descrizione des_categ,
|
||||
c.cod_tipo ,
|
||||
t.descrizione des_tipo,
|
||||
c.tipo_riepilogo
|
||||
from eventi e
|
||||
join eventi_det_prel p on e.id = p.id_evento
|
||||
join articoli a on p.cod_articolo = a.cod_articolo
|
||||
join tb_codici_categ c on a.cod_categ = c.cod_categ
|
||||
join tb_tipi_mat t on c.cod_tipo = t.cod_tipo
|
||||
-- where to_char(data,'IW') = to_char(to_date(:P14_SETTIMANA,'DD-MON-YYYY'),'IW')
|
||||
where to_char(data,'IW') = to_char(to_date('05-MAY-2018','DD-MON-YYYY'),'IW')
|
||||
|
||||
)
|
||||
, t_des as (
|
||||
select ID,rnk,
|
||||
t.tipo_riepilogo,
|
||||
t.DES_TIPO,
|
||||
t.descrizione,
|
||||
case when giorno = 1 then t.DES_ART end DOM_1,
|
||||
case when giorno = 1 then t.DES_ART end DOM_2,
|
||||
case when giorno = 2 then t.DES_ART end LUN,
|
||||
case when giorno = 3 then t.DES_ART end MAR,
|
||||
case when giorno = 4 then t.DES_ART end MER,
|
||||
case when giorno = 5 then t.DES_ART end GIO,
|
||||
case when giorno = 6 and rnk =1 then t.DES_ART else '1-' end VEN_1,
|
||||
case when giorno = 6 and rnk =2 then t.DES_ART else '2-' end VEN_2,
|
||||
case when giorno = 7 then t.DES_ART else '1-' end SAB_1,
|
||||
case when giorno = 7 then t.DES_ART else '2-' end SAB_2
|
||||
from t
|
||||
)
|
||||
select id, tipo_riepilogo,rnk, DES_TIPO,LUN, MAR, MER, GIO, VEN_1,VEN_2, SAB_1, SAB_2, DOM_1, DOM_2
|
||||
from t_des
|
||||
```
|
||||
30
docs/views/V_IMPEGNI_ARTICOLI.md
Normal file
30
docs/views/V_IMPEGNI_ARTICOLI.md
Normal file
@@ -0,0 +1,30 @@
|
||||
# V_IMPEGNI_ARTICOLI
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| DATA | DATE |
|
||||
| COD_ARTICOLO | VARCHAR2(10) |
|
||||
| QTA_IMP | NUMBER |
|
||||
| QTA_APE | NUMBER |
|
||||
| QTA_SEDU | NUMBER |
|
||||
| QTA_BUFDOL | NUMBER |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW V_IMPEGNI_ARTICOLI AS
|
||||
select e.data,p.cod_articolo,
|
||||
sum(p.qta) qta_imp,
|
||||
sum(p.qta_ape) qta_ape,
|
||||
sum(p.qta_sedu) qta_sedu,
|
||||
sum(p.qta_bufdol) qta_bufdol
|
||||
from eventi_det_prel p
|
||||
join eventi e on p.id_evento = e.id
|
||||
where e.data >= trunc(sysdate)
|
||||
and e.stato between 200 and 400
|
||||
and e.id_evt_figlio is null
|
||||
group by e.data,cod_articolo
|
||||
order by cod_articolo,e.data
|
||||
```
|
||||
51
docs/views/V_IMPEGNI_ARTICOLI_LOC.md
Normal file
51
docs/views/V_IMPEGNI_ARTICOLI_LOC.md
Normal file
@@ -0,0 +1,51 @@
|
||||
# V_IMPEGNI_ARTICOLI_LOC
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| DATA | DATE |
|
||||
| LOCATION | VARCHAR2(200) |
|
||||
| COD_ARTICOLO | VARCHAR2(10) |
|
||||
| DESCRIZIONE | VARCHAR2(4000) |
|
||||
| TOT_OSPITI | NUMBER |
|
||||
| QTA_GIAC | NUMBER |
|
||||
| QTA_IMP | NUMBER |
|
||||
| QTA_RES | NUMBER |
|
||||
| QTA_APE | NUMBER |
|
||||
| QTA_SEDU | NUMBER |
|
||||
| QTA_BUFDOL | NUMBER |
|
||||
| DESCRI_CATEG | VARCHAR2(1013) |
|
||||
| DESCRI_TIPO | VARCHAR2(1013) |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW V_IMPEGNI_ARTICOLI_LOC AS
|
||||
with t as (
|
||||
select e.data, l.LOCATION,p.cod_articolo,a.DESCRIZIONE,e.TOT_OSPITI,
|
||||
sum(a.QTA_GIAC) qta_giac,
|
||||
sum(p.qta) qta_imp,
|
||||
sum(a.QTA_GIAC) - f_get_qta_impegnata(p.cod_articolo,e.data) qta_res,
|
||||
sum(p.qta_ape) qta_ape,
|
||||
sum(p.qta_sedu) qta_sedu,
|
||||
sum(p.qta_bufdol) qta_bufdol
|
||||
from eventi_det_prel p
|
||||
left
|
||||
join articoli a on p.COD_ARTICOLO = a.COD_ARTICOLO
|
||||
join eventi e on p.id_evento = e.id
|
||||
left
|
||||
join location l on e.id_location = l.id
|
||||
where e.stato between 200 and 400
|
||||
and e.id_evt_figlio is null
|
||||
group by e.data, l.LOCATION,p.cod_articolo,a.DESCRIZIONE,e.TOT_OSPITI
|
||||
order by e.data, l.LOCATION,p.cod_articolo
|
||||
)
|
||||
select t."DATA",t."LOCATION",t."COD_ARTICOLO",t."DESCRIZIONE",t."TOT_OSPITI",t."QTA_GIAC",t."QTA_IMP",t."QTA_RES",t."QTA_APE",t."QTA_SEDU",t."QTA_BUFDOL",
|
||||
g.cod_categ || ' - ' || g.descrizione as descri_categ,
|
||||
u.cod_tipo || ' - ' || u.descrizione as descri_tipo
|
||||
from t
|
||||
join articoli a on a.COD_ARTICOLO = t.COD_ARTICOLO
|
||||
join tb_codici_categ g on g.COD_CATEG = a.COD_CATEG
|
||||
join tb_tipi_mat u on u.cod_tipo = g.cod_tipo
|
||||
```
|
||||
177
docs/views/V_REP_ALLESTIMENTI.md
Normal file
177
docs/views/V_REP_ALLESTIMENTI.md
Normal file
@@ -0,0 +1,177 @@
|
||||
# V_REP_ALLESTIMENTI
|
||||
|
||||
## Colonne
|
||||
|
||||
| Colonna | Tipo |
|
||||
|---------|------|
|
||||
| D1 | DATE |
|
||||
| D2 | DATE |
|
||||
| D3 | DATE |
|
||||
| D4 | DATE |
|
||||
| D5 | DATE |
|
||||
| D6 | DATE |
|
||||
| D7 | DATE |
|
||||
| D8 | DATE |
|
||||
| D9 | DATE |
|
||||
| D10 | DATE |
|
||||
| D11 | DATE |
|
||||
| D12 | DATE |
|
||||
| L1 | VARCHAR2(200) |
|
||||
| L2 | VARCHAR2(200) |
|
||||
| L3 | VARCHAR2(200) |
|
||||
| L4 | VARCHAR2(200) |
|
||||
| L5 | VARCHAR2(200) |
|
||||
| L6 | VARCHAR2(200) |
|
||||
| L7 | VARCHAR2(200) |
|
||||
| L8 | VARCHAR2(200) |
|
||||
| L9 | VARCHAR2(200) |
|
||||
| L10 | VARCHAR2(200) |
|
||||
| L11 | VARCHAR2(200) |
|
||||
| L12 | VARCHAR2(200) |
|
||||
| T1 | VARCHAR2(4000) |
|
||||
| T2 | VARCHAR2(4000) |
|
||||
| T3 | VARCHAR2(4000) |
|
||||
| T4 | VARCHAR2(4000) |
|
||||
| T5 | VARCHAR2(4000) |
|
||||
| T6 | VARCHAR2(4000) |
|
||||
| T7 | VARCHAR2(4000) |
|
||||
| T8 | VARCHAR2(4000) |
|
||||
| T9 | VARCHAR2(4000) |
|
||||
| T10 | VARCHAR2(4000) |
|
||||
| T11 | VARCHAR2(4000) |
|
||||
| T12 | VARCHAR2(4000) |
|
||||
| C1 | VARCHAR2(4000) |
|
||||
| C2 | VARCHAR2(4000) |
|
||||
| C3 | VARCHAR2(4000) |
|
||||
| C4 | VARCHAR2(4000) |
|
||||
| C5 | VARCHAR2(4000) |
|
||||
| C6 | VARCHAR2(4000) |
|
||||
| C7 | VARCHAR2(4000) |
|
||||
| C8 | VARCHAR2(4000) |
|
||||
| C9 | VARCHAR2(4000) |
|
||||
| C10 | VARCHAR2(4000) |
|
||||
| C11 | VARCHAR2(4000) |
|
||||
| C12 | VARCHAR2(4000) |
|
||||
|
||||
## Definizione
|
||||
|
||||
```sql
|
||||
CREATE OR REPLACE VIEW V_REP_ALLESTIMENTI AS
|
||||
with t as (select e.id, e.data, l.location, e.torta, e.confettata
|
||||
from eventi e
|
||||
left join location l on e.id_location = l.id
|
||||
where data >= sysdate
|
||||
order by data
|
||||
)
|
||||
, q as (select t.* , rownum as order_id
|
||||
from t
|
||||
order by data
|
||||
)
|
||||
, r as (select -- q.* ,
|
||||
case when order_id =1 then data else null end as data1,
|
||||
case when order_id =2 then data else null end as data2,
|
||||
case when order_id =3 then data else null end as data3,
|
||||
case when order_id =4 then data else null end as data4,
|
||||
case when order_id =5 then data else null end as data5,
|
||||
case when order_id =6 then data else null end as data6,
|
||||
case when order_id =7 then data else null end as data7,
|
||||
case when order_id =8 then data else null end as data8,
|
||||
case when order_id =9 then data else null end as data9,
|
||||
case when order_id =10 then data else null end as data10,
|
||||
case when order_id =11 then data else null end as data11,
|
||||
case when order_id =12 then data else null end as data12,
|
||||
|
||||
case when order_id =1 then location else null end as location1,
|
||||
case when order_id =2 then location else null end as location2,
|
||||
case when order_id =3 then location else null end as location3,
|
||||
case when order_id =4 then location else null end as location4,
|
||||
case when order_id =5 then location else null end as location5,
|
||||
case when order_id =6 then location else null end as location6,
|
||||
case when order_id =7 then location else null end as location7,
|
||||
case when order_id =8 then location else null end as location8,
|
||||
case when order_id =9 then location else null end as location9,
|
||||
case when order_id =10 then location else null end as location10,
|
||||
case when order_id =11 then location else null end as location11,
|
||||
case when order_id =12 then location else null end as location12,
|
||||
|
||||
case when order_id =1 then torta else null end as torta1,
|
||||
case when order_id =2 then torta else null end as torta2,
|
||||
case when order_id =3 then torta else null end as torta3,
|
||||
case when order_id =4 then torta else null end as torta4,
|
||||
case when order_id =5 then torta else null end as torta5,
|
||||
case when order_id =6 then torta else null end as torta6,
|
||||
case when order_id =7 then torta else null end as torta7,
|
||||
case when order_id =8 then torta else null end as torta8,
|
||||
case when order_id =9 then torta else null end as torta9,
|
||||
case when order_id =10 then torta else null end as torta10,
|
||||
case when order_id =11 then torta else null end as torta11,
|
||||
case when order_id =12 then torta else null end as torta12,
|
||||
|
||||
case when order_id =1 then confettata else null end as confettata1,
|
||||
case when order_id =2 then confettata else null end as confettata2,
|
||||
case when order_id =3 then confettata else null end as confettata3,
|
||||
case when order_id =4 then confettata else null end as confettata4,
|
||||
case when order_id =5 then confettata else null end as confettata5,
|
||||
case when order_id =6 then confettata else null end as confettata6,
|
||||
case when order_id =7 then confettata else null end as confettata7,
|
||||
case when order_id =8 then confettata else null end as confettata8,
|
||||
case when order_id =9 then confettata else null end as confettata9,
|
||||
case when order_id =10 then confettata else null end as confettata10,
|
||||
case when order_id =11 then confettata else null end as confettata11,
|
||||
case when order_id =12 then confettata else null end as confettata12
|
||||
from q
|
||||
)
|
||||
select min(data1) as d1,
|
||||
min(data2) as d2,
|
||||
min(data3) as d3,
|
||||
min(data4) as d4,
|
||||
min(data5) as d5,
|
||||
min(data6) as d6,
|
||||
min(data7) as d7,
|
||||
min(data8) as d8,
|
||||
min(data9) as d9,
|
||||
min(data10) as d10,
|
||||
min(data11) as d11,
|
||||
min(data12) as d12,
|
||||
|
||||
min(location1) as l1,
|
||||
min(location2) as l2,
|
||||
min(location3) as l3,
|
||||
min(location4) as l4,
|
||||
min(location5) as l5,
|
||||
min(location6) as l6,
|
||||
min(location7) as l7,
|
||||
min(location8) as l8,
|
||||
min(location9) as l9,
|
||||
min(location10) as l10,
|
||||
min(location11) as l11,
|
||||
min(location12) as l12,
|
||||
|
||||
min(torta1) as t1,
|
||||
min(torta2) as t2,
|
||||
min(torta3) as t3,
|
||||
min(torta4) as t4,
|
||||
min(torta5) as t5,
|
||||
min(torta6) as t6,
|
||||
min(torta7) as t7,
|
||||
min(torta8) as t8,
|
||||
min(torta9) as t9,
|
||||
min(torta10) as t10,
|
||||
min(torta11) as t11,
|
||||
min(torta12) as t12,
|
||||
|
||||
min(confettata1) as c1,
|
||||
min(confettata2) as c2,
|
||||
min(confettata3) as c3,
|
||||
min(confettata4) as c4,
|
||||
min(confettata5) as c5,
|
||||
min(confettata6) as c6,
|
||||
min(confettata7) as c7,
|
||||
min(confettata8) as c8,
|
||||
min(confettata9) as c9,
|
||||
min(confettata10) as c10,
|
||||
min(confettata11) as c11,
|
||||
min(confettata12) as c12
|
||||
|
||||
from r
|
||||
```
|
||||
Reference in New Issue
Block a user