Vai al contenuto

WMSW02 - Index out of bound su F8/Shift+F7 con griglia vuota

Campo Valore
ID ClickUp 869df00yn
Data segnalazione 2026-05-27
Data risoluzione 2026-05-29
Programmi coinvolti WMSW02, WMS002
Impatto Alto

Sintomo

Premendo F8 (dettaglio movimenti locazione) o Shift+F7 (vis. giacenze per locazione) sulla griglia di WMSW02 (consultazione locazioni) quando la griglia non contiene alcuna locazione, il runtime AcuCOBOL solleva un errore "index out of bound" che termina la sessione utente.

Causa

I rami F8 e Shift+F7 di WMSW02 verificavano la posizione corrente del cursore (i not = zero, tm-r-locazione (i) not = spaces) ma non controllavano se la griglia avesse effettivamente almeno una riga caricata. Quando la griglia era vuota (tm-grid-det-dati-pnt = zero oppure gor-r-n-m = 0), l'accesso ai vettori tm-r-locazione(i) con i non valorizzato provocava un'eccezione di accesso oltre i limiti del vettore.

Analoga condizione era gia' presente in WMS002 (mappatura locazioni) e gestita parzialmente.

Correzione

Modificato WMSW02 (TASK-5219):

  • F8 (dettaglio movimenti): aggiunti controlli iniziali su tm-grid-det-dati-pnt = zero e gor-r-n-m = 0 che mostrano il messaggio "Nessuna locazione presente in griglia" e tornano a a-grid senza tentare l'accesso al vettore
  • Shift+F7 (giacenze per locazione): stessa protezione

Modificato WMS002 (per coerenza, vedi anche la sezione "Validazioni recenti" nella sua documentazione):

  • Shift+F7 (giacenze per locazione): controllo esplicito di griglia vuota e di riga non selezionata prima di chiamare WMSW03
  • Ramo di cancellazione (CTE): esteso il guard a gor-r-n-m = 0 oltre a tm-grid-det-dati-pnt = zero

Rilasciato anche negli ambienti BM + DEA, comprese le cartelle BUILD.