on 05-10-2013 12:07 PM
Hello Experts,
I'm new to Webdynpro , client have a requirement to display the Time and Attendance data in ALV in webdynpro application.
Below is the format (U can check attachment also).
Employee No. | Date 1 | Date 2 | Date 3 | Date 4 | Date 5 | Date 6 | Date 7 | Date 8 | Date 9 | Date 10 | Date 11 | Date 12 | Date 13 | Date 14 | |
10001 | Time_In | 9.00 am | 0.00am | 9.00 am | |||||||||||
Time_Out | 6.00 pm | 0.00pm | 2.00 pm | ||||||||||||
Status | Present | abscent | half day | ||||||||||||
Employee No. | Date 1 | Date 2 | Date 3 | Date 4 | Date 5 | Date 6 | Date 7 | Date 8 | Date 9 | Date 10 | Date 11 | Date 12 | Date 13 | Date 14 | |
10002 | Time_In | 9.00 am | 0.00am | 9.00 am | |||||||||||
Time_Out | 6.00 pm | 0.00pm | 2.00 pm | ||||||||||||
Status | Present | abscent | half day |
Is this POSSIBLE to display data in such format in ABAP WEBDYNPRO, if yes please guide me how should proceed for the same else
suggest me some way to display such data.
Thanks in advance.
Regards,
Prajyot P. Demapure
yes this is possible try using TREE structure in ALV
for more info refer below link:-
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi prajyot,
Its working fine.
i tested now in my system here is the sample code and screen shot
DATA: LR_COMPONENTCONTROLLER TYPE REF TO IG_COMPONENTCONTROLLER,
L_REF_CMP_USAGE TYPE REF TO IF_WD_COMPONENT_USAGE,
LO_CMP_USAGE TYPE REF TO IF_WD_COMPONENT_USAGE,
LO_INTERFACECONTROLLER TYPE REF TO IWCI_SALV_WD_TABLE ,
LO_VALUE TYPE REF TO CL_SALV_WD_CONFIG_TABLE,
L_TABLE_SETTINGS TYPE REF TO IF_SALV_WD_TABLE_SETTINGS ,
L_HEADER TYPE REF TO CL_SALV_WD_HEADER,
LO_COMPONENTINTERFACE TYPE REF TO IF_WD_COMPONENT_USAGE,
LO_INTERFACE TYPE REF TO IWCI_SALV_WD_TABLE,
LR_CMDL TYPE REF TO CL_SALV_WD_CONFIG_TABLE,
L_COLUMN_SETTINGS TYPE REF TO IF_SALV_WD_COLUMN_SETTINGS,
LT_COLUMNS TYPE SALV_WD_T_COLUMN_REF ,
LS_COLUMNS TYPE SALV_WD_S_COLUMN_REF ,
L_COLUMN_HEADER TYPE REF TO CL_SALV_WD_COLUMN_HEADER .
DATA:LR_AGGR_RULE TYPE REF TO CL_SALV_WD_AGGR_RULE,
LR_CONFIG_TABLE TYPE REF TO CL_SALV_WD_CONFIG_TABLE,
LR_FIELD_AMNT TYPE REF TO CL_SALV_WD_FIELD,
LR_FIELD_LIS TYPE REF TO CL_SALV_WD_FIELD,
LR_FIELD_LISPRICE TYPE REF TO CL_SALV_WD_FIELD,
LR_FIELD_LPVAL TYPE REF TO CL_SALV_WD_FIELD,
LR_FIELD_NETAMT TYPE REF TO CL_SALV_WD_FIELD,
LR_FIELD_COMM_P TYPE REF TO CL_SALV_WD_FIELD,
LR_FIELD_COMLO TYPE REF TO CL_SALV_WD_FIELD,
LR_FIELD_DIFF TYPE REF TO CL_SALV_WD_FIELD,
LR_FIELD_COMM TYPE REF TO CL_SALV_WD_FIELD,
LR_FIELD_INVOICE TYPE REF TO CL_SALV_WD_FIELD,
LR_SORT_RULE TYPE REF TO CL_SALV_WD_SORT_RULE.
LO_CMP_USAGE = WD_THIS->WD_CPUSE_TEST_OVS( ).
IF LO_CMP_USAGE->HAS_ACTIVE_COMPONENT( ) IS INITIAL.
LO_CMP_USAGE->CREATE_COMPONENT( ).
ENDIF.
LO_INTERFACECONTROLLER = WD_THIS->WD_CPIFC_TEST_OVS( ).
LO_VALUE = LO_INTERFACECONTROLLER->GET_MODEL( ).
L_TABLE_SETTINGS ?= LO_VALUE.
L_TABLE_SETTINGS->SET_VISIBLE_ROW_COUNT( 15 ).
LO_COMPONENTINTERFACE = WD_THIS->WD_CPUSE_TEST_OVS( ).
LO_CMP_USAGE = WD_THIS->WD_CPUSE_TEST_OVS( ).
IF LO_CMP_USAGE->HAS_ACTIVE_COMPONENT( ) IS INITIAL.
LO_CMP_USAGE->CREATE_COMPONENT( ).
ENDIF.
LO_INTERFACE = WD_THIS->WD_CPIFC_TEST_OVS( ).
LO_INTERFACE = WD_THIS->WD_CPIFC_TEST_OVS( ).
LR_CMDL = LO_INTERFACE->GET_MODEL( ).
LR_CMDL->IF_SALV_WD_STD_FUNCTIONS~SET_PDF_ALLOWED( ABAP_FALSE ).
LO_VALUE->IF_SALV_WD_STD_FUNCTIONS~SET_EXPORT_ALLOWED( ABAP_FALSE ).
L_COLUMN_SETTINGS ?= LO_VALUE.
LT_COLUMNS = L_COLUMN_SETTINGS->GET_COLUMNS( ) .
LOOP AT LT_COLUMNS INTO LS_COLUMNS.
CASE LS_COLUMNS-ID .
WHEN 'FIELD'.
L_COLUMN_HEADER = LS_COLUMNS-R_COLUMN->GET_HEADER( ) .
L_COLUMN_HEADER->SET_DDIC_BINDING_FIELD(
IF_SALV_WD_C_COLUMN_SETTINGS=>DDIC_BIND_NONE ) .
L_COLUMN_HEADER->SET_TEXT( 'Employee No' ). " column
LS_COLUMNS-R_COLUMN->SET_WIDTH( '150' ).
WHEN 'DATE1'.
L_COLUMN_HEADER = LS_COLUMNS-R_COLUMN->GET_HEADER( ) .
L_COLUMN_HEADER->SET_DDIC_BINDING_FIELD(
IF_SALV_WD_C_COLUMN_SETTINGS=>DDIC_BIND_NONE ) .
L_COLUMN_HEADER->SET_TEXT( 'Field' ). " column
LS_COLUMNS-R_COLUMN->SET_WIDTH( '150' ).
CALL METHOD LO_VALUE->IF_SALV_WD_FIELD_SETTINGS~GET_FIELD
EXPORTING
FIELDNAME = 'FIELD'
RECEIVING
VALUE = LR_FIELD_AMNT.
" Create aggregate rule as total
* CALL METHOD LR_FIELD_AMNT->IF_SALV_WD_AGGR~CREATE_AGGR_RULE
* EXPORTING
* AGGREGATION_TYPE = IF_SALV_WD_C_AGGREGATION=>AGGRTYPE_TOTAL
* RECEIVING
* VALUE = LR_AGGR_RULE.
*
CALL METHOD LR_FIELD_AMNT->IF_SALV_WD_SORT~CREATE_SORT_RULE
EXPORTING
SORT_ORDER = IF_SALV_WD_C_SORT=>SORT_ORDER_ASCENDING
GROUP_AGGREGATION = ABAP_TRUE
RECEIVING
VALUE = LR_SORT_RULE.
ENDCASE .
ENDLOOP.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Thanks Meenachi,
The screen shot you provided thats what I exactly wanted.
I'm new to webdynpro not getting where exactly I have to write this code and what are the prerequisite for Display ALV using webdynpro.
Meenachi can you please provide me the details how should I proceed for the same to get output in screenshot attached.
I written this code in COMPONENTCONTROLLER -> WDDOINIT method.
I'm getting below error:
Web Dynpro Comp. / Intf. ZWD_TIME_AND_ATTENDANCE,Web Dynpro Component Controller COMPONENTCONTROLLER
Method WDDOINIT
Method "WD_CPUSE_TEST_OVS" is unknown or PROTECTED or PRIVATE.
same for
" WD_THIS->WD_CPIFC_TEST_OVS( )"
Thanks & Regards,
Prajyot.
Message was edited by: Prajyot P. Demapure
Hi prajyot,
Based on group Employee no you can able to display in ALV.
this is sample code..
try this..
DATA: l_ref_cmp_usage TYPE REF TO if_wd_component_usage.
l_ref_cmp_usage = wd_this->wd_cpuse_alv_first( ). " alv_first is the name of my alv component
IF l_ref_cmp_usage->has_active_component( ) IS INITIAL.
l_ref_cmp_usage->create_component( ).
ENDIF.
DATA l_salv_wd_table TYPE REF TO iwci_salv_wd_table.
l_salv_wd_table = wd_this->wd_cpifc_alv_first( ).
DATA: lr_field TYPE REF TO cl_salv_wd_field.
DATA lo_config_model TYPE REF TO cl_salv_wd_config_table.
lo_config_model = l_salv_wd_table->get_model( ).
lo_config_model->if_salv_wd_table_settings~set_multi_column_sort( value = abap_true ).
lr_field = lo_config_model->if_salv_wd_field_settings~get_field( 'CONNID' ). "connid is the col name
lr_field->if_salv_wd_sort~create_sort_rule( sort_order = if_salv_wd_c_sort=>sort_order_descending ).
lr_field->if_salv_wd_sort~set_grouping_allowed( value = abap_true ).
Thanks & Regards,
Meena
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
91 | |
10 | |
10 | |
9 | |
9 | |
7 | |
6 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.