Advertisement
Guest User

Untitled

a guest
Jun 16th, 2019
145
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
ABAP 5.25 KB | None | 0 0
  1.   METHOD ZIF_HRST_EFD_SST~PROCESS.
  2.  
  3.     DATA: lt_2210  TYPE TABLE OF zhrst_efd_e2210,
  4.           lw_2210  LIKE LINE OF  lt_2210,
  5.           lt_2210a TYPE TABLE OF zhrst_efd_e2210a,
  6.           lw_2210a LIKE LINE OF  lt_2210a,
  7.           lt_2210p TYPE TABLE OF zhrst_efd_e2210p,
  8.           lw_2210p LIKE LINE OF  lt_2210p,
  9.           lw_pernr LIKE LINE OF  mt_pernr.
  10.  
  11.     DATA: lw_ial  LIKE LINE OF mt_ial,
  12.           lw_fal  LIKE LINE OF mt_fal,
  13.           lw_ip   LIKE LINE OF mt_ip,
  14.           lw_ihva LIKE LINE OF mt_ihva.
  15.  
  16.     DATA: lv_recn_key_1 TYPE char50,
  17.           lv_recn_key_3 TYPE char50,
  18.           lv_recn_key_4 TYPE char50.
  19.  
  20.     DATA: lo_sst_util TYPE REF TO zcl_hrst_sst_utilitarios.
  21.     CREATE OBJECT lo_sst_util.
  22.  
  23.     LOOP AT mt_ial INTO lw_ial.
  24.  
  25.       LOOP AT mt_fal INTO lw_fal WHERE recntia = lw_ial-recnroot.
  26.  
  27.         LOOP AT mt_pernr INTO lw_pernr.
  28.  
  29.           " PERNR
  30.           READ TABLE mt_ip INTO lw_ip WITH KEY recnroot = lw_fal-recnroot.
  31.           IF sy-subrc <> 0.
  32.             CONTINUE.
  33.           ELSE.
  34.             lw_2210-pernr = lw_ip-ippers+2.
  35.           ENDIF.
  36.  
  37.           " Fill RECN_KEY_1, RECN_KEY_3 e RECN_KEY_4
  38.           READ TABLE mt_ihva INTO lw_ihva WITH KEY recntobj = lw_ial-recn
  39.                                                    ihvalcat = 'SAP_EHS_1101_001'.
  40.           IF sy-subrc IS INITIAL.
  41.             lv_recn_key_1 = |{ lw_ihva-recn }{ lw_ihva-actn }|.
  42.           ENDIF.
  43.  
  44.           READ TABLE mt_ihva INTO lw_ihva WITH KEY recntobj = lw_ial-recnroot
  45.                                                    ihvalcat = 'SAP_EHS_1103_001'.
  46.           IF sy-subrc IS INITIAL.
  47.             lv_recn_key_3 = |{ lw_ihva-recn }{ lw_ihva-actn }|.
  48.           ENDIF.
  49.  
  50.           READ TABLE mt_ihva INTO lw_ihva WITH KEY recntobj = lw_ial-recnroot
  51.                                                    ihvalcat = 'SAP_EHS_1104_001'.
  52.           IF sy-subrc IS INITIAL.
  53.             lv_recn_key_4 = |{ lw_ihva-recn }{ lw_ihva-actn }|.
  54.           ENDIF.
  55.  
  56.           " GET EMPLOYEE INFO
  57.  
  58.  
  59.  
  60.           " ACCID_DATE
  61.           lw_2210-accid_date = lw_fal-evdat.
  62.  
  63.           "ACCID_HOUR
  64.           lw_2210-accid_hour = lw_fal-evtime.
  65.  
  66.           "CODAMB_
  67. *          lw_2210-codamb = "WAID"
  68.  
  69.           "CAT_RECORDER (Não encontrado no mapeamento)
  70.           lw_2210-cat_recorder = lo_sst_util->get_charac_data( i_recn_key = lv_recn_key_4
  71.                                                                i_attin = 'ZSAP_EHS_1104_001_106' ).
  72.  
  73.           "INSC_NUM
  74.           lw_2210-insc_num = lo_sst_util->get_charac_data( i_recn_key = lv_recn_key_1
  75.                                                            i_attin = 'ZSAP_EHS_1101_001_004' ).
  76.  
  77.           "INSC_TYPE
  78.           lw_2210-insc_type = lo_sst_util->get_charac_data( i_recn_key = lv_recn_key_1
  79.                                                             i_attin = 'ZSAP_EHS_1101_001_003' ).
  80.  
  81.           "ACCID_WORKEDH (Mapeamento incorreto)
  82. *          lw_2210-accid_workedh = lo_sst_util->get_charac_data( i_recn_key = lv_recn_key_3
  83. *                                                                i_attin = 'ZSAP_EHS_1103_001_HRSTRABANTES' ).
  84.  
  85.           "CAT_TYPE
  86.           lw_2210-cat_type = lo_sst_util->get_charac_data( i_recn_key = lv_recn_key_4
  87.                                                            i_attin = 'ZSAP_EHS_1104_001_002' ).
  88.  
  89.           "IND_DEATH_CAT
  90.           lw_2210-ind_death_cat = lw_fal-fatalflg.
  91.  
  92.           "IND_POLICE
  93.           lw_2210-ind_police = lo_sst_util->get_charac_data( i_recn_key = lv_recn_key_3
  94.                                                              i_attin = 'ZSAP_EHS_1103_001_043' ).
  95.  
  96.           "ACCIDENT_CAUSE
  97.           lw_2210-accident_cause = lo_sst_util->get_charac_data( i_recn_key = lv_recn_key_3
  98.                                                                  i_attin = 'ZSAP_EHS_1103_001_051' ).
  99.  
  100.           "CAT_INIT
  101.           lw_2210-cat_init = lo_sst_util->get_charac_data( i_recn_key = lv_recn_key_4
  102.                                                            i_attin = 'ZSAP_EHS_1104_001_100' ).
  103.  
  104.           "OBSERVATION (não será enviado)
  105.  
  106.           "CAT_DATE (Não encontrado no mapeamento)
  107. *          lw_2210-cat_date =
  108.  
  109.           "CAT_NR
  110.           lw_2210-cat_nr = lo_sst_util->get_charac_data( i_recn_key = lv_recn_key_4
  111.                                                          i_attin = 'ZSAP_EHS_1104_001_065' ).
  112.  
  113.           "ACCIDENT_TYPE (Mapeamento Incorreto)
  114. *          lw_2210-ACCIDENT_TYPE = lo_sst_util->get_charac_data( i_recn_key = lv_recn_key_3
  115. *                                                                i_attin = 'ZSAP_EHS_1103_002_TPACID' ).
  116.  
  117.           "DEATH_DATE
  118.           lw_2210-death_date = lw_fal-ipdeathdate.
  119.  
  120.          "PLACE_TYPE
  121.          lw_2210-PLACE_TYPE = lo_sst_util->get_charac_data( i_recn_key = lv_recn_key_4
  122.                                                             i_attin = 'ZSAP_EHS_1104_001_035' ).
  123.  
  124.  
  125.  
  126.  
  127. *STREET
  128. *DESC_ADDRS
  129. *HS_NUMBER
  130. *CITY_CODE
  131. *STATE
  132. *DISTRICT
  133. *CNPJ
  134. *COUNTRY
  135. *ZIP_CODE
  136. *CNES
  137. *APPOINT_DATE
  138. *APPOINT_TIME
  139. *IND_HOSP
  140. *APPOINT_DURATION
  141. *ABSENCE_IND
  142. *INJURY_DESC
  143. *INJURY_COMP_DESC
  144. *LIKELI_DIAGN
  145. *COD_CID
  146. *OBSERVATION2
  147. *DOCTOR_NAME
  148. *OC
  149. *NR_OC
  150. *UF_OC
  151. *COMPL_ADDRS
  152. *TP_LOGRAD
  153. *EXTERNAL_ID
  154.  
  155.  
  156.         ENDLOOP.
  157.  
  158.       ENDLOOP.
  159.  
  160.     ENDLOOP.
  161.  
  162.   ENDMETHOD.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement