cancel
Showing results for 
Search instead for 
Did you mean: 

Data is not updating to Cube from DSO

Former Member
0 Kudos

Hi,

I have a transformation from DSO to Cube.Some data manipulation is done Start_Routine.i have used an INCLUDE to write my logic.

I have used and an internal table of type source_package with an extra flag at the last.and after all my calculation i am doing a REFRESH in Source_Package and moving my internal table data to Source_Package.

When i am doing DTP simulation i can see that all the records are correctly calculated and moved to Source_Package but when i display the actual data loaded in cube its not the same.For half records the calculation is absolutely correct but for rest it seems like the code is not applied i;e the calculation is not done.

Kindly Help on this.

Appreciate your quick reply.

Thanks,

Anil K.

Accepted Solutions (0)

Answers (2)

Answers (2)

anshu_lilhori
Active Contributor
0 Kudos

You need to get your code rectified and debuged if it has some issue.Without seeing the code it is difficult to decipher and conclude something at least in my eyes.

Regards,

AL

Former Member
0 Kudos

AL,

As i mentioned in debug mode all the records are coming correct but fails to update in cube for few.

Thanks,

Anil

KodandaPani_KV
Active Contributor
0 Kudos

HI Anil,

if you possible please share the start routine code and what you want achieve.

Thanks,

Phani.

Former Member
0 Kudos

Hi Phani,

Below is code i am using.

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

     SORT source_package STABLE BY rt_serial  /bic/zdateopen ASCENDING.

     gt_source_package[] = source_package[].

     LOOP AT gt_source_package ASSIGNING  <fs_result>.

       lv_tabix1 = sy-tabix.

       lv_tabix2 = sy-tabix + 1.

       CLEAR : lv_match.

       AT NEW ship_to.

         lv_ship_to = <fs_result>-ship_to.

       ENDAT.

       SELECT SINGLE timesec FROM zam_time INTO lv_timesec.

       READ TABLE gt_source_package INTO gw_source_package INDEX lv_tabix2.

       IF sy-subrc = 0.

         IF ( lv_ship_to = gw_source_package-ship_to ).

           IF <fs_result>-/bic/zdatclose EQ gw_source_package-/bic/zdateopen .

             IF <fs_result>-/bic/ztimclose LT gw_source_package-/bic/ztimeopen.

               CALL FUNCTION 'SCOV_TIME_DIFF'

                 EXPORTING

                   im_date1              = <fs_result>-/bic/zdatclose

                   im_date2              = gw_source_package-/bic/zdateopen

                   im_time1              = <fs_result>-/bic/ztimclose

                   im_time2              = gw_source_package-/bic/ztimeopen

                 IMPORTING

                   ex_days               = lv_days

                   ex_time               = lv_time

                 EXCEPTIONS

                   start_larger_than_end = 1

                   OTHERS                = 2.

               IF sy-subrc <> 0.

               ENDIF.

               IF lv_time LE lv_timesec."'00:01:00'.

                 <fs_result>-c_x = 'X'.

*******Logic for Entr no concatenation*******

                 IF <fs_result>-/bic/zentrymat IS INITIAL.

                   CONCATENATE <fs_result>-/bic/zentryno

                              ','

                               gw_source_package-/bic/zentryno

                               INTO gw_source_package-/bic/zentrymat.

                 ELSE.

                   CONCATENATE <fs_result>-/bic/zentrymat

                        ','

                         gw_source_package-/bic/zentryno

                         INTO gw_source_package-/bic/zentrymat.

                 ENDIF.

