Вы находитесь на странице: 1из 13

***********************************************************************

*
*
* Report for the access of condition records.
*
*
*
* Usage
: PR
*
* Table
: SAPRIN06
*
* Physical Tab : /1CN/CTXSAPRIN06
*
*
*
* Report-Generation from 25.08.2005 23:32:01
*
* Report-Version GUID : D17583429E6D3347E10000000A114EB0
*
*
*
* Do not change this report; your changes will be lost !
*
*
*
***********************************************************************
report &rptn.
type-pools: ctcus.
*---------------------------------------------------------------------*
FORM MOVE_CORRESPONDING
*
*---------------------------------------------------------------------*
Performs a move-corresponding between "field-symbols".
*
*
This form works as a generic "entry-point".
*
*---------------------------------------------------------------------form move_corresponding
using i_fs_from
type any
value(i_type_from) type ddobjname
value(i_type_to) type ddobjname
changing c_fs_to type any.
* call the right form to perform the actual move-corresponding
case i_type_from.
when '/1CN/WORKING_SET_I_D_TTE'.
case i_type_to.
when '/1CN/CTXSAPRIN06'.
perform move_corr_wsid_cotab
using i_fs_from
changing c_fs_to.
when '/1CN/WORKING_SET_I_S_TTE'.
perform move_corr_wsid_wsis
using i_fs_from
changing c_fs_to.
when '/SAPCND/CONDINDX'.
perform move_corr_wsid_condindx
using i_fs_from
changing c_fs_to.
when '/1CN/STXSAPRIN06'.
perform move_corr_wsid_supptab
using i_fs_from
changing c_fs_to.
endcase.
when '/1CN/WORKING_SET_I_S_TTE'.
case i_type_to.
when '/1CN/WORKING_SET_I_D_TTE'.
perform move_corr_wsis_wsid
using i_fs_from
changing c_fs_to.
endcase.
when '/1CN/LTXSCALEDEF_S'.
case i_type_to.

when '/1CN/LTXSCALEDEF'.
perform move_corr_deftline_deftab
using i_fs_from
changing c_fs_to.
endcase.
when '/1CN/LTXSCALEDIM_S'.
case i_type_to.
when '/1CN/LTXSCALEDIM'.
perform move_corr_dimtline_dimtab
using i_fs_from
changing c_fs_to.
endcase.
when '/1CN/LTXSCALEEVL_S'.
case i_type_to.
when '/1CN/LTXSCALEEVL'.
perform move_corr_evltline_dimtab
using i_fs_from
changing c_fs_to.
endcase.
when '/1CN/LTXSCB__LIN_S'.
case i_type_to.
when '/1CN/LTXSCB__LIN'.
perform move_corr_linB__tline_lintab
using i_fs_from
changing c_fs_to.
endcase.
when '/1CN/LTXSCC__LIN_S'.
case i_type_to.
when '/1CN/LTXSCC__LIN'.
perform move_corr_linC__tline_lintab
using i_fs_from
changing c_fs_to.
endcase.
when '/1CN/LTXSCD__LIN_S'.
case i_type_to.
when '/1CN/LTXSCD__LIN'.
perform move_corr_linD__tline_lintab
using i_fs_from
changing c_fs_to.
endcase.
when '/1CN/LTXSCE__LIN_S'.
case i_type_to.
when '/1CN/LTXSCE__LIN'.
perform move_corr_linE__tline_lintab
using i_fs_from
changing c_fs_to.
endcase.
when '/1CN/LTXSCF__LIN_S'.
case i_type_to.
when '/1CN/LTXSCF__LIN'.
perform move_corr_linF__tline_lintab
using i_fs_from
changing c_fs_to.
endcase.
when '/1CN/LTXSCL__LIN_S'.
case i_type_to.
when '/1CN/LTXSCL__LIN'.
perform move_corr_linL__tline_lintab
using i_fs_from
changing c_fs_to.

