Professional Documents
Culture Documents
Zfi Inc Activfi F01
Zfi Inc Activfi F01
*& Include
ZFI_INC_ACTIVOSFIJOS_F01
*
*&---------------------------------------------------------------------*
*&---------------------------------------------------------------------*
*&
Form CARGAR_DATOS
*&---------------------------------------------------------------------*
*
Seleccin de Datos
*----------------------------------------------------------------------*
form cargar_datos .
ranges: rl_ktansw for t095-ktansw,
rl_anlkl for anla-anlkl.
*
rl_ktogr for t095-ktogr. "ADD JOMS20140410 "joms20140415 # COM
data wl_num
type f.
*
"BEGIN JOMS20140410
"joms20140415 # INI
COM
* DATA: cant_lineas type i, txt_prog type string.
*
* DATA: begin of t_t095 occurs 0,
*
ktopl like t095-ktopl,
*
ktogr like t095-ktogr,
*
afabe like t095-afabe,
*
ktansw like t095-ktansw,
*
end of t_t095.
*
* DATA: begin of t_anla occurs 0,
*
bukrs like anla-bukrs,
*
anln1 like anla-anln1,
*
anln2 like anla-anln2,
*
ktogr like anla-ktogr,
*
deakt like anla-deakt,
*
anlkl like anla-anlkl,
*
aktiv like anla-aktiv,
*
txt50 like anla-txt50,
*
txa50 like anla-txa50,
*
herst like anla-herst,
*
sernr like anla-sernr,
*
invnr like anla-invnr,
*
zugdt like anla-zugdt,
*
end of t_anla.
"END JOMS20140410
"joms20140415 # INI COM
clear: w_butxt, w_ktopl, w_paval, w_cod.
* Descripcion de Soc y plan de cuenta
select single butxt ktopl
into (w_butxt, w_ktopl)
from t001
where bukrs eq p_bukrs.
* Identificacin Fiscal-RUC
select single paval
from t001z
into w_paval
where bukrs eq p_bukrs.
* BEGIN CSTI191009
* rl_ktansw-sign = 'I'.
* rl_ktansw-option = 'CP'.
* rl_ktansw-low
= '000034*'.
* APPEND rl_ktansw.
if p_gjahr lt gv_fecha.
rl_ktansw[] = gr_ktansw[].
else.
rl_ktansw[] = gr_ktansw_pcge[].
endif.
* END CSTI191009
rl_anlkl-sign
= 'I'.
rl_anlkl-option = 'CP'.
rl_anlkl-low
= '*2'.
append rl_anlkl.
concatenate p_gjahr p_peraf+1(2) into w_festr.
concatenate w_festr '01' into w_festr.
w_fecdat = w_festr.
call function 'SG_PS_GET_LAST_DAY_OF_MONTH'
exporting
day_in
= w_fecdat
importing
last_day_of_month = w_fecha
exceptions
day_in_not_valid = 1
others
= 2.
*
*
*
*
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
*
*
"joms20140415 # FIN COM
*
"joms20140415 # I
NI ADD
*
if s_afabe-low eq '01'.
*
*
select a~bukrs b~afabe a~anln1 a~anln2 a~deakt a~anlkl a~aktiv
*
a~txt50 a~txa50 a~herst a~sernr a~invnr a~zugdt b~ktogr b~ktansw
*
into corresponding fields of table ti_salida
*
from anla as a inner join t095 as b
*
on a~ktogr = b~ktogr
**
where a~bukrs eq p_bukrs
"joms20140422 # COM
*
where b~ktopl eq w_ktopl
"joms20140422 # ADD
*
and b~afabe in s_afabe
"joms20140422 # ADD
*
AND a~bukrs eq p_bukrs
"joms20140422 # ADD
*
and a~anln1 in s_anln1
*
and a~anln2 in s_anln2
*
*
"joms20140422 #
"joms20140422 #
ADD
*
ADD
*
2 # COM
*
order by a~anln1 a~anln2.
"joms20140422
# ADD
**
end joms20140313
**
SELECT a~bukrs b~afabe a~anln1 a~anln2 a~anlkl a~aktiv a~txt50 a~txa50 a
~herst "com joms20104041
*
select a~bukrs b~afabe a~anln1 a~anln2 a~deakt a~anlkl a~aktiv a~txt5
0 a~txa50 a~herst
"add joms20104041 - a~deakt
*
a~sernr a~invnr a~zugdt b~ktogr b~ktansw
*
into corresponding fields of table ti_salida
*
from anla as a inner join t095 as b
*
on a~ktogr = b~ktogr
**
where a~bukrs eq p_bukrs
"joms20140422 # COM
*
where b~ktopl eq w_ktopl
"joms20140422 # ADD
*
and b~afabe in s_afabe
"joms20140422 # ADD
*
and a~bukrs eq p_bukrs
"joms20140422 # ADD
*
and a~anln1 in s_anln1
*
and a~anln2 in s_anln2
*
and a~anlkl in s_anlkl
*
AND a~zujhr BETWEEN '0001' AND p_gjahr
"joms20140422
# ADD
*
and ( a~deakt EQ '00000000'
"joms20140422
# ADD
*
or a~deakt BETWEEN i_fbaja AND i_fbaja )
"joms20140422
# ADD
**
and a~zujhr ne '0000'
"joms20140422
# COM
**
and a~deakt le i_fbaja
"com joms20104041
**
and b~ktopl eq w_ktopl
"joms20140422
# COM
**
and a~zujhr <= p_gjahr
"joms20140422
# COM
**
and b~afabe in s_afabe
"joms20140422
# COM
**
order by a~bukrs b~ktansw b~ktogr a~anln1 a~anln2. "joms20140422
# COM
*
order by a~anln1 a~anln2.
"joms20140422
# ADD
*
"joms20140415 #
FIN ROLLBACK COM JOMS20140410
**
begin joms20140313
**
LOOP AT aux_salida ASSIGNING <aux_salida>.
**
LOOP AT ti_salida WHERE anln1 = <aux_salida>-anln1
**
AND anln2 = <aux_salida>-anln2.
**
ti_salida-ktansw = <aux_salida>-ktansw.
**
MODIFY ti_salida INDEX sy-tabix.
**
ENDLOOP.
**
ENDLOOP.
**
REFRESH aux_salida.
"add joms201404
07
**
end joms20140313
*
"joms20140415 # INI
ADD
*
loop at ax_salida assigning <ax_salida>.
*
READ TABLE ti_salida WITH KEY anln1 = <ax_salida>-anln1
"jo
ms20140422 # ADD
*
anln2 = <ax_salida>-anln2 BINARY SEARCH
.
**
loop at ti_salida where anln1 = <ax_salida>-anln1
"joms20140422
# COM
**
and anln2 = <ax_salida>-anln2.
"joms20140422
# COM
*
IF sy-subrc eq 0.
"joms20140422
# ADD
*
ti_salida-ktansw = <ax_salida>-ktansw.
*
modify ti_salida index sy-tabix.
*
ENDIF.
"joms20140422
# ADD
*
CLEAR ti_salida.
"joms20140422
# ADD
**
endloop.
"joms20140422
# COM
*
endloop.
*
refresh ax_salida.
*
SORT ti_salida by bukrs ktansw ktogr anln1 anln2.
"joms20140422
# COM
*
"joms20140415 # FIN
ADD
*
"FIN JOMS20140410 - COMENTADO
*
*
endif.
*
*
else.
*
"joms20140415 # INI COM
*
"BEGIN JOMS20140410 - ADD
**
SELECT ktopl ktogr afabe ktansw into table t_t095
**
from t095 where ktopl EQ w_ktopl and afabe EQ '01'.
**
**
LOOP AT t_t095.
**
rl_ktogr-sign
= 'I'.
**
rl_ktogr-option = 'EQ'.
**
rl_ktogr-low
= t_t095-ktogr.
**
APPEND rl_ktogr.
**
clear t_t095.
**
ENDLOOP.
**
**
SELECT bukrs anln1 anln2 ktogr deakt anlkl aktiv txt50 txa50 herst sernr
invnr zugdt into table t_anla from anla
**
where ktogr IN rl_ktogr
**
AND bukrs EQ p_bukrs
**
AND anln1 IN s_anln1
**
AND anln2 IN s_anln2
**
AND anlkl IN s_anlkl
**
AND zujhr NE '0000'
**
AND zujhr <= p_gjahr
**
ORDER BY anln1 anln2.
**
**
SORT t_anla by ktogr.
**
sort t_t095 by ktogr.
**
DELETE ADJACENT DUPLICATES FROM t_t095.
**
DESCRIBE TABLE t_anla lines cant_lineas.
**
**
LOOP AT t_anla where ktogr in rl_ktogr.
**
READ TABLE t_t095 with key ktogr = t_anla-ktogr binary search.
**
IF sy-subrc EQ 0.
**
aux_salida-anlkl = t_anla-anlkl.
**
aux_salida-bukrs = t_anla-bukrs.
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
**
*
aux_salida-ktogr = t_anla-ktogr.
aux_salida-afabe = '03'.
aux_salida-anln1 = t_anla-anln1.
aux_salida-anln2 = t_anla-anln2.
aux_salida-deakt = t_anla-deakt.
aux_salida-ktansw = t_t095-ktansw.
aux_salida-txt50 = t_anla-txt50.
aux_salida-herst = t_anla-herst.
aux_salida-txa50 = t_anla-txa50.
aux_salida-sernr = t_anla-sernr.
aux_salida-invnr = t_anla-invnr.
aux_salida-aktiv = t_anla-aktiv.
aux_salida-zugdt = t_anla-zugdt.
append aux_salida.
PERFORM PROGRESS_BAR USING txt_prog
SY-TABIX
cant_lineas.
clear: t_anla, t_t095.
ENDLOOP.
REFRESH ti_salida.
ti_salida[] = aux_salida[].
REFRESH aux_salida.
"FIN JOMS20140410 - ADD
*
"joms20140415 # FIN COM
*
*
"BEGIN JOMS20140410 - COMENTADO
**
"begin joms20140313
*
"SELECT a~bukrs b~afabe a~anln1 a~anln2 a~anlkl a~aktiv a~txt50 a~txa50 a
~herst "com joms20104041
**
SELECT a~bukrs b~afabe a~anln1 a~anln2 a~deakt a~anlkl a~aktiv a~txt50 a
~txa50 a~herst
"add joms20104041 - a~deakt
**
a~sernr a~invnr a~zugdt b~ktogr b~ktansw
**
INTO CORRESPONDING FIELDS OF TABLE aux_salida
*
"jo
ms20140415 # INI ROLLBACK COM JOMS20140410
*
select a~anln1 a~anln2 b~afabe b~ktogr b~ktansw into table ax_salida "jo
ms20140415 # ADD
*
from anla as a inner join t095 as b
*
on a~ktogr = b~ktogr
**
where a~bukrs eq p_bukrs
"joms20140422 # COM
*
where b~ktopl eq w_ktopl
"joms20140422 # ADD
*
and b~afabe eq '01'
"joms20140422 # ADD
*
and a~bukrs eq p_bukrs
"joms20140422 # ADD
*
and a~anln1 in s_anln1
*
and a~anln2 in s_anln2
*
and a~anlkl in s_anlkl
*
AND a~zujhr BETWEEN '0001' AND p_gjahr
"joms20140422 # AD
D
*
and ( a~deakt EQ '00000000'
"joms20140422 # AD
D
*
or a~deakt BETWEEN i_fbaja AND i_fbaja )
"joms20140422 # AD
D
**
AND a~DEAKT LE i_fbaja
"com joms20104041
**
and a~zujhr ne '0000'
"joms20140422 # COM
**
and b~ktopl eq w_ktopl
"joms20140422 # COM
**
and a~zujhr <= p_gjahr
"joms20140422 # COM
**
and b~afabe eq '01'
"joms20140422 # COM
**
ORDER BY a~bukrs b~ktansw b~ktogr a~anln1 a~anln2.
"joms20140422 #
COM
*
order by a~anln1 a~anln2.
"joms20140422 #
ADD
*
"end joms20140313
*
"SELECT a~bukrs a~anln1 a~anln2 a~anlkl a~aktiv a~txt50 a~txa50 a~herst
"com joms20104041
*
select a~bukrs a~anln1 a~anln2 a~deakt a~anlkl a~aktiv a~txt50 a~txa50 a~
herst
"add joms20104041 - a~deakt
*
a~sernr a~invnr a~zugdt a~ktogr
*
into corresponding fields of table ti_salida
*
from anla as a
*
where a~bukrs eq p_bukrs
*
and a~anln1 in s_anln1
*
and a~anln2 in s_anln2
*
and a~anlkl in s_anlkl
*
AND a~zujhr BETWEEN '0001' AND p_gjahr
"joms20140422 #
ADD
*
and ( a~deakt EQ '00000000'
"joms20140422 #
ADD
*
or a~deakt BETWEEN i_fbaja AND i_fbaja )
"joms20140422 #
ADD
**
AND a~DEAKT LE i_fbaja
"com joms20104041
**
and a~zujhr ne '0000' "ADD CFP20120816
"joms20140422 # C
OM
**
AND b~afabe EQ '01'
"com joms20104041
**
and a~zujhr <= p_gjahr " ADD CFP20120817
"joms20140422 # C
OM
**
order by a~bukrs a~ktogr a~anln1 a~anln2.
"joms20140422 # C
OM
*
order by a~anln1 a~anln2.
"joms20140422 # A
DD
*
"j
oms20140415 # FIN ROLLBACK COM JOMS20140410
*
"begin joms20140313
**
LOOP AT aux_salida ASSIGNING <aux_salida>.
**
READ TABLE ti_salida WITH KEY anln1 = <aux_salida>-anln1
**
anln2 = <aux_salida>-anln2.
**
IF sy-subrc EQ 0.
**
ti_salida-afabe = <aux_salida>-afabe.
**
ti_salida-ktansw = <aux_salida>-ktansw.
**
MODIFY ti_salida INDEX sy-tabix.
**
ENDIF.
**
ENDLOOP.
**
REFRESH aux_salida.
"add joms20140407
*
"end joms20140313
*
"joms20140415
# INI ADD
*
loop at ax_salida assigning <ax_salida>.
*
read table ti_salida with key anln1 = <ax_salida>-anln1
"joms20
140422 # ADD
*
anln2 = <ax_salida>-anln2 BINARY SEARCH
. "joms20140422 # ADD - BINARY SEARCH
*
if sy-subrc eq 0.
*
ti_salida-afabe = <ax_salida>-afabe.
*
ti_salida-ktansw = <ax_salida>-ktansw.
*
modify ti_salida index sy-tabix.
*
endif.
*
CLEAR ti_salida.
"joms20140422
# ADD
*
*
endloop.
refresh ax_salida.
"joms20140415
# FIN ADD
*
SORT ti_salida by bukrs ktansw ktogr anln1 anln2.
"joms20140422
# ADD
*
"FIN JOMS20140410 - COMENTADO
*
endif.
*
"END MOD CSS20120706
** BEGIN CSTI191009
* else.
*
"joms20140415 # INI COM
*
"BEGIN JOMS20140410 - ADD
**
SELECT ktopl ktogr afabe ktansw into table t_t095
**
from t095 where ktopl EQ w_ktopl and afabe EQ '01'.
**
**
LOOP AT t_t095.
**
rl_ktogr-sign
= 'I'.
**
rl_ktogr-option = 'EQ'.
**
rl_ktogr-low
= t_t095-ktogr.
**
APPEND rl_ktogr.
**
clear t_t095.
**
ENDLOOP.
**
**
SELECT bukrs anln1 anln2 ktogr deakt anlkl aktiv txt50 txa50 herst sernr
invnr zugdt into table t_anla from anla
**
where ktogr IN rl_ktogr
**
AND bukrs EQ p_bukrs
**
AND anln1 IN s_anln1
**
AND anln2 IN s_anln2
**
AND anlkl IN s_anlkl
**
AND zujhr NE '0000'
**
AND zujhr <= p_gjahr
**
ORDER BY anln1 anln2.
**
**
SORT t_anla by ktogr.
**
sort t_t095 by ktogr.
**
DELETE ADJACENT DUPLICATES FROM t_t095.
**
DESCRIBE TABLE t_anla lines cant_lineas.
**
**
LOOP AT t_anla where ktogr in rl_ktogr.
**
READ TABLE t_t095 with key ktogr = t_anla-ktogr binary search.
**
IF sy-subrc EQ 0.
**
aux_salida-anlkl = t_anla-anlkl.
**
aux_salida-bukrs = t_anla-bukrs.
**
aux_salida-ktogr = t_anla-ktogr.
**
aux_salida-afabe = t_t095-afabe.
**
aux_salida-anln1 = t_anla-anln1.
**
aux_salida-anln2 = t_anla-anln2.
**
aux_salida-deakt = t_anla-deakt.
**
aux_salida-ktansw = t_t095-ktansw.
**
aux_salida-txt50 = t_anla-txt50.
**
aux_salida-herst = t_anla-herst.
**
aux_salida-txa50 = t_anla-txa50.
**
aux_salida-sernr = t_anla-sernr.
**
aux_salida-invnr = t_anla-invnr.
**
aux_salida-aktiv = t_anla-aktiv.
**
aux_salida-zugdt = t_anla-zugdt.
**
**
**
**
**
**
**
**
**
**
*
append aux_salida.
PERFORM PROGRESS_BAR USING txt_prog
SY-TABIX
cant_lineas.
ENDIF.
clear: t_anla, t_t095.
ENDLOOP.
REFRESH ti_salida.
ti_salida[] = aux_salida[].
REFRESH aux_salida.
"BEGIN JOMS20140410 - ADD
*
"joms20140415 # FIN COM
*
"BEGIN JOMS20140410 - COMENTADO
*
"begin joms20140313
*
"SELECT a~bukrs b~afabe a~anln1 a~anln2 a~anlkl a~aktiv a~txt50 a~txa50 a~h
erst "com joms20104041
**
SELECT a~bukrs b~afabe a~anln1 a~anln2 a~deakt a~anlkl a~aktiv a~txt50 a~t
xa50 a~herst
"add joms20104041 - a~deakt
**
a~sernr a~invnr a~zugdt b~ktogr b~ktansw
**
INTO CORRESPONDING FIELDS OF TABLE aux_salida
*
"joms20
140415 # INI ROLLBACK COM JOMS20140410
*
select a~anln1 a~anln2 b~afabe b~ktogr b~ktansw into table ax_salida "jo
ms20140415 # ADD
*
from anla as a inner join t095 as b
*
on a~ktogr = b~ktogr
**
where a~bukrs eq p_bukrs
"joms20140422 # COM
*
where b~ktopl eq w_ktopl
"joms20140422 # ADD
*
and b~afabe eq '01'
"joms20140422 # ADD
*
and a~bukrs eq p_bukrs
"joms20140422 # ADD
*
and a~anln1 in s_anln1
*
and a~anln2 in s_anln2
*
and a~anlkl in s_anlkl
*
AND a~zujhr BETWEEN '0001' AND p_gjahr
"joms20140422 # A
DD
*
and ( a~deakt EQ '00000000'
"joms20140422 # A
DD
*
or a~deakt BETWEEN i_fbaja AND i_fbaja )
"joms20140422 # A
DD
***
AND a~DEAKT LE i_fbaja
"com joms20104041
**
and a~zujhr ne '0000'
"joms20140422 # COM
**
and b~ktopl eq w_ktopl
"joms20140422 # COM
**
and a~zujhr <= p_gjahr
"joms20140422 # COM
**
and b~afabe eq '01'
"joms20140422 # COM
**
order by a~bukrs a~ktogr a~anln1 a~anln2.
"joms20140422 # COM
*
order by a~anln1 a~anln2.
"joms20140422 # ADD
*
"end joms20140313
*
"SELECT a~bukrs b~afabe a~anln1 a~anln2 a~anlkl a~aktiv a~txt50 a~txa50 a~h
erst "com joms20104041
*
select a~bukrs b~afabe a~anln1 a~anln2 a~deakt a~anlkl a~aktiv a~txt50 a~tx
a50 a~herst
"add joms20104041 - a~deakt
*
a~sernr a~invnr a~zugdt b~ktogr b~ktansw
*
into corresponding fields of table ti_salida
*
from anla as a inner join zt095 as b
*
on a~ktogr = b~ktogr
**
where a~bukrs eq p_bukrs
"joms20140422 # COM
*
where b~ktopl eq w_ktopl
"joms20140422 # ADD
*
and b~afabe eq s_afabe
"joms20140422 # ADD
*
and a~bukrs eq p_bukrs
"joms20140422 # ADD
*
and a~anln1 in s_anln1
*
and a~anln2 in s_anln2
*
and a~anlkl in s_anlkl
*
AND a~zujhr BETWEEN '0001' AND p_gjahr
"joms20140422 # A
DD
*
and ( a~deakt EQ '00000000'
"joms20140422 # A
DD
*
or a~deakt BETWEEN i_fbaja AND i_fbaja )
"joms20140422 # A
DD
**
AND a~DEAKT LE i_fbaja
"com joms20104041
**
and a~zujhr <= p_gjahr "ADD CFP20120817
**
AND b~afabe EQ '01'
"joms20140422 # CO
M
**
and b~afabe in s_afabe ""ADD ARC16022012
**
order by a~bukrs a~ktogr a~anln1 a~anln2.
"joms20140422 # CO
M
*
order by a~anln1 a~anln2.
"joms20140422 # AD
D
*
"joms
20140415 # FIN ROLLBACK COM JOMS20140410
*
"begin joms20140313
**
LOOP AT aux_salida ASSIGNING <aux_salida>.
**
LOOP AT ti_salida WHERE anln1 = <aux_salida>-anln1
**
AND anln2 = <aux_salida>-anln2.
**
ti_salida-ktansw = <aux_salida>-ktansw.
**
MODIFY ti_salida INDEX sy-tabix.
**
ENDLOOP.
**
ENDLOOP.
**
REFRESH aux_salida.
"add joms20140407
*
"end joms20140313.
*
"joms20140415 # INI
ADD
*
loop at ax_salida assigning <ax_salida>.
*
READ TABLE ti_salida WITH KEY anln1 = <ax_salida>-anln1
"joms20140422
# ADD
*
anln2 = <ax_salida>-anln2 BINARY SEARCH.
"joms20140422 # ADD
**
loop at ti_salida where anln1 = <ax_salida>-anln1
"joms201404
22 # COM
**
and anln2 = <ax_salida>-anln2.
"joms201404
22 # COM
*
IF sy-subrc eq 0.
"joms20140422 #
ADD
*
ti_salida-ktansw = <ax_salida>-ktansw.
*
modify ti_salida index sy-tabix.
*
ENDIF.
"joms20140422 #
ADD
*
CLEAR ti_salida.
"joms20140422 #
ADD
**
endloop.
"joms20140422 #
COM
*
endloop.
*
refresh ax_salida.
*
SORT ti_salida by bukrs ktansw ktogr anln1 anln2.
"joms20140422 # C
OM
*
"joms20140415 # FIN A
DD
*
AND
AND
AND
AND
AND
and
a~anln1 IN s_anln1
a~anln2 IN s_anln2
a~anlkl IN s_anlkl
a~zujhr NE '0000'
a~zujhr <= p_gjahr
( a~deakt EQ '00000000'
"joms20140505 # add
*
or a~deakt BETWEEN i_fbaja AND i_fbaja ) "joms20140502 # com joms20140505 # add - "COM joms20140506
or a~deakt BETWEEN i_ibaja AND i_fbaja ) "ADD joms20140506
ORDER BY a~bukrs a~ktogr a~anln1 a~anln2.
endif.
ELSE.
if not s_afabe-low eq '01'.
select a~anln1 a~anln2 b~afabe b~ktogr b~ktansw into table ax_salida
from anla as a inner join t095 as b
on a~ktogr = b~ktogr
*
where b~ktopl eq w_ktopl "joms20140502 # com
*
and b~afabe eq '01'
"joms20140502 # com
where b~afabe eq '01'
and a~bukrs eq p_bukrs
and a~anln1 in s_anln1
and a~anln2 in s_anln2
and a~anlkl in s_anlkl
AND a~zujhr NE '0000'
AND a~zujhr <= p_gjahr
*
AND a~zujhr BETWEEN '0001' AND p_gjahr
"joms20140502 # com
and ( a~deakt EQ '00000000'
"joms20140502 # com - j
oms20140505 # add
*
or a~deakt BETWEEN i_fbaja AND i_fbaja ) "joms20140502 # com joms20140505 # add - "COM joms20140506
or a~deakt BETWEEN i_ibaja AND i_fbaja ) "ADD joms20140506
order by a~anln1 a~anln2.
endif.
SELECT a~bukrs b~afabe a~anln1 a~anln2 a~anlkl a~aktiv a~txt50 a~txa50 a~her
st
a~sernr a~invnr a~zugdt b~ktogr b~ktansw
INTO CORRESPONDING FIELDS OF TABLE ti_salida
FROM anla AS a INNER JOIN zt095 AS b
ON a~ktogr = b~ktogr
WHERE a~bukrs EQ p_bukrs
AND a~anln1 IN s_anln1
AND a~anln2 IN s_anln2
AND a~anlkl IN s_anlkl
AND b~ktopl EQ w_ktopl
AND a~zujhr <= p_gjahr
and ( a~deakt EQ '00000000'
"joms20140505 # add
*
or a~deakt BETWEEN i_fbaja AND i_fbaja ) "joms20140502 # com - joms
20140505 # add - "COM joms20140506
or a~deakt BETWEEN i_ibaja AND i_fbaja ) "ADD joms20140506
*
AND b~afabe EQ '01'
ORDER BY a~bukrs b~ktansw b~ktogr a~anln1 a~anln2.
ENDIF.
SORT ti_salida by anln1 anln2.
SORT ax_salida by anln1 anln2.
DESCRIBE TABLE ax_salida LINES w_lines.
IF w_lines > 0.
loop at ax_salida assigning <ax_salida>.
READ TABLE ti_salida WITH KEY anln1 = <ax_salida>-anln1
anln2 = <ax_salida>-anln2 BINARY SEARCH.
IF sy-subrc eq 0.
ti_salida-ktansw = <ax_salida>-ktansw.
modify ti_salida index sy-tabix.
ENDIF.
CLEAR ti_salida.
endloop.
refresh ax_salida.
ENDIF.
w_lines = 0.
SORT ti_salida by bukrs ktansw ktogr anln1 anln2.
"joms20140428 # FIN ADD
"joms20140428 # INI COM
* sort ti_salida by deakt.
"joms20140422 # ADD
* "begin joms20140404
* refresh aux_salida.
"add joms20140407
* loop at ti_salida where deakt eq '00000000' OR deakt between i_ibaja and i_fb
aja.
*
aux_salida = ti_salida.
*
append aux_salida.
*
clear: aux_salida, ti_salida.
* endloop.
* refresh ti_salida.
* ti_salida[] = aux_salida[].
* refresh aux_salida.
* "end joms20140404
* sort ti_salida by bukrs ktansw ktogr anln1 anln2. "joms20140422 # ADD
"JOMS20140424 # COM
* sort ti_salida by anln1 anln2.
"JOMS20140424 # ADD
"joms20140428 # FIN COM
* Eliminar
if p_int
delete
endif.
* Eliminar
if p_arr
delete
endif.
Intangibles.
is initial.
ti_salida where ktansw in rl_ktansw.
Arrendados.
is initial.
ti_salida where anlkl in rl_anlkl.
* Eliminar Revaluados.
if p_rev is initial.
*
txt_prog = 'Procesando: Campos de valor de activos fijos...'. "JOMS2014041
0 - ADD "joms20140415 # COM
*
DESCRIBE TABLE ti_salida lines cant_lineas.
"JOMS2014041
0 - ADD "joms20140415 # COM
loop at ti_salida into st_salida.
w_index = sy-tabix.
select single nafap kansw
into (st_salida-nafap, st_salida-kansw)
from anlc
where bukrs eq st_salida-bukrs
and anln1 eq st_salida-anln1
and anln2 eq st_salida-anln2
"j
"JOMS20140410
and
and
and
and
anln2
bdatu
adatu
gsber
eq
ge
le
in
st_salida-anln2
w_fecha
w_fecha
s_gsber.
if sy-subrc eq 0.
modify ti_salida from st_salida index w_index.
else.
delete ti_salida index w_index.
endif.
*
PERFORM PROGRESS_BAR USING txt_prog
*
SY-TABIX
*
w_lines.
415 # COM
endloop.
"JOMS20140410 - ADD
"joms20140
*
txt_prog = 'Procesando montos...'.
"JOMS20140410 - ADD
"joms20140415
# COM
* Calculo del Saldo y Amortizacin al Inicio
loop at ti_salida into st_salida.
"INI MOD CSS20120514
if p_gjahr eq '2011' and ( p_bukrs eq '4047' or p_bukrs eq '1013' or p_buk
rs eq '1002' ).
w_index = sy-tabix.
p_gjahr = p_gjahr - 1.
"ADD CSS20120514
select sum( kansw ) sum( knafa ) sum( nafag ) sum( kaafa ) sum( aafag )
sum( answl )
sum( nafal ) sum( aafal ) sum( nafav ) sum( aafav ) sum( ksafa ) sum(
kmafa ) sum( safav )
sum( aafav ) sum( mafav ) sum( safal ) sum( mafal ) sum( aafap ) sum(
zusaa ) sum( nafap )
sum( zusna ) sum( safap ) sum( zussa ) sum( mafap ) sum( zusma ) sum(
kaufn ) sum( aufnl )
sum( aufnv ) sum( aufnp )
"MOD CSS20120702
into (st_salida-kansw, st_salida-knafa, st_salida-nafag, st_salida-kaa
fa,
st_salida-aafag, st_salida-answl, st_salida-nafal, st_salida-aafal, st
_salida-nafav,
st_salida-aafav, st_salida-ksafa, st_salida-kmafa, st_salida-safav, st
_salida-aafav,
st_salida-mafav, st_salida-safal, st_salida-mafal, st_salida-aafap, st
_salida-zussa,
st_salida-nafap, st_salida-zusna, st_salida-safap, st_salida-zussa, st
_salida-mafap,
st_salida-zusma, st_salida-kaufn, st_salida-aufnl, st_salida-aufnv, st
_salida-aufnp)
from anlc
where bukrs eq p_bukrs
and anln1 eq st_salida-anln1
and anln2 eq st_salida-anln2
and gjahr eq p_gjahr
*
AND afabe IN ('01' , '04')
and afabe in s_afabe " MOD ARC16022012
group by bukrs gjahr anln1 anln2.
endselect.
"dif = st_salida-kansw. "+ st_salida-knafa.
"A
DD CSS20120514
"depdif = st_salida-knafa.
sf = st_salida-kansw + st_salida-answl.
"
ADD CSS20120514
depsf = st_salida-kaafa + st_salida-aafap + st_salida-aafav + st_salidaaafal + st_salida-zusaa + st_salida-kmafa + st_salida-mafap + st_salida-mafav +
st_salida-mafal + st_salida-zusma + st_salida-knafa + st_salida-nafap + st_salid
a-nafav
+ st_salida-nafal + st_salida-zusna + st_salida-kaufn + st_salida-aufnl + st_sal
ida-aufnv + st_salida-aufnp + st_salida-ksafa + st_salida-safav + st_salida-safa
l + st_salida-safap + st_salida-zussa.
"ADD CSS20120514
"dif = sf.
"depdif = depsf.
st_salida-nafap = 0.
st_salida-safap = 0.
st_salida-aufnl = 0.
st_salida-aufnv = 0.
st_salida-kmafa = 0.
st_salida-safav = 0.
st_salida-aafav = 0.
st_salida-mafav = 0.
st_salida-safal = 0.
st_salida-mafal = 0.
st_salida-kansw = 0.
st_salida-knafa = 0.
st_salida-nafal = 0.
st_salida-aafal = 0.
st_salida-nafav = 0.
st_salida-aafav = 0.
st_salida-answl = 0.
st_salida-nafag = 0.
st_salida-mafap = 0.
st_salida-kaafa = 0.
st_salida-aafag = 0.
p_gjahr = p_gjahr + 1.
"ADD CSS20120514
select bukrs gjahr anln1 anln2 sum( kansw ) sum( aufwm ) sum( knafa ) su
m( nafag ) sum( mafap )
sum( kaafa ) sum( aafag ) sum( nafav ) sum( nafal ) sum( aafal ) sum(
aafav ) sum( safav ) sum( safal )
"MOD CSS20120514
into (st_salida-bukrs, st_salida-gjahr, st_salida-anln1, st_salida-anl
n2,
st_salida-kansw, st_salida-aufwm, st_salida-knafa, st_salida-naf
ag, st_salida-mafap,
st_salida-kaafa, st_salida-aafag,st_salida-nafav,st_salida-nafal
,st_salida-aafal,st_salida-aafav,st_salida-safav,st_salida-safal )
from anlc
where bukrs eq p_bukrs
and anln1 eq st_salida-anln1
and anln2 eq st_salida-anln2
and gjahr eq p_gjahr
*
AND afabe IN ('01' , '04')
and afabe in s_afabe " MOD ARC16022012
group by bukrs gjahr anln1 anln2.
endselect.
" + st_salida-kaafa
v_depoff = 0."st_salida-nafal + st_salida-nafav + st_salida-safal + st_s
alida-safav + st_salida-aafal + st_salida-aafav.
if sf eq st_salida-kansw and depsf eq st_salida-knafa.
""MOD CSS201207
05
"st_salida-depoa = depdif.
"ADD CSS20120514
dif = 0.
depdif = 0.
st_salida-kansw = sf.
st_salida-knafa = depsf.
"ADD CSS20120514
else.
dif = st_salida-kansw - sf.
"ADD CSS20120514
depdif = st_salida-knafa - depsf.
st_salida-depoa = depdif .
st_salida-aufwm = dif.
"ADD CSS20120514
st_salida-kansw = sf.
"ADD CSS20120514
st_salida-knafa = depsf.
endif.
st_salida-safav = 0. "ADD CSS20120702
select bukrs gjahr anln1 anln2 sum( anbtr )
"MOD CSS20120514
into (st_salida-bukrs, st_salida-gjahr, st_salida-anln1, st_salida-anl
n2, st_salida-anbtr)
from anep
where bukrs eq p_bukrs
and anln1 eq st_salida-anln1
and anln2 eq st_salida-anln2
and gjahr eq p_gjahr
and afabe in s_afabe
and ( bwasl eq 400 or bwasl eq 410 )
group by bukrs gjahr anln1 anln2 .
endselect.
st_salida-aufwm = st_salida-aufwm + st_salida-anbtr.
"ADD CSS20120514
select k~bukrs k~gjahr k~anln1 k~anln2 sum( a~nafav ) sum( a~safav ) sum
( a~aafav ) sum( a~mafav ) sum( a~aufnv ) sum( a~nafal ) sum( a~safal )
sum( a~aafal ) sum( a~aufwl ) sum( a~aufnl ) "MOD CSS20120514
into (st_salida-bukrs, st_salida-gjahr, st_salida-anln1, st_salida-anln2
, st_salida-nafav2, st_salida-safav, st_salida-aafav2, st_salida-mafav, st_salid
a-aufnv, st_salida-nafal2, st_salida-safal, st_salida-aafal2, st_salida-aufwl,
st_salida-aufnl)
from ( anea as a
join anek as k on k~bukrs = a~bukrs
and k~anln1 = a~anln1
and k~anln2 = a~anln2
and k~gjahr = a~gjahr
and k~lnran = a~lnran
join anep as p on p~bukrs = a~bukrs
and p~anln1 = a~anln1
and p~anln2 = a~anln2
and p~gjahr = a~gjahr
and p~lnran = a~lnran
and p~afabe = a~afabe
and p~zujhr = a~zujhr
and p~zucod = a~zucod )
where k~bukrs eq p_bukrs
and a~anln1 eq st_salida-anln1
and a~anln2 eq st_salida-anln2
and a~gjahr eq p_gjahr
and a~afabe in s_afabe
and ( p~bwasl eq '400' or p~bwasl eq '410') "MOD CSS20120705
group by k~bukrs k~gjahr k~anln1 k~anln2 .
endselect.
"INI ADD CSS20120702
and
and
and
and
a~anln2 eq st_salida-anln2
a~gjahr eq p_gjahr
a~afabe in s_afabe
( p~bwasl ge '200' and p~bwasl le '299' )
"MOD CSS20120705
group by k~bukrs k~gjahr k~anln1 k~anln2.
endselect.
st_salida-mafap = st_salida-nafav3 + st_salida-safav3 + st_salida-aafav3
+ st_salida-mafav3 + st_salida-aufnv3 + st_salida-nafal3 + st_salida-safal3 + s
t_salida-aafal3 + st_salida-mafal3 + st_salida-aufnl3.
select k~bukrs k~gjahr k~anln1 k~anln2 sum( a~aufwl ) sum( a~aufwv ) "M
OD CSS20120514
into (st_salida-bukrs, st_salida-gjahr, st_salida-anln1, st_salida-anln2, st_sal
ida-aufwl, st_salida-aufwv)
from ( anea as a
join anek as k on k~bukrs = a~bukrs
and k~anln1 = a~anln1
and k~anln2 = a~anln2
and k~gjahr = a~gjahr
and k~lnran = a~lnran
join anep as p on p~bukrs = a~bukrs
and p~anln1 = a~anln1
and p~anln2 = a~anln2
and p~gjahr = a~gjahr
and p~lnran = a~lnran
and p~afabe = a~afabe
and p~zujhr = a~zujhr
and p~zucod = a~zucod )
where k~bukrs eq p_bukrs
and a~anln1 eq st_salida-anln1
and a~anln2 eq st_salida-anln2
and a~gjahr eq p_gjahr
and a~afabe in s_afabe
and ( p~bwasl ge '100' and p~bwasl le '199' )
group by k~bukrs k~gjahr k~anln1 k~anln2.
endselect.
st_salida-answl = st_salida-aufwl + st_salida-aufwv.
"END ADD CSS20120702
""NI ADD CSS20120706
if s_afabe-low eq '03'.
select bukrs gjahr anln1 anln2 sum( nafap ) sum( safap ) sum( aafap )
sum( mafap )
"MOD CSS20120514
into (st_salida-bukrs, st_salida-gjahr, st_salida-anln1, st_salida-a
nln2,
st_salida-nafap3, st_salida-safap3, st_salida-aafap3, st_salid
a-mafap3)
from anlc
where bukrs eq p_bukrs
and anln1 eq st_salida-anln1
and anln2 eq st_salida-anln2
and gjahr eq p_gjahr
*
AND afabe IN ('01' , '04')
and afabe in s_afabe " MOD ARC16022012
group by bukrs gjahr anln1 anln2.
endselect.
endif.
else.
SELECT bukrs gjahr anln1 anln2 SUM( kansw ) SUM( knafa ) SUM( aufwm )
"MOD CSS20120514
*
INTO (st_salida-bukrs, st_salida-gjahr, st_salida-anln1, st_salida-an
ln2,
*
st_salida-kansw, st_salida-knafa, st_salida-aufwm)
*
FROM anlc
*
WHERE bukrs EQ p_bukrs
*
AND anln1 EQ st_salida-anln1
*
AND anln2 EQ st_salida-anln2
*
AND gjahr EQ p_gjahr
**
AND afabe IN ('01' , '04')
*
AND afabe IN s_afabe " MOD ARC16022012
*
GROUP BY bukrs gjahr anln1 anln2.
*
ENDSELECT.
"ini add CSS20120716
w_index = sy-tabix.
p_gjahr = p_gjahr - 1.
"ADD CSS20120514
select sum( kansw ) sum( knafa ) sum( nafag ) sum( kaafa ) sum( aafag )
sum( answl )
sum( nafal ) sum( aafal ) sum( nafav ) sum( aafav ) sum( ksafa ) sum(
kmafa ) sum( safav )
sum( aafav ) sum( mafav ) sum( safal ) sum( mafal ) sum( aafap ) sum(
zusaa ) sum( nafap )
sum( zusna ) sum( safap ) sum( zussa ) sum( mafap ) sum( zusma ) sum(
kaufn ) sum( aufnl )
sum( aufnv ) sum( aufnp )
"MOD CSS20120702
into (st_salida-kansw, st_salida-knafa, st_salida-nafag, st_salida-kaa
fa,
st_salida-aafag, st_salida-answl, st_salida-nafal, st_salida-aafal, st
_salida-nafav,
st_salida-aafav, st_salida-ksafa, st_salida-kmafa, st_salida-safav, st
_salida-aafav,
st_salida-mafav, st_salida-safal, st_salida-mafal, st_salida-aafap, st
_salida-zussa,
st_salida-nafap, st_salida-zusna, st_salida-safap, st_salida-zussa, st
_salida-mafap,
st_salida-zusma, st_salida-kaufn, st_salida-aufnl, st_salida-aufnv, st
_salida-aufnp)
from anlc
where bukrs eq p_bukrs
and anln1 eq st_salida-anln1
and anln2 eq st_salida-anln2
and gjahr eq p_gjahr
*
AND afabe IN ('01' , '04')
and afabe in s_afabe " MOD ARC16022012
group by bukrs gjahr anln1 anln2.
endselect.
"dif = st_salida-kansw. "+ st_salida-knafa.
"A
DD CSS20120514
"depdif = st_salida-knafa.
sf = st_salida-kansw + st_salida-answl.
"
ADD CSS20120514
depsf = st_salida-kaafa + st_salida-aafap + st_salida-aafav + st_salidaaafal + st_salida-zusaa + st_salida-kmafa + st_salida-mafap + st_salida-mafav +
st_salida-mafal + st_salida-zusma + st_salida-knafa + st_salida-nafap + st_salid
a-nafav
+ st_salida-nafal + st_salida-zusna + st_salida-kaufn + st_salida-aufnl + st_sal
""MOD CSS201207
05II
"st_salida-depoa = depdif.
dif = 0.
depdif = 0.
st_salida-kansw = sf.
st_salida-knafa = depsf.
else.
dif = st_salida-kansw - sf.
depdif = st_salida-knafa - depsf.
"ADD CSS20120514
"ADD CSS20120514
"ADD CSS20120514
st_salida-nafal2 = 0.
st_salida-safal = 0.
st_salida-aafal2 = 0.
st_salida-aufwl = 0.
st_salida-aufnl = 0.
select k~bukrs k~anln1 k~anln2 sum( a~nafav ) sum( a~safav ) sum( a~aa
fav ) sum( a~mafav ) sum( a~aufnv ) sum( a~nafal ) sum( a~safal )
sum( a~aafal ) sum( a~aufwl ) sum( a~aufnl ) "MOD CSS20120514
into (st_salida-bukrs, st_salida-anln1, st_salida-anln2, st_salida-n
afav2, st_salida-safav, st_salida-aafav2, st_salida-mafav, st_salida-aufnv, st_s
alida-nafal2, st_salida-safal, st_salida-aafal2, st_salida-aufwl,
st_salida-aufnl)
from ( anea as a
join anek as k on k~bukrs = a~bukrs
and k~anln1 = a~anln1
and k~anln2 = a~anln2
and k~gjahr = a~gjahr
and k~lnran = a~lnran
join anep as p on p~bukrs = a~bukrs
and p~anln1 = a~anln1
and p~anln2 = a~anln2
and p~gjahr = a~gjahr
and p~lnran = a~lnran
and p~afabe = a~afabe
and p~zujhr = a~zujhr
and p~zucod = a~zucod )
where k~bukrs eq p_bukrs
and a~anln1 eq st_salida-anln1
and a~anln2 eq st_salida-anln2
and a~gjahr eq '2011'
and a~afabe in s_afabe
and ( p~bwasl eq '400' or p~bwasl eq '410') "MOD CSS20120705
group by k~bukrs k~anln1 k~anln2 .
endselect.
st_salida-nafag = st_salida-nafag + st_salida-nafav2 + st_salida-safa
v + st_salida-aafav2 + st_salida-mafav + st_salida-aufnv + st_salida-nafal2 + st
_salida-safal + st_salida-aafal2 + st_salida-aufwl + st_salida-aufnl + v_depoff.
endif.
"FIN ADDCFP20120809
endif.
"END MOD CSS20120514
* Calculo del saldo inicial y amort.trib.para el rea 3 (ALV)
if p_alv = 'X'.
select single kansw knafa
into (st_salida-kans3, st_salida-knaf3)
from anlc
where bukrs eq p_bukrs
and anln1 eq st_salida-anln1
and anln2 eq st_salida-anln2
and gjahr eq p_gjahr
*
AND afabe EQ '03'.
and afabe in s_afabe. ""ADD ARC16022012
endif.
* Calculo de Amortizaciones rea 01 (Dep.del Ejercicio)
clear: w_peraf, w_afbnr, w_nafag, w_nafaz, w_aafag, w_aafaz, w_safag, w_sa
faz.
clear: w_p, w_a, w_ng, w_nz, w_ag, w_az, w_sg, w_sz.
*
st_salida-nafaz = st_salida-nafaz + w_nafaz.
*
st_salida-aafag = st_salida-aafag + w_aafag.
*
st_salida-aafaz = st_salida-aafaz + w_aafaz.
*
st_salida-safag = st_salida-safag + w_safag.
*
st_salida-safaz = st_salida-safaz + w_safaz.
* Calculo de Amortizaciones rea 03 (Dep.del Ejercicio)
if p_alv = 'X'.
clear: w_pstbeg, w_pstend, w_nafag, w_safag, w_aafag.
select single pstbeg pstend nafap safap aafap
into (w_pstbeg, w_pstend, w_nafag, w_safag, w_aafag)
from anlc
where bukrs eq p_bukrs
and anln1 eq st_salida-anln1
and anln2 eq st_salida-anln2
and gjahr eq p_gjahr
*
AND afabe EQ '03'.
and afabe in s_afabe. ""ADD ARC16022012
st_salida-nafa3 = w_nafag + w_safag + w_aafag.
if p_peraf ne 12.
st_salida-nafa3 = ( st_salida-nafa3 / ( w_pstend - w_pstbeg + 1 ) ) *
( p_peraf - w_pstbeg + 1 ).
endif.
endif.
modify ti_salida from st_salida index w_index.
*
PERFORM PROGRESS_BAR USING txt_prog
*
SY-TABIX
*
w_lines. "JOMS20140410 - ADD
5 # COM
endloop.
* Calculo de Adquisiciones
if p_alv = 'X'.
select * into table ti_anep
from anep
for all entries in ti_salida
where bukrs eq ti_salida-bukrs
and anln1 eq ti_salida-anln1
and anln2 eq ti_salida-anln2
and gjahr eq p_gjahr
*
AND afabe IN ('01' , '03', '04').
and afabe in s_afabe. ""ADD ARC16022012
else.
select * into table ti_anep
from anep
for all entries in ti_salida
where bukrs eq ti_salida-bukrs
and anln1 eq ti_salida-anln1
and anln2 eq ti_salida-anln2
and gjahr eq p_gjahr
*
AND afabe IN ('01' , '04').
and afabe in s_afabe. ""ADD ARC16022012
endif.
loop at ti_anep into st_anep.
w_index = sy-tabix.
* Obtenemos la fecha de contabilizacin
select single budat
into st_anep-budat
from anek
"joms2014041
*
if p_gjahr lt '2011' and ( p_bukrs ne '4047' or p_bukrs ne '1013' or p_
bukrs ne '1002' ). "ADD joms20140407
if st_anep-bwasl+0(1) eq '1'.
*
Adquisiciones y Adiciones(Altas)
st_salida-answl = st_salida-answl + st_anep-anbtr .
*
Dep.Ejer. Retiro/Bajas
st_salida-mafap = st_salida-mafap + st_anep-nafav + st_anep-nafal.
elseif st_anep-bwasl+0(1) eq '2' .
*
Retiros y Bajas
st_salida-abgan = st_salida-abgan + st_anep-anbtr.
*
Dep.Ejer. Retiro/Bajas
*
st_salida-mafap = st_salida-mafap + st_anep-nafav + st_anep-nafal
.
"descuadre 1013
elseif st_anep-bwasl ne '900'.
*
Adquisiciones y Adiciones(Altas)/Retiros y Bajas por Traspasos
*
st_salida-aufwm = st_salida-aufwm + st_anep-anbtr.
**
Dep.Ejer. Otros Ajustes
*
st_salida-depoa = st_salida-depoa + st_anep-nafav + st_anep-nafal
.
endif.
if st_anep-bwasl eq 'Z03' or st_anep-bwasl eq 'Z02'.
"ADD CSS201
20702
"MOD CSS20120705
st_salida-answl = st_salida-answl + st_anep-anbtr.
st_salida-nafag = st_salida-nafag + st_anep-nafav. "add cfp20130919
endif.
if st_anep-bwasl+0(1) eq '3' or st_anep-bwasl eq 'Z90' or st_anep-bwas
l eq 'Z91' .
st_salida-kansw1 = st_salida-kansw1 + st_anep-anbtr.
IF p_gjahr NE '2013'.
"JOMS2014042
4 ADD
"JOMS20140428 COM
"ADD joms20140506
st_salida-knafa1 = st_salida-knafa1 + st_anep-nafav. "JOMS2014042
4 ADD
"JOMS20140428 COM
"ADD joms20140506
ENDIF.
"JOMS2014042
4 ADD
"JOMS20140428 COM
"ADD joms20140506
*
st_salida-knafa1 = st_salida-knafa1 + st_anep-nafav. "add cfp201309
19
"JOMS24042014
COM
"JOMS20140428 - RB: JOMS24042014
"COM joms20140
506
endif.
if st_anep-bwasl eq 'ZW1'.
st_salida-aufwm = st_salida-aufwm + st_anep-anbtr.
endif.
if st_anep-bwasl eq 'ZI1' or st_anep-bwasl eq 'ZI2' or st_anep-bwasl e
q 'ZI3' or st_anep-bwasl eq 'ZI4'.
st_salida-depoa = st_salida-depoa + st_anep-anbtr.
endif.
if st_anep-bwasl eq 'ZI5' or st_anep-bwasl eq 'ZI6' or st_anep-bwasl e
q 'ZI7' or st_anep-bwasl eq 'ZI8'.
st_salida-depoa = st_salida-depoa + st_anep-anbtr.
endif.
IF p_gjahr GE '2013'.
""JOMS20140509 - INI ADD
if st_anep-bwasl eq '400' or st_anep-bwasl eq '410'.
*
st_salida-amopos = st_salida-amopos + st_anep-anbtr.
"JOMS201
40519 - COM
st_salida-amopos = st_salida-amootr.
"JOMS20140519_2 - ADD
endif.
ENDIF.
"JOMS20140519 - FIN ADD
else.
"COM joms20140407
*
elseif p_gjahr eq '2011' and ( p_bukrs eq '4047' or p_bukrs eq '1013' o
r p_bukrs eq '1002' ). "ADD joms20140407
if st_anep-bwasl+0(1) eq '1' .
*
Adquisiciones y Adiciones(Altas)
st_salida-answl = st_salida-answl + st_anep-anbtr.
*
Dep.Ejer. Retiro/Bajas
st_salida-mafap = st_salida-mafap + st_anep-nafav + st_anep-nafal.
elseif st_anep-bwasl+0(1) eq '2' .
*
Retiros y Bajas
st_salida-abgan = st_salida-abgan + st_anep-anbtr.
"st_salida-mafap = st_salida-mafap + st_anep-nafav + st_anep-nafal.
"descuadre 1013 bajas
endif.
if st_anep-bwasl eq 'Z03' or st_anep-bwasl eq 'Z02'.
"ADD CSS201
20702
"MOD CSS20120705
st_salida-answl = st_salida-answl + st_anep-anbtr.
st_salida-nafag = st_salida-nafag + st_anep-nafav. "add cfp20130919
endif.
if st_anep-bwasl+0(1) eq '3' or st_anep-bwasl eq 'Z90' or st_anep-bwas
l eq 'Z91' .
st_salida-kansw1 = st_salida-kansw1 + st_anep-anbtr.
st_salida-knafa1 = st_salida-knafa1 + st_anep-nafav. "add cfp2013091
9
endif.
if st_anep-bwasl eq 'ZW1' .
st_salida-aufwm = st_salida-aufwm + st_anep-anbtr.
endif.
if st_anep-bwasl eq 'ZI1' or st_anep-bwasl eq 'ZI2' or st_anep-bwasl e
q 'ZI3' or st_anep-bwasl eq 'ZI4'.
st_salida-depoa = st_salida-depoa + st_anep-anbtr.
endif.
if st_anep-bwasl eq 'ZI5' or st_anep-bwasl eq 'ZI6' or st_anep-bwasl e
q 'ZI7' or st_anep-bwasl eq 'ZI8'.
st_salida-depoa = st_salida-depoa + st_anep-anbtr.
endif.
IF p_gjahr GE '2013'.
"JOMS20140506 - INI ADD
if st_anep-bwasl eq '400' or st_anep-bwasl eq '410'.
*
st_salida-amopos = st_salida-amopos + st_anep-anbtr.
"JOMS201
40519_2 - COM
st_salida-amopos = st_salida-amootr.
"JOMS20140519_2 - ADD
endif.
ENDIF.
"JOMS20140506 - FIN ADD
**
BEGIN joms20140407
*
elseif p_gjahr gt '2011' and ( p_bukrs ne '4047' or p_bukrs ne '1013' o
r p_bukrs ne '1002' ).
*
if st_anep-bwasl+0(1) eq '1'.
**
Adquisiciones y Adiciones(Altas)
*
st_salida-answl = st_salida-answl + st_anep-anbtr .
**
Dep.Ejer. Retiro/Bajas
*
st_salida-mafap = st_salida-mafap + st_anep-nafav + st_anep-nafal.
*
elseif st_anep-bwasl+0(1) eq '2' .
**
Retiros y Bajas
*
st_salida-abgan = st_salida-abgan + st_anep-anbtr.
**
Dep.Ejer. Retiro/Bajas
*
elseif st_anep-bwasl ne '900'.
**
Adquisiciones y Adiciones(Altas)/Retiros y Bajas por Traspasos
**
st_salida-aufwm = st_salida-aufwm + st_anep-anbtr.
***
Dep.Ejer. Otros Ajustes
**
st_salida-depoa = st_salida-depoa + st_anep-nafav + st_anep-nafa
l.
*
endif.
*
if st_anep-bwasl eq 'Z03' or st_anep-bwasl eq 'Z02'.
*
st_salida-answl = st_salida-answl + st_anep-anbtr.
*
st_salida-nafag = st_salida-nafag + st_anep-nafav.
*
endif.
*
if st_anep-bwasl+0(1) eq '3' or st_anep-bwasl eq 'Z90' or st_anep-bwa
sl eq 'Z91' .
*
st_salida-kansw1 = st_salida-kansw1 + st_anep-anbtr.
**
st_salida-knafa1 = st_salida-knafa1 + st_anep-nafav.
*
endif.
*
if st_anep-bwasl eq 'ZW1'.
*
st_salida-aufwm = st_salida-aufwm + st_anep-anbtr.
*
endif.
*
if st_anep-bwasl eq 'ZI1' or st_anep-bwasl eq 'ZI2' or st_anep-bwasl
eq 'ZI3' or st_anep-bwasl eq 'ZI4'.
*
st_salida-depoa = st_salida-depoa + st_anep-anbtr.
*
endif.
*
if st_anep-bwasl eq 'ZI5' or st_anep-bwasl eq 'ZI6' or st_anep-bwasl
eq 'ZI7' or st_anep-bwasl eq 'ZI8'.
*
st_salida-depoa = st_salida-depoa + st_anep-anbtr.
*
endif.
**
END joms20140407
endif.
"END MOD CSS20120514
*//ELS20080623
endif.
if st_anep-afabe = '03'.
"ADD CSS20120706
if st_anep-bwasl+0(1) eq '1' .
*
Adquisiciones y Adiciones(Altas)
st_salida-answl = st_salida-answl + st_anep-anbtr.
*
Dep.Ejer. Retiro/Bajas
st_salida-mafap = st_salida-mafap + st_anep-nafav + st_anep-nafal.
elseif st_anep-bwasl+0(1) eq '2' .
*
Retiros y Bajas
st_salida-abgan = st_salida-abgan + st_anep-anbtr.
"st_salida-mafap = st_salida-mafap + st_anep-nafav + st_anep-nafal.
"descuadre 1013 bajas
endif.
"INI ADD CSS20120716
if st_anep-bwasl eq 'Z03' or st_anep-bwasl eq 'Z02'.
st_salida-answl = st_salida-answl + st_anep-anbtr.
st_salida-nafag = st_salida-nafag + st_anep-nafav. "add cfp20130919
endif.
if st_anep-bwasl+0(1) eq '3' or st_anep-bwasl eq 'Z90' or st_anep-bwasl
eq 'Z91' .
st_salida-kansw1 = st_salida-kansw1 + st_anep-anbtr.
*
IF p_gjahr NE '2013'.
"JOMS20140424
ADD "JOMS20140428 COM
*
st_salida-knafa1 = st_salida-knafa1 + st_anep-nafav. "JOMS20140424
ADD "JOMS20140428 COM
*
ENDIF.
"JOMS20140424
ADD "JOMS20140428 COM
"com JOMS20140404 "JOMS20140428 - RB: JOMS20140404
*
st_salida-knafa1 = st_salida-knafa1 + st_anep-nafav. "add cfp20130919
"JOMS20140522 COM
IF p_gjahr NE '2013'.
"JOMS20140522
ADD
st_salida-knafa1 = st_salida-knafa1 + st_anep-nafav. "JOMS20140522
ADD
ENDIF.
"JOMS20140522
ADD
endif.
if st_anep-bwasl eq 'ZW1'.
st_salida-aufwm = st_salida-aufwm + st_anep-anbtr.
endif.
if st_anep-bwasl eq 'ZI1' or st_anep-bwasl eq 'ZI2' or st_anep-bwasl eq
'ZI3' or st_anep-bwasl eq 'ZI4'.
st_salida-depoa = st_salida-depoa + st_anep-anbtr.
endif.
if st_anep-bwasl eq 'ZI5' or st_anep-bwasl eq 'ZI6' or st_anep-bwasl eq
'ZI7' or st_anep-bwasl eq 'ZI8'.
st_salida-depoa = st_salida-depoa + st_anep-anbtr.
endif.
if st_anep-bwasl eq 'ZAT' or st_anep-bwasl eq 'ZA1'.
"CSS20120711
*
Retiros y Bajas
st_salida-abgan = st_salida-abgan + st_anep-anbtr.
st_salida-mafap = st_salida-mafap + st_anep-nafav + st_anep-nafal.
"st_salida-mafap = st_salida-mafap + st_anep-nafav + st_anep-nafal.
"descuadre 1013 bajas
endif.
"END ADD CSS20120716
IF p_gjahr GE '2013'.
"JOMS20140506 - INI ADD
if st_anep-bwasl eq '400' or st_anep-bwasl eq '410'.
*
st_salida-amopos = st_salida-amopos + st_anep-anbtr.
"JOMS201405
19_2 - COM
st_salida-amopos = st_salida-amootr.
"JOMS20140519_2 - ADD
endif.
ENDIF.
"JOMS20140506 - FIN ADD
endif.
modify ti_salida from st_salida index w_index.
*
PERFORM PROGRESS_BAR USING txt_prog
*
SY-TABIX
*
cant_lineas. "JOMS20140410 # ADD
40415 # COM
endloop.
"joms201
* Clculo de totales
*
describe table ti_salida lines cant_lineas. "JOMS20140410 # ADD "joms201
40415 # COM
*
txt_prog = 'Consolidando...'.
"JOMS20140410 # ADD "joms201
40415 # COM
* CLEAR st_anep.
"JOMS20140512 ADD
"JOMS20140514 - COM
* SORT ti_anep by anln1 anln2 xantw. "JOMS20140512 ADD
"JOMS20140514 - COM
loop at ti_salida into st_salida.
w_index = sy-tabix.
* Dep. del Ejercicio
*
IF p_gjahr NE '2013'. "JOMS20140512 ADD
"JOMS20140514 - COM
st_salida-nafag = st_salida-nafag + st_salida-nafaz + st_salida-aafag +
"cfp20130919
st_salida-aafaz + st_salida-safag + st_salida-safaz.
"cfp20130919
*
ELSE.
"JOMS20140512 # INI ADD
"JOMS20140514 - INI COM
*
READ TABLE ti_anep INTO st_anep WITH KEY anln1 = st_salida-anln1
*
anln2 = st_salida-anln2
*
*
*
*
xantw = 'X'
BINARY SEARCH.
IF sy-subrc EQ 0.
st_salida-nafag = st_salida-nafag + st_salida-nafaz + st_salida-aafag
+
*
*
*
*
*
*
st_salida-aafaz + st_salida-safag.
ENDIF.
ENDIF.
*
IF p_gjahr GE '2013'. "JOMS20140514_2 - INI ADD
st_salida-nafag = st_salida-nafag - st_salida-depoa.
st_salida-depoa = st_salida-depoa + st_salida-amopos. "JOMS20140516 AD
D
ENDIF.
* Val.Histrico A.F.
st_salida-vaf = st_salida-kansw + st_salida-answl + st_salida-mejora +
st_salida-aufwm + st_salida-abgan + st_salida-kansw1.
* Traslados
"st_salida-kansw1 = ."st_salida-kansw.
* Dep. Acumulada Histrica
st_salida-deaf = st_salida-knafa + st_salida-nafag +
st_salida-mafap + st_salida-depoa + st_salida-knafa1.
* dep.traslados
"st_salida-knafa1 = 0."st_salida-knafa.
* V.neto
st_salida-neto = st_salida-vaf + st_salida-deaf.
* Total Trib. (ALV)
st_salida-neto3 = st_salida-kans3 + st_salida-knaf3 + st_salida-answ3 +
st_salida-nafa3 + st_salida-abga3 + st_salida-mafa3.
st_salida-ajuste = st_salida-vaf + st_salida-inf1. "css
st_salida-inf3 = st_salida-deaf + st_salida-inf2.
modify ti_salida from st_salida index w_index.
endloop.
sort ti_salida by ktansw anln1 anln2.
*
PERFORM PROGRESS_BAR USING txt_prog
*
SY-TABIX
*
cant_lineas. "JOMS20140410 # ADD
40415 # COM
"joms201
endif.
sort ti_salida by bukrs ktansw ktogr anln1 anln2. "JOMS20140424 # ADD
endform.
" CARGAR_DATOS
*&---------------------------------------------------------------------*
*&
Form top_of_page
*&---------------------------------------------------------------------*
*
text "Impresin de Cabecera
*----------------------------------------------------------------------*
form top_of_page.
data: wl_fecha(12) type c.
if s_afabe-low eq '02'.
"MOD CSS20120626
concatenate w_fecha+6(2) '.' w_fecha+4(2) '.' w_fecha(4) into wl_fecha.
concatenate 'Al' wl_fecha 'Expresado en Dolares'
into w_subt
separated by space.
else.
concatenate w_fecha+6(2) '.' w_fecha+4(2) '.' w_fecha(4) into wl_fecha.
concatenate 'Al' wl_fecha text-001
into w_subt
separated by space.
endif.
write: /103 text-002,
/112 w_subt.
if s_afabe-low eq '03'.
"MOD CSS0702
write: /120 'Valores Tributarios'.
else.
write: /120 'Valores Financieros'.
endif.
write: /11 text-003,
25 p_gjahr,
218 text-033,
225 sy-pagno,
/11 text-004,
25 w_paval,
/11 text-005,
25 w_butxt.
skip.
format color col_heading off.
write /9 ' '.
format color col_heading on.
uline at 10(221).
format color col_heading off.
write /9 ' '.
format color col_heading on.
write: 10 sy-vline,
11 text-006, "Cdigo A.F.
29 text-007, "Cuenta A.F
43 text-008, "Descripcin Act.Fijo
83 text-009, "Marca A.F.
114 text-010, "Modelo del A.F.
165 text-011, "Nm. Serie
182 text-020, "Fec.Adquis
194 text-021, "Fec.Ini.Uso
206 text-022, "Mt.Dep
215 text-023, "Num.Auto
" 226 text-024, "% Dep.
230 sy-vline.
format color col_heading off.
write /9 ' '.
format color col_heading on.
write: 10 sy-vline,
11 text-012, "Saldo Inicial
29 text-013, "Adq.y Adiciones
50 text-014, "Mejoras
65 text-015, "Retiros/Bajas
83 text-016, "Otros Ajustes
101 'Traslados',
119 text-017, "Val.Hist. A.F
139 text-018, "Ajuste x Inf.
159 text-019, "Val.Ajust.A.F.
230 sy-vline.
"MOD CSS20120514
*
*
*
*
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2.
CSS
CSS
CSS
CSS
= 'TI_SALIDA'.
= 'KOSTL'.
st_fieldcat-ref_tabname = 'ANLZ'.
st_fieldcat-ref_fieldname = 'KOSTL'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'ANLKL'.
st_fieldcat-seltext_s
= 'Cl.A.F'.
st_fieldcat-seltext_m
= 'Cl.A.F'.
st_fieldcat-seltext_l
= 'Cl.A.F'.
st_fieldcat-ref_tabname = 'ANLA'.
st_fieldcat-ref_fieldname = 'ANLKL'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'KTOGR'.
st_fieldcat-ref_tabname = 'T095'.
st_fieldcat-ref_fieldname = 'KTOGR'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'ANLN1'.
st_fieldcat-seltext_s
= 'Cdigo A.F.'.
st_fieldcat-seltext_m
= 'Cdigo A.F.'.
st_fieldcat-seltext_l
= 'Cdigo A.F.'.
st_fieldcat-ref_tabname = 'ANLA'.
st_fieldcat-ref_fieldname = 'ANLN1'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'ANLN2'.
st_fieldcat-seltext_s
= 'Sub.N.'.
st_fieldcat-seltext_m
= 'Sub.N.'.
st_fieldcat-seltext_l
= 'Sub.N.'.
st_fieldcat-ref_tabname = 'ANLA'.
st_fieldcat-ref_fieldname = 'ANLN2'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
st_fieldcat-fieldname
st_fieldcat-seltext_s
st_fieldcat-seltext_m
st_fieldcat-seltext_l
st_fieldcat-ref_tabname
st_fieldcat-ref_fieldname
st_fieldcat-col_pos
=
=
=
=
=
=
=
=
'TI_SALIDA'.
'KTANSW'.
'Cuenta A.F.'.
'Cuenta A.F.'.
'Cuenta A.F.'.
'T095'.
'KTANSW'.
w_pos.
=
=
=
=
=
=
=
'TI_SALIDA'.
'INVNR'.
'Nro.Inventario'.
'Nro.Inventario'.
'Nro.Inventario'.
'ANLA'.
'INVNR'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'AKTIV'.
st_fieldcat-seltext_s
= 'Fec.Adquis.'.
st_fieldcat-seltext_m
= 'Fec.Adquis.'.
st_fieldcat-seltext_l
= 'Fec.Adquis.'.
st_fieldcat-ref_tabname = 'ANLA'.
st_fieldcat-ref_fieldname = 'AKTIV'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'ZUGDT'.
st_fieldcat-seltext_s
= 'Fec.Ini.Uso'.
st_fieldcat-seltext_m
= 'Fec.Ini.Uso'.
st_fieldcat-seltext_l
= 'Fec.Ini.Uso'.
st_fieldcat-ref_tabname = 'ANLA'.
st_fieldcat-ref_fieldname = 'ZUGDT'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'AFASL'.
st_fieldcat-seltext_s
= 'Met.Dep.'.
st_fieldcat-seltext_m
= 'Met.Dep.'.
st_fieldcat-seltext_l
= 'Met.Dep.'.
st_fieldcat-ref_tabname = 'ANLB'.
st_fieldcat-ref_fieldname = 'AFASL'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'SUNAT'.
st_fieldcat-seltext_s
= 'Num.Auto'.
st_fieldcat-seltext_m
= 'Num.Auto'.
st_fieldcat-seltext_l
= 'Num.Auto'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'NDJAR'.
st_fieldcat-seltext_s
= '% Dep.'.
st_fieldcat-seltext_m
= '% Dep.'.
st_fieldcat-seltext_l
= '% Dep.'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'KANSW'.
st_fieldcat-seltext_s
= 'Saldo Inicial'.
st_fieldcat-seltext_m
= 'Saldo Inicial'.
st_fieldcat-seltext_l
= 'Saldo Inicial'.
st_fieldcat-ref_tabname = 'ANLC'.
st_fieldcat-ref_fieldname = 'KANSW'.
st_fieldcat-do_sum
= 'X'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'ANSWL'.
st_fieldcat-seltext_s
= 'Adq.y Adiciones'.
st_fieldcat-seltext_m
= 'Adq.y Adiciones'.
st_fieldcat-seltext_l
= 'Adq.y Adiciones'.
st_fieldcat-ref_tabname = 'ANLC'.
st_fieldcat-ref_fieldname = 'ANSWL'.
st_fieldcat-do_sum
= 'X'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'MEJORA'.
st_fieldcat-seltext_s
= 'Mejoras'.
st_fieldcat-seltext_m
= 'Mejoras'.
st_fieldcat-seltext_l
= 'Mejoras'.
st_fieldcat-do_sum
= 'X'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'ABGAN'.
st_fieldcat-seltext_s
= 'Retiros/Bajas'.
st_fieldcat-seltext_m
= 'Retiros/Bajas'.
st_fieldcat-seltext_l
= 'Retiros/Bajas'.
st_fieldcat-ref_tabname = 'ANLC'.
st_fieldcat-ref_fieldname = 'ABGAN'.
st_fieldcat-do_sum
= 'X'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
st_fieldcat-fieldname
st_fieldcat-seltext_s
st_fieldcat-seltext_m
st_fieldcat-seltext_l
st_fieldcat-ref_tabname
st_fieldcat-ref_fieldname
st_fieldcat-do_sum
st_fieldcat-col_pos
=
=
=
=
=
=
=
=
=
'TI_SALIDA'.
'AUFWM'.
'Otros Ajustes'.
'Otros Ajustes'.
'Otros Ajustes'.
'ANLC'.
'AUFWM'.
'X'.
w_pos.
= 'TI_SALIDA'.
= 'NAFAG'.
= 'Dep.del Ejerc.'.
st_fieldcat-seltext_m
= 'Dep.del Ejerc.'.
st_fieldcat-seltext_l
= 'Dep.del Ejerc.'.
st_fieldcat-ref_tabname = 'ANLC'.
st_fieldcat-ref_fieldname = 'NAFAG'.
st_fieldcat-do_sum
= 'X'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'MAFAP'.
st_fieldcat-seltext_s
= 'Dep.Ejer Ret/Bj.'.
st_fieldcat-seltext_m
= 'Dep.Ejer Ret/Bj.'.
st_fieldcat-seltext_l
= 'Dep.Ejer Ret/Bj.'.
st_fieldcat-ref_tabname = 'ANLC'.
st_fieldcat-ref_fieldname = 'MAFAP'.
st_fieldcat-do_sum
= 'X'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'DEPOA'.
st_fieldcat-seltext_s
= 'Dep.Ejer O.Aj'.
st_fieldcat-seltext_m
= 'Dep.Ejer O.Aj'.
st_fieldcat-seltext_l
= 'Dep.Ejer O.Aj'.
st_fieldcat-do_sum
= 'X'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'DEAF'.
st_fieldcat-seltext_l
= 'Total Deprec.'.
st_fieldcat-do_sum
= 'X'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'KNAFA1'.
st_fieldcat-seltext_s
= 'Dep.Acum.Hist.'.
st_fieldcat-seltext_m
= 'Dep.Acum.Hist.'.
st_fieldcat-seltext_l
= 'Dep.Acum.Hist.'.
st_fieldcat-do_sum
= 'X'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
st_fieldcat-fieldname
st_fieldcat-seltext_s
st_fieldcat-seltext_m
st_fieldcat-seltext_l
st_fieldcat-do_sum
=
=
=
=
=
=
'TI_SALIDA'.
'INF2'.
'Val.Ajuste x Inf.'.
'Val.Ajuste x Inf.'.
'Val.Ajuste x Inf.'.
'X'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'INF3'.
st_fieldcat-seltext_s
= 'Dep.Acum.Ajust x Inf.'.
st_fieldcat-seltext_m
= 'Dep.Acum.Ajust x Inf.'.
st_fieldcat-seltext_l
= 'Dep.Acum.Ajust x Inf.'.
st_fieldcat-do_sum
= 'X'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'NETO'.
st_fieldcat-seltext_l
= 'Totales'.
st_fieldcat-do_sum
= 'X'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'KANS3'.
st_fieldcat-seltext_l
= 'S.Inicial Trib.'.
st_fieldcat-do_sum
= 'X'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'KNAF3'.
st_fieldcat-seltext_l
= 'Amort.Acum.Trib.'.
st_fieldcat-do_sum
= 'X'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'ANSW3'.
st_fieldcat-seltext_l
= 'Altas Trib.'.
st_fieldcat-do_sum
= 'X'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'NAFA3'.
st_fieldcat-seltext_l
= 'Amort.Trib.'.
st_fieldcat-do_sum
= 'X'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'ABGA3'.
st_fieldcat-seltext_l
= 'Bajas Trib.'.
st_fieldcat-do_sum
= 'X'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'MAFA3'.
st_fieldcat-seltext_l
= 'Amort.Bajas Trib.'.
st_fieldcat-do_sum
= 'X'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
add 1 to w_pos.
clear st_fieldcat.
st_fieldcat-tabname
= 'TI_SALIDA'.
st_fieldcat-fieldname
= 'NETO3'.
st_fieldcat-seltext_l
= 'S.Final Trib.'.
st_fieldcat-do_sum
= 'X'.
st_fieldcat-col_pos
= w_pos.
append st_fieldcat to ti_fieldcat.
endform.
" fieldcat_initialization
*&---------------------------------------------------------------------*
*&
Form sort_initialization
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
form sort_initialization .
refresh: ti_sort.
clear w_pos.
add 1 to w_pos.
st_sort-spos
= w_pos.
st_sort-tabname
= 'TI_SALIDA'.
st_sort-fieldname
= 'ANLN1'.
st_sort-up
= 'X'.
append st_sort to ti_sort.
clear w_pos.
add 1 to w_pos.
st_sort-spos
= w_pos.
st_sort-tabname
= 'TI_SALIDA'.
st_sort-fieldname
= 'KTANSW'.
st_sort-up
= 'X'.
append st_sort to ti_sort.
endform.
" sort_initialization
*&---------------------------------------------------------------------*
*&
Form layout_initialization
*&---------------------------------------------------------------------*
form layout_initialization.
st_layout-zebra
= 'X'.
st_layout-colwidth_optimize
= 'X'.
st_layout-detail_popup
= 'X'.
st_layout-detail_initial_lines = 'X'.
st_layout-detail_titlebar
= 'Detail Title Bar'.
endform.
" layout_initialization
*&---------------------------------------------------------------------*
*&
Form alv_initialization
*&---------------------------------------------------------------------*
form alv_initialization.
data: wl_repid like sy-repid.
wl_repid = sy-repid.
call function 'REUSE_ALV_GRID_DISPLAY'
exporting
i_callback_program
= wl_repid
i_callback_user_command
= 'USER_COMMAND_AW01N'
i_structure_name
= 'TI_SALIDA'
is_layout
= st_layout
it_fieldcat
= ti_fieldcat[]
i_default
= 'X'
i_save
= 'A'
it_sort
= ti_sort[]
it_events
= ti_events[]
i_callback_html_top_of_page = ''
tables
t_outtab
= ti_salida[]
exceptions
program_error
= 1
others
= 2.
if sy-subrc ne 0.
message i000(zmsg_pe)
with 'ALV no pudo ser inicializado'.
stop.
endif.
endform.
" alv_initialization
*&---------------------------------------------------------------------*
*&
Form select_file
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
form select_file .
call function 'WS_FILENAME_GET'
exporting
def_filename
= p_fname
def_path
= 'c:\'
mask
= ',Text Files,*.txt;*.doc,All Files,*.*.'
mode
= 'O'
importing
filename
= p_fname
exceptions
*
inv_winsys
= 1
*
no_batch
= 2
*
selection_cancel = 3
*
selection_error = 4
others
= 8.
endform.
" select_file
*&---------------------------------------------------------------------*
*&
Form descarga_file
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
form descarga_file .
data: w_ndjar type p decimals 2.
move 'Cdigo A.F.' to t_file-cod_af .
move 'Sub - Cdigo A.F.' to t_file-sub_cod_af .
move 'Cuenta A.F' to t_file-cuent_af .
move 'Descripcin Act.Fijo' to t_file-descrip_act.
move 'Marca A.F.' to t_file-marca_af.
move 'Modelo del A.F.' to t_file-modelo_af .
move 'Nm. Serie' to t_file-num_serie.
move 'Fec.Adquis' to t_file-fech_adq.
move 'Fec.Ini.Uso' to t_file-fech_ini_uso .
move 'Met.Dep' to t_file-met_dep .
move 'Num.Auto' to t_file-num_auto.
***** segunda fila********
move 'Saldo Inicial' to t_file-saldo_ini .
move 'Adq.y Adiciones' to t_file-adq_adic.
move 'Mejoras' to t_file-mejoras.
move 'Retiros/Bajas' to t_file-reti_baj.
move 'Otros Ajustes' to t_file-otro_ajus.
move 'Traslados' to t_file-trasl.
move 'Val.Hist. A.F' to t_file-val_his_af.
move 'Ajuste x Inf.' to t_file-ajust_inf.
move 'Val.Ajust.A.F.' to t_file-val_ajus_af.
****** tercera fila *********
move 'Dep.Acum.Ejerc' to t_file-dep_acum_ejer.
move 'Dep. del Ejerc' to t_file-dep_ejerc.
move 'Dep.Ejer Ret/Bj.' to t_file-dep_ejer_ret.
move 'Dep.Ejer O.Aj.' to t_file-dep_ejer_o_aj.
move 'Dep. Traslados' to t_file-dep_traslados . "MOD CSS
move 'Dep.Acum.Hist.' to t_file-dep_acum_hist.
"MOD CSS
move 'Val.Ajuste x Inf.' to t_file-val_ajust_inf.
move 'Dep.Ac.Ajust x Inf' to t_file-dep_ac_ajust_inf.
move 'V. Neto' to t_file-v_neto.
move '% Dep' to t_file-dep.
append t_file.
clear: t_file-met_dep , t_file-num_auto .
loop at ti_salida into st_salida.
clear: w_ndjar.
***** primera fila*******
move st_salida-anln1 to t_file-cod_af .
move st_salida-anln2 to t_file-sub_cod_af .
move st_salida-ktansw to t_file-cuent_af .
move st_salida-txt50 to t_file-descrip_act.
move st_salida-herst to t_file-marca_af.
move st_salida-txa50 to t_file-modelo_af .
if st_salida-sernr is initial.
move st_salida-invnr to t_file-num_serie.
else.
move st_salida-sernr to t_file-num_serie.
endif.
concatenate st_salida-aktiv+6(2) '/' st_salida-aktiv+4(2) '/' st_salida-akti
v+0(4) into t_file-fech_adq.
*
MESSAGE e999(z1) WITH text-a02 p_fname.
* ENDIF.
"joms20140415 # FIN COM
"joms20140415 # INI ADD
if not p_arch is initial.
perform descarga_local.
endif.
if not p_aser is initial.
perform subir_serv.
endif.
"joms20140415 # FIN ADD
endform.
" descarga_file
*&---------------------------------------------------------------------*
*&
Form f_top_of_page
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
*
-->OL_DD_DOC text
*----------------------------------------------------------------------*
form f_top_of_page.
data: wl_fecha(12) type c.
concatenate w_fecha+6(2) '/' w_fecha+4(2) '/' w_fecha(4) into wl_fecha.
refresh ti_comment.
* H = Header, S = Selection, A = Action
clear st_comment.
st_comment-typ = 'H'.
st_comment-info = 'Detalle de Activos Fijos'.
append st_comment to ti_comment.
clear st_comment.
st_comment-typ = 'A'.
concatenate 'Al:' wl_fecha
into st_comment-info separated by space.
append st_comment to ti_comment.
clear st_comment.
st_comment-typ = 'A'.
concatenate 'Fecha
: ' sy-datum+6(2) '.' sy-datum+4(2) '.' sy-datum(4)
into st_comment-info.
append st_comment to ti_comment.
clear st_comment.
st_comment-typ = 'A'.
concatenate 'RUC
:' w_paval
into st_comment-info.
append st_comment to ti_comment.
clear st_comment.
st_comment-typ = 'A'.
concatenate 'Razn Social:' w_butxt
into st_comment-info.
append st_comment to ti_comment.
call function 'REUSE_ALV_COMMENTARY_WRITE'
exporting
it_list_commentary = ti_comment.
endform. " F_TOP_OF_PAGE
*&---------------------------------------------------------------------*
*&
Form USER_COMMAND_AW01N
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
*
-->P_SY_UCOMM text
*----------------------------------------------------------------------*
form user_command_aw01n using ucomm
like sy-ucomm
selfield type slis_selfield.
read table ti_salida index selfield-tabindex into st_salida.
check sy-subrc = 0.
case ucomm.
* Doble Click
when '&IC1'.
case selfield-fieldname.
when 'ANLN1'.
set parameter id 'BUK' field p_bukrs.
set parameter id 'AN1' field st_salida-anln1.
set parameter id 'AN2' field st_salida-anln2.
set parameter id 'GJR' field p_gjahr.
call transaction 'AW01N'.
when others.
endcase.
endcase.
endform.
" USER_COMMAND_AW01N
* BEGIN CSTI191009
*&---------------------------------------------------------------------*
*&
Form CARGA_CONSTANTES
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
form carga_constantes .
data: t_const
type table of zgetdconst with header line.
select *
into table t_const
from zgetdconst
where modulo = 'FI'
and proyec = 'PCGE'
and ( aplica = 'ZFI_RPT_ACTIV'
aplica = 'ACTIV_PCGE' or
aplica = 'CONSTANTE' ).
or
loop at t_const.
case t_const-campo.
when 'CTA_PCGE'.
if t_const-aplica eq 'ZFI_RPT_ACTIV' .
gr_ktansw-sign = 'I'.
gr_ktansw-option = 'EQ'.
call function 'CONVERSION_EXIT_ALPHA_INPUT'
exporting
input = t_const-valor1
importing
output = gr_ktansw-low.
append gr_ktansw.
call function 'CONVERSION_EXIT_ALPHA_INPUT'
exporting
input = t_const-valor2
importing
output = gr_ktansw-high.
append gr_ktansw.
clear gr_ktansw.
elseif t_const-aplica eq 'ACTIV_PCGE'.
gr_ktansw_pcge-sign = 'I'.
gr_ktansw_pcge-option = 'EQ'.
call function 'CONVERSION_EXIT_ALPHA_INPUT'
exporting
input = t_const-valor1
importing
output = gr_ktansw_pcge-low.
call function 'CONVERSION_EXIT_ALPHA_INPUT'
exporting
input = t_const-valor2
importing
output = gr_ktansw_pcge-high.
append gr_ktansw_pcge.
clear gr_ktansw_pcge.
endif.
when 'FECHA'.
gv_fecha = t_const-valor1.
endcase.
endloop.
endform.
" CARGA_CONSTANTES
* END CSTI191009
"joms20140415 # INI COM
*FORM PROGRESS_BAR USING
p_value
*
p_tabix
*
p_clineas.
* DATA: W_TEXT(40),
*
W_PERCENTAGE TYPE P,
*
W_PERCENT_CHAR(3), GD_PERCENT TYPE I.
* W_PERCENTAGE = ( P_TABIX / P_CLINEAS ) * 100.
* W_PERCENT_CHAR = W_PERCENTAGE.
* SHIFT W_PERCENT_CHAR LEFT DELETING LEADING ' '.
* CONCATENATE P_VALUE W_PERCENT_CHAR '% Complete' INTO W_TEXT.
*
* IF W_PERCENTAGE GT GD_PERCENT OR P_TABIX EQ 1.
*
CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
*
EXPORTING
*
PERCENTAGE = W_PERCENTAGE
*
TEXT
= W_TEXT.
*
GD_PERCENT = W_PERCENTAGE.
* ENDIF.
*
*ENDFORM.
" PROGRESS_BAR
"joms20140415 # FIN COM
"joms20140415 # INI ADD
form subir_serv .
field-symbols: <fs> like line of t_file.
data: w_filep
like rcgfiletr-ftappl,
i_overwrite
like rcgfiletr-iefow,
ruta
type string,
txt
type string,
deli
type c value '|'.
w_filep = '.\Detalle_AF'.
i_overwrite = 'X'.
open dataset w_filep for output in text mode encoding non-unicode.
if sy-subrc = 0.
loop at t_file assigning <fs>.
concatenate
<fs>-cod_af
<fs>-sub_cod_af
<fs>-cuent_af
<fs>-descrip_act
<fs>-marca_af
<fs>-modelo_af
<fs>-num_serie
<fs>-fech_adq
<fs>-fech_ini_uso
<fs>-met_dep
<fs>-num_auto
<fs>-saldo_ini
<fs>-adq_adic
<fs>-mejoras
<fs>-reti_baj
<fs>-otro_ajus
<fs>-trasl
<fs>-val_his_af
<fs>-ajust_inf
<fs>-val_ajus_af
<fs>-dep_acum_ejer
<fs>-dep_ejerc
<fs>-dep_ejer_ret <fs>-dep_ejer_o_aj
<fs>-dep_traslados
<fs>-dep_acum_hist <fs>-val_ajust_inf
<fs>-dep_ac_ajust_inf <fs>-v_neto
<fs>-dep
into txt separated by deli.
transfer txt to w_filep.
endloop.
close dataset w_filep.
else.
message 'Error en la apertura del data set.' type 'E'.
endif.
endform.
" SUBIR_SERV
"joms20140415 # FIN ADD
"joms20140415 # INI ADD
form descarga_local .
call function 'WS_DOWNLOAD'
exporting
filename
= p_fname
filetype
= 'DAT'
tables
data_tab
= t_file
exceptions
conversion_error
= 1
file_open_error
= 2
file_read_error
= 3
invalid_table_width
= 4
invalid_type
= 5
no_batch
= 6
unknown_error
= 7
gui_refuse_filetransfer = 8
others
= 9.
if sy-subrc eq 0.
message i999(z1) with text-a01 p_fname.
else.
message e999(z1) with text-a02 p_fname.
endif.
endform.
" DESCARGA_LOCAL
"joms20140415 # FIN ADD