*******Logic for Entr no concatenation*******

                 gw_source_package-/bic/ztimeopen = <fs_result>-/bic/ztimeopen.

                 gw_source_package-/bic/zdateopen = <fs_result>-/bic/zdateopen.

                 gw_source_package-rt_serial      = gw_source_package-rt_serial.

                 gw_source_package-/bic/zbillbltm = gw_source_package-/bic/zbillbltm + <fs_result>-/bic/zbillbltm.

                 gw_source_package-/bic/zadjdiff  = gw_source_package-/bic/zadjdiff + <fs_result>-/bic/zadjdiff.

                 gw_source_package-/bic/ztotalhr  = gw_source_package-/bic/zbillbltm - gw_source_package-/bic/zadjdiff .

                 MODIFY gt_source_package INDEX lv_tabix2 FROM gw_source_package

                 TRANSPORTING /bic/zentrymat

                              /bic/ztimeopen

                              /bic/zdateopen

                              rt_serial

                              /bic/zbillbltm

                              /bic/zadjdiff

                              /bic/ztotalhr

                              c_x.

               ELSE.

                 gw_source_package-/bic/ztotalhr  = gw_source_package-/bic/zbillbltm - gw_source_package-/bic/zadjdiff .

                 MODIFY gt_source_package FROM gw_source_package TRANSPORTING /bic/ztotalhr.

               ENDIF.

             ELSEIF <fs_result>-/bic/ztimclose GT gw_source_package-/bic/ztimeopen.

               CALL FUNCTION 'SCOV_TIME_DIFF'

                 EXPORTING

                   im_date1              = <fs_result>-/bic/zdatclose

                   im_date2              = gw_source_package-/bic/zdateopen

                   im_time1              = gw_source_package-/bic/ztimeopen

                   im_time2              = <fs_result>-/bic/ztimclose

                 IMPORTING

                   ex_days               = lv_days

                   ex_time               = lv_time

                 EXCEPTIONS

                   start_larger_than_end = 1

                   OTHERS                = 2.

               IF sy-subrc <> 0.

               ENDIF.

               IF lv_time LE lv_timesec."'00:01:00'.

                 <fs_result>-c_x = 'X'.

*******Logic for Entr no concatenation*******

                 IF <fs_result>-/bic/zentrymat IS INITIAL.

                   CONCATENATE <fs_result>-/bic/zentryno

                              ','

                               gw_source_package-/bic/zentryno

                               INTO gw_source_package-/bic/zentrymat.

                 ELSE.

                   CONCATENATE <fs_result>-/bic/zentrymat

                        ','

                         gw_source_package-/bic/zentryno

                         INTO gw_source_package-/bic/zentrymat.

                 ENDIF.

*******Logic for Entr no concatenation*******

                 gw_source_package-/bic/ztimeopen = <fs_result>-/bic/ztimeopen.

                 gw_source_package-/bic/zdateopen = <fs_result>-/bic/zdateopen.

                 gw_source_package-rt_serial      = gw_source_package-rt_serial.

                 gw_source_package-/bic/zbillbltm = gw_source_package-/bic/zbillbltm + <fs_result>-/bic/zbillbltm.

                 gw_source_package-/bic/zadjdiff  = gw_source_package-/bic/zadjdiff + <fs_result>-/bic/zadjdiff.

                 gw_source_package-/bic/ztotalhr  = gw_source_package-/bic/zbillbltm - gw_source_package-/bic/zadjdiff .

                 MODIFY gt_source_package INDEX lv_tabix2 FROM gw_source_package

                 TRANSPORTING /bic/zentrymat

                              /bic/ztimeopen

                              /bic/zdateopen

                              rt_serial

                              /bic/zbillbltm

                              /bic/zadjdiff

                              /bic/ztotalhr

                              c_x.

               ELSE.

                 gw_source_package-/bic/ztotalhr  = gw_source_package-/bic/zbillbltm - gw_source_package-/bic/zadjdiff .

                 MODIFY gt_source_package FROM gw_source_package TRANSPORTING /bic/ztotalhr.

               ENDIF.

             ENDIF.

           ELSEIF <fs_result>-/bic/zdatclose GT gw_source_package-/bic/zdateopen .

             CALL FUNCTION 'SCOV_TIME_DIFF'

               EXPORTING

                 im_date1              = gw_source_package-/bic/zdateopen

                 im_date2              = <fs_result>-/bic/zdatclose

                 im_time1              = gw_source_package-/bic/ztimeopen

                 im_time2              = <fs_result>-/bic/ztimclose

               IMPORTING

                 ex_days               = lv_days

                 ex_time               = lv_time

               EXCEPTIONS

                 start_larger_than_end = 1

                 OTHERS                = 2.

             IF sy-subrc <> 0.

             ENDIF.

             IF lv_time LE lv_timesec."'00:01:00'.

               <fs_result>-c_x = 'X'.