endcase.
when '/1CN/LTXSCM__LIN_S'.
case i_type_to.
when '/1CN/LTXSCM__LIN'.
perform move_corr_linM__tline_lintab
using i_fs_from
changing c_fs_to.
endcase.
when '/1CN/LTXSCN__LIN_S'.
case i_type_to.
when '/1CN/LTXSCN__LIN'.
perform move_corr_linN__tline_lintab
using i_fs_from
changing c_fs_to.
endcase.
when '/1CN/LTXSCO__LIN_S'.
case i_type_to.
when '/1CN/LTXSCO__LIN'.
perform move_corr_linO__tline_lintab
using i_fs_from
changing c_fs_to.
endcase.
when '/1CN/LTXSCP__LIN_S'.
case i_type_to.
when '/1CN/LTXSCP__LIN'.
perform move_corr_linP__tline_lintab
using i_fs_from
changing c_fs_to.
endcase.
when '/1CN/LTXSCR__LIN_S'.
case i_type_to.
when '/1CN/LTXSCR__LIN'.
perform move_corr_linR__tline_lintab
using i_fs_from
changing c_fs_to.
endcase.
when '/1CN/LTXSCS__LIN_S'.
case i_type_to.
when '/1CN/LTXSCS__LIN'.
perform move_corr_linS__tline_lintab
using i_fs_from
changing c_fs_to.
endcase.
when '/1CN/LTXSCTC1LIN_S'.
case i_type_to.
when '/1CN/LTXSCTC1LIN'.
perform move_corr_linTC1tline_lintab
using i_fs_from
changing c_fs_to.
endcase.
when '/1CN/LTXSCALEV01_S'.
case i_type_to.
when '/1CN/LTXSCALEV01'.
perform move_corr_v01line_lintab
using i_fs_from
changing c_fs_to.
endcase.
when '/1CN/LTXSCALEV02_S'.
case i_type_to.
when '/1CN/LTXSCALEV02'.

perform move_corr_v02line_lintab
using i_fs_from
changing c_fs_to.
endcase.
endcase.
endform.
"move_corresponding
*---------------------------------------------------------------------*
FORM move_corr_wsid_cotab
*
*---------------------------------------------------------------------form move_corr_wsid_cotab
using value(i_from) type /1CN/WORKING_SET_I_D_TTE
changing i_to type /1CN/CTXSAPRIN06.
move-corresponding i_from to i_to.
endform.
"move_corr_wsid_cotab
*---------------------------------------------------------------------*
FORM move_corr_wsid_wsis
*
*---------------------------------------------------------------------form move_corr_wsid_wsis
using value(i_from) type /1CN/WORKING_SET_I_D_TTE
changing i_to type /1CN/WORKING_SET_I_S_TTE.
move-corresponding i_from to i_to.
endform.
"move_corr_wsid_wsis
*---------------------------------------------------------------------*
FORM move_corr_wsis_wsid
*
*---------------------------------------------------------------------form move_corr_wsis_wsid
using value(i_from) type /1CN/WORKING_SET_I_S_TTE
changing i_to type /1CN/WORKING_SET_I_D_TTE.
move-corresponding i_from to i_to.
endform.
"move_corr_wsis_wsid
*---------------------------------------------------------------------*
FORM move_corr_wsid_condindx
*
*---------------------------------------------------------------------form move_corr_wsid_condindx
using value(i_from) type /1CN/WORKING_SET_I_D_TTE
changing i_to type /SAPCND/CONDINDX.
move-corresponding i_from to i_to.
endform.
"move_corr_wsid_condindx
*---------------------------------------------------------------------*
FORM move_corr_wsid_supptab
*
*---------------------------------------------------------------------form move_corr_wsid_supptab
using value(i_from) type /1CN/WORKING_SET_I_D_TTE
changing i_to type /1CN/STXSAPRIN06.
move-corresponding i_from to i_to.
endform.
"move_corr_wsid_supptab
*---------------------------------------------------------------------*
FORM move_corr_deftline_deftab
*
*---------------------------------------------------------------------form move_corr_deftline_deftab
using value(i_from) type /1CN/LTXSCALEDEF_S
changing i_to type /1CN/LTXSCALEDEF.
move-corresponding i_from to i_to.
endform.
"move_corr_deftline_deftab
*---------------------------------------------------------------------*
FORM move_corr_dimtline_dimtab
*
*---------------------------------------------------------------------form move_corr_dimtline_dimtab
using value(i_from) type /1CN/LTXSCALEDIM_S

