Asset GRN FI DOc
Dear All,
I have Created Asset PO with Ref To PO i have done Asset GRN. After when i check FI doc then it is not showing. so please tell me any suggestion or any config.
With Regards
Sachin
Hi,
There will not be any Accounting document during GR with PO acct assignment "A", this is atd SAP behaviour, (provided u have not tweked with std SAP settings for acct assignment "A")
system will generate A/C documents only during Invoice verification (MIRO) as
Dr. Asset
Cr. Vendor
Hope this helps
Regards
Dheeraj
Similar Messages
-
FI Doc not getting generated at the time of Asset GRN
Hi,
We have created Asset Purchase Order.
At the time of GRN, FI Doc is not getting generated.
What changes need to be required from MM side (in OBYC)
Regards,HI PK,
whether your PO Item have Single Account Assignment or it is Multiple Account assignment.
Check Distribution in Accoun Assignment Tab at PO item level.
If it is Single account Assignment, then Accounting Document will be generated at GR where if it is Distributed then, no Accounting Document will be generated.
In your case, Probably it would be distributed. and as a result of this your PO Item is marked as 'GR non valuated'.
Check its Delivery Tab. If it is the case, then need not worry as it is std practise. system will treated it as multiple account assignment and its valuation will only be carried out Invoice Verification level.
Later on check the Material document also.
Pls Note:
If flag 'GR non-valuated' is set in the purchase order, the valuation is only executed through the invoice verification. This flag must be set if the purchase order has multiple account assignment.
A valuated goods receipt for a purchase order with account assignment generates a posting line for the consumption account 'Account-assigned purchase order' (KBS) and for the GR/IR clearing account WRX.
hope it address your issue.
Regards,
S Anand -
Hello Experts,
I want a link between mseg & ekbe(where vgabe = 2, RSEG belnr) ...besides matnr, ebeln and ebelp ..
I m not able to find a link that for which GRN which MIRO doc has been posted.
Plz suggest.
AasthaHello Ilesh,
I don't want this, i get the GRN no from MSEG , I want MIRO no for this
it is wrong
MSEG-MBLNR == EKBE-BELNR
MSEG-MJAHR == EKBE-GJAHR
MSEG-ZEILE == EKBE-BUZEI
MSEG-EBELN == EKBE-EBELN
MSEG-EBELP == EKBE-EBELP
MSEG-ZEKKN == EKBE-ZEKKN
as i want RSEGBELNR , which is same as EKBEBELNR , where vgabe = 2,
and i can't put MSEG-ZEILE == EKBE-BUZEI
Regards,
Aastha -
Hi all ,,,
When purchasing the asset through purchase order:
At the time of GRN..No effect on assets
AT the time of MIRO, that amount effect on asset ( that time only it considered as purchase )
My question is: at the time of GRN no FI document generating , but why it generating the GRN number???
Please clarify my doubt .
Thanks regards
ssHi
There are two issues in your case
1. Uncheck of Non valuated of GR: you can go to the TCOde OME9 , select the account assignment category "Assets" & uncheck the Non Valuated GR
2.Splitting of Line Items : While raising PO for Assets ,in Account Assignment TAB, selec the distribution as single account assignment. With this lines will not get splitted.
Hope this clarifies your doubt & solves your problem
Regards
Veena Kunthe -
Asset po - migo doc a/cing view nil
Hi,
can any one tell me a advise on my blw issue,
i have created a po with a/c assigmnet as Asset "A" and i gve the proper asset # in a/c assigmnbt tab.. when i do migo, i'm not getting any "FI accounting entries" pls advise why it's not generating...Hi,
Check in PO under "Delivery: Tab, "GR Non-Valuated" indicator would be active.
Also check for Account Assignment Category "A" in OME9, "GR Non-Valuated" indicator would be active.
Remove it and then try a new cycle by creating new PO. -
Asset back dated GRN.(Very urgent)
Dear Gurus,
My client is facing an issue that while making backlog they missed out to pass Some asset GRN related to Asset, say for the month April and May after all verifications they came to know that some of the Asset GRN is missing.
know the issue is now if we want to post asset GRN for the month April and MAY it is not possible because we closed the Posting period in MM till OCT.
so please any one suggest me how to post these entries if we take current date our depreciation calculation will be showing wrong Values.
Please Suggest this is very urgent.
Thanks in Advance
SU*Dear Sivaji<
u can do this way
1) change the Dep. key in u r Asset master (0%) dep. key
2) run the Dep. run once again with Rep Run or Re Start run. ( in this case system shows u the dep. 0 for this asset.
before runing the Dep. better to check the ANLP table and after that also
3) cancell the GRN with MM Consultant help
4) cancell the PO
Regards
radha -
Holding GR (MIGO) for asset acquisition
Hi
We have created Asset PO for branch with account assignment 'A.' We entered asset master and all other details
Now today we got the assets at the branch and GR is pending.
Now the management requires park and post facility sort of thing in Assets GR also. Now the branch store should be able to enter the details of GR and park (or hold) the GR. No accounting entry should be posted at that time.
The Assets executive will verify the details entered and then only he will post the GR (i.e. MIGO).
So let me know if GR parking and posting facility is available for 'A' account assigned PO.Hi
Now the management requires park and post facility sort of thing in Assets GR also. Now the branch store should be able to enter the details of GR and park (or hold) the GR. No accounting entry should be posted at that time.
yes we can hold GRN for asset PO ,but i am not getting one thing you are asking for no accounting entries at time of GRN
but for asset ,GRN always non valuated ,so regarding which accounting entries you are discussing ?
or If don't want accounting doc at time MIGO ,then you can use Movement type 103 and check it and then release by 105 movement type
Regards
kailas ugale -
Asset Transaction report in Document Currency
Hi friends,
We are using Asset Transaction report s_alr_87012039 or s_alr_87012048 to view the Asset line items. The report displays the values in Local Currency, we want to view the asset transaction values in Document Currency? is there any report available in SAP?
Please advice.
Thanks
NTH
Edited by: NTH on Mar 25, 2010 11:41 AMHi,
All the AA reports will output the data based on the currencies that are used in the dep areas of asset master.
In generak 01 area will have LC.
If you want to see asset transactions in DOC curr, go to FBL3N for the asset related recon accounts and choose field like Amt in doc curr and Doc curr.
Hope you have set line item display for your asset related recon accounts in FS00.
Thanks,
Srinu -
How to get assettype of a flex asset based on asset id
How to get assettype of a flex asset based on asset id
See http://docs.oracle.com/cd/E29495_01/doc.1111/webcenter_sites_11gr1_bp1_developer_guide.pdf page 84:
ASSETSET.GETASSETLIST retrieves an ordered list of assets, given optional sort criteria.
The resulting list has two columns, assetid and assettype, that are sorted by the criteria that you specify. -
Deletion of Assets in the PO line item
Hi Gurus,
We have a PO containing 7 different assets. The assets were GRd and invoice was also entered in MIRO last November.
Start of depreciation for these assets were also done last November 2011. However, some problem were encountered with the vendor which will require one of the seven assets to be deleted in the PO. The asset to be deleted is valued at 67,500.00 and it's net book value at the end of 2011 is 66,725.00.
When we tried to reverse the GR Reversal, an error was encountered saying that Line item causes scrap value of 1.00 to be violated.
Thanks,
EllicecHi,
I dont think so that you can directly reverse the asset GRN without reversing the concerned MIRO document.
Rather you can retire the same asset as on GRN date only, since here you dont need to reverse documents anymore.
Else, please check your scrap value settings for your company code in OAAW & OAYI.
Regards,
Srinu -
Dear Experts ,
i want to know that while doing GR for Assets , will accounting doc generated or not ?
tell me in detailDear Anis ,
As far GR of Asset is concerned accounting document should be generated , it actually can be done in both ways
in case of GR non valuated option selected in PO then acc entries will be as follows
GR - No acc entries
in Miro
asset no Dr
cenvat clring Dr
Vat recevable Dr
Vendor Cr
in case of GR valuated -
in GR
GR/Ir Cr
Asset no Dr
in Miro
Vendor Cr
GR/IR Dr
cenvat clr Dr
vat Rec Dr
But as if first case selected then Depreciation starts from after Miro , it should start from GR Date only thats y second method is proper . -
Dear All,
I have configured in OBYC. Valuation class Blank & assign G/L account for GRIR Capital assets in WRX.
but when i do Asset GRn it will pick up correctly.
My worry is i also assigned G/L account for valuation class 2900 (Service).
but when i do Service entry G/L account is picked up Capital not service.
all(service & Asset) entries gone to one G/l Account which has made GRIR capital.
when i removed this G/L account System shows error.
How to correct G/L account.
Please guide me.
Thanks
ShitalHi,
When you define the OBYC setting for the WRX you specify the valuation class blank & G/L account GRIR capital & 2900 valuation class with other G/L.
Actually the system will first search for the valuation class for the GR/IR clearing account, if not then it consider for the blank valuation class G/L account & post.Check whether the Service entry sheet you are accepting is which valuation class & whether G/L account has defined for that in WRX.
Dont delete the line.Check for the valuation class of SES.
if not send the case in detail.
Regards,
Raj -
Migo & Miro Accounting Documents Report
Hello Abapers,
I have made the new ALV report as shown below :-
Report zaccounting no standard page heading line-size 300 line-count 40.
tables : mkpf, "Header: Material Document
mseg, "Document Segment: Material
bkpf, "Accounting Document Header
ekbe. "PO History Table
type-pools slis.
*DATA DECLARATION
data : pos type i,
l_layout type slis_layout_alv.
data gt_fieldcat type slis_t_fieldcat_alv.
data gt_sort type slis_t_sortinfo_alv.
data ls_fieldcat type slis_fieldcat_alv.
data is_print type slis_print_alv.
data it_events type slis_alv_event occurs 5.
data gs_variant type disvariant.
data t_list_top_of_page type slis_t_listheader.
data title like sy-title.
data : l_title(105) type c,
l_list(105) type c, "Store the Top-of-page headings
l_date(10) type c, "Store date in top-of-page
l_time(8) type c, "Store time in top-of-page
title1 like sy-title,
title2 like sy-title,
title3 like sy-title.
*-- Data Declaration
data : repid like sy-repid.
constants: x type c value 'X'.
data zawkey like bkpf-awkey.
types : begin of x_mkpf,
mblnr like mkpf-mblnr,
mjahr like mkpf-mjahr,
budat like mkpf-budat,
ebeln like mseg-ebeln,
ebelp like mseg-ebelp,
bwart like mseg-bwart,
matnr like mseg-matnr,
gsber like mseg-gsber,
werks like mseg-werks,
bukrs like bkpf-bukrs,
belnr like bkpf-belnr,
gjahr like bkpf-gjahr,
bukrs1 like bkpf-bukrs,
belnr1 like bkpf-belnr,
gjahr1 like bkpf-gjahr,
belnr2 like bkpf-belnr,
gjahr2 like bkpf-gjahr,
end of x_mkpf.
data : t_mkpf type standard table of x_mkpf with header line.
S E L E C T I O N - S C R E E N *
selection-screen begin of block b1 with frame title text-009.
select-options: s_budat for mkpf-budat obligatory.
select-options: s_bwart for mseg-bwart.
select-options: s_matnr for mseg-matnr.
select-options: s_gsber for mseg-gsber.
select-options: s_werks for mseg-werks.
selection-screen end of block b1.
start-of-selection.
break abapdev1.
select msegmblnr msegmjahr mkpf~budat
msegebeln msegebelp msegbwart msegmatnr mseggsber msegwerks
into table t_mkpf
from mkpf inner join mseg
on mkpfmblnr = msegmblnr
where budat in s_budat
and bwart in s_bwart
and matnr in s_matnr
and gsber in s_gsber
and werks in s_werks.
loop at t_mkpf.
select single belnr gjahr into (t_mkpf-belnr, t_mkpf-gjahr) from ekbe where ebeln = t_mkpf-ebeln
and ebelp = t_mkpf-ebelp
and lfbnr = t_mkpf-mblnr
and lfgja = t_mkpf-mjahr
and bewtp = 'Q'.
modify t_mkpf transporting belnr gjahr.
endloop.
loop at t_mkpf.
clear : zawkey.
concatenate t_mkpf-mblnr t_mkpf-mjahr into zawkey.
select single belnr gjahr into (t_mkpf-belnr1,t_mkpf-gjahr1) from bkpf
where awtyp = 'MKPF'
and awkey = zawkey.
break abapdev1.
clear : zawkey.
concatenate t_mkpf-belnr t_mkpf-gjahr into zawkey.
select single belnr gjahr into (t_mkpf-belnr2,t_mkpf-gjahr2) from bkpf
where awtyp = 'RMRP'
and awkey = zawkey.
modify t_mkpf transporting belnr1 gjahr1 belnr2 gjahr2.
endloop.
ls_fieldcat-col_pos = '1'.
ls_fieldcat-fieldname = 'BUDAT'.
ls_fieldcat-tabname = 'T_MSEG'.
ls_fieldcat-ref_fieldname = 'BUDAT'.
ls_fieldcat-ref_tabname = 'MKPF'.
ls_fieldcat-seltext_l = 'PSG DATE'.
append ls_fieldcat to gt_fieldcat.
clear ls_fieldcat.
ls_fieldcat-col_pos = '2'.
ls_fieldcat-fieldname = 'MBLNR'.
ls_fieldcat-tabname = 'X_MSEG'.
ls_fieldcat-ref_fieldname = 'MBLNR'.
ls_fieldcat-ref_tabname = 'MSEG'.
ls_fieldcat-seltext_l = 'MIGO MAT DOCNO.'.
append ls_fieldcat to gt_fieldcat.
clear ls_fieldcat.
ls_fieldcat-col_pos = '3'.
ls_fieldcat-fieldname = 'BELNR1'.
ls_fieldcat-tabname = 'T_MSEG'.
ls_fieldcat-ref_fieldname = 'BELNR1'.
ls_fieldcat-ref_tabname = 'MSEG'.
ls_fieldcat-seltext_l = 'FI DocNo.'.
append ls_fieldcat to gt_fieldcat.
clear ls_fieldcat.
ls_fieldcat-col_pos = '4'.
ls_fieldcat-fieldname = 'GJAHR1'.
ls_fieldcat-tabname = 'T_MSEG'.
ls_fieldcat-ref_fieldname = 'GJAHR1'.
ls_fieldcat-ref_tabname = 'MSEG'.
ls_fieldcat-seltext_l = 'FI FiscalYr'.
append ls_fieldcat to gt_fieldcat.
clear ls_fieldcat.
ls_fieldcat-col_pos = '2'.
ls_fieldcat-fieldname = 'MJAHR'.
ls_fieldcat-tabname = 'X_MKPF'.
ls_fieldcat-ref_fieldname = 'MJAHR'.
ls_fieldcat-ref_tabname = 'MSEG'.
ls_fieldcat-seltext_l = 'MIGO MATERIAL DOC. YEAR'.
append ls_fieldcat to gt_fieldcat.
clear ls_fieldcat.
ls_fieldcat-col_pos = '5'.
ls_fieldcat-fieldname = 'EBELN'.
ls_fieldcat-tabname = 'T_MSEG'.
ls_fieldcat-ref_fieldname = 'EBELN'.
ls_fieldcat-ref_tabname = 'MSEG'.
ls_fieldcat-seltext_l = 'PO No.'.
append ls_fieldcat to gt_fieldcat.
clear ls_fieldcat.
ls_fieldcat-col_pos = '6'.
ls_fieldcat-fieldname = 'EBELP'.
ls_fieldcat-tabname = 'T_MSEG'.
ls_fieldcat-ref_fieldname = 'EBELP'.
ls_fieldcat-ref_tabname = 'MSEG'.
ls_fieldcat-seltext_l = 'PO ItemNo.'.
append ls_fieldcat to gt_fieldcat.
clear ls_fieldcat.
ls_fieldcat-col_pos = '7'.
ls_fieldcat-fieldname = 'BWART'.
ls_fieldcat-tabname = 'T_MSEG'.
ls_fieldcat-ref_fieldname = 'BWART'.
ls_fieldcat-ref_tabname = 'MSEG'.
ls_fieldcat-seltext_l = 'Mvt.Type'.
append ls_fieldcat to gt_fieldcat.
clear ls_fieldcat.
ls_fieldcat-col_pos = '8'.
ls_fieldcat-fieldname = 'BELNR'.
ls_fieldcat-tabname = 'T_MSEG'.
ls_fieldcat-ref_fieldname = 'BELNR'.
ls_fieldcat-ref_tabname = 'MSEG'.
ls_fieldcat-seltext_l = 'MIRO DocNo.'.
append ls_fieldcat to gt_fieldcat.
clear ls_fieldcat.
ls_fieldcat-col_pos = '9'.
ls_fieldcat-fieldname = 'GJAHR'.
ls_fieldcat-tabname = 'T_MSEG'.
ls_fieldcat-ref_fieldname = 'GJAHR'.
ls_fieldcat-ref_tabname = 'MSEG'.
ls_fieldcat-seltext_l = 'MIRO FiscalYr'.
append ls_fieldcat to gt_fieldcat.
clear ls_fieldcat.
ls_fieldcat-col_pos = '10'.
ls_fieldcat-fieldname = 'GSBER'.
ls_fieldcat-tabname = 'T_MSEG'.
ls_fieldcat-ref_fieldname = 'GSBER'.
ls_fieldcat-ref_tabname = 'MSEG'.
ls_fieldcat-seltext_l = 'BUS.AREA'.
append ls_fieldcat to gt_fieldcat.
clear ls_fieldcat.
ls_fieldcat-col_pos = '11'.
ls_fieldcat-fieldname = 'WERKS'.
ls_fieldcat-tabname = 'T_MSEG'.
ls_fieldcat-ref_fieldname = 'WERKS'.
ls_fieldcat-ref_tabname = 'MSEG'.
ls_fieldcat-seltext_l = 'PLANT'.
append ls_fieldcat to gt_fieldcat.
clear ls_fieldcat.
ls_fieldcat-col_pos = '12'.
ls_fieldcat-fieldname = 'MATNR'.
ls_fieldcat-tabname = 'T_MSEG'.
ls_fieldcat-ref_fieldname = 'MATNR'.
ls_fieldcat-ref_tabname = 'MSEG'.
ls_fieldcat-seltext_l = 'MAT.NO'.
append ls_fieldcat to gt_fieldcat.
clear ls_fieldcat.
ls_fieldcat-col_pos = '13'.
ls_fieldcat-fieldname = 'BELNR2'.
ls_fieldcat-tabname = 'T_MSEG'.
ls_fieldcat-ref_fieldname = 'BELNR2'.
ls_fieldcat-ref_tabname = 'MSEG'.
ls_fieldcat-seltext_l = 'MIRO FI Doc.No'.
append ls_fieldcat to gt_fieldcat.
clear ls_fieldcat.
ls_fieldcat-col_pos = '14'.
ls_fieldcat-fieldname = 'GJAHR2'.
ls_fieldcat-tabname = 'T_MSEG'.
ls_fieldcat-ref_fieldname = 'GJAHR2'.
ls_fieldcat-ref_tabname = 'MSEG'.
ls_fieldcat-seltext_l = 'MIRO FI FiscalYr'.
append ls_fieldcat to gt_fieldcat.
clear ls_fieldcat.
*& Form ALV_GRID_DISPLAY
form alv_grid_display .
call function 'REUSE_ALV_GRID_DISPLAY'
exporting
i_callback_program = sy-repid " 'ZRD_DD'
it_fieldcat = gt_fieldcat "catalogue field
i_callback_top_of_page = 'TOP_PAGE'
is_layout = l_layout
it_sort = gt_sort
i_default = 'X'
i_save = 'A'
is_variant = gs_variant
it_events = it_events
is_print = is_print
tables
t_outtab = t_mkpf
exceptions
program_error = 1
others = 2
if sy-subrc <> 0.
message id sy-msgid type 'I' number sy-msgno
with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
endif.
endform. " ALV_GRID_DISPLAY
**& Form ALV_LAYOUT
*FORM alv_layout USING ps_layout TYPE slis_layout_alv.
ps_layout-get_selinfos = x.
ps_layout-colwidth_optimize = x.
ps_layout-detail_popup = x.
ps_layout-no_keyfix = x.
ps_layout-coltab_fieldname = 'CLR'.
ps_layout-key_hotspot = x.
ps_layout-group_change_edit = x.
ps_layout-zebra = 'X'.
*ENDFORM. " ALV_LAYOUT
**& Form ALV_PRINT
*FORM alv_print .
is_print-no_print_selinfos = x. " display no selection infos
is_print-no_coverpage = x.
is_print-no_new_page = x.
is_print-no_print_listinfos = x. " display no listinfos
*ENDFORM. " ALV_PRINT
**& Form TOP_OF_PAGE
form top_page.
data: ls_line type slis_listheader,
i_top_of_page type slis_t_listheader.
title = sy-title.
ls_line-typ = 'H'.
ls_line-info = title.
append ls_line to i_top_of_page.
call function 'REUSE_ALV_COMMENTARY_WRITE'
exporting
it_list_commentary = i_top_of_page.
endform. "TOP_OF_PAGE
In this report , i have faced some problems :-
1. In MIGO numbers some cases MIRO doc. numbers are not shown against some migo doc. numbers whereas actually MIRO is already done.
2. The Problem in downloading the report, its not accurate download & the MIGO Document Number not shown when we download the report.
Thanks,
Sumit.Hi Sumit,
Im not sure if it will completely support ur needs but check it out
This is for MIRO.Note here business area is hardcoded.
REPORT zmm_miro_track.
TABLES : rseg, bkpf, bseg, lfa1, ekbe, skat, bsis .
AlV related data declarations
Type Pools
TYPE-POOLS: slis.
CONSTANTS:
gc_formname_top_of_page TYPE slis_formname VALUE 'TOP_OF_PAGE'.
Data Declaration file *
DATA : BEGIN OF it_rseg OCCURS 0,
belnr TYPE rseg-belnr,
gjahr TYPE rseg-gjahr,
ebeln TYPE rseg-ebeln,
ebelp TYPE rseg-ebelp,
bukrs TYPE rseg-bukrs,
awkey TYPE bkpf-awkey,
END OF it_rseg.
DATA : BEGIN OF it_bkpf OCCURS 0,
belnr TYPE bkpf-belnr,
gjahr TYPE bkpf-gjahr,
xblnr TYPE bkpf-xblnr,
budat TYPE bkpf-budat,
awkey TYPE bkpf-awkey,
bukrs TYPE bkpf-bukrs,
belnr1 TYPE bkpf-belnr,
blart TYPE bkpf-blart,
END OF it_bkpf.
DATA : BEGIN OF it_bseg OCCURS 0,
belnr TYPE bseg-belnr,
gjahr TYPE bseg-gjahr,
bupla TYPE bseg-bupla,
lifnr TYPE bseg-lifnr,
hkont TYPE bseg-hkont,
koart TYPE bseg-koart,
mwskz TYPE bseg-mwskz,
pswbt TYPE bseg-pswbt,
ebeln TYPE bseg-ebeln,
ebelp TYPE bseg-ebelp,
xref3 TYPE bseg-xref3,
bschl TYPE bseg-bschl,
shkzg TYPE bseg-shkzg,
miro_accnt TYPE bseg-hkont,
xblnr TYPE bkpf-xblnr,
budat TYPE bkpf-budat,
belnr1 TYPE bseg-belnr,
acdes(50),
belnr2 TYPE bseg-belnr,
belnr3 TYPE bseg-belnr,
gjahr1 TYPE bseg-gjahr,
hkont1 TYPE bseg-hkont,
pswbt1 TYPE bseg-pswbt,
budat1 TYPE ekbe-budat,
acdes1(50),
END OF it_bseg.
DATA : it_bseg1 LIKE it_bseg OCCURS 0 WITH HEADER LINE.
DATA : BEGIN OF it_bsis OCCURS 0,
belnr TYPE bsis-belnr,
gjahr TYPE bsis-gjahr,
bschl TYPE bsis-bschl,
xref3 TYPE bsis-xref3,
END OF it_bsis.
DATA : BEGIN OF it_lfa1 OCCURS 0,
lifnr TYPE lfa1-lifnr,
name1 TYPE lfa1-name1,
spras TYPE lfa1-spras,
END OF it_lfa1.
DATA : BEGIN OF it_skat OCCURS 0,
saknr TYPE skat-saknr,
txt20 TYPE skat-txt20,
txt50 TYPE skat-txt50,
spras TYPE skat-spras,
ktopl TYPE skat-ktopl,
END OF it_skat.
DATA : BEGIN OF it_ekbe OCCURS 0,
ebeln TYPE ekbe-ebeln,
ebelp TYPE ekbe-ebelp,
budat TYPE ekbe-budat,
bewtp TYPE ekbe-bewtp,
END OF it_ekbe.
DATA : fieldcatalog TYPE slis_t_fieldcat_alv WITH HEADER LINE,
gd_repid LIKE sy-repid.
DATA: gt_fieldcat TYPE slis_t_fieldcat_alv,
gs_layout TYPE slis_layout_alv ,
gs_print TYPE slis_print_alv,
gt_sort TYPE slis_t_sortinfo_alv ,
gt_filter TYPE slis_t_filter_alv,
gt_sp_group TYPE slis_t_sp_group_alv,
gt_alv_graphics TYPE dtc_t_tc,
gt_excluding TYPE slis_t_extab ,
gt_events TYPE slis_t_event .
DATA: g_repid LIKE sy-repid.
DATA: gt_list_top_of_page TYPE slis_t_listheader.
DATA: g_boxnam TYPE slis_fieldname VALUE 'BOX',
p_f2code LIKE sy-ucomm VALUE '&ETA',
p_lignam TYPE slis_fieldname VALUE 'LIGHTS',
g_save(1) TYPE c,
g_default(1) TYPE c,
g_exit(1) TYPE c,
gx_variant LIKE disvariant,
g_variant LIKE disvariant.
USER ENTRY PARAMETERS *
SELECTION-SCREEN BEGIN OF BLOCK blk1 WITH FRAME TITLE text-001.
SELECT-OPTIONS : s_belnr FOR rseg-belnr OBLIGATORY,
s_gjahr FOR rseg-gjahr OBLIGATORY,
s_budat FOR bkpf-budat.
SELECTION-SCREEN END OF BLOCK blk1.
START-OF-SELECTION *
START-OF-SELECTION.
PERFORM data_retrive.
PERFORM data_call_alv.
PERFORM build_layout.
END-OF-SELECTION.
*& Form DATA_CALL_ALV
text
--> p1 text
<-- p2 text
FORM data_call_alv .
g_repid = sy-repid.
PERFORM e01_fieldcat_init USING gt_fieldcat[].
PERFORM eventtab_build CHANGING gt_events.
PERFORM e04_comment_build USING gt_list_top_of_page[].
PERFORM display_report.
ENDFORM. " DATA_CALL_ALV
*& Form E01_FIELDCAT_INIT
text
-->P_GT_FIELDCAT[] text
FORM e01_fieldcat_init USING e01_lt_fieldcat TYPE slis_t_fieldcat_alv.
DATA: ls_fieldcat TYPE slis_fieldcat_alv.
DATA: gs_sort TYPE slis_sortinfo_alv.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'BELNR'.
ls_fieldcat-key = 'X'. "SUBTOTAL KEY
ls_fieldcat-col_pos = '1'.
ls_fieldcat-seltext_l = 'Accounting Doc'.
ls_fieldcat-outputlen = 15.
APPEND ls_fieldcat TO e01_lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'BELNR1'.
ls_fieldcat-col_pos = '2'.
ls_fieldcat-seltext_l = 'IR Doc'.
ls_fieldcat-outputlen = 10.
APPEND ls_fieldcat TO e01_lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'XBLNR'.
ls_fieldcat-col_pos = '3'.
ls_fieldcat-seltext_l = 'IR Reference'.
ls_fieldcat-outputlen = 15.
APPEND ls_fieldcat TO e01_lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'BUDAT'.
ls_fieldcat-col_pos = '4'.
ls_fieldcat-seltext_l = 'IR Posting Date'.
ls_fieldcat-outputlen = 10.
APPEND ls_fieldcat TO e01_lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'BUPLA'.
ls_fieldcat-col_pos = '5'.
ls_fieldcat-seltext_l = 'Business Place'.
ls_fieldcat-outputlen = 10.
APPEND ls_fieldcat TO e01_lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'HKONT'.
ls_fieldcat-col_pos = '6'.
ls_fieldcat-seltext_l = 'G/L accounts Posted'.
ls_fieldcat-outputlen = 15.
APPEND ls_fieldcat TO e01_lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'ACDES'.
ls_fieldcat-col_pos = '7'.
ls_fieldcat-seltext_l = 'G/L description'.
ls_fieldcat-outputlen = 20.
APPEND ls_fieldcat TO e01_lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'MWSKZ'.
ls_fieldcat-col_pos = '8'.
ls_fieldcat-seltext_l = 'Tax Code'.
ls_fieldcat-outputlen = 8.
APPEND ls_fieldcat TO e01_lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'PSWBT'.
ls_fieldcat-col_pos = '9'.
ls_fieldcat-seltext_l = 'G/L Amount'.
ls_fieldcat-outputlen = 20.
APPEND ls_fieldcat TO e01_lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'EBELN'.
ls_fieldcat-col_pos = '10'.
ls_fieldcat-seltext_l = 'Purchase Order'.
ls_fieldcat-outputlen = 15.
APPEND ls_fieldcat TO e01_lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'EBELP'.
ls_fieldcat-col_pos = '11'.
ls_fieldcat-seltext_l = 'P.O.Line Item'.
ls_fieldcat-outputlen = 10.
APPEND ls_fieldcat TO e01_lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'BELNR2'.
ls_fieldcat-col_pos = '12'.
ls_fieldcat-seltext_l = 'GRN Doc '.
ls_fieldcat-outputlen = 10.
APPEND ls_fieldcat TO e01_lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'BELNR3'.
ls_fieldcat-col_pos = '13'.
ls_fieldcat-seltext_l = 'GRN FI Doc No.'.
ls_fieldcat-outputlen = 15.
APPEND ls_fieldcat TO e01_lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'BUDAT1'.
ls_fieldcat-col_pos = '14'.
ls_fieldcat-seltext_l = 'GR Posting Date '.
ls_fieldcat-outputlen = 10.
APPEND ls_fieldcat TO e01_lt_fieldcat.
ENDFORM. "e01_fieldcat_init
*& Form EVENTTAB_BUILD
text
<--P_GT_EVENTS text
FORM eventtab_build CHANGING lt_events TYPE slis_t_event.
CONSTANTS:
gc_formname_top_of_page TYPE slis_formname VALUE 'TOP_OF_PAGE'.
DATA: ls_event TYPE slis_alv_event.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 0
IMPORTING
et_events = lt_events.
READ TABLE lt_events WITH KEY name = slis_ev_top_of_page
INTO ls_event.
IF sy-subrc = 0.
MOVE gc_formname_top_of_page TO ls_event-form.
APPEND ls_event TO lt_events.
ENDIF.
ENDFORM. " EVENTTAB_BUILD
*& Form E04_COMMENT_BUILD
text
-->P_GT_LIST_TOP_OF_PAGE[] text
FORM e04_comment_build USING e04_lt_top_of_page TYPE slis_t_listheader.
DATA : v_time(5) TYPE c.
DATA: ls_line TYPE slis_listheader.
DATA: ls_colr TYPE slis_specialcol_alv.
DATA : v_text(90) TYPE c.
CONCATENATE ' Report for MIRO track ':' ' INTO v_text SEPARATED BY space.
CLEAR ls_line.
ls_line-typ = 'H'.
ls_line-info = v_text.
APPEND ls_line TO e04_lt_top_of_page.
ENDFORM. " E04_COMMENT_BUILD
FORM TOP_OF_PAGE *
FORM top_of_page.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = gt_list_top_of_page.
ENDFORM. "TOP_OF_PAGE
**& Form DATA_RETRIVE
text
FORM data_retrive.
fetching Accounting Document Number and Fiscal year from Incoming Invoice table
SELECT belnr gjahr ebeln ebelp bukrs
INTO CORRESPONDING FIELDS OF TABLE it_rseg
FROM rseg
WHERE belnr IN s_belnr
AND gjahr IN s_gjahr
AND bukrs = '1000'.
LOOP AT it_rseg.
CONCATENATE it_rseg-belnr it_rseg-gjahr INTO it_rseg-awkey.
MODIFY it_rseg.
CLEAR it_rseg.
ENDLOOP.
IF it_rseg[] IS NOT INITIAL.
SELECT belnr gjahr xblnr budat awkey
INTO CORRESPONDING FIELDS OF TABLE it_bkpf
FROM bkpf
FOR ALL ENTRIES IN it_rseg
WHERE awkey = it_rseg-awkey
AND budat IN s_budat
AND bukrs = '1000'
AND blart <> 'ML'.
ENDIF.
IF it_bkpf[] IS NOT INITIAL.
SELECT belnr gjahr bupla lifnr hkont koart mwskz pswbt ebeln ebelp xref3 bschl shkzg
INTO CORRESPONDING FIELDS OF TABLE it_bseg
FROM bseg
FOR ALL ENTRIES IN it_bkpf
WHERE belnr = it_bkpf-belnr
AND gjahr = it_bkpf-gjahr.
ENDIF.
fetching G/L account description
IF it_bseg[] IS NOT INITIAL.
SELECT lifnr name1
INTO CORRESPONDING FIELDS OF TABLE it_lfa1
FROM lfa1
FOR ALL ENTRIES IN it_bseg
WHERE lifnr = it_bseg-lifnr
AND spras = 'EN'.
SELECT saknr txt20 txt50
INTO CORRESPONDING FIELDS OF TABLE it_skat
FROM skat
FOR ALL ENTRIES IN it_bseg
WHERE saknr = it_bseg-hkont
AND spras = 'EN'
AND ktopl = 'HRJL'.
SELECT ebeln ebelp budat
INTO CORRESPONDING FIELDS OF TABLE it_ekbe
FROM ekbe
FOR ALL ENTRIES IN it_bseg
WHERE ebeln = it_bseg-ebeln
AND ebelp = it_bseg-ebelp
AND bewtp = 'E'.
ENDIF.
LOOP AT it_bseg.
IF it_bseg-koart = 'K'.
it_bseg-miro_accnt = it_bseg-lifnr.
ELSE.
it_bseg-miro_accnt = it_bseg-hkont.
ENDIF.
IF it_bseg-shkzg = 'H'.
it_bseg-pswbt = it_bseg-pswbt * -1.
ENDIF.
it_bseg-belnr2 = it_bseg-xref3+4(10).
MODIFY it_bseg.
READ TABLE it_ekbe WITH KEY ebeln = it_bseg-ebeln
ebelp = it_bseg-ebelp.
IF sy-subrc = 0.
it_bseg-budat1 = it_ekbe-budat.
ENDIF.
READ TABLE it_bkpf WITH KEY belnr = it_bseg-belnr
gjahr = it_bseg-gjahr.
IF sy-subrc = 0.
it_bseg-belnr = it_bkpf-belnr.
it_bseg-gjahr = it_bkpf-gjahr.
it_bseg-xblnr = it_bkpf-xblnr.
it_bseg-budat = it_bkpf-budat.
it_bseg-belnr1 = it_bkpf-awkey+0(10).
ENDIF.
IF it_bseg-koart = 'K'.
READ TABLE it_lfa1 WITH KEY lifnr = it_bseg-miro_accnt.
IF sy-subrc = 0.
it_bseg-acdes = it_lfa1-name1.
ENDIF.
ELSE.
READ TABLE it_skat WITH KEY saknr = it_bseg-miro_accnt.
IF sy-subrc = 0.
IF it_skat-txt20 IS NOT INITIAL.
it_bseg-acdes = it_skat-txt20.
ELSE.
it_bseg-acdes = it_skat-txt50.
ENDIF.
ENDIF.
ENDIF.
MODIFY it_bseg.
CLEAR it_bseg.
ENDLOOP.
it_bseg1[] = it_bseg[].
LOOP AT it_bseg1.
IF it_bseg1-xref3 = ''.
DELETE it_bseg1.
CLEAR it_bseg1.
ENDIF.
ENDLOOP.
IF it_bseg1[] IS NOT INITIAL.
SELECT belnr gjahr bschl xref3
FROM bsis
INTO CORRESPONDING FIELDS OF TABLE it_bsis
FOR ALL ENTRIES IN it_bseg1
WHERE xref3 = it_bseg1-xref3
AND gjahr = it_bseg1-gjahr
AND bschl = '96'.
ENDIF.
LOOP AT it_bseg.
READ TABLE it_bsis WITH KEY xref3 = it_bseg-xref3.
IF sy-subrc = 0.
it_bseg-belnr3 = it_bsis-belnr.
it_bseg-gjahr1 = it_bsis-gjahr.
ENDIF.
MODIFY it_bseg.
CLEAR it_bseg.
ENDLOOP.
ENDFORM. "data_retrive
*& Form DISPLAY_REPORT
text
--> p1 text
<-- p2 text
FORM display_report .
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_background_id = ''
i_callback_program = g_repid
i_callback_user_command = 'USER_COMMAND'
is_layout = gs_layout
it_fieldcat = gt_fieldcat[]
it_special_groups = gt_sp_group[]
it_sort = gt_sort[]
it_filter = gt_filter[]
i_save = g_save
is_variant = g_variant
it_events = gt_events[]
is_print = gs_print
it_alv_graphics = gt_alv_graphics[]
it_excluding = gt_excluding
TABLES
t_outtab = it_bseg.
ENDFORM. " DISPLAY_REPORT
*& Form build_layout
text
--> p1 text
<-- p2 text
FORM build_layout.
gs_layout-no_input = 'X'.
gs_layout-colwidth_optimize = 'X'.
gs_layout-totals_text = 'Totals'(201).
gs_layout-info_fieldname = 'LINE_COLOR'.
ENDFORM. " BUILD_LAYOUT
This is for MIGO.
REPORT zmm_migo_track.
TABLES : bseg, ekbe, skat, bsis.
AlV related data declarations
Type Pools
TYPE-POOLS: slis.
CONSTANTS:
gc_formname_top_of_page TYPE slis_formname VALUE 'TOP_OF_PAGE'.
Data Declaration file *
DATA : BEGIN OF it_bseg OCCURS 0,
belnr TYPE bseg-belnr,
gjahr TYPE bseg-gjahr,
bukrs TYPE bseg-bukrs,
hkont TYPE bseg-hkont,
pswbt TYPE bseg-pswbt,
ebeln TYPE bseg-ebeln,
ebelp TYPE bseg-ebelp,
xref3 TYPE bseg-xref3,
shkzg TYPE bseg-shkzg,
budat TYPE ekbe-budat,
acdes(50),
belnr1 TYPE bseg-belnr,
END OF it_bseg.
DATA : it_bseg1 LIKE it_bseg OCCURS 0 WITH HEADER LINE.
DATA : BEGIN OF it_bsis OCCURS 0,
belnr TYPE bsis-belnr,
gjahr TYPE bsis-gjahr,
bschl TYPE bsis-bschl,
xref3 TYPE bsis-xref3,
END OF it_bsis.
DATA : BEGIN OF it_skat OCCURS 0,
saknr TYPE skat-saknr,
txt20 TYPE skat-txt20,
txt50 TYPE skat-txt50,
spras TYPE skat-spras,
ktopl TYPE skat-ktopl,
END OF it_skat.
DATA : BEGIN OF it_ekbe OCCURS 0,
ebeln TYPE ekbe-ebeln,
ebelp TYPE ekbe-ebelp,
budat TYPE ekbe-budat,
bewtp TYPE ekbe-bewtp,
END OF it_ekbe.
DATA : fiscal_year_low(4),
fiscal_year_high(4).
DATA : fieldcatalog TYPE slis_t_fieldcat_alv WITH HEADER LINE,
gd_repid LIKE sy-repid.
DATA: gt_fieldcat TYPE slis_t_fieldcat_alv,
gs_layout TYPE slis_layout_alv ,
gs_print TYPE slis_print_alv,
gt_sort TYPE slis_t_sortinfo_alv ,
gt_filter TYPE slis_t_filter_alv,
gt_sp_group TYPE slis_t_sp_group_alv,
gt_alv_graphics TYPE dtc_t_tc,
gt_excluding TYPE slis_t_extab ,
gt_events TYPE slis_t_event .
DATA: g_repid LIKE sy-repid.
DATA: gt_list_top_of_page TYPE slis_t_listheader.
DATA: g_boxnam TYPE slis_fieldname VALUE 'BOX',
p_f2code LIKE sy-ucomm VALUE '&ETA',
p_lignam TYPE slis_fieldname VALUE 'LIGHTS',
g_save(1) TYPE c,
g_default(1) TYPE c,
g_exit(1) TYPE c,
gx_variant LIKE disvariant,
g_variant LIKE disvariant.
USER ENTRY PARAMETERS *
SELECTION-SCREEN BEGIN OF BLOCK blk1 WITH FRAME TITLE text-001.
SELECT-OPTIONS : s_belnr FOR bseg-belnr OBLIGATORY,
s_budat FOR ekbe-budat OBLIGATORY.
SELECTION-SCREEN END OF BLOCK blk1.
AT SELECTION-SCREEN.
IF s_budat-low IS NOT INITIAL.
CALL FUNCTION 'GM_GET_FISCAL_YEAR'
EXPORTING
i_date = s_budat-low
i_fyv = 'V3'
IMPORTING
e_fy = fiscal_year_low
EXCEPTIONS
FISCAL_YEAR_DOES_NOT_EXIST = 1
NOT_DEFINED_FOR_DATE = 2
OTHERS = 3
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDIF.
IF s_budat-high IS NOT INITIAL.
CALL FUNCTION 'GM_GET_FISCAL_YEAR'
EXPORTING
i_date = s_budat-high
i_fyv = 'V3'
IMPORTING
e_fy = fiscal_year_high
EXCEPTIONS
FISCAL_YEAR_DOES_NOT_EXIST = 1
NOT_DEFINED_FOR_DATE = 2
OTHERS = 3
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDIF.
START-OF-SELECTION *
START-OF-SELECTION.
PERFORM data_retrive.
PERFORM data_call_alv.
PERFORM build_layout.
END-OF-SELECTION.
*& Form DATA_CALL_ALV
text
--> p1 text
<-- p2 text
FORM data_call_alv .
g_repid = sy-repid.
PERFORM e01_fieldcat_init USING gt_fieldcat[].
PERFORM eventtab_build CHANGING gt_events.
PERFORM e04_comment_build USING gt_list_top_of_page[].
PERFORM display_report.
ENDFORM. " DATA_CALL_ALV
*& Form E01_FIELDCAT_INIT
text
-->P_GT_FIELDCAT[] text
FORM e01_fieldcat_init USING e01_lt_fieldcat TYPE slis_t_fieldcat_alv.
DATA: ls_fieldcat TYPE slis_fieldcat_alv.
DATA: gs_sort TYPE slis_sortinfo_alv.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'BELNR1'.
ls_fieldcat-col_pos = '1'.
ls_fieldcat-seltext_l = 'GRN Doc '.
ls_fieldcat-outputlen = 10.
APPEND ls_fieldcat TO e01_lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'BELNR'.
ls_fieldcat-col_pos = '2'.
ls_fieldcat-seltext_l = 'GRN FI Doc No.'.
ls_fieldcat-outputlen = 15.
APPEND ls_fieldcat TO e01_lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'BUDAT'.
ls_fieldcat-col_pos = '3'.
ls_fieldcat-seltext_l = 'GR Posting Date '.
ls_fieldcat-outputlen = 10.
APPEND ls_fieldcat TO e01_lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'HKONT'.
ls_fieldcat-col_pos = '4'.
ls_fieldcat-seltext_l = 'Account Assignment'.
ls_fieldcat-outputlen = 15.
APPEND ls_fieldcat TO e01_lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'ACDES'.
ls_fieldcat-col_pos = '5'.
ls_fieldcat-seltext_l = 'Description'.
ls_fieldcat-outputlen = 20.
APPEND ls_fieldcat TO e01_lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-fieldname = 'PSWBT'.
ls_fieldcat-col_pos = '6'.
ls_fieldcat-seltext_l = 'G/L Amount'.
ls_fieldcat-outputlen = 15.
APPEND ls_fieldcat TO e01_lt_fieldcat.
ENDFORM. "e01_fieldcat_init
*& Form EVENTTAB_BUILD
text
<--P_GT_EVENTS text
FORM eventtab_build CHANGING lt_events TYPE slis_t_event.
CONSTANTS:
gc_formname_top_of_page TYPE slis_formname VALUE 'TOP_OF_PAGE'.
DATA: ls_event TYPE slis_alv_event.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 0
IMPORTING
et_events = lt_events.
READ TABLE lt_events WITH KEY name = slis_ev_top_of_page
INTO ls_event.
IF sy-subrc = 0.
MOVE gc_formname_top_of_page TO ls_event-form.
APPEND ls_event TO lt_events.
ENDIF.
ENDFORM. " EVENTTAB_BUILD
*& Form E04_COMMENT_BUILD
text
-->P_GT_LIST_TOP_OF_PAGE[] text
FORM e04_comment_build USING e04_lt_top_of_page TYPE slis_t_listheader.
DATA : v_time(5) TYPE c.
DATA: ls_line TYPE slis_listheader.
DATA: ls_colr TYPE slis_specialcol_alv.
DATA : v_text(90) TYPE c.
CONCATENATE ' Report for MIGO track ':' ' INTO v_text SEPARATED BY space.
CLEAR ls_line.
ls_line-typ = 'H'.
ls_line-info = v_text.
APPEND ls_line TO e04_lt_top_of_page.
ENDFORM. " E04_COMMENT_BUILD
FORM TOP_OF_PAGE *
FORM top_of_page.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
it_list_commentary = gt_list_top_of_page.
ENDFORM. "TOP_OF_PAGE
**& Form DATA_RETRIVE
text
FORM data_retrive.
fetching migo G/L account
IF fiscal_year_high IS NOT INITIAL.
SELECT belnr gjahr hkont pswbt ebeln ebelp xref3 shkzg
FROM bseg
INTO CORRESPONDING FIELDS OF TABLE it_bseg
WHERE belnr IN s_belnr
AND gjahr BETWEEN fiscal_year_low AND fiscal_year_high
AND bukrs = '1000'.
ELSE.
SELECT belnr gjahr hkont pswbt ebeln ebelp xref3 shkzg
FROM bseg
INTO CORRESPONDING FIELDS OF TABLE it_bseg
WHERE belnr IN s_belnr
AND gjahr = fiscal_year_low
AND bukrs = '1000'.
ENDIF.
fetching G/L account description
IF it_bseg[] IS NOT INITIAL.
SELECT saknr txt20 txt50
INTO CORRESPONDING FIELDS OF TABLE it_skat
FROM skat
FOR ALL ENTRIES IN it_bseg
WHERE saknr = it_bseg-hkont
AND spras = 'EN'
AND ktopl = 'HRJL'.
SELECT ebeln ebelp budat
INTO CORRESPONDING FIELDS OF TABLE it_ekbe
FROM ekbe
FOR ALL ENTRIES IN it_bseg
WHERE ebeln = it_bseg-ebeln
AND ebelp = it_bseg-ebelp
AND bewtp = 'E'.
ENDIF.
LOOP AT it_bseg.
IF it_bseg-shkzg = 'H'.
it_bseg-pswbt = it_bseg-pswbt * -1.
ENDIF.
MODIFY it_bseg.
READ TABLE it_ekbe WITH KEY ebeln = it_bseg-ebeln
ebelp = it_bseg-ebelp.
IF sy-subrc = 0.
it_bseg-budat = it_ekbe-budat.
ENDIF.
READ TABLE it_skat WITH KEY saknr = it_bseg-hkont.
IF sy-subrc = 0.
IF it_skat-txt20 IS NOT INITIAL.
it_bseg-acdes = it_skat-txt20.
ELSE.
it_bseg-acdes = it_skat-txt50.
ENDIF.
ENDIF.
MODIFY it_bseg.
CLEAR it_bseg.
ENDLOOP.
it_bseg1[] = it_bseg[].
LOOP AT it_bseg1.
IF it_bseg1-xref3 = ''.
DELETE it_bseg1.
CLEAR it_bseg1.
ENDIF.
ENDLOOP.
LOOP AT it_bseg.
READ TABLE it_bseg1 WITH KEY belnr = it_bseg-belnr.
IF sy-subrc = 0.
it_bseg-belnr1 = it_bseg1-xref3+4(10).
it_bseg-xref3 = it_bseg1-xref3.
ENDIF.
MODIFY it_bseg.
CLEAR it_bseg.
ENDLOOP.
ENDFORM. "data_retrive
*& Form DISPLAY_REPORT
text
--> p1 text
<-- p2 text
FORM display_report .
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_background_id = ''
i_callback_program = g_repid
i_callback_user_command = 'USER_COMMAND'
is_layout = gs_layout
it_fieldcat = gt_fieldcat[]
it_special_groups = gt_sp_group[]
it_sort = gt_sort[]
it_filter = gt_filter[]
i_save = g_save
is_variant = g_variant
it_events = gt_events[]
is_print = gs_print
it_alv_graphics = gt_alv_graphics[]
it_excluding = gt_excluding
TABLES
t_outtab = it_bseg.
ENDFORM. " DISPLAY_REPORT
*& Form build_layout
text
--> p1 text
<-- p2 text
FORM build_layout.
gs_layout-no_input = 'X'.
gs_layout-colwidth_optimize = 'X'.
gs_layout-totals_text = 'Totals'(201).
gs_layout-info_fieldname = 'LINE_COLOR'.
ENDFORM. " BUILD_LAYOUT -
Hi ABAPers,
I was trying to develop a report for which query is something like this.
*& Report ZT_SERIAL
REPORT ZT_SERIAL.
TABLES : SER01,SER03,OBJK,LIKP,LIPS. " LIKP - SD invoice header table, LIPS - SD invoice details table
TYPE-POOLS: SLIS.
DATA: AFIELD TYPE SLIS_FIELDCAT_ALV.
DATA: FIELDCAT TYPE SLIS_T_FIELDCAT_ALV.
MANDATORY WHILE DECLARING ALV ***
DATA: L_FIELDCAT TYPE SLIS_FIELDCAT_ALV..
DATA: V_EVENTS TYPE SLIS_T_EVENT.
DATA: LAYOUT TYPE SLIS_LAYOUT_ALV.
DATA: P_FIELDTAB TYPE SLIS_T_FIELDCAT_ALV.
DATA: I_TITLE_SL_NO_TRACK TYPE LVC_TITLE VALUE 'SERIAL NO TRACKER'.
DATA : BEGIN OF ITAB OCCURS 0,
OBKNR LIKE OBJK-OBKNR, "OBJECT LIST
OBZAE LIKE OBJK-OBZAE, "OBJECT COUNTER
KUNDE LIKE SER01-KUNDE, "CUSTOMER NO
MATNR LIKE OBJK-MATNR, "PART NO
SERNR LIKE OBJK-SERNR, "SERIAL NO
MBLNR LIKE SER03-MBLNR, "GRN/MATERIAL DOC NO
LIEF_NR LIKE SER01-LIEF_NR,"OUTBOUND DELV NO
DATUM LIKE SER01-DATUM, "OUTBOUND DELV DATE
TASER LIKE OBJK-TASER, "HEADER TABLE
ANZSN LIKE SER01-ANZSN, "NO OF SERIAL NOS
VGBEL LIKE LIPS-VGBEL, "SALES ORDER NO
END OF ITAB.
SELECTION-SCREEN : BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
SELECT-OPTIONS : S_KUNDE FOR SER01-KUNDE,
S_VGBEL FOR LIPS-VGBEL,
S_MATNR FOR OBJK-MATNR,
S_SERNR FOR OBJK-SERNR,
S_MBLNR FOR SER03-MBLNR,
S_LIFNR FOR SER01-LIEF_NR,
S_DATUM FOR SER01-DATUM.
SELECTION-SCREEN : END OF BLOCK B1.
PERFORM TRACKING.
PERFORM FLDCAT.
PERFORM BUILD_LAYOUT.
***CALL FUNCTION TO DISPLAY IN ALV FORMAT*******
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = SY-REPID
I_GRID_TITLE = I_TITLE_SL_NO_TRACK
IS_LAYOUT = LAYOUT
IT_FIELDCAT = P_FIELDTAB[]
I_SAVE = 'A'
IT_EVENTS = V_EVENTS
TABLES
T_OUTTAB = ITAB.
***END OF CALL FUNCTION
FORM TRACKING.
SELECT OBJKOBKNR OBJKOBZAE OBJKMATNR OBJKSERNR OBJK~TASER
SER01KUNDE SER01LIEF_NR SER01DATUM SER01ANZSN
SER03~MBLNR
LIPS~VGBEL
INTO TABLE ITAB FROM OBJK
INNER JOIN SER01 ON OBJKOBKNR = SER01OBKNR
INNER JOIN SER03 ON OBJKOBKNR = SER03OBKNR
INNER JOIN LIPS ON SER01LIEF_NR = LIPSVBELN
WHERE
OBJKTASER = 'SER01' OR OBJKTASER = 'SER03'.
OBJK~MATNR IN S_MATNR AND
OBJK~SERNR IN S_SERNR AND
SER01~KUNDE IN S_KUNDE AND
SER01~LIEF_NR IN S_LIFNR AND
SER01~DATUM IN S_DATUM AND
SER03~MBLNR IN S_MBLNR AND
LIPS~VGBEL IN S_VGBEL.
ENDFORM.
*& Form fldcat
text
FORM FLDCAT.
PERFORM FLDCAT1 USING 'KUNDE' 'Customer No'.
PERFORM FLDCAT1 USING 'VGBEL' 'Sales Order No'.
PERFORM FLDCAT1 USING 'MATNR' 'Tejas Part No'.
PERFORM FLDCAT1 USING 'SERNR' 'Serial No'.
PERFORM FLDCAT1 USING 'MBLNR' 'Material Doc No'.
PERFORM FLDCAT1 USING 'LIEF_NR' 'Outbound Delv No'.
PERFORM FLDCAT1 USING 'DATUM' 'Outbound Delv Date'.
ENDFORM. "fldcat
*& Form fldcat1
text
-->FNAM text
-->FTEXT text
FORM FLDCAT1 USING FNAM FTEXT.
DATA: L_FIELDCAT TYPE SLIS_FIELDCAT_ALV.
L_FIELDCAT-FIELDNAME = FNAM.
L_FIELDCAT-SELTEXT_M = FTEXT.
IF FNAM EQ 'MATNR'."OR fnam EQ 'PKUNAG'.
L_FIELDCAT-KEY = 'X'.
ENDIF.
LAYOUT-COLWIDTH_OPTIMIZE = 'X'.
APPEND L_FIELDCAT TO P_FIELDTAB.
CLEAR fldcat1.
ENDFORM. "fldcat1
*& Form build_layout
text
FORM BUILD_LAYOUT .
LAYOUT-NO_INPUT = 'X'.
LAYOUT-COLWIDTH_OPTIMIZE = 'X'.
LAYOUT-ZEBRA = 'X'.
LAYOUT-TOTALS_TEXT = 'Totals'(256).
layout-coltab_fieldname = 'CELL_COLOUR'.
*clear layout.
ENDFORM.
But when I run this query,the program gets terminated.Can you please help me in rectifying the query and generate the output?
Thanks in advance
BhavinHi
I have corrected the code please copy and past it and then try.
Report ZT_SERIAL.
TABLES : SER01,SER03,OBJK,LIKP,LIPS.
" LIKP - SD invoice header table, LIPS - SD invoice details table
TYPE-POOLS: SLIS.
DATA: AFIELD TYPE SLIS_FIELDCAT_ALV.
DATA: FIELDCAT TYPE SLIS_T_FIELDCAT_ALV.
+ MANDATORY WHILE DECLARING ALV ***
DATA: L_FIELDCAT TYPE SLIS_FIELDCAT_ALV..
DATA: V_EVENTS TYPE SLIS_T_EVENT.
DATA: LAYOUT TYPE SLIS_LAYOUT_ALV.
DATA: P_FIELDTAB TYPE SLIS_T_FIELDCAT_ALV.
DATA: I_TITLE_SL_NO_TRACK TYPE LVC_TITLE VALUE 'SERIAL NO TRACKER'.
DATA : BEGIN OF ITAB OCCURS 0,
OBKNR LIKE OBJK-OBKNR, "OBJECT LIST
OBZAE LIKE OBJK-OBZAE, "OBJECT COUNTER
KUNDE LIKE SER01-KUNDE, "CUSTOMER NO
MATNR LIKE OBJK-MATNR, "PART NO
SERNR LIKE OBJK-SERNR, "SERIAL NO
MBLNR LIKE SER03-MBLNR, "GRN/MATERIAL DOC NO
LIEF_NR LIKE SER01-LIEF_NR,"OUTBOUND DELV NO
DATUM LIKE SER01-DATUM, "OUTBOUND DELV DATE
TASER LIKE OBJK-TASER, "HEADER TABLE
ANZSN LIKE SER01-ANZSN, "NO OF SERIAL NOS
VGBEL LIKE LIPS-VGBEL, "SALES ORDER NO
END OF ITAB.
SELECTION-SCREEN : BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
SELECT-OPTIONS : S_KUNDE FOR SER01-KUNDE,
S_VGBEL FOR LIPS-VGBEL,
S_MATNR FOR OBJK-MATNR,
S_SERNR FOR OBJK-SERNR,
S_MBLNR FOR SER03-MBLNR,
S_LIFNR FOR SER01-LIEF_NR,
S_DATUM FOR SER01-DATUM.
SELECTION-SCREEN : END OF BLOCK B1.
PERFORM TRACKING.
PERFORM FLDCAT.
PERFORM BUILD_LAYOUT.
***CALL FUNCTION TO DISPLAY IN ALV FORMAT*******
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = SY-REPID
I_GRID_TITLE = I_TITLE_SL_NO_TRACK
IS_LAYOUT = LAYOUT
IT_FIELDCAT = P_FIELDTAB[]
I_SAVE = 'A'
IT_EVENTS = V_EVENTS
TABLES
T_OUTTAB = ITAB.
***END OF CALL FUNCTION
FORM TRACKING.
*SELECT OBJK~OBKNR
OBJK~OBZAE
OBJK~MATNR
OBJK~SERNR
OBJK~TASER
SER01~KUNDE
SER01~LIEF_NR
SER01~DATUM
SER01~ANZSN
SER03~MBLNR
LIPS~VGBEL
INTO TABLE ITAB FROM OBJK
INNER JOIN SER01 ON OBJKOBKNR = SER01OBKNR
INNER JOIN SER03 ON OBJKOBKNR = SER03OBKNR
INNER JOIN LIPS ON SER01LIEF_NR = LIPSVBELN
WHERE
*( OBJKTASER = 'SER01' OR OBJKTASER = 'SER03' ) and
*OBJK-MATNR IN S_MATNR AND
*OBJK~SERNR IN S_SERNR AND
*SER01~KUNDE IN S_KUNDE AND
*SER01~LIEF_NR IN S_LIFNR AND
*SER01~DATUM IN S_DATUM AND
*SER03~MBLNR IN S_MBLNR AND
*LIPS~VGBEL IN S_VGBEL.
SELECT a~OBKNR "OBJK
a~OBZAE
a~MATNR
a~SERNR
a~TASER
b~KUNDE "SER01
b~LIEF_NR
b~DATUM
b~ANZSN
c~MBLNR "SER03
D~VGBEL "LIPS
INTO TABLE ITAB FROM ( OBJK as a
INNER JOIN SER01 as b ON aOBKNR = bOBKNR
INNER JOIN SER03 as c ON aOBKNR = cOBKNR
INNER JOIN LIPS as d ON bLIEF_NR = dVBELN )
WHERE
( aTASER = 'SER01' OR aTASER = 'SER03' ) and
a~MATNR IN S_MATNR AND
a~SERNR IN S_SERNR AND
b~KUNDE IN S_KUNDE AND
b~LIEF_NR IN S_LIFNR AND
b~DATUM IN S_DATUM AND
c~MBLNR IN S_MBLNR AND
d~VGBEL IN S_VGBEL.
ENDFORM.
*& Form fldcat
* text
FORM FLDCAT.
PERFORM FLDCAT1 USING 'KUNDE' 'Customer No'.
PERFORM FLDCAT1 USING 'VGBEL' 'Sales Order No'.
PERFORM FLDCAT1 USING 'MATNR' 'Tejas Part No'.
PERFORM FLDCAT1 USING 'SERNR' 'Serial No'.
PERFORM FLDCAT1 USING 'MBLNR' 'Material Doc No'.
PERFORM FLDCAT1 USING 'LIEF_NR' 'Outbound Delv No'.
PERFORM FLDCAT1 USING 'DATUM' 'Outbound Delv Date'.
ENDFORM. "fldcat
*& Form fldcat1
text
-->FNAM text
-->FTEXT text
FORM FLDCAT1 USING FNAM FTEXT.
DATA: L_FIELDCAT TYPE SLIS_FIELDCAT_ALV.
L_FIELDCAT-FIELDNAME = FNAM.
L_FIELDCAT-SELTEXT_M = FTEXT.
IF FNAM EQ 'MATNR'."OR fnam EQ 'PKUNAG'.
L_FIELDCAT-KEY = 'X'.
ENDIF.
LAYOUT-COLWIDTH_OPTIMIZE = 'X'.
APPEND L_FIELDCAT TO P_FIELDTAB.
* CLEAR fldcat1.
ENDFORM. "fldcat1
*& Form build_layout
* text
FORM BUILD_LAYOUT .
LAYOUT-NO_INPUT = 'X'.
LAYOUT-COLWIDTH_OPTIMIZE = 'X'.
LAYOUT-ZEBRA = 'X'.
LAYOUT-TOTALS_TEXT = 'Totals'(256).
* layout-coltab_fieldname = 'CELL_COLOUR'.
*clear layout.
ENDFORM.
Regards,
Venkat -
New G/L + Document Splitting Error when Internal Order settled to AUC
Hi there,
We have ECC 6.0 and configured with New G/L and document splitting. I am getting error, when I try to settle internal order to AUC (Asset Under Construction). It is giving me Profit Center Balancing error. In Settlment Profile, I have set up Doc Type "AA". Here are configuration steps done:-
1.
G/L accounts are classified with Cat - 07000 for Fixed Assets
160000 179999 07000 Fixed Assets
2.
Doc Type AA is set up Bus Tran '0000' Variant '0001'
3.
Document Splitting is at Segment Level. Segment is assinged in Profit Center Master Data. Profit Center and Segment are set as mandatory.
4.
Document SPlitting Method is 0000000012
5.
Document Splitting Rule is set for all SAP Standard Bus. Trans. with Variant '0001'.
When I try to settle the internal order to AUC, it is givng me error for profit center balancing.
Please advice.
Thanks,
PawanHi Surya,
Thanks for your reply. I checked all settings, but this is not a case. I appreciate your help.
thanks,
pawan
Maybe you are looking for
-
Flash player 10.1 slower than 10
At least, that's how it is on my secondary computers. On my Dell Inspiron B120, flash 10.1 latest is like a train wreck when it comes to playing Youtube videos in full screen. Disabling hardware acceleration helped a little, but this shouldn't be hap
-
Moving files from Memory Card to Phone Memory on N...
Hi everyone i have put 8 small trimmed down MP3 files onto my Nokia N95, they are to be used for certain people on my CONTACT list i sent them from my PC via Bluetooth to the N95 with no problems, they were then saved onto the 2GB Memory card how do
-
Why does it says that my payment method is wrong?
-
Adobe Premiere Elements 4-import avi-files
I have started a new Adobe PrE 4-project and am about to import four 3GB-avifiles (each file contains 35 minutes film). But the Adobeporgram imports only 15 minutes (exactly 15 minutes) from each avifile. This is the first time I meet this problem. W
-
How can I start and stop two parallel loops?
Hello, I want to control two parallel loops with different timing in a vi . That means to start loop 1, then loop 2, stop loop 1 or 2 restart loop 1 ... But if loop 1 is running I cannot start loop two and reverse. Can someone help me and show whats