Show pageOld revisionsBacklinksExport to PDFODT exportBack to top This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. ====== OEE Competition ====== I seguenti moduli software hanno l'obiettivo di gestire l'OEE Competition. La richiesta è stata quella di mostrare sull'Andon Board di ogni linea di un determinato dipartimento, i valori in tempo reale (relativi al turno corrente) dei pezzi prodotti e degli scarti, sia per linea che per dipartimento. Inoltre, questi valori vanno confrontati con delle soglie (per linea e dipartimento) preconfigurate tramite inserimento manuale in una pagina dell'applicazione. Quindi i dati da mostrare sono: - pezzi prodotti del turno corrente della linea - soglia pezzi prodotti per turno della linea - scarti prodotti del turno corrente della linea - soglia scarti per turno della linea - pezzi prodotti del turno corrente del dipartimento - soglia pezzi prodotti per turno del dipartimento - scarti prodotti per turno del dipartimento - soglia scarti per turno del dipartimento I dati devono essere registrati per turno e accessibili successivamente tramite nuova pagina dell'applicazione. Un esempio dei grafici da mostrare sull'Andon Board (vanno gestiti anche i colori dello sfondo o dei grafici): {{:cli:franke:andon.png?1200|}} Da sviluppare: - analizzare come recuperare i dati di pezzi prodotti e scarti del turno, per linea e dipartimento (già esistente o da sviluppare??) - aggiungere una tabella delle soglie di pezzi e scarti per ubicazione - aggiungere la possibilità di valorizzare i dati della tabella tramite GUI - registrare i dati di pezzi prodotti e scarti per linea e per dipartimento, ogni turno: registrare anche i valori delle soglie in modo che i dati siano utilizzabili anche in un secondo momento, anche se le soglie cambiano Un esempio di un set di dati da visualizzare per giorno/mese (in base alla selezione delle date): {{:cli:franke:tabella1.png?1200|}} ===== Configurazioni aggiuntive database ===== <code sql> CREATE TABLE public.thresholds ( codubi character varying(51), codturnidet character varying(51), thnp1 double precision, thnp2 double precision, ths1 double precision, ths2 double precision ); COMMENT ON COLUMN public.thresholds.codubi IS '1:1 ubicaz.codice'; COMMENT ON COLUMN public.thresholds.codturnidet IS '1:1 turnidet.codice'; COMMENT ON COLUMN public.thresholds.thnp1 IS 'soglia pezzi 1'; COMMENT ON COLUMN public.thresholds.thnp2 IS 'soglia pezzi 2'; COMMENT ON COLUMN public.thresholds.ths1 IS 'soglia scarti 1'; COMMENT ON COLUMN public.thresholds.ths2 IS 'soglia scarti 2'; ALTER TABLE ONLY public.thresholds ADD CONSTRAINT uq_codubi_codturnidet UNIQUE (codubi, codturnidet); </code> ==== Esempio estrazione dati per configurazione soglie ==== <code sql> select ubicaz.codice, ubicaz.descrizio, ubicaz.codubib, u2.descrizio as dubib, concat_pipe(ubicaz.codturno||';'||turni.descrizio||';'||turnidet.codice||';'||turnidet.descrizio||';'||turnidet.orainsec||';'||turnidet.durata||';'||thresholds.thnp1||';'||thresholds.ths1) as info from ubicaz left join ubicaz u2 on ubicaz.codubib = u2.codice left join turni on ubicaz.codturno = turni.codice join turnidet on turni.codice = turnidet.codturno left join thresholds on ubicaz.codice = thresholds.codubi and turnidet.codice = thresholds.codturnidet where ubicaz.tiposet = 'P' group by ubicaz.codice, ubicaz.descrizio, ubicaz.codubib, u2.descrizio order by ubicaz.codice, ubicaz.descrizio </code> cli/franke/competition.txt Last modified: 2018/06/13 18:09by f.zoppini