changing i_to type /1CN/LTXSCALEDIM.


move-corresponding i_from to i_to.
endform.
"move_corr_dimtline_dimtab
*---------------------------------------------------------------------*
FORM move_corr_evltline_dimtab
*
*---------------------------------------------------------------------form move_corr_evltline_dimtab
using value(i_from) type /1CN/LTXSCALEEVL_S
changing i_to type /1CN/LTXSCALEEVL.
move-corresponding i_from to i_to.
endform.
"move_corr_evltline_dimtab
*---------------------------------------------------------------------*
FORM move_corr_linB__tline_lintab
*
*---------------------------------------------------------------------form move_corr_linB__tline_lintab
using value(i_from) type /1CN/LTXSCB__LIN_S
changing i_to type /1CN/LTXSCB__LIN.
move-corresponding i_from to i_to.
endform.
"move_corr_linB__tline_lintab
*---------------------------------------------------------------------*
FORM move_corr_linC__tline_lintab
*
*---------------------------------------------------------------------form move_corr_linC__tline_lintab
using value(i_from) type /1CN/LTXSCC__LIN_S
changing i_to type /1CN/LTXSCC__LIN.
move-corresponding i_from to i_to.
endform.
"move_corr_linC__tline_lintab
*---------------------------------------------------------------------*
FORM move_corr_linD__tline_lintab
*
*---------------------------------------------------------------------form move_corr_linD__tline_lintab
using value(i_from) type /1CN/LTXSCD__LIN_S
changing i_to type /1CN/LTXSCD__LIN.
move-corresponding i_from to i_to.
endform.
"move_corr_linD__tline_lintab
*---------------------------------------------------------------------*
FORM move_corr_linE__tline_lintab
*
*---------------------------------------------------------------------form move_corr_linE__tline_lintab
using value(i_from) type /1CN/LTXSCE__LIN_S
changing i_to type /1CN/LTXSCE__LIN.
move-corresponding i_from to i_to.
endform.
"move_corr_linE__tline_lintab
*---------------------------------------------------------------------*
FORM move_corr_linF__tline_lintab
*
*---------------------------------------------------------------------form move_corr_linF__tline_lintab
using value(i_from) type /1CN/LTXSCF__LIN_S
changing i_to type /1CN/LTXSCF__LIN.
move-corresponding i_from to i_to.
endform.
"move_corr_linF__tline_lintab
*---------------------------------------------------------------------*
FORM move_corr_linL__tline_lintab
*
*---------------------------------------------------------------------form move_corr_linL__tline_lintab
using value(i_from) type /1CN/LTXSCL__LIN_S
changing i_to type /1CN/LTXSCL__LIN.
move-corresponding i_from to i_to.
endform.
"move_corr_linL__tline_lintab
*----------------------------------------------------------------------

