Hello Again:
Sorry for the late response.
Anyway, the BTE is 00001011
The function module it uses is as follows.
FUNCTION zfigl_interface_00001011.
*"----------------------------------------------------------------------
*"*"Local Interface:
*" IMPORTING
*" VALUE(I_BSEG) LIKE BSEG STRUCTURE BSEG
*" VALUE(I_BKPF) LIKE BKPF STRUCTURE BKPF
*"----------------------------------------------------------------------
DATA: ls_dim TYPE zfigl_sl,
lt_dim LIKE STANDARD TABLE OF ls_dim.
DATA: ls_bseg LIKE bseg,
lv_tabix LIKE sy-tabix,
lv_message(50) TYPE c.
DATA: ls_sl TYPE zfigl_sl_dim.
DATA: ls_zsl TYPE zfigl_sl_dim.
FIELD-SYMBOLS: <fs1> TYPE any,
<fs2> TYPE any.
CLEAR gs_hist.
IF gt_hist2[] IS INITIAL.
SELECT * INTO CORRESPONDING FIELDS OF TABLE gt_hist2 FROM zfigl_sl_dim WHERE belnr = i_bseg-belnr .
IF sy-subrc NE 0.
SELECT buzei saknr zsl_dim FROM vbsegs INTO TABLE gt_hist2 WHERE belnr = i_bseg-belnr.
ENDIF.
DELETE FROM zfigl_sl_dim WHERE belnr = i_bseg-belnr.
ENDIF.
SELECT * FROM zfigl_sl
INTO TABLE lt_dim
WHERE saknr = i_bseg-hkont.
IF sy-subrc EQ 0.
ls_zsl-flag = 'X'. "Flag for GL with SL dimension for use in FBVB
***ADDED FOR CHANGE DOCUMENT
IF i_bseg-belnr IS NOT INITIAL AND ( sy-tcode = 'FV60' OR
sy-tcode = 'FV50' OR
sy-tcode = 'FB08' OR
sy-tcode = 'FBV0' OR
sy-tcode = 'FBVB' OR sy-tcode = 'FBV2' )
AND i_bseg-zsl_dim IS INITIAL .
READ TABLE gt_hist2 INTO gs_hist2 WITH KEY buzei = i_bseg-buzei
hkont = i_bseg-hkont.
IF sy-subrc = 0.
READ TABLE gt_hist INTO gs_hist WITH KEY buzei = i_bseg-buzei "Added 2/12/2013
hkont = i_bseg-hkont.
IF sy-subrc NE 0.
gs_hist-buzei = i_bseg-buzei.
gs_hist-hkont = i_bseg-hkont.
gs_hist-zsl_dim = gs_hist2-zsl_dim.
gs_hist-dmbtr = gs_hist2-dmbtr.
gs_hist-flag = gs_hist2-flag.
gs_hist-flag = 'X'.
APPEND gs_hist TO gt_hist.
ENDIF.
DELETE ADJACENT DUPLICATES FROM gt_hist COMPARING buzei hkont.
ENDIF.
ELSEIF i_bseg-belnr IS INITIAL AND sy-tcode = 'FB08'.
IF i_bseg-zsl_dim IS NOT INITIAL.
gs_hist-buzei = i_bseg-buzei.
gs_hist-hkont = i_bseg-hkont.
gs_hist-zsl_dim = i_bseg-zsl_dim.
gs_hist-dmbtr = gs_hist2-dmbtr.
gs_hist-flag = 'X'.
APPEND gs_hist TO gt_hist.
DELETE ADJACENT DUPLICATES FROM gt_hist COMPARING buzei hkont.
ENDIF.
ENDIF.
READ TABLE gt_hist INTO gs_hist WITH KEY buzei = i_bseg-buzei
hkont = i_bseg-hkont.
IF sy-subrc NE 0 AND i_bseg-zsl_dim IS INITIAL.
DELETE gt_hist WHERE buzei = i_bseg-buzei.
gs_hist-buzei = i_bseg-buzei.
gs_hist-hkont = i_bseg-hkont.
gs_hist-zsl_dim = gs_sl-zsl_dim.
gs_hist-dmbtr = i_bseg-dmbtr.
gs_hist-flag = 'X'.
APPEND gs_hist TO gt_hist.
ELSEIF sy-subrc NE 0 AND i_bseg-zsl_dim IS NOT INITIAL.. "Added 3/12/2013
DELETE gt_hist WHERE buzei = i_bseg-buzei.
gs_hist-buzei = i_bseg-buzei.
gs_hist-hkont = i_bseg-hkont.
gs_hist-zsl_dim = i_bseg-zsl_dim.
gs_hist-dmbtr = i_bseg-dmbtr.
gs_hist-flag = 'X'.
APPEND gs_hist TO gt_hist.
ENDIF.
IF sy-ucomm EQ 'ZK' OR sy-ucomm = 'COBL_MORE'.
IF sy-tcode = 'FB01' OR
sy-tcode = 'FBS1' OR
sy-tcode = 'FBD1' OR
sy-tcode = 'F-04' OR
sy-tcode = 'FB50' OR
sy-tcode = 'FB60' OR
sy-tcode = 'FBZ1' OR
sy-tcode = 'FB05' OR
sy-tcode = 'FBD1' OR
sy-tcode = 'F-02' OR
sy-tcode = 'FBD5' OR
sy-tcode = 'FV60' OR
sy-tcode = 'FV50' OR
sy-tcode = 'FBV2' OR
sy-tcode = 'FBV0'.
CLEAR: gs_hist , gs_sl ,lv_tabix.
gv_saknr = i_bseg-hkont.
READ TABLE gt_hist INTO gs_hist WITH KEY buzei = i_bseg-buzei
hkont = i_bseg-hkont.
IF sy-subrc = 0.
gs_sl-zsl_dim = gs_hist-zsl_dim.
gs_hist-dmbtr = i_bseg-dmbtr.
lv_tabix = sy-tabix.
CALL SCREEN 0100 STARTING AT 40 10 ENDING AT 85 10.
gs_hist-zsl_dim = gs_sl-zsl_dim.
MODIFY gt_hist FROM gs_hist INDEX lv_tabix.
CLEAR: gs_hist.
ASSIGN '(SAPMF05A)BSEG-ZSL_DIM' TO <fs1>.
ASSIGN (<fs1>) TO <fs2>.
CHECK sy-subrc = 0.
<fs2> = gs_sl-zsl_dim.
ENDIF.
ELSEIF sy-tcode = 'FVB1'.
CLEAR: gs_hist , gs_sl ,lv_tabix.
READ TABLE gt_hist INTO gs_hist WITH KEY buzei = i_bseg-buzei
hkont = i_bseg-hkont..
IF sy-subrc = 0.
gs_sl-zsl_dim = gs_hist-zsl_dim.
gs_hist-dmbtr = i_bseg-dmbtr.
lv_tabix = sy-tabix.
CALL SCREEN 0100 STARTING AT 40 10 ENDING AT 85 10.
gs_hist-zsl_dim = gs_sl-zsl_dim.
MODIFY gt_hist FROM gs_hist INDEX lv_tabix.
CLEAR: gs_hist.
ASSIGN '(SAPLF040)BSEG-ZSL_DIM' TO <fs1>.
ASSIGN (<fs1>) TO <fs2>.
CHECK sy-subrc = 0.
<fs2> = gs_sl-zsl_dim.
ENDIF.
ENDIF.
IF sy-tcode = 'FBV2' AND i_bseg-belnr IS NOT INITIAL. "For additional Line item saving in customized table
ls_zsl-belnr = i_bseg-belnr.
ls_zsl-gjahr = i_bseg-gjahr.
ls_zsl-buzei = i_bseg-buzei.
ls_zsl-hkont = i_bseg-hkont.
READ TABLE gt_hist INTO gs_hist WITH KEY buzei = i_bseg-buzei
hkont = i_bseg-hkont.
IF sy-subrc EQ 0.
ls_zsl-zsl_dim = gs_hist-zsl_dim.
ls_zsl-dmbtr = i_bseg-dmbtr.
INSERT zfigl_sl_dim FROM ls_zsl.
IF sy-subrc NE 0.
MODIFY zfigl_sl_dim FROM ls_zsl.
ENDIF.
CLEAR gs_hist.
ENDIF.
ENDIF.
ENDIF.
ELSE.
IF sy-tcode NE 'FBV0'.
DELETE gt_hist WHERE buzei = i_bseg-buzei.
DELETE FROM zfigl_sl_dim WHERE belnr = i_bseg-belnr AND buzei = i_bseg-buzei.
ENDIF.
ENDIF.
IF sy-ucomm EQ 'BS' OR sy-ucomm EQ 'BU' OR sy-ucomm EQ 'BP'
OR sy-ucomm EQ 'AB' OR sy-ucomm EQ 'GO'
OR ( sy-ucomm = space AND sy-tcode = 'FBVB').
****For Posting of Parked Documents.
IF sy-tcode = 'FV50' OR sy-tcode = 'FV60' OR sy-tcode = 'FBV2'.
***ADDED FOR EDIT OF PARK DOCUMENTS WITH DOCUMENT NUMBER
IF i_bseg-belnr IS NOT INITIAL AND ( sy-tcode = 'FV60' OR sy-tcode = 'FV50' OR sy-tcode = 'FBV2').
READ TABLE gt_hist INTO gs_hist WITH KEY buzei = i_bseg-buzei
hkont = i_bseg-hkont.
IF sy-subrc EQ 0.
ls_zsl-belnr = i_bseg-belnr.
ls_zsl-gjahr = i_bseg-gjahr.
ls_zsl-buzei = gs_hist-buzei.
ls_zsl-hkont = gs_hist-hkont.
ls_zsl-zsl_dim = gs_hist-zsl_dim.
INSERT zfigl_sl_dim FROM ls_zsl.
UPDATE vbsegs SET zsl_dim = gs_hist-zsl_dim
sgtxt = gs_hist-zsl_dim
WHERE belnr = i_bseg-belnr
AND gjahr = i_bseg-gjahr
AND buzei = gs_hist-buzei
AND saknr = gs_hist-hkont.
IF sy-subrc NE 0.
MODIFY zfigl_sl_dim FROM ls_zsl.
ENDIF.
ENDIF.
ENDIF.
****END ADDED
IF i_bseg-belnr IS NOT INITIAL AND ( sy-ucomm EQ 'BS' OR sy-ucomm EQ 'BU' ).
SELECT SINGLE *
FROM zfigl_sl_dim
INTO ls_sl
WHERE belnr = i_bseg-belnr
AND gjahr = i_bseg-gjahr
AND buzei = i_bseg-buzei.
IF sy-subrc = 0.
READ TABLE gt_hist INTO gs_hist WITH KEY buzei = i_bseg-buzei
hkont = i_bseg-hkont.
IF sy-subrc = 0.
gs_hist-zsl_dim = ls_sl-zsl_dim.
MODIFY gt_hist FROM gs_hist INDEX sy-tabix.
IF sy-batch IS INITIAL. "Inserted by jperalta 12/14/2012, to avoid deletion of parked documents run in background
DELETE zfigl_sl_dim FROM ls_sl.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
***When Parking transfer the value to bseg For Posting and saving
IF ( sy-tcode = 'FV50' OR
sy-tcode = 'FV60' OR
sy-tcode = 'FB50' OR
sy-tcode = 'FB60' OR
sy-tcode = 'FBV0' OR
sy-tcode = 'FBVB' ) .
IF sy-tcode = 'FBV0'. "For use in FBVB Transaction
ls_zsl-belnr = i_bseg-belnr.
ls_zsl-gjahr = i_bseg-gjahr.
ls_zsl-buzei = i_bseg-buzei.
ls_zsl-hkont = i_bseg-hkont.
IF i_bseg-zsl_dim IS NOT INITIAL.
ls_zsl-zsl_dim = i_bseg-zsl_dim.
ELSE.
READ TABLE gt_hist INTO gs_hist WITH KEY buzei = i_bseg-buzei
hkont = i_bseg-hkont.
IF sy-subrc EQ 0.
ls_zsl-zsl_dim = gs_hist-zsl_dim.
ENDIF.
ENDIF.
ls_zsl-dmbtr = i_bseg-dmbtr.
IF i_bseg-dmbtr = 0.
DELETE gt_hist WHERE buzei = i_bseg-buzei.
ELSE.
DATA: lv_buzei TYPE buzei.
SELECT MAX( buzei ) FROM zfigl_sl_dim INTO lv_buzei WHERE belnr = i_bseg-belnr.
IF gv_buzei NE i_bseg-buzei.
gv_buzei = i_bseg-buzei.
IF i_bseg-buzei NE '001'.
ls_zsl-buzei = lv_buzei + 1.
ENDIF.
INSERT zfigl_sl_dim FROM ls_zsl.
IF sy-subrc NE 0.
MODIFY zfigl_sl_dim FROM ls_zsl.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
READ TABLE gt_hist INTO gs_hist WITH KEY buzei = i_bseg-buzei
hkont = i_bseg-hkont.
IF sy-subrc = 0.
gs_sl-zsl_dim = gs_hist-zsl_dim.
ASSIGN '(SAPMF05A)BSEG-ZSL_DIM' TO <fs1>.
ASSIGN (<fs1>) TO <fs2>.
CHECK sy-subrc = 0.
<fs2> = gs_sl-zsl_dim.
ENDIF.
ENDIF.
****For Checking of SL.
IF gt_hist[] IS NOT INITIAL.
IF sy-tcode EQ 'FBVB'.
READ TABLE gt_hist INTO gs_hist WITH KEY zsl_dim = space
flag = 'X'.
ELSE.
READ TABLE gt_hist INTO gs_hist WITH KEY zsl_dim = space.
ENDIF.
IF sy-subrc EQ 0.
CONCATENATE 'Please Input SL Dimension for GL'
gs_hist-hkont INTO lv_message SEPARATED BY space.
MESSAGE lv_message TYPE 'E'.
ENDIF.
ENDIF.
ENDIF.
***END
ENDFUNCTION.