Analisi della statistica dei disegni
La statistica dei disegni è sostanzialmente un riepilogo statistico del report di produzione.
Consente un raggruppamento molto flessibile (anche combinato) sulla base di colonne differenti
Per questo, la maggior marte delle colonne della tabella di ritorno contengono matrici.
Con raggruppamenti inadatti, estesi a intervalli di analisi prolungati, queste matrici possono aumentare al punto da incidere negativamente sulle prestazioni delle analisi.
Esempio: analisi estesa a un anno
Viene raggruppato solo secondo le macchine. (Non in combinazione con raggruppamento secondo disegno o ticket)
La colonna dei risultati AGG_PATTERN_NAME comprende quindi una matrice con tutti i nomi dei disegni prodotti nell'anno in questione.
Parametri di richiamo :
Nota sui filtri:
come nel caso del report di produzione, tutti i filtri sono stati implementati come filtri “deboli”.
Panoramica dei report
Parametri | Tipo | Descrizione |
---|---|---|
__sSchema | text | Schema delle tabelle database secondarie. |
_sTable_Prefix | text, | Prefisso delle tabelle database secondarie |
_aSortorder | text[] | Classificazione (matrice da nomi colonna) Esempio: ARRAY['MC_SORT_ID','START_TIME'] |
_bGroupByMachine | boolean | Raggruppamento in base a macchina |
_bGroupByShift | boolean | Raggruppamento in base a turno |
_bGroupByUserName | boolean | Raggruppamento in base a utente (sulla macchina) |
_bGroupByPattern | boolean | Raggruppamento in base a disegno |
_bGroupBySeq | boolean | Raggruppamento in base a sequenza |
_bGroupByTicketUid | boolean | Raggruppamento in base a ticket (UID PPS) |
_bGroupByTicketProductionId | boolean | Raggruppamento in base a ID produzione ticket |
_bGroupByTicketProductionSub1Id | boolean | Raggruppamento in base a Sub1 ID produzione ticket |
_bGroupByTicketProductionSub2Id | boolean | Raggruppamento in base a Sub2 ID produzione ticket |
_bGroupByTicketCustomerId | boolean | Raggruppamento in base a ID cliente del ticket |
_bGroupByTicketArticleId | boolean | Raggruppamento in base a ID articolo del ticket |
_aFilterShift | integer[] | Filtraggio secondo turno/i Esempio: |
_aFilterUsername | text[] | Filtraggio secondo utente (operatore) Esempio: ARRAY[‚User_1,'User_3'] |
_aFilterPattern | text[] | Filtraggio secondo sequenze Esempio: ARRAY['S-kUuG01','P-Sjo9v3'] |
_aFilterSeq | text[] | Filtraggio secondo sequenze Esempio: ARRAY['SEQ-WNJhP3','SEQ-wMWzx2'] |
_aFilterTicketUid | bigint[][] | Filtraggio secondo UID di ticket interni Esempio: ARRAY[3374994314,3738720541] |
_aFilterTicketProductionId | text[] | Filtraggio secondo ID produzione ticket Esempio: ARRAY['2E0Hl4-H8T803-cId-8','2E0Hl4-H8T803-cId-8'] |
_aFilterTicketProductionsub1Id | text[] | Filtraggio secondo Sub1 ID produzione ticket Esempio: ARRAY['SubId_2','SubId_21'] |
_aFilterTicketProductionsub2Id | text[] | Filtraggio secondo Sub2 ID produzione ticket Esempio: ARRAY['-'] |
_aFilterTicketCustomerId | text[] | Filtraggio secondo Id cliente ticket Esempio: ARRAY['cId-2','cId-4'] |
_aFilterTicketArticleid | text[] | Filtraggio secondo Id articolo ticket Esempio: ARRAY['H8T803'] |
_aFilterUserState | Smallint[] | Filtraggio secondo stato utente Esempio: ARRAY[4,3] |
_aFilterSintralState | Smallint[] | Filtraggio secondo stato Sintral Esempio: ARRAY[4,3] |
_xFilterMinDuration | interval | Esclusione di teli attivi per meno di x secondi. |
_bFilterUseOnlyNettoTime | boolean | Includere solo tempi netti. ( == la macchina ha impostato il contrassegno di produttività == il tempo che intercorre tra caricamento disegni ad arresto contateli è 0 ) |
_bFilterUseOnlyProductiveTicketTime | boolean | Se == true vengono esclusi i tempi nei quali vengono prodotti ticket di manutenzione o viene prodotto senza ticket |
Tabella di ritorno
Note:
- La tabella di ritorno comprende “colonne di debug” supplementari i cui nomi risultano tra parentesi quadre.
Esempio: [MIN_UID] - La maggior parte delle colonne restituisce matrici come valore di ritorno.
- Esse presentano solo una voce, a seconda del raggruppamento utilizzato.
Colonna | Tipo | Contenuto |
---|---|---|
MC_ID | integer | ID macchina SKR |
MC_SORT_ID | smallint | Per la classificazione in ordine alfabetico in base al nome della macchina |
AGG_SEQ_NAME | text[] | Nome o nomi della sequenza |
AGG_PATTERN_NAME | text[] | Nome o nomi del disegno |
START_TIME | timestamp without time zone | Ora/data di inizio |
END_TIME | timestamp without time zone | Ora/data di fine |
AGG_SHIFT_STATES | smallint[] | Turni attivi |
AGG_USER_STATES | smallint[] | Gli stati utente attivi durante i quali è stato lavorato il telo o il ticket |
AGG_SINTRAL_STATES | smallint[] | Gli stati Sintral durante i quali è stato lavorato il telo o il ticket |
AGG_USER_NAME | smallint[] | Gli utenti attivi durante i quali è stato lavorato il telo o il ticket |
AGG_TICKET_DATA | text[] | Data del ticket |
KNIT_COUNT | integer | Numero di teli completi (non interrotti) |
BREAK_COUNT | integer | Numero di teli interrotti |
SUM_BREAK_DURATION | interval | Tempo impiegato per teli/ticket interrotti (La colonna è probabilmente opportuna solo se si è raggruppato per disegno) |
AVG_DURATION | interval | Tempo medio per telo
|
MIN_DURATION | interval | Tempo minimo per telo con tempi di arresto vengono ignorati i teli interrotti |
MAX_DURATION | interval | Tempo massimo per telo, con tempi di arresto, vengono ignorati i teli interrotti |
SUM_DURATION | interval | Tempo complessivo
|
AVG_KNIT_DURATION | interval | Tempo medio per telo
|
MIN_KNIT_DURATION | interval | Tempo minimo per telo
|
MAX_KNIT_DURATION | interval | Tempo massimo per telo
|
SUM_KNIT_DURATION | interval | Tempo complessivo
|
[MIN_UID] | bigint | Info di debug: ora/data di inizio Uid in <prefix>_collected_filter_rows |
[MAX_UID] | bigint | Info di debug: ora/data di fine Uid in <prefix>_collected_filter_rows |
[AGG_TICKET_UID] | bigint[] | Info di debug: ticket attivo UID’s |
[AGG_TICKET_CUSTOMER_ID] | text[] | Info di debug: ticket attivo CUSTOMER ID‘s |
[AGG_TICKET_ARTICLE_ID] | text[] | Info di debug: ticket attivo ARTICLE ID‘s |
[AGG_TICKET_PRODUCTION_ID] | text[] | Info di debug: ticket attivo PRODUCTION_ID‘s |
[AGG_TICKET_PRODUCTION_SUB1_ID] | text[] | Info di debug: ticket attivo PRODUCTION_SUB1_ID‘s |
[AGG_TICKET_PRODUCTION_SUB2_ID] | text[] | Info di debug: ticket attivo PRODUCTION_SUB2_ID‘s |
Codice a titolo di esempio “sample_pattern_statistik.sql”
Importante:
Si parte dal presupposto che siano già state create le tabelle ausiliari analitiche report_01.sample_xxxxxxxx.
Creazione di tabelle ausiliari analitiche (corsa del cursore - UDF)
Per un sistema di produzione inserire al posto di schema report_01, un campo vuoto ‘‘. Deve tuttavia essere identico a quello specificato al momento della creazione delle tabelle ausiliarie.
select * from skrpps_02.eval_pattern_statistic
(
'report_01' -- Schema
,'sample' – Table Name Prefix
,ARRAY['AGG_MC_SORT_ID','AGG_SEQ_NAME','AGG_PATTERN_NAME'] – Sorting
,true -- GroupBy Machine
,false -- GroupBy Shift?
,false -- GroupBy UserName
,true -- GroupBy Pattern
,true -- GroupBy Sequence
,false -- GroupBy "TICKET_UID"
,false -- GroupBy "TICKET_PRODUCTION_ID"
,false -- GroupBy "TICKET_PRODUCTION_SUB1_ID"
,false -- GroupBy "TICKET_PRODUCTION_SUB2_ID"
,false -- GroupBy "TICKET_CUSTOMER_ID"
,false -- GroupBy "TICKET_ARTICLE_ID"
,NULL -- ARRAY[2,3] -- Filter by shift
,NULL -- ARRAY['User_3','User_4'] -- Selection/Filter UserName
,NULL -- ARRAY['S-kUuG0','P-Sjo9v3'] -- Selection/Filter Pattern
,NULL -- ARRAY['SEQ-WNJhP3','SEQ-9bEqD1'] -- Selection/Filter Sequences
,NULL -- ARRAY[3374994314,3738720541] -- Selection/Filter FilterTicketUid bigint[]
,NULL -- ARRAY['2E0Hl4-H8T803-cId-8','2E0Hl4-H8T803-cId-8'] -- Selection/Filter FilterTicketProductionId text[]
,NULL -- ARRAY['SubId_2','SubId_21'] -- Selection/Filter FilterTicketProductionSub1Id text[]
,NULL -- ARRAY['-'] -- Selection/Filter FilterTicketProductionSub2Id text[]
,NULL -- ARRAY['cId-2','cId-4'] -- Selection/Filter FilterTicketCustomerId text[]
,NULL -- ARRAY['H8T803'] -- Selection/Filter FilterTicketArticleId text[]
,NULL -- ARRAY[4,3] -- Selection/Filter UserState
,NULL -- ARRAY[4,3] -- Selection/Filter SintralState
,'00:00:01' -- FilterMinDuration‚ Filter-out fabric pieces or tickets with a duration shorter than the specified value.
-- (e.g. in order to keep times after ending a ticket and before starting the next out of the report in case of the Auto Production Mode)
,false – Evaluate net times only. ( == Machine has set the Productive flag == Time from pattern loaded state to Piece Counter is zero
,false – If == false, all times allocated to service tickets will be filtered-out.
);