{"id":540,"date":"2023-07-06T19:41:40","date_gmt":"2023-07-06T22:41:40","guid":{"rendered":"https:\/\/www.matiasvillagarcia.com\/blog\/?p=540"},"modified":"2023-07-06T19:41:41","modified_gmt":"2023-07-06T22:41:41","slug":"agregando-botones-a-una-selection-screen","status":"publish","type":"post","link":"https:\/\/www.matiasvillagarcia.com\/blog\/index.php\/2023\/07\/06\/agregando-botones-a-una-selection-screen\/","title":{"rendered":"Agregando botones a una selection screen"},"content":{"rendered":"\n<p>A veces es necesario agregar botones a la pantalla de selecci\u00f3n de un reporte.<\/p>\n\n\n\n<p>Esto lo podemos realizar de la siguiente forma:<\/p>\n\n\n\n<p>Primero debemos definir que vamos a usar la estructura: SSCRFIELDS<\/p>\n\n\n\n<p>TABLES: SSCRFIELDS<\/p>\n\n\n\n<p>Luego en el evento INITIALIZATION debemos asignarle por ejemplo el texto de los botones.<\/p>\n\n\n\n<p>&nbsp;&nbsp;MOVE&nbsp;&#8216;Este&nbsp;es&nbsp;el&nbsp;boton&nbsp;1&#8217;&nbsp;TO&nbsp;sscrfields-functxt_01.<br>&nbsp;&nbsp;MOVE&nbsp;&#8216;Cambiar&nbsp;1&#8217;&nbsp;TO&nbsp;sscrfields-functxt_02.<\/p>\n\n\n\n<p>En el evento AT SELECTION-SCREEN podemos manejar la l\u00f3gica de estos botones.<\/p>\n\n\n\n<p>AT\u00a0SELECTION-SCREEN.<br>\u00a0\u00a0IF\u00a0sy-ucomm\u00a0=\u00a0&#8216;FC01&#8217;.<br>\u00a0\u00a0\u00a0\u00a0d_butt1\u00a0=\u00a0&#8216;YES&#8217;.<br>\u00a0\u00a0\u00a0\u00a0sscrfields-ucomm\u00a0=\u00a0&#8216;ONLI&#8217;.<br>\u00a0\u00a0ELSEIF\u00a0sy-ucomm\u00a0=\u00a0&#8216;FC02&#8217;.<br>\u00a0\u00a0\u00a0\u00a0IF\u00a0sscrfields-functxt_02\u00a0=\u00a0&#8216;Cambiar\u00a01&#8217;.<br>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0sscrfields-functxt_02\u00a0=\u00a0&#8216;Cambiar\u00a02&#8217;.<br>\u00a0\u00a0\u00a0\u00a0ELSE.<br>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0sscrfields-functxt_02\u00a0=\u00a0&#8216;Cambiar\u00a01&#8217;.<br>\u00a0\u00a0\u00a0\u00a0ENDIF.<br>\u00a0\u00a0ENDIF.<\/p>\n\n\n\n<p>Cada bot\u00f3n que agreguemos va a tener el c\u00f3digo (sy-ucomm) FC01 a FC05.<\/p>\n\n\n\n<p>Ac\u00e1 podemos ver un c\u00f3digo a modo de ejemplo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>REPORT ZSCREEN3.\r\nTABLES: sscrfields.\r\n\r\nDATA: d_butt1(4).\r\n\r\nPARAMETERS: p_grpa1(10) MODIF ID a,\r\n            p_grpa2(10) MODIF ID a,\r\n            p_grpb1(10) MODIF ID b.\r\n\r\nSELECTION-SCREEN FUNCTION KEY 1.\r\nSELECTION-SCREEN FUNCTION KEY 2.\r\n\r\nINITIALIZATION.\r\n\r\n  MOVE 'Este es el boton 1' TO sscrfields-functxt_01.\r\n  MOVE 'Cambiar 1' TO sscrfields-functxt_02.\r\n  d_butt1 = 'NO'.\r\n\r\nAT SELECTION-SCREEN.\r\n  IF sy-ucomm = 'FC01'.\r\n    d_butt1 = 'YES'.\r\n    sscrfields-ucomm = 'ONLI'.\r\n  ELSEIF sy-ucomm = 'FC02'.\r\n    IF sscrfields-functxt_02 = 'Cambiar 1'.\r\n      sscrfields-functxt_02 = 'Cambiar 2'.\r\n    ELSE.\r\n      sscrfields-functxt_02 = 'Cambiar 1'.\r\n    ENDIF.\r\n  ENDIF.\r\n\r\nSTART-OF-SELECTION.\r\n\r\nWRITE: \/ 'd_butt1: ', d_butt1.<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>A veces es necesario agregar botones a la pantalla de selecci\u00f3n de un reporte. Esto lo podemos realizar de la siguiente forma: Primero debemos definir que vamos a usar la estructura: SSCRFIELDS TABLES: SSCRFIELDS Luego en el evento INITIALIZATION debemos asignarle por ejemplo el texto de los botones. &nbsp;&nbsp;MOVE&nbsp;&#8216;Este&nbsp;es&nbsp;el&nbsp;boton&nbsp;1&#8217;&nbsp;TO&nbsp;sscrfields-functxt_01.&nbsp;&nbsp;MOVE&nbsp;&#8216;Cambiar&nbsp;1&#8217;&nbsp;TO&nbsp;sscrfields-functxt_02. En el evento AT SELECTION-SCREEN podemos [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-540","post","type-post","status-publish","format-standard","hentry","category-abap"],"_links":{"self":[{"href":"https:\/\/www.matiasvillagarcia.com\/blog\/index.php\/wp-json\/wp\/v2\/posts\/540","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.matiasvillagarcia.com\/blog\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.matiasvillagarcia.com\/blog\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.matiasvillagarcia.com\/blog\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.matiasvillagarcia.com\/blog\/index.php\/wp-json\/wp\/v2\/comments?post=540"}],"version-history":[{"count":1,"href":"https:\/\/www.matiasvillagarcia.com\/blog\/index.php\/wp-json\/wp\/v2\/posts\/540\/revisions"}],"predecessor-version":[{"id":541,"href":"https:\/\/www.matiasvillagarcia.com\/blog\/index.php\/wp-json\/wp\/v2\/posts\/540\/revisions\/541"}],"wp:attachment":[{"href":"https:\/\/www.matiasvillagarcia.com\/blog\/index.php\/wp-json\/wp\/v2\/media?parent=540"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.matiasvillagarcia.com\/blog\/index.php\/wp-json\/wp\/v2\/categories?post=540"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.matiasvillagarcia.com\/blog\/index.php\/wp-json\/wp\/v2\/tags?post=540"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}