*
FORM move_corr_linM__tline_lintab
*
*---------------------------------------------------------------------form move_corr_linM__tline_lintab
using value(i_from) type /1CN/LTXSCM__LIN_S
changing i_to type /1CN/LTXSCM__LIN.
move-corresponding i_from to i_to.
endform.
"move_corr_linM__tline_lintab
*---------------------------------------------------------------------*
FORM move_corr_linN__tline_lintab
*
*---------------------------------------------------------------------form move_corr_linN__tline_lintab
using value(i_from) type /1CN/LTXSCN__LIN_S
changing i_to type /1CN/LTXSCN__LIN.
move-corresponding i_from to i_to.
endform.
"move_corr_linN__tline_lintab
*---------------------------------------------------------------------*
FORM move_corr_linO__tline_lintab
*
*---------------------------------------------------------------------form move_corr_linO__tline_lintab
using value(i_from) type /1CN/LTXSCO__LIN_S
changing i_to type /1CN/LTXSCO__LIN.
move-corresponding i_from to i_to.
endform.
"move_corr_linO__tline_lintab
*---------------------------------------------------------------------*
FORM move_corr_linP__tline_lintab
*
*---------------------------------------------------------------------form move_corr_linP__tline_lintab
using value(i_from) type /1CN/LTXSCP__LIN_S
changing i_to type /1CN/LTXSCP__LIN.
move-corresponding i_from to i_to.
endform.
"move_corr_linP__tline_lintab
*---------------------------------------------------------------------*
FORM move_corr_linR__tline_lintab
*
*---------------------------------------------------------------------form move_corr_linR__tline_lintab
using value(i_from) type /1CN/LTXSCR__LIN_S
changing i_to type /1CN/LTXSCR__LIN.
move-corresponding i_from to i_to.
endform.
"move_corr_linR__tline_lintab
*---------------------------------------------------------------------*
FORM move_corr_linS__tline_lintab
*
*---------------------------------------------------------------------form move_corr_linS__tline_lintab
using value(i_from) type /1CN/LTXSCS__LIN_S
changing i_to type /1CN/LTXSCS__LIN.
move-corresponding i_from to i_to.
endform.
"move_corr_linS__tline_lintab
*---------------------------------------------------------------------*
FORM move_corr_linTC1tline_lintab
*
*---------------------------------------------------------------------form move_corr_linTC1tline_lintab
using value(i_from) type /1CN/LTXSCTC1LIN_S
changing i_to type /1CN/LTXSCTC1LIN.
move-corresponding i_from to i_to.
endform.
"move_corr_linTC1tline_lintab
*---------------------------------------------------------------------*
FORM move_corr_v01line_lintab
*
*---------------------------------------------------------------------form move_corr_v01line_lintab
using value(i_from) type /1CN/LTXSCALEV01_S

changing i_to type /1CN/LTXSCALEV01.


move-corresponding i_from to i_to.
endform.
"move_corr_v01line_lintab
*---------------------------------------------------------------------*
FORM move_corr_v02line_lintab
*
*---------------------------------------------------------------------form move_corr_v02line_lintab
using value(i_from) type /1CN/LTXSCALEV02_S
changing i_to type /1CN/LTXSCALEV02.
move-corresponding i_from to i_to.
endform.
"move_corr_v02line_lintab
*---------------------------------------------------------------------*
FORM MOVE_CORR_WSIS_TO_WSID
*
*---------------------------------------------------------------------*
Performs a move-corresponding between "field-symbols"
*
*---------------------------------------------------------------------form move_corr_wsis_to_wsid
using
i_working_set_item_s type /1CN/WORKING_SET_I_S_TTE
changing c_working_set_item_d type /1CN/WORKING_SET_I_D_TTE.
* perform the move-corresponding
*
move-corresponding i_working_set_item_s to c_working_set_item_d.
endform.
"move_corr_wsis_to_wsid
*---------------------------------------------------------------------*
FORM COMPLETE_VAL_TABLE
*
*---------------------------------------------------------------------*
Completes a val scale table with missing data border values
*
*---------------------------------------------------------------------form complete_val_table
using i_cur_dim
type /sapcnd/dimension_id
i_scale_dim
type /sapcnd/dimension_id
i_scale_type
type /sapcnd/scale_type
i_scale_line_id_highest type /sapcnd/scale_line_id
ct_valtable
type index table
c_num_values_inserted type i.
case i_scale_dim.
when 01.
case i_cur_dim.
when 01.
perform complete_val_table_01_01
using i_scale_type i_scale_line_id_highest
ct_valtable c_num_values_inserted.
endcase.
when 02.
case i_cur_dim.
when 01.
perform complete_val_table_01_02
using i_scale_type i_scale_line_id_highest
ct_valtable c_num_values_inserted.
when 02.
perform complete_val_table_02_02
using i_scale_type i_scale_line_id_highest
ct_valtable c_num_values_inserted.
endcase.
endcase.
endform.
"complete_val_table
*----------------------------------------------------------------------