*******Logic for Entr no concatenation*******

               IF <fs_result>-/bic/zentrymat IS INITIAL.

                 CONCATENATE <fs_result>-/bic/zentryno

                            ','

                             gw_source_package-/bic/zentryno

                             INTO gw_source_package-/bic/zentrymat.

               ELSE.

                 CONCATENATE <fs_result>-/bic/zentrymat

                      ','

                       gw_source_package-/bic/zentryno

                       INTO gw_source_package-/bic/zentrymat.

               ENDIF.

*******Logic for Entr no concatenation*******

               gw_source_package-/bic/ztimeopen = <fs_result>-/bic/ztimeopen.

               gw_source_package-/bic/zdateopen = <fs_result>-/bic/zdateopen.

               gw_source_package-rt_serial      = gw_source_package-rt_serial.

               gw_source_package-/bic/zbillbltm = gw_source_package-/bic/zbillbltm + <fs_result>-/bic/zbillbltm.

               gw_source_package-/bic/zadjdiff  = gw_source_package-/bic/zadjdiff + <fs_result>-/bic/zadjdiff.

               gw_source_package-/bic/ztotalhr  = gw_source_package-/bic/zbillbltm - gw_source_package-/bic/zadjdiff .

               MODIFY gt_source_package INDEX lv_tabix2 FROM gw_source_package

               TRANSPORTING /bic/zentrymat

                            /bic/ztimeopen

                            /bic/zdateopen

                            rt_serial

                            /bic/zbillbltm

                            /bic/zadjdiff

                            /bic/ztotalhr

                            c_x.

             ELSE.

               gw_source_package-/bic/ztotalhr  = gw_source_package-/bic/zbillbltm - gw_source_package-/bic/zadjdiff .

               MODIFY gt_source_package FROM gw_source_package TRANSPORTING /bic/ztotalhr.

             ENDIF.

           ELSEIF gw_source_package-/bic/zdateopen GT <fs_result>-/bic/zdatclose .

             CALL FUNCTION 'SCOV_TIME_DIFF'

               EXPORTING

                 im_date1              = <fs_result>-/bic/zdatclose

                 im_date2              = gw_source_package-/bic/zdateopen

                 im_time1              = <fs_result>-/bic/ztimclose

                 im_time2              = gw_source_package-/bic/ztimeopen

               IMPORTING

                 ex_days               = lv_days

                 ex_time               = lv_time

               EXCEPTIONS

                 start_larger_than_end = 1

                 OTHERS                = 2.

             IF sy-subrc <> 0.

             ENDIF.

             IF lv_time LE lv_timesec."'00:01:00'.

               <fs_result>-c_x = 'X'.

*******Logic for Entr no concatenation*******

               IF <fs_result>-/bic/zentrymat IS INITIAL.

                 CONCATENATE <fs_result>-/bic/zentryno

                            ','

                             gw_source_package-/bic/zentryno

                             INTO gw_source_package-/bic/zentrymat.

               ELSE.

                 CONCATENATE <fs_result>-/bic/zentrymat

                      ','

                       gw_source_package-/bic/zentryno

                       INTO gw_source_package-/bic/zentrymat.

               ENDIF.

