E' stata fatta la reusable part per la gestione delle numerate e dei raggruppamenti.
TBED013G - Gestore Numerate
TBED014G - Gestore Raggruppamenti.
Le tabelle di manutenzione sono in via di sviluppo ma se intanto dovete fare delle letture su PRTANU e PRTARG potete usare queste RP.
Gestione Numerate
Oltre alla descrizione, la taglia alternativa, la calzata, la sequenza e il codice cartone, la Reusable-Part ha una proprietà (up_TAGLIE) che punta ad una Collection di 20 elementi (numerati da 1 a 20) che contiene i seguenti dati:
- up_IDTAG - ID Taglia - Codice taglia da 2 caratteri (es. 37, --, 38, ecc.)
- up_VISTAG - Codice Taglia per Visualizzazione - Codice da 5 caratteri
- up_CODTAG - Codice Taglia per Controlli - Codice da 4 Caratteri (es. '37 ', '37--', '38 ',ecc.)
Esempio di utilizzo all'interno di una WAM:
DEFINE_COM CLASS(£TBED013G) NAME(£vi_PRTANU)
FOR EACH(£TAGLIA) IN(£vi_PRTANU.up_Lista<£PAKNUP>.up_TAGLIE) KEY(£II)
CONTINUE IF(£TAGLIA.up_IDTAG = '')
....
£BUTG := £TAGLIA.up_CODTAG
....
ENDFOR
La variabile £II restituita dal parametro Key può essere utilizzata per la gestione di eventuali array all'interno del ciclo.
Gestione Raggruppamenti
Anche questa Reusable-Part oltre alla descrizione e la numerata di riferimento, ha una proprietà (up_TAGLIE) che punta ad una Collection di 20 elementi (numerati da 1 a 20) che contiene i seguenti dati:
- up_TAGRAG - Taglia del raggruppamento - Codice da 2 caratteri (es. 01, 02, 03, ecc.)
- up_FinoAl - Fino Al - Codice da 4 caratteri (es. 37--, 42--, ecc.)
Esempio di utilizzo all'interno di una WAM:
DEFINE_COM CLASS(£TBED014G) NAME(£vi_PRTARG)
FOR EACH(£TAGLIA) IN(£vi_PRTARG.um_GetItem(£LEKRGT).up_TAGLIE) KEY(£II)
CONTINUE IF(£TAGLIA.up_TAGRAG = '')
....
£BUTG := £TAGLIA.up_TAGRAG
....
ENDFOR
La variabile £II restituita dal parametro Key può essere utilizzata per la gestione di eventuali array all'interno del ciclo.
Decodifica Taglie
E' una nuova Reusable-Part TBEDTAGG che ritorna come risultato la schiera delle taglie da visualizzare e/o gestire nelle WAM.
Come *RESULT torna la schiera per la visualizzazione delle taglie di Riferimento (20 x 5), ma su richiesta tornano anche le schiere da 20 x 2 (taglie interne) e da 20 x 4 (es. 37--).
Esempio di utilizzo all'interno di una WAM:
DEF_ARRAY NAME(£TAG) INDEXES(£II) OF_FIELDS(£TAGLIA01 £TAGLIA02 £TAGLIA03 £TAGLIA04 £TAGLIA05 £TAGLIA06 £TAGLIA07 £TAGLIA08 £TAGLIA09 £TAGLIA10 £TAGLIA11 £TAGLIA12 £TAGLIA13 £TAGLIA14 £TAGLIA15 £TAGLIA16 £TAGLIA17 £TAGLIA18 £TAGLIA19 £TAGLIA20)
DEF_ARRAY NAME(£TG5) INDEXES(£II) OVERLAYING(£PG§IDTG) TYPE(*CHAR) TOT_ENTRY(20) ENTRY_LEN(5)
DEFINE_COM CLASS(£TBEDTAGG) NAME(£vi_TAGLIE)
£PAKTG := *NULL
FETCH FIELDS(£PAKTG) FROM_FILE(PART01L) WITH_KEY(£PAKAR)
£PG§IDTG := £vi_TAGLIE.um_decotag( £MWKTAG £PAKTG )
BEGIN_LOOP USING(£II) TO(20)
£TAG£II := £TG5£II
END_LOOP
E' stata creata la funzione RDMLX ED00122 per poter richiamare TBEDTAGG da funzioni RDML.
* Riceve:
* £R_CDNUME = numerata
* £R_CDKRGT = raggruppamento
*
* Ritorna:
* £PG§KTG = schera taglie 20 x 4
* £PG§IDTG = schera taglie 20 x 5
* £PRNUKTG= schera taglie 20 x 2
* £PRRGFIAL = schera taglie 20 x 4 fino al (x raggruppamenti)