*
FORM COMPLETE_VAL_TABLE_01_01
*
*---------------------------------------------------------------------*
Completes a specific val table with missing data border values *
*---------------------------------------------------------------------form complete_val_table_01_01
using i_scale_type
type /sapcnd/scale_type
i_scale_line_id_highest type /sapcnd/scale_line_id
ct_valtable
type /1CN/LTXSCALEV01_S_T
c_num_values_inserted type i.
data:
wa_valtable like line of ct_valtable,
insert_pos type sytabix.

*
*
*
*
*
*

case i_scale_type.
when 'A'.
from scale
this means all entries of higher dimensions need to have
a data value with scale line id 1 of this dimension
expressed in terms of an algorithm this means that we need to
go through all the points of the <scale_dim>-1 space that is
created jointly by all the other dimensions

*
*
*
*
*
*

*
*
*

it's easier than it sounds. we simply loop over the sorted val
table and check if there is a ..,1,.. entry for each ..,*,..
entry whereas * stands for "don't care"

*
*
*

sort the val table ascending for easier copying


sort ct_valtable by
SCALE_LINE_ID1
ascending.

fill the valtable with the missing entries


loop at ct_valtable into wa_valtable.
mark the insert position (right before the current entry)
insert_pos = sy-tabix.

check, if a lowest border data value exists


read table ct_valtable
with key
SCALE_LINE_ID1 =
1
transporting no fields.
if sy-subrc <> 0.
missing val table entry
create one by copying the current one to one that has the
lowest possible scale line id
wa_valtable-SCALE_LINE_ID1 = 1.
insert wa_valtable into ct_valtable index insert_pos.
c_num_values_inserted = c_num_values_inserted + 1.
endif.
endloop.
when 'B' or 'D'.
to or to-interval scale
sort the val table descending for easier copying
sort ct_valtable by
SCALE_LINE_ID1
descending.

*
*

*
*
*

*
*

fill the val table with the missing entries

*
*
*

*
*

loop at ct_valtable into wa_valtable.


mark the insert position (right before the current entry)
insert_pos = sy-tabix.

check, if a highest border data value exists


*
read table ct_valtable
with key
SCALE_LINE_ID1 =
i_scale_line_id_highest
transporting no fields.
if sy-subrc <> 0.
*
missing val table entry
*
*
create one by copying the current entry to one that has the *
*
highest possible scale line id
*
wa_valtable-SCALE_LINE_ID1 = i_scale_line_id_highest.
insert wa_valtable into ct_valtable index insert_pos.
c_num_values_inserted = c_num_values_inserted + 1.
endif.
endloop.
endcase.
* sort the val table again
sort ct_valtable by
SCALE_LINE_ID1
ascending.

endform.
"complete_val_table_01_01
*---------------------------------------------------------------------*
FORM COMPLETE_VAL_TABLE_01_02
*
*---------------------------------------------------------------------*
Completes a specific val table with missing data border values *
*---------------------------------------------------------------------form complete_val_table_01_02
using i_scale_type
type /sapcnd/scale_type
i_scale_line_id_highest type /sapcnd/scale_line_id
ct_valtable
type /1CN/LTXSCALEV02_S_T
c_num_values_inserted type i.
data:
wa_valtable like line of ct_valtable,
insert_pos type sytabix.

