SAP SOPORTE VENTAS T182A

From SapWiki
Revision as of 19:23, 24 June 2026 by WikiSysop (talk | contribs) (Created page with " <nowiki>*&---------------------------------------------------------------------* *& Report ZSD_INSERT_T182A *& *&------------------------------------------------------------...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
*&---------------------------------------------------------------------*
*& Report  ZSD_INSERT_T182A
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT  zsd_insert_t182a LINE-SIZE 100.

DATA ls_t182a TYPE t182a.
SELECTION-SCREEN: BEGIN OF BLOCK bl1 WITH FRAME.
PARAMETERS: p_grpze LIKE t182a-grpze DEFAULT 'LST1' OBLIGATORY,
            p_grpno LIKE t182a-grpno OBLIGATORY.
SELECTION-SCREEN: END OF BLOCK bl1.


SELECTION-SCREEN: BEGIN OF BLOCK bl2 WITH FRAME.
PARAMETERS: p_window LIKE t182a-window DEFAULT 'MAIN' OBLIGATORY,
            p_elemen LIKE t182a-element .
SELECTION-SCREEN: END OF BLOCK bl2.

INITIALIZATION.
clear p_grpno.

AT SELECTION-SCREEN OUTPUT.
  LOOP AT SCREEN.
    IF screen-name = 'P_ELEMEN'.
       screen-INPUT = '0'.
    MODIFY SCREEN.
    endif.
  ENDLOOP.

AT SELECTION-SCREEN ON p_grpno.

  IF p_grpno+0(1) <> '9'.
    MESSAGE e000(fb) WITH 'Solo se permiten entradas iniciadas con'
                          '9'.
  ENDIF.

  SELECT SINGLE * INTO ls_t182a FROM  t182a
         WHERE  grpze    = p_grpze
         AND    grpno    = p_grpno.

  IF sy-subrc = 0.
    MESSAGE e000(fb) WITH  'Registro ya existe, solo se permite insertar'.
  Endif..

  CONCATENATE p_grpze '_' p_grpno INTO p_elemen.

AT SELECTION-SCREEN ON p_grpze.

  SELECT SINGLE * INTO ls_t182a FROM  t182a
         WHERE  grpze    = p_grpze
         AND    grpno    = p_grpno.

  IF sy-subrc = 0.
    MESSAGE e000(fb) WITH  'Registro ya existe, solo se permite insertar'.
  Endif.

    CONCATENATE p_grpze '_' p_grpno INTO p_elemen.

START-OF-SELECTION.

*  IF p_elemen IS INITIAL.
*    MESSAGE e000(fb) WITH 'Debe ingresar elemento'.
*  ENDIF.

  SELECT SINGLE * INTO ls_t182a FROM  t182a
         WHERE  grpze    = p_grpze
         AND    grpno    = p_grpno.

  IF sy-subrc = 0.
    WRITE:/ 'Registro ya existe, solo se permite insertar'.
  ELSE.
    ls_t182a-grpze = p_grpze.
    ls_t182a-grpno = p_grpno.
    ls_t182a-window = p_window.
    ls_t182a-element = p_elemen.

    INSERT t182a FROM ls_t182a.
    IF sy-subrc = 0.
      WRITE:/ 'Registro insertado correctamente:',
              ls_t182a.
    ELSE.
      WRITE:/ 'Error insertar registro:',
          ls_t182a.

    ENDIF.

  ENDIF.


*Selection texts
*----------------------------------------------------------
* P_ELEMEN D       .
* P_GRPNO D       .
* P_GRPZE D       .
* P_WINDOW D       .


*Messages
*----------------------------------------------------------
*
* Message class: FB
*000   & & & &

----------------------------------------------------------------------------------
Extracted by Mass Download version 1.5.2 - E.G.Mellodew. 1998-2016. Sap Release 701