*******Logic for Entr no concatenation*******

               gw_source_package-/bic/ztimeopen = <fs_result>-/bic/ztimeopen.

               gw_source_package-/bic/zdateopen = <fs_result>-/bic/zdateopen.

               gw_source_package-rt_serial      = gw_source_package-rt_serial.

               gw_source_package-/bic/zbillbltm = gw_source_package-/bic/zbillbltm + <fs_result>-/bic/zbillbltm.

               gw_source_package-/bic/zadjdiff  = gw_source_package-/bic/zadjdiff + <fs_result>-/bic/zadjdiff.

               gw_source_package-/bic/ztotalhr  = gw_source_package-/bic/zbillbltm - gw_source_package-/bic/zadjdiff .

               MODIFY gt_source_package INDEX lv_tabix2 FROM gw_source_package

               TRANSPORTING /bic/zentrymat

                            /bic/ztimeopen

                            /bic/zdateopen

                            rt_serial

                            /bic/zbillbltm

                            /bic/zadjdiff

                            /bic/ztotalhr

                            c_x.

             ELSE.

               gw_source_package-/bic/ztotalhr  = gw_source_package-/bic/zbillbltm - gw_source_package-/bic/zadjdiff .

               MODIFY gt_source_package FROM gw_source_package TRANSPORTING /bic/ztotalhr.

             ENDIF.

           ENDIF.

         ELSE.

           READ TABLE gt_source_package INTO gw_source_package INDEX lv_tabix1.

           CLEAR gw_source_package-/bic/ztotalhr.

           gw_source_package-/bic/ztotalhr  = gw_source_package-/bic/zbillbltm - gw_source_package-/bic/zadjdiff .

           MODIFY gt_source_package FROM gw_source_package TRANSPORTING /bic/ztotalhr.

         ENDIF.

       ELSE.

         READ TABLE gt_source_package INTO gw_source_package INDEX lv_tabix1.

         IF sy-subrc = 0.

           gw_source_package-/bic/ztotalhr  = gw_source_package-/bic/zbillbltm - gw_source_package-/bic/zadjdiff .

           MODIFY gt_source_package FROM gw_source_package TRANSPORTING /bic/ztotalhr.

         ENDIF.

       ENDIF.

       CLEAR : lv_days , lv_time , lv_timesec,gw_source_package.

     ENDLOOP.

     DELETE gt_source_package WHERE c_x = 'X'.

     SORT gt_source_package BY  /bic/zdateopen

                                /bic/ztimeopen ASCENDING.

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

     gt_source_package1[] = gt_source_package[].

     LOOP AT gt_source_package1 ASSIGNING  <fs_result1>.

       lv_tabix3 = sy-tabix.

       lv_tabix4 = sy-tabix + 1.

       AT NEW ship_to.

         lv_ship_to = <fs_result1>-ship_to.

       ENDAT.

       SELECT SINGLE timesec FROM zam_time INTO lv_timesec.

       READ TABLE gt_source_package1 INTO gw_source_package1 INDEX lv_tabix4.

       IF sy-subrc = 0.

         IF ( lv_ship_to = gw_source_package1-ship_to ).

***********

           IF <fs_result1>-/bic/zdatclose EQ gw_source_package1-/bic/zdateopen .

             IF <fs_result1>-/bic/ztimclose LT gw_source_package1-/bic/ztimeopen.

               CALL FUNCTION 'SCOV_TIME_DIFF'

                 EXPORTING

                   im_date1              = <fs_result1>-/bic/zdatclose

                   im_date2              = gw_source_package1-/bic/zdateopen

                   im_time1              = <fs_result1>-/bic/ztimclose

                   im_time2              = gw_source_package1-/bic/ztimeopen

                 IMPORTING

                   ex_days               = lv_days

                   ex_time               = lv_time

                 EXCEPTIONS

                   start_larger_than_end = 1

                   OTHERS                = 2.

               IF sy-subrc <> 0.

               ENDIF.

               IF lv_time LE lv_timesec."'00:01:00'.

                 <fs_result1>-c_x = 'X'.