*
*
*
*
*
*

case i_scale_type.
when 'A'.
from scale
this means all entries of higher dimensions need to have
a data value with scale line id 1 of this dimension
expressed in terms of an algorithm this means that we need to
go through all the points of the <scale_dim>-1 space that is
created jointly by all the other dimensions

*
*
*
*
*
*

*
*
*

it's easier than it sounds. we simply loop over the sorted val
table and check if there is a ..,1,.. entry for each ..,*,..
entry whereas * stands for "don't care"

*
*
*

sort the val table ascending for easier copying


sort ct_valtable by
SCALE_LINE_ID1
SCALE_LINE_ID2
ascending.

*
*
*

*
*
*

*
*

*
*

fill the valtable with the missing entries


loop at ct_valtable into wa_valtable.
mark the insert position (right before the current entry)
insert_pos = sy-tabix.

check, if a lowest border data value exists


read table ct_valtable
with key
SCALE_LINE_ID1 =
1
SCALE_LINE_ID2 =
wa_valtable-SCALE_LINE_ID2
transporting no fields.
if sy-subrc <> 0.
missing val table entry
create one by copying the current one to one that has the
lowest possible scale line id
wa_valtable-SCALE_LINE_ID1 = 1.
insert wa_valtable into ct_valtable index insert_pos.
c_num_values_inserted = c_num_values_inserted + 1.
endif.
endloop.
when 'B' or 'D'.
to or to-interval scale
sort the val table descending for easier copying
sort ct_valtable by
SCALE_LINE_ID1
SCALE_LINE_ID2
descending.

fill the val table with the missing entries


loop at ct_valtable into wa_valtable.
mark the insert position (right before the current entry)
insert_pos = sy-tabix.

*
*
*

*
*

check, if a highest border data value exists


*
read table ct_valtable
with key
SCALE_LINE_ID1 =
i_scale_line_id_highest
SCALE_LINE_ID2 =
wa_valtable-SCALE_LINE_ID2
transporting no fields.
if sy-subrc <> 0.
*
missing val table entry
*
*
create one by copying the current entry to one that has the *
*
highest possible scale line id
*
wa_valtable-SCALE_LINE_ID1 = i_scale_line_id_highest.
insert wa_valtable into ct_valtable index insert_pos.
c_num_values_inserted = c_num_values_inserted + 1.
endif.
endloop.
endcase.
* sort the val table again
sort ct_valtable by
SCALE_LINE_ID1
SCALE_LINE_ID2
ascending.

endform.
"complete_val_table_01_02
*---------------------------------------------------------------------*
FORM COMPLETE_VAL_TABLE_02_02
*
*---------------------------------------------------------------------*
Completes a specific val table with missing data border values *
*---------------------------------------------------------------------form complete_val_table_02_02
using i_scale_type
type /sapcnd/scale_type
i_scale_line_id_highest type /sapcnd/scale_line_id
ct_valtable
type /1CN/LTXSCALEV02_S_T
c_num_values_inserted type i.
data:
wa_valtable like line of ct_valtable,
insert_pos type sytabix.

*
*
*
*
*
*

case i_scale_type.
when 'A'.
from scale
this means all entries of higher dimensions need to have
a data value with scale line id 1 of this dimension
expressed in terms of an algorithm this means that we need to
go through all the points of the <scale_dim>-1 space that is
created jointly by all the other dimensions

*
*
*
*
*
*

*
*
*

it's easier than it sounds. we simply loop over the sorted val
table and check if there is a ..,1,.. entry for each ..,*,..
entry whereas * stands for "don't care"

*
*
*

sort the val table ascending for easier copying


sort ct_valtable by
SCALE_LINE_ID1
SCALE_LINE_ID2
ascending.

fill the valtable with the missing entries


loop at ct_valtable into wa_valtable.
mark the insert position (right before the current entry)
insert_pos = sy-tabix.

