Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Accessibility @ Simple Boxes

Former Member
0 Likes
637

hi developers,

at the moment i m reading through a SAP-document about "Rules for Accessible ABAP Lists" at the moment, and there are rules for "Simple Boxes" mentioned.

My question now is maybe really stupid, but how does the code for a "simple box" in an ABAP List looks like?! I mean, i know how to use simple boxes in dynpros but i don t know atm how to implement that in normal abap lists.

can someone help me and show an accessible example for that?

regards, basti

1 ACCEPTED SOLUTION
Read only

dev_parbutteea
Active Contributor
0 Likes
616

Hi,

try this sample

WRITE : / sy-uline(147).

WRITE AT /1(1) '|'.

WRITE AT 3(35) ' Fournisseurs'.

WRITE AT 39(1) '|'.

WRITE AT 41(33) ' Balance <<auxiliare>>'.

WRITE AT 75(1) '|'.

WRITE AT 77(33) ' Valorisation de stock'.

WRITE AT 111(1) '|'.

WRITE AT 113(33) ' Ecart'.

WRITE AT 147(1) '|'.

  • Ligne 2

WRITE AT /1(1) '|'.

WRITE AT 3(35) ''.

WRITE AT 39(1) '|'.

WRITE AT 41(33) ' Total des mouvements'.

WRITE AT 75(1) '|'.

WRITE AT 77(33) ' Total des mouvements'.

WRITE AT 111(1) '|'.

WRITE AT 113(33) ' Balance - Valorisation'.

WRITE AT 147(1) '|'.

  • Ligne 3

WRITE AT /1(1) '|'.

WRITE AT 3(35) ''.

WRITE AT 39(1) '|'.

WRITE AT 41(33) ' (607-609) période'.

WRITE AT 75(1) '|'.

WRITE AT 77(33) ' période'.

WRITE AT 111(1) '|'.

WRITE AT 113(33) ''.

WRITE AT 147(1) '|'.

  • Ligne 4

WRITE AT /1(1) '|'.

WRITE AT 39(1) '|'.

WRITE AT 75(1) '|'.

WRITE AT 111(1) '|'.

WRITE AT 147(1)'|'.

  • Ligne 5

WRITE AT /1(1) '|'.

WRITE AT 3(35) ''.

WRITE AT 39(1) '|'.

WRITE AT 41(14)' D'.

WRITE AT 56(1) '|'.

WRITE AT 58(14)' C'.

WRITE AT 75(1) '|'.

WRITE AT 77(14)' SD'.

WRITE AT 92(1) '|'.

WRITE AT 94(14) ' SC'.

WRITE AT 111(1) '|'.

WRITE AT 113(14) ' D'.

WRITE AT 129(1) '|'.

WRITE AT 131(14) ' C'.

WRITE AT 147(1) '|'.

WRITE : / sy-uline(147).

*Boucle dans la table interne gt_etat

LOOP AT gt_etat INTO gs_etat .

WRITE AT /1(1) '|'.

WRITE AT 3(35) gs_etat-name1.

WRITE AT 39(1) '|'.

ld_temp_text = gs_etat-sdebit_compt.

WRITE AT 41(15) ld_temp_text.

WRITE AT 56(1) '|'.

WRITE AT 58(14) gs_etat-scredit_compt.

WRITE AT 75(1) '|'.

clear ld_temp_text.

ld_temp_text = gs_etat-sdebit_stat.

WRITE AT 77(15) ld_temp_text.

WRITE AT 92(1) '|'.

WRITE AT 94(14) gs_etat-scredit_stat.

WRITE AT 111(1) '|'.

clear ld_temp_text.

ld_temp_text = gs_etat-ecart_sdebit.

WRITE AT 113(15) ld_temp_text.

WRITE AT 129(1) '|'.

WRITE AT 131(14) gs_etat-ecart_scredit.

WRITE AT 147(1) '|'.

ENDLOOP.

WRITE : / sy-uline(147).

Just replace the table .

Reward if useful,

Sooness.

4 REPLIES 4
Read only

dev_parbutteea
Active Contributor
0 Likes
617

Hi,

try this sample

WRITE : / sy-uline(147).

WRITE AT /1(1) '|'.

WRITE AT 3(35) ' Fournisseurs'.

WRITE AT 39(1) '|'.

WRITE AT 41(33) ' Balance <<auxiliare>>'.

WRITE AT 75(1) '|'.

WRITE AT 77(33) ' Valorisation de stock'.

WRITE AT 111(1) '|'.

WRITE AT 113(33) ' Ecart'.

WRITE AT 147(1) '|'.

  • Ligne 2

WRITE AT /1(1) '|'.