*******Logic for Entr no concatenation*******

                 IF <fs_result1>-/bic/zentrymat IS INITIAL.

                   CONCATENATE <fs_result1>-/bic/zentryno

                              ','

                               gw_source_package1-/bic/zentryno

                               INTO gw_source_package1-/bic/zentrymat.

                 ELSE.

                   CONCATENATE <fs_result1>-/bic/zentrymat

                        ','

                         gw_source_package1-/bic/zentryno

                         INTO gw_source_package1-/bic/zentrymat.

                 ENDIF.

*******Logic for Entr no concatenation*******

                 gw_source_package1-/bic/ztimeopen = <fs_result1>-/bic/ztimeopen.

                 gw_source_package1-/bic/zdateopen = <fs_result1>-/bic/zdateopen.

                 gw_source_package1-rt_serial      = gw_source_package1-rt_serial.

                 gw_source_package1-/bic/zbillbltm = gw_source_package1-/bic/zbillbltm + <fs_result1>-/bic/zbillbltm.

                 gw_source_package1-/bic/zadjdiff  = gw_source_package1-/bic/zadjdiff + <fs_result1>-/bic/zadjdiff.

                 gw_source_package1-/bic/ztotalhr  = gw_source_package1-/bic/zbillbltm - gw_source_package1-/bic/zadjdiff .

                 MODIFY gt_source_package1 INDEX lv_tabix4 FROM gw_source_package1

                 TRANSPORTING /bic/zentrymat

                              /bic/ztimeopen

                              /bic/zdateopen

                              rt_serial

                              /bic/zbillbltm

                              /bic/zadjdiff

                              /bic/ztotalhr

                              c_x.

               ELSE.

                 gw_source_package1-/bic/ztotalhr  = gw_source_package1-/bic/zbillbltm - gw_source_package1-/bic/zadjdiff .

                 MODIFY gt_source_package1 FROM gw_source_package1 TRANSPORTING /bic/ztotalhr.

               ENDIF.

             ELSEIF <fs_result1>-/bic/ztimclose GT gw_source_package1-/bic/ztimeopen.

               CALL FUNCTION 'SCOV_TIME_DIFF'

                 EXPORTING

                   im_date1              = <fs_result1>-/bic/zdatclose

                   im_date2              = gw_source_package1-/bic/zdateopen

                   im_time1              = gw_source_package1-/bic/ztimeopen

                   im_time2              = <fs_result1>-/bic/ztimclose

                 IMPORTING

                   ex_days               = lv_days

                   ex_time               = lv_time

                 EXCEPTIONS

                   start_larger_than_end = 1

                   OTHERS                = 2.

               IF sy-subrc <> 0.

               ENDIF.

               IF lv_time LE lv_timesec."'00:01:00'.

                 <fs_result1>-c_x = 'X'.

*******Logic for Entr no concatenation*******

                 IF <fs_result1>-/bic/zentrymat IS INITIAL.

                   CONCATENATE <fs_result1>-/bic/zentryno

                              ','

                               gw_source_package1-/bic/zentryno

                               INTO gw_source_package1-/bic/zentrymat.

                 ELSE.

                   CONCATENATE <fs_result1>-/bic/zentrymat

                        ','

                         gw_source_package1-/bic/zentryno

                         INTO gw_source_package1-/bic/zentrymat.

                 ENDIF.