check, if a lowest border data value exists


read table ct_valtable
with key
SCALE_LINE_ID1 =
wa_valtable-SCALE_LINE_ID1
SCALE_LINE_ID2 =
1
transporting no fields.
if sy-subrc <> 0.
missing val table entry
create one by copying the current one to one that has the
lowest possible scale line id
wa_valtable-SCALE_LINE_ID2 = 1.
insert wa_valtable into ct_valtable index insert_pos.
c_num_values_inserted = c_num_values_inserted + 1.
endif.
endloop.
when 'B' or 'D'.
to or to-interval scale

*
*

*
*
*

*
*
*

sort the val table descending for easier copying


sort ct_valtable by
SCALE_LINE_ID1
SCALE_LINE_ID2
descending.

fill the val table with the missing entries


loop at ct_valtable into wa_valtable.
mark the insert position (right before the current entry)
insert_pos = sy-tabix.

check, if a highest border data value exists


*
read table ct_valtable
with key
SCALE_LINE_ID1 =
wa_valtable-SCALE_LINE_ID1
SCALE_LINE_ID2 =
i_scale_line_id_highest
transporting no fields.
if sy-subrc <> 0.
*
missing val table entry
*
*
create one by copying the current entry to one that has the *
*
highest possible scale line id
*
wa_valtable-SCALE_LINE_ID2 = i_scale_line_id_highest.
insert wa_valtable into ct_valtable index insert_pos.
c_num_values_inserted = c_num_values_inserted + 1.
endif.
endloop.
endcase.
* sort the val table again
sort ct_valtable by
SCALE_LINE_ID1
SCALE_LINE_ID2
ascending.

endform.
"complete_val_table_02_02
*---------------------------------------------------------------------*
FORM SELECT_BY_TABLE_FOR_ALL_ENTRIES
*
*---------------------------------------------------------------------*
Selects a condition record by its semantic key
*
*---------------------------------------------------------------------form select_block_by_table
using it_ws
type standard table
i_acsviewname
type ddobjname
i_time_dependent
type /sapcnd/boolean
changing
et_selection_result type standard table.
data:
lt_input
ls_input

type standard table of /1CN/CTXSAPRIN06,


type /1CN/CTXSAPRIN06.

field-symbols:
<ls_ws>

type any.

check not it_ws[] is initial.


loop at it_ws assigning <ls_ws>.
move-corresponding <ls_ws> to ls_input.

insert ls_input into table lt_input.


endloop.
* if it_attribute_value contains all the vakey fields,
* then the select is buffered
if i_time_dependent = ctcus_false.
select * from (i_acsviewname)
client specified bypassing buffer
into corresponding fields of table et_selection_result
for all entries in lt_input
where
client
= lt_input-client and
COUNTRY_TX
= lt_input-COUNTRY_TX and
TAX_REG_TF
= lt_input-TAX_REG_TF and
TAX_REG_TT
= lt_input-TAX_REG_TT and
PATXGRP_TT
= lt_input-PATXGRP_TT and
PRTXGRP
= lt_input-PRTXGRP and
kschl
= lt_input-kschl and
object_id
= lt_input-object_id.
else.
select * from (i_acsviewname)
client specified bypassing buffer
into corresponding fields of table et_selection_result
for all entries in lt_input
where
client
= lt_input-client and
COUNTRY_TX
= lt_input-COUNTRY_TX and
TAX_REG_TF
= lt_input-TAX_REG_TF and
TAX_REG_TT
= lt_input-TAX_REG_TT and
PATXGRP_TT
= lt_input-PATXGRP_TT and
PRTXGRP
= lt_input-PRTXGRP and
kschl
= lt_input-kschl and
object_id
= lt_input-object_id and
not ( timestamp_to < lt_input-timestamp_from or
timestamp_from > lt_input-timestamp_to ).
endif.
endform.
"select_block_by_table

*
*