WRITE AT 3(35) ''.

WRITE AT 39(1) '|'.

WRITE AT 41(33) ' Total des mouvements'.

WRITE AT 75(1) '|'.

WRITE AT 77(33) ' Total des mouvements'.

WRITE AT 111(1) '|'.

WRITE AT 113(33) ' Balance - Valorisation'.

WRITE AT 147(1) '|'.

  • Ligne 3

WRITE AT /1(1) '|'.

WRITE AT 3(35) ''.

WRITE AT 39(1) '|'.

WRITE AT 41(33) ' (607-609) période'.

WRITE AT 75(1) '|'.

WRITE AT 77(33) ' période'.

WRITE AT 111(1) '|'.

WRITE AT 113(33) ''.

WRITE AT 147(1) '|'.

  • Ligne 4

WRITE AT /1(1) '|'.

WRITE AT 39(1) '|'.

WRITE AT 75(1) '|'.

WRITE AT 111(1) '|'.

WRITE AT 147(1)'|'.

  • Ligne 5

WRITE AT /1(1) '|'.

WRITE AT 3(35) ''.

WRITE AT 39(1) '|'.

WRITE AT 41(14)' D'.

WRITE AT 56(1) '|'.

WRITE AT 58(14)' C'.

WRITE AT 75(1) '|'.

WRITE AT 77(14)' SD'.

WRITE AT 92(1) '|'.

WRITE AT 94(14) ' SC'.

WRITE AT 111(1) '|'.

WRITE AT 113(14) ' D'.

WRITE AT 129(1) '|'.

WRITE AT 131(14) ' C'.

WRITE AT 147(1) '|'.

WRITE : / sy-uline(147).

*Boucle dans la table interne gt_etat

LOOP AT gt_etat INTO gs_etat .

WRITE AT /1(1) '|'.

WRITE AT 3(35) gs_etat-name1.

WRITE AT 39(1) '|'.

ld_temp_text = gs_etat-sdebit_compt.

WRITE AT 41(15) ld_temp_text.

WRITE AT 56(1) '|'.

WRITE AT 58(14) gs_etat-scredit_compt.

WRITE AT 75(1) '|'.

clear ld_temp_text.

ld_temp_text = gs_etat-sdebit_stat.

WRITE AT 77(15) ld_temp_text.

WRITE AT 92(1) '|'.

WRITE AT 94(14) gs_etat-scredit_stat.

WRITE AT 111(1) '|'.

clear ld_temp_text.

ld_temp_text = gs_etat-ecart_sdebit.

WRITE AT 113(15) ld_temp_text.

WRITE AT 129(1) '|'.

WRITE AT 131(14) gs_etat-ecart_scredit.

WRITE AT 147(1) '|'.

ENDLOOP.

WRITE : / sy-uline(147).

Just replace the table .

Reward if useful,

Sooness.

Read only

0 Likes
616

could you please gimme your data-definitions too?

just that i can execute it.

you ll get the points then

Read only

0 Likes
616

TYPES :

BEGIN OF tt_etat,

lifnr TYPE zvalo_stocks_ncg-lifnr,

name1 TYPE lfa1-name1,

sdebit_compt TYPE bseg-dmbtr,

scredit_compt TYPE bseg-dmbtr,

sdebit_stat TYPE bseg-dmbtr,

scredit_stat TYPE bseg-dmbtr,

ecart_sdebit TYPE bseg-dmbtr,

ecart_scredit TYPE bseg-dmbtr,

END OF tt_etat.

data: gt_etat TYPE STANDARD TABLE OF tt_etat,

gs_etat TYPE tt_etat.

Read only

Former Member
0 Likes
616

Hi

I don't really understand what Simple Box means for you, if it's CHECK BOX:

START-OF-SELECTION.

LOOP AT ITAB.
  WRITE: / ITAB-MARK AS CHECKBOX,
                ITAB-FIELD1,
                ITAB-FIELD2.
ENDLOOP.

AT USER-COMMAND.

   CASE SY-UCOMM.
      WHEN 'SEL'.
      DO.
          READ LINE SY-INDEX FIELD ITAB-MARK INTO ITAB-MARK.
          IF SY-SUBRC <> 0. EXIT. ENDIF. 
          IF ITAB-MARK = 'X'.
            WRITE: / 'Line', SY-INDEX, 'is selected'.
          ENDIF.
      ENDDO.
   ENDCASE.

If you mean as BOX, you can create using the system variable SY-VLINE (= |) and SY-ULINE (= - ).

WRITE: SY-ULINE(10),

/SY-VLINE, 'My Box', AT 10 SY-VLINE,

/SY-ULINE(10).

Max