*******Logic for Entr no concatenation*******

                 gw_source_package1-/bic/ztimeopen = <fs_result1>-/bic/ztimeopen.

                 gw_source_package1-/bic/zdateopen = <fs_result1>-/bic/zdateopen.

                 gw_source_package1-rt_serial      = gw_source_package1-rt_serial.

                 gw_source_package1-/bic/zbillbltm = gw_source_package1-/bic/zbillbltm + <fs_result1>-/bic/zbillbltm.

                 gw_source_package1-/bic/zadjdiff  = gw_source_package1-/bic/zadjdiff + <fs_result1>-/bic/zadjdiff.

                 gw_source_package1-/bic/ztotalhr  = gw_source_package1-/bic/zbillbltm - gw_source_package1-/bic/zadjdiff .

                 MODIFY gt_source_package1 INDEX lv_tabix4 FROM gw_source_package1

                 TRANSPORTING /bic/zentrymat

                              /bic/ztimeopen

                              /bic/zdateopen

                              rt_serial

                              /bic/zbillbltm

                              /bic/zadjdiff

                              /bic/ztotalhr

                              c_x.

               ELSE.

                 gw_source_package1-/bic/ztotalhr  = gw_source_package1-/bic/zbillbltm - gw_source_package1-/bic/zadjdiff .

                 MODIFY gt_source_package1 FROM gw_source_package1 TRANSPORTING /bic/ztotalhr.

               ENDIF.

             ENDIF.

           ELSEIF <fs_result1>-/bic/zdatclose GT gw_source_package1-/bic/zdateopen .

             CALL FUNCTION 'SCOV_TIME_DIFF'

               EXPORTING

                 im_date1              = gw_source_package1-/bic/zdateopen

                 im_date2              = <fs_result1>-/bic/zdatclose

                 im_time1              = gw_source_package1-/bic/ztimeopen

                 im_time2              = <fs_result1>-/bic/ztimclose

               IMPORTING

                 ex_days               = lv_days

                 ex_time               = lv_time

               EXCEPTIONS

                 start_larger_than_end = 1

                 OTHERS                = 2.

             IF sy-subrc <> 0.

             ENDIF.

             IF lv_time LE lv_timesec."'00:01:00'.

               <fs_result1>-c_x = 'X'.

*******Logic for Entr no concatenation*******

               IF <fs_result1>-/bic/zentrymat IS INITIAL.

                 CONCATENATE <fs_result1>-/bic/zentryno

                            ','

                             gw_source_package1-/bic/zentryno

                             INTO gw_source_package1-/bic/zentrymat.

               ELSE.

                 CONCATENATE <fs_result1>-/bic/zentrymat

                      ','

                       gw_source_package1-/bic/zentryno

                       INTO gw_source_package1-/bic/zentrymat.

               ENDIF.

*******Logic for Entr no concatenation*******

               gw_source_package1-/bic/ztimeopen = <fs_result1>-/bic/ztimeopen.

               gw_source_package1-/bic/zdateopen = <fs_result1>-/bic/zdateopen.

               gw_source_package1-rt_serial      = gw_source_package1-rt_serial.

               gw_source_package1-/bic/zbillbltm = gw_source_package1-/bic/zbillbltm + <fs_result1>-/bic/zbillbltm.

               gw_source_package1-/bic/zadjdiff  = gw_source_package1-/bic/zadjdiff + <fs_result1>-/bic/zadjdiff.

               gw_source_package1-/bic/ztotalhr  = gw_source_package1-/bic/zbillbltm - gw_source_package1-/bic/zadjdiff .

               MODIFY gt_source_package1 INDEX lv_tabix4 FROM gw_source_package1

               TRANSPORTING /bic/zentrymat

                            /bic/ztimeopen

                            /bic/zdateopen

                            rt_serial

                            /bic/zbillbltm

                            /bic/zadjdiff

                            /bic/ztotalhr

                            c_x.

             ELSE.

               gw_source_package1-/bic/ztotalhr  = gw_source_package1-/bic/zbillbltm - gw_source_package1-/bic/zadjdiff .

               MODIFY gt_source_package1 FROM gw_source_package1 TRANSPORTING /bic/ztotalhr.

             ENDIF.

           ELSEIF gw_source_package1-/bic/zdateopen GT <fs_result1>-/bic/zdatclose .

             CALL FUNCTION 'SCOV_TIME_DIFF'

               EXPORTING

                 im_date1              = <fs_result1>-/bic/zdatclose

                 im_date2              = gw_source_package1-/bic/zdateopen

                 im_time1              = <fs_result1>-/bic/ztimclose

                 im_time2              = gw_source_package1-/bic/ztimeopen

               IMPORTING

                 ex_days               = lv_days

                 ex_time               = lv_time

               EXCEPTIONS

                 start_larger_than_end = 1

                 OTHERS                = 2.

             IF sy-subrc <> 0.

             ENDIF.

             IF lv_time LE lv_timesec."'00:01:00'.

               <fs_result1>-c_x = 'X'.

