METHOD line_exists_1.
** retorna true se uma linha existe na tabela interna
* line_exists( itab[] ).
ENDMETHOD.
METHOD line_exists_2.
* data: t_kna1 TYPE TABLE OF kna1.
types: begin of y_kna1,
kunnr type kna1-kunnr,
name1 type kna1-name1,
end of y_kna1,
y_t_kna1 type STANDARD TABLE OF y_kna1
WITH KEY PRIMARY_KEY COMPONENTS kunnr .
data(t_kna1) = value y_t_kna1(
( kunnr = '10' name1 = 'Cliente dez' )
( kunnr = '20' name1 = 'Cliente vinte' )
( kunnr = '30' name1 = 'Cliente trinta' )
).
*** Sem table function
READ TABLE t_kna1
TRANSPORTING NO FIELDS
WITH KEY kunnr = '20' .
*** Com table function
data(v_tabix) = line_index( t_kna1[ kunnr = '20' ] ).
ENDMETHOD.
METHOD line_exists_3.
types: begin of y_kna1,
kunnr type kna1-kunnr,
name1 type kna1-name1,
end of y_kna1,
y_t_kna1 type STANDARD TABLE OF y_kna1
WITH KEY PRIMARY_KEY COMPONENTS kunnr.
data(t_kna1) = value y_t_kna1(
( kunnr = '10' name1 = 'Cliente dez' )
( kunnr = '20' name1 = 'Cliente vinte' )
).
*** Sem table function
READ TABLE t_kna1
TRANSPORTING NO FIELDS
WITH KEY kunnr = '20' .
IF ( sy-subrc IS INITIAL ).
ENDIF.
*** Com table function
* if line_exists( t_kna1[ kunnr = '20' ] ).
*
* endif.
ENDMETHOD.
METHOD line_exists_4.
types: begin of y_kna1,
kunnr type kna1-kunnr,
name1 type kna1-name1,
end of y_kna1,
y_t_kna1 type STANDARD TABLE OF y_kna1
WITH KEY PRIMARY_KEY COMPONENTS kunnr.
data(t_kna1) = value y_t_kna1(
( kunnr = '10' name1 = 'Cliente dez' )
( kunnr = '20' name1 = 'Cliente vinte' )
).
*** Sem table function
READ TABLE t_kna1
TRANSPORTING NO FIELDS
WITH KEY kunnr = '20' .
IF ( sy-subrc IS INITIAL ).
data(v_existe) = 'Sim'.
ELSE.
v_existe = 'Não'.
ENDIF.
*** Com table function
DATA(v_existe2) = COND #(
WHEN line_exists( t_kna1[ kunnr = '20' ] )
THEN 'Sim'
ELSE 'Não'
).
ENDMETHOD.
** retorna true se uma linha existe na tabela interna
* line_exists( itab[] ).
ENDMETHOD.
METHOD line_exists_2.
* data: t_kna1 TYPE TABLE OF kna1.
types: begin of y_kna1,
kunnr type kna1-kunnr,
name1 type kna1-name1,
end of y_kna1,
y_t_kna1 type STANDARD TABLE OF y_kna1
WITH KEY PRIMARY_KEY COMPONENTS kunnr .
data(t_kna1) = value y_t_kna1(
( kunnr = '10' name1 = 'Cliente dez' )
( kunnr = '20' name1 = 'Cliente vinte' )
( kunnr = '30' name1 = 'Cliente trinta' )
).
*** Sem table function
READ TABLE t_kna1
TRANSPORTING NO FIELDS
WITH KEY kunnr = '20' .
*** Com table function
data(v_tabix) = line_index( t_kna1[ kunnr = '20' ] ).
ENDMETHOD.
METHOD line_exists_3.
types: begin of y_kna1,
kunnr type kna1-kunnr,
name1 type kna1-name1,
end of y_kna1,
y_t_kna1 type STANDARD TABLE OF y_kna1
WITH KEY PRIMARY_KEY COMPONENTS kunnr.
data(t_kna1) = value y_t_kna1(
( kunnr = '10' name1 = 'Cliente dez' )
( kunnr = '20' name1 = 'Cliente vinte' )
).
*** Sem table function
READ TABLE t_kna1
TRANSPORTING NO FIELDS
WITH KEY kunnr = '20' .
IF ( sy-subrc IS INITIAL ).
ENDIF.
*** Com table function
* if line_exists( t_kna1[ kunnr = '20' ] ).
*
* endif.
ENDMETHOD.
METHOD line_exists_4.
types: begin of y_kna1,
kunnr type kna1-kunnr,
name1 type kna1-name1,
end of y_kna1,
y_t_kna1 type STANDARD TABLE OF y_kna1
WITH KEY PRIMARY_KEY COMPONENTS kunnr.
data(t_kna1) = value y_t_kna1(
( kunnr = '10' name1 = 'Cliente dez' )
( kunnr = '20' name1 = 'Cliente vinte' )
).
*** Sem table function
READ TABLE t_kna1
TRANSPORTING NO FIELDS
WITH KEY kunnr = '20' .
IF ( sy-subrc IS INITIAL ).
data(v_existe) = 'Sim'.
ELSE.
v_existe = 'Não'.
ENDIF.
*** Com table function
DATA(v_existe2) = COND #(
WHEN line_exists( t_kna1[ kunnr = '20' ] )
THEN 'Sim'
ELSE 'Não'
).
ENDMETHOD.