domenica 7 aprile 2019

Strano problema CALL TRANSACTION a VL33N.

Dopo l'aggiornamento del sistema alla EHP8 ho riscontrato una stranezza utilizzando la CALL TRANSACTION sulla VL33N.

La VL33N è una transazione standard per la visualizzazione del documento di fornitura, presenta in ingresso il solo campo del numero documento di fornitura:




Questo campo ha come ID parametro = 'VL'


se viene viene valorizzato l'ID e chiamata la CALL TRANSACTION 'VL33N' AND SKIP FIRST SCREEN., il campo in ingresso resta vuoto e la chiamata termina con un errore.

Ad esempio ho costruito un report ALV che riporta in output dei documenti di fornitura


ho reso sensibile al click del mouse il campo in modo che, clickando sul numero documento, venga appunto lanciata la VL33N, ma si riceve l'errore:


e si nota che il campo del documento è vuoto.

Questo il codice che lancia la chiamata alla VL33N:

    CASE rs_selfield-sel_tab_field.


      WHEN 'TB_OUT-VBELN'.

        DATA: wa_vbeln LIKE likp-vbeln.
        wa_vbeln = rs_selfield-value.
        CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
          EXPORTING
            input  = wa_vbeln
          IMPORTING
            output = wa_vbeln.
* Passo il codice da visualizzare
        SET PARAMETER ID 'VL' FIELD wa_vbeln.

*     Execute transaction VL33N, and skip initial data entry screen
        CALL TRANSACTION 'VL33N' AND SKIP FIRST SCREEN.

Tutto sembra corretto, ho provato in debug e il campo wa_wbeln contiene il valore del numero documento da visualizzare, eppure il campo nella schermata iniziale resta vuoto.

La stranezza è che se imposto l'ID su 'VLM', cioè così:

        SET PARAMETER ID 'VLM' FIELD wa_vbeln.

la chiamata funziona correttamente!

Aggiornamento del 24/04/2019: il comportamento è normale, vedi Parameter ID e CALL TRANSACTION.

Nessun commento:

Posta un commento