*******Logic for Entr no concatenation*******

               IF <fs_result1>-/bic/zentrymat IS INITIAL.

                 CONCATENATE <fs_result1>-/bic/zentryno

                            ','

                             gw_source_package1-/bic/zentryno

                             INTO gw_source_package1-/bic/zentrymat.

               ELSE.

                 CONCATENATE <fs_result1>-/bic/zentrymat

                      ','

                       gw_source_package1-/bic/zentryno

                       INTO gw_source_package1-/bic/zentrymat.

               ENDIF.

*******Logic for Entr no concatenation*******

               gw_source_package1-/bic/ztimeopen = <fs_result1>-/bic/ztimeopen.

               gw_source_package1-/bic/zdateopen = <fs_result1>-/bic/zdateopen.

               gw_source_package1-rt_serial      = gw_source_package1-rt_serial.

               gw_source_package1-/bic/zbillbltm = gw_source_package1-/bic/zbillbltm + <fs_result1>-/bic/zbillbltm.

               gw_source_package1-/bic/zadjdiff  = gw_source_package1-/bic/zadjdiff + <fs_result1>-/bic/zadjdiff.

               gw_source_package1-/bic/ztotalhr  = gw_source_package1-/bic/zbillbltm - gw_source_package1-/bic/zadjdiff .

               MODIFY gt_source_package1 INDEX lv_tabix4 FROM gw_source_package1

               TRANSPORTING /bic/zentrymat

                            /bic/ztimeopen

                            /bic/zdateopen

                            rt_serial

                            /bic/zbillbltm

                            /bic/zadjdiff

                            /bic/ztotalhr

                            c_x.

             ELSE.

               gw_source_package1-/bic/ztotalhr  = gw_source_package1-/bic/zbillbltm - gw_source_package1-/bic/zadjdiff .

               MODIFY gt_source_package1 FROM gw_source_package1 TRANSPORTING /bic/ztotalhr.

             ENDIF.

           ENDIF.

         ELSE.

           READ TABLE gt_source_package1 INTO gw_source_package1 INDEX lv_tabix3.

           CLEAR gw_source_package-/bic/ztotalhr.

           gw_source_package1-/bic/ztotalhr  = gw_source_package1-/bic/zbillbltm - gw_source_package1-/bic/zadjdiff .

           MODIFY gt_source_package1 FROM gw_source_package1 TRANSPORTING /bic/ztotalhr.

         ENDIF.

       ELSE.

         READ TABLE gt_source_package1 INTO gw_source_package1 INDEX lv_tabix3.

         IF sy-subrc = 0.

           gw_source_package1-/bic/ztotalhr  = gw_source_package1-/bic/zbillbltm - gw_source_package1-/bic/zadjdiff .

           MODIFY gt_source_package1 FROM gw_source_package1 TRANSPORTING /bic/ztotalhr.

         ENDIF.

       ENDIF.

       CLEAR : lv_days , lv_time , lv_timesec,gw_source_package1.

     ENDLOOP.

*******Moving values to Source_package*******

     DELETE gt_source_package1 WHERE c_x = 'X'.

     REFRESH source_package.

     source_package[] = gt_source_package1[] .

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

Anil.