Report painter reference book
Hi,
I looking for a step-by-step (details) report painter reference book & link. Any recomendation?
Thank you
You can do a lot of reading on the subject but the readying tends to dry...
Another easy way to learn is to look at a SAP delivered report to see how the rows, columns, and its General Area Selection are defined.
For example, for a cost element/cost centre report, GRR3: display 1STD-001 in library 1VK.
Create a Z* report from copying an existing report, pay attention to the variables, version, and value type (1 = plan, 4 = actual)...
There are enough reports in the report libraries that will "guide" you to define your own.
Best of luck.
Similar Messages
-
Report Designer - Reference Book
Hi there,
Are there any good books for Oracle Report Designer 2.5? Please suggest.
Thanks.
Kenthe exact name is 'Oracle Certified Professional Application Developer Exam Guide' by Christopher Allen, Jason S. Couchman, Lakshmana N. Rao. i'd try amazon, borders or any major book store
null -
Maximum size to reference text fields in report painter
I have created a library for report painter but reference text fields were not transfered because of their size exceed 24 character long. is there some SAP procedure to extend this size at the moment we are creating the library? Thanks in advance for support me.
Hi Francisco
Firstable I created a structure evaluation using SAP TC MCS7 and took the own customized table that was set up for SPL porpuses. this table contains several fields including text fields and now we would like to take them for set up several report painter but I noticed that this kind of fields are not available when I created the library using GR21 also when I tried to create the set using GS01 appeared a error "this field is bigger than 24 characters" or something like that.
SGTXT Text Field 50
ZZBKTXT Text Head Reference 25
ZZKIDNO Payment Reference 30
Thanks in advance to take time for my research.
Regards -
Order analysis in report painter
Hello,
I'm working in report painter in order to analyze internal orders and particularly purchase orders flows linked to these orders.
My issue is when I analyze actual line items =>
- In those lines there are postings which are posted directly in FI and others that are posted from the incoming invoices MM.
- The business transaction used as a characteristic the identify those postings is the same. It is COIN (CO through posting from FI.
- I would like to distinguish these two types of postings.
- I noticed that there are the original business transaction or the reference transaction that would help me to make the distinction.
- For direct FI postings I would use RFBU (FI postings) original business transaction and for MM posting I would use RMRP (MM incoming invoice).
- But I did not find any way to isolate these information in report painter.
Could you advise me to know how I can solve this issue?
Thank you very much.
R.Hi Eli,
The idea is to have in the same report a mix of KOB1 and KOB2 and to compare the data with the inital budget.
For each order or order group you have:
the intial budget | The purchase requisition commitments| The purchase order commitments| The FI posting via MM incoming invoices| The FI direct postings wich correspond to provisions purchase orders invoices that we did not received yet.
Thank you
Best Regards
R. -
Can anybody help me in Report Painter? I need a link.
Regards,
SubhasishPlease go through the enclosed document. This will give you step-by-step approach for Report painter:
http://www.virtuosollc.com/PDF/Get_Reporter.pdf
Check url
http://help.sap.com/saphelp_47x200/helpdata/en/da/6ada3889432f48e10000000a114084/frameset.htm
Check Report Painter Step-by-Step example under Tools->Report Painter / Report Writer->Report Painter->Creating a Report Painter Report.
Just go through These Links to learn about report Painter.
http://help.sap.com/saphelp_erp2005/helpdata/en/66/bc7d2543c211d182b30000e829fbfe/frameset.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/5b/d22cee43c611d182b30000e829fbfe/frameset.htm
I have a standard report and it uses a structure to pull the data for the report. I need to create a custom report which uses the same structure, selection screen but a different layout. Could any of u plz advice, if its doable in report painter or just plain abap program?? Also I am interested to know how the report painter stores the actual report?? as ABAP program?? Please help..urgent..
check the SAP help ..
http://help.sap.com/saphelp_47x200/helpdata/en/66/bc7d2543c211d182b30000e829fbfe/content.htm
I had made couple of SD reports in report painter 4 year ago .. as far as process is concern you have create library , but it deals with information structure which start with s0* , after defining information structure in library it take to select the fields and display them on your out put . information structure have the statistical data most of the time . As i worked on information structure , so31,32,33 .....
I t creates ABAP program like ABAP query creates in background . if you execute Customer Over due analysis or in Co02 cost analysis report or MC* ( MM stock reports ) those are in report painter .
Hope this'll give you some guide line ...
As far as I know about report painter, It create a report in background..Like when you make ABAP query (SQ01, 02, 03 ) .. It will create a report. You cant modify the report . You have to get OSS id in order to do that. if you're ready do it then you can pass it to Memory and can achieve your goal ...
I think it will give you some hint. I wish I could have authorization to use report painter on my this project so I can help you out practically.
Please see these steps , it`ll help you ...
http://www.thespot4sap.com/Articles/Code_CostCentreReport.asp
The variation objects are coming from the sets.
For example, when you read the report 'Cost Centers: Actual/Plan/Variance'(T-code : S_ALR_87013611), you can find the characteristic 'Cost Center' is set as a 'set variable'. So the cost center in the report left side are coming from the cost center group that you input.
Does any know if we could use Report Painter across two controlling areas? Any documentation available will be great. Yes. When setting up a report in CCA you can have multiple controlling areas. In the General data selection you will have the option for the CA as a selection.
You can also use standard references objects to construct your own reports: libraries, standard layouts, default columns, and row and column models, all in the standard R/3 System, are available for custom reports.
Report Painter report definition requires several Preparatory Steps, depending on the complexity of the report to be generated.
1) Create a library and pick your reporting tables.
2) Create your report
3) define your set up within the report
a)General data selections
b)Colimns
c) rows
d) formulas
Standard layouts are maintained in the IMG "Financial Accounting" under "Special Ledger -> Information System -> Maintain standard layout.
Create libraries, which means assigning the
characteristics
key figures
Predefined columns
For each of these categories you need to select the objects to be used in reports of the specific library. You define the sequence of the objects in the selection lists of the Report Painter in field "Position". Frequently used objects should be at the top of the list.
go to
http://help.sap.com/saphelp_erp2005/helpdata/en/5b/d22ba743c611d182b30000e829fbfe/frameset.htm
I have created a report through report writer/Painter(GR51). My query here is to link this report to a transaction code. Could you please suggest me how can I acheive this?
Go to SE93 and select the Transaction with Parameters ( Parameter Transaction)
Then in the Transaction field give: START_REPORT
Skip initial screen
Screen 0
In the default value for the parameters give
D_SREPOVARI-REPORTTYPE RW
D_SREPOVARI-REPORT ( Give your Report Group )
If you have any doubt pick any report painter tcode and check in SE93
Follow below steps
1) Execute report through report painter
2) From system status get the program name
3 ) go to se93 and select report transaction and assign
program name .
Is it possible to make bigger the text a I have on a text field?, Im using the screen painter and I need to put the title bigger (as a requirment).
You can define your text as any length.If you are talking about the font,i am afraid you cannot do that.
No, you can not change the size(font) of the text on the dynpro, you can hightlight it, which changes the color to "blue" to make it stand out. You can change this on the attributes tab when double-clicking on the element in screen painter.
what is the sentence that open a screen painter file
Don´t really understand what you mean with "open a screen painter file".
If you are speaking about showing a form generated with the screen painter,
Dim oXMLDoc As New MSXML2.DOMDocument
oXMLDoc.load("Form.xml")
SBO_Application.LoadBatchActions(oXMLDoc.xml)
Dim oForm As SAPbouiCOM.Form
oForm = SBO_Application.Forms.Item("YourFormID")
oForm.Visible = True
regards
vinod -
Hi All,
I need to create a report using report painter.
Requirement goes like this:
1) A report of quantities on a cost center against a cost element.
2)The quantities should be for each month from jan to Dec
I have used SMEG (QUANTITY) as the Basic Key figure.
General Selection:
Version 0
Fiscal year 1GJAHR Fiscal Year
Value type 4
CO area 0002
Cost center 1KOSET Cost center group
I am trying to get the quantity (MENGE) booked using F-02 on a cost center.
But my problem is that, against a cost center there are many other quantities booked.
I am not getting the output as my report painter query is not using COEP table and my data is available on COEP table.It queries COSS & COSP
Is there is a way that i can use my report painter queiry this table.
Regards
Rahmanreolved
-
Actual quantity record in Report Painter
Hello SAP CO experts,
I have a question regarding actual quantity record which is not showing in internal order report for newly opened cost element (report created in Report Painter with reference to SAP report 6009-001 Actual/Plan Values/Quantity). Actual quantity from SD document flow is not updated with those cost element category 11- revenue. Actual line items report shows actual quantity, but total record is not updated in summary report.
Is it a problem that cost element at the time it was created did not have indicator for quantity record checked? As this field is time dependent, how can I solve this issue?
Please give me some advice regarding this question.
DuskoHello Dusko,
If you have activated the tick at later date then it is obvious that you would not have the quantity posted between the date the tick wasn't there and the day you put the tick as no new documents are generated. However, if you can see the quantity in the line items then the same should be displayed in the table.
Kind Regards // Shaubhik -
Report Painter: How to change the order of lines in selection screen
Dear Gurus on Report Painter,
how can I change the order of the lines (where the values for the variable selection of my cost center report are entered) in the selection screen of a report painter report? The Selection screen looks awful.
Is there also a possibility to add another description to each line of the selection screen?
Thank you very much for your advice.
Best regards TimoI am afraid you have much choice in choosing the order of the selection parameters. However, with the developer's access you may.
This is how!
Step 1: If it is a standard report, copy to your own report. and assign it to a report group. and execute.
Step 2: When you execute, and the selection appears, go to systems>status and here , copy the program name (it may look something like GP46LP6VEDORBSA2IHWYSR4TL58020)
Step3: Go to SE38 and enter the above derived program name with a view to re-arrange the line withing the program, with reference to selection parameters.
For example: I have a selection screen in the following order:
Controlling area
Fiscal Year
From period
To period
Plan version
Cost center group
Or value(s)
Cost element group
Or value(s)
The corresponding program that drives this order is in the program and would look like this,
SELECTION-SCREEN BEGIN OF BLOCK VALUE_SELECTION
WITH FRAME TITLE TEXT-003.
<b> PARAMETERS: $1KOKRE LIKE CCR1S-KOKRS .
PARAMETERS: %1KOKRE LIKE CCR1S-KOKRS MODIF ID IN4.</b>
<b><i> for controlling area</i></b>
PARAMETERS: $1GJAHR LIKE COSP-GJAHR .
PARAMETERS: %1GJAHR LIKE COSP-GJAHR MODIF ID IN4.
<b><i> for fiscal year</i></b>
PARAMETERS: $1PERIV LIKE COSP-PERBL .
PARAMETERS: %1PERIV LIKE COSP-PERBL MODIF ID IN4.
<b><i> for period from</i></b>
PARAMETERS: $1PERIB LIKE COSP-PERBL .
PARAMETERS: %1PERIB LIKE COSP-PERBL MODIF ID IN4.
<b><i> for period to</i></b>
etc.
PARAMETERS: $1VERP LIKE COSP-VERSN .
PARAMETERS: %1VERP LIKE COSP-VERSN MODIF ID IN4.
PARAMETERS: $1VALUTP LIKE CCR1S-VALUTYP MODIF ID IN4 .
PARAMETERS: %1VALUTP LIKE CCR1S-VALUTYP MODIF ID IN4.
SELECTION-SCREEN END OF BLOCK VALUE_SELECTION.
......... set variables ..............................................
SELECTION-SCREEN BEGIN OF BLOCK SET_SELECTION
WITH FRAME TITLE TEXT-004.
PARAMETERS: $1KOSET LIKE RKSB1-KSGRU.
PARAMETERS: %1KOSET LIKE RGSBS-SETNR MODIF ID IN5.
SELECT-OPTIONS _1KOSET FOR CCR1S-KOSTL .
PARAMETERS: $1KSTAR LIKE RKSB1-KAGRU.
PARAMETERS: %1KSTAR LIKE RGSBS-SETNR MODIF ID IN5.
SELECT-OPTIONS _1KSTAR FOR CCR1Z-KSTAR .
SELECTION-SCREEN END OF BLOCK SET_SELECTION.<i></i><b></b>
If you want fiscal year to appear first, you try just copying the coding relating to fiscal year just above the coding for Controlling area.
Extend the same logic for what you may want to get. -
Creation of Library and Report in Report Painter with Z tables.
HI,
When I am creating library in report painter with Z table it is giving the following error message 'Table ZCO_SEMI_FIN_VAL is not installed in Report Writer'.
Can u help me how u install Z table in report painter and create the characteristic and key figure of the Z table in the library.
Regards,
Partha BHi Partha Pratim Bhar,
In order to bring / enable a Z table for you to build a library, you will have to set it at transaction GRCT.
Here you need to configure - table (Z table) , characteristics and Key figures.
You can refer any other tables by SAP in GRCT for reference.
Revert if you require additional help.
Regards,
Subin John -
Profit center wise customer balance Report with reference field
Dear Experts
I am using the report S_AC0_52000887 - Receivables: Profit Center but it does not show with reference.
how can i see this report with reference. (e.g. reference field at the time of posting document) In the background of this report called by report painter and we can see the characteristics are there. I am not able to add the reference field in the characteristics. Can someone please give some insights.
Regards,
VishalHi Vishal,
Please use FAGLL03 give the customer recon a/c you can see all the customers with profit center wise report.
Regards,
Raman -
Customer Ageing - Report Painter
Hi,
Can any tell whether we can achieve the customized reports for the customer ageing (Txn: S_ALR_870121276) through report painter. If so can i get any help for the steps to be followed /material regarding this.
Regards,
Nagendra Prasad.JThis is one aging report.. have a look at it and see if its useful.
This displays cusomer and vendor aging report.
Award points if useful.
REPORT zgar_ic_custvend_aging NO STANDARD PAGE HEADING
LINE-SIZE 192
MESSAGE-ID zz
LINE-COUNT 65.
Data declaration *
TABLES: bsik, "Secondary Index for Vendors
t880, "Global Company Data
t001s, "Accounting Clerks
t001. "Company Codes
Internal table declaration. *
*Store data from vendor tables (BSIK, BSAK).
DATA: BEGIN OF g_t_venddata OCCURS 0,
bukrs LIKE bsak-bukrs, "Company code
lifnr LIKE bsak-lifnr, "Vendor number
gjahr LIKE bsak-gjahr, "Fiscal year
zuonr LIKE bsak-zuonr, "Assignment number
shkzg LIKE bsak-shkzg, "Debit/credit indicator
dmbtr LIKE bsak-dmbtr, "Amount in local currency
dmbe2 LIKE bsak-dmbe2, "Amount in global currency
belnr LIKE bsak-belnr, "Document number
augdt LIKE bsak-augdt, "Clearing date
augbl LIKE bsak-augbl, "Doc. no. of clearing document
budat LIKE bsak-budat, "Posting date
hkont LIKE bsak-hkont, "GL account
waers LIKE bsak-waers, "Currency key
xblnr LIKE bsak-xblnr, "Document number
acctp TYPE c, "Account type. D or K
name1 LIKE kna1-name1, "Comp nmae
END OF g_t_venddata.
*Store data from customer tables (BSID, BSAD).
DATA: BEGIN OF g_t_custdata OCCURS 0,
kunnr LIKE bsad-kunnr, "Customer Number
bukrs LIKE bsad-bukrs, "Company Code
gjahr LIKE bsad-gjahr, "Fiscal year
augdt LIKE bsad-augdt, "clearing date
zuonr LIKE bsad-zuonr, "Assignment number
belnr LIKE bsad-belnr, "acct doc no
name1 LIKE lfa1-name1, "name from cust master
budat LIKE bsad-budat, "posting date
bldat LIKE bsad-bldat, "document date
xblnr LIKE bsad-xblnr, "document number
shkzg LIKE bsad-shkzg, "debit/credit indicator
dmbtr LIKE bsad-dmbtr, "local currency
dmbe2 LIKE bsad-dmbe2, "Group currency
waers LIKE bsad-waers, "Currency key
hkont LIKE bsad-hkont, "GL account
acctp TYPE c, "Account type D/K
END OF g_t_custdata.
*Store data according to age category.
DATA: BEGIN OF g_t_maintab OCCURS 0,
bukrs LIKE bsad-bukrs, "Company Code
tpart(10) TYPE c, "Trading partner
acctp TYPE c, "Account type D/K
gjahr LIKE bsad-gjahr, "Fiscal year
augdt LIKE bsad-augdt, "clearing date
zuonr LIKE bsad-zuonr, "Assignment number
belnr LIKE bsad-belnr, "acct doc no
name1 LIKE lfa1-name1, "name from cust master
budat LIKE bsad-budat, "posting date
bldat LIKE bsad-bldat, "document date
xblnr LIKE bsad-xblnr, "document number
shkzg LIKE bsad-shkzg, "debit/credit indicator
dmbtr LIKE bsad-dmbtr, "local currency
hkont LIKE bsad-hkont, "GL account
bktxt LIKE bkpf-bktxt, "Document header text
butxt LIKE t001-butxt, "company name
waers LIKE bsad-waers, "Currency key
balamt TYPE dmbtr, "balance amount
amount1 TYPE dmbtr, "Amount for category 1
amount2 TYPE dmbtr, "Amount for category 2
amount3 TYPE dmbtr, "Amount for category 3
amount4 TYPE dmbtr, "Amount for category 4
END OF g_t_maintab.
*Store all the vendor numbers
DATA: BEGIN OF g_t_vend OCCURS 5000,
lifnr LIKE lfa1-lifnr,
name1 LIKE lfa1-name1,
END OF g_t_vend.
*Store all the customer numbers
DATA: BEGIN OF g_t_cust OCCURS 5000,
kunnr LIKE kna1-kunnr,
name1 LIKE kna1-name1,
END OF g_t_cust.
*Range to store trading partner numbers.
RANGES : r_tpart FOR lfa1-lifnr.
Variables to maintain open items count
DATA: g_open_items TYPE i,
g_open_items1 TYPE i,
g_open_items2 TYPE i,
g_open_items3 TYPE i,
g_open_items4 TYPE i.
*Header texts (For report header)
DATA: g_headertext1(50),
g_headertext2(16).
Selection screen declaration. *
SELECT-OPTIONS p_ccode FOR bsik-bukrs OBLIGATORY. "Company code
SELECT-OPTIONS p_tpartv FOR t880-rcomp. "Trading partner
SELECT-OPTIONS p_clerk FOR t001s-busab. "Accounting clerk
SELECT-OPTIONS p_pdate FOR sy-datum. "Posting date
PARAMETERS p_adate LIKE sy-datum DEFAULT sy-datum. "Age as of date
*GL Account codes
SELECT-OPTIONS p_glacc FOR bsik-hkont DEFAULT '48200000' TO '48299999'
OBLIGATORY.
*Data Column range (Age range)
SELECTION-SCREEN SKIP.
SELECTION-SCREEN BEGIN OF BLOCK age_range WITH FRAME TITLE text-001.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(20) text-002.
SELECTION-SCREEN POSITION 33.
PARAMETERS p_range1(4) TYPE c DEFAULT '30' OBLIGATORY.
SELECTION-SCREEN POSITION 43.
PARAMETERS p_range2(4) TYPE c DEFAULT '60' OBLIGATORY.
SELECTION-SCREEN POSITION 53.
PARAMETERS p_range3(4) TYPE c DEFAULT '90' OBLIGATORY.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK age_range.
*Reporting Currency
SELECTION-SCREEN SKIP.
SELECTION-SCREEN BEGIN OF BLOCK crr_sel WITH FRAME TITLE text-003.
PARAMETERS: p_local RADIOBUTTON GROUP cgrp DEFAULT 'X',
p_grpcrr RADIOBUTTON GROUP cgrp.
SELECTION-SCREEN END OF BLOCK crr_sel.
*Type of report
SELECTION-SCREEN SKIP.
SELECTION-SCREEN BEGIN OF BLOCK rep_sel WITH FRAME TITLE text-004.
PARAMETERS: p_detrep RADIOBUTTON GROUP rgrp DEFAULT 'X',
p_sumrep RADIOBUTTON GROUP rgrp.
SELECTION-SCREEN END OF BLOCK rep_sel.
Top-Of-Page *
TOP-OF-PAGE.
IF p_detrep = 'X'.
Write report header for detailed report.
PERFORM f8000_write_comp_header
USING g_t_maintab-bukrs
g_t_maintab-waers
g_t_maintab-butxt
text-t02
g_headertext1.
ELSE.
Write report header for summary report.
PERFORM f8000_write_comp_header
USING '0000'
g_t_maintab-waers
text-t05
g_headertext1
g_headertext2.
ENDIF.
*Eject
Line selection event *
AT LINE-SELECTION.
IF p_detrep = 'X'.
SET PARAMETER ID 'BLN' FIELD g_t_maintab-belnr.
SET PARAMETER ID 'BUK' FIELD g_t_maintab-bukrs.
SET PARAMETER ID 'GJR' FIELD g_t_maintab-gjahr.
IF NOT g_t_maintab-belnr IS INITIAL.
Call transaction FB03 to display line item details.
CALL TRANSACTION 'FB03' AND SKIP FIRST SCREEN.
ELSE.
MESSAGE e999 WITH text-e01.
ENDIF.
Clear belnr.
MOVE space TO g_t_maintab-belnr.
ENDIF.
*Eject
Main processing of program starts here *
START-OF-SELECTION.
Pad zeroes to the trading partner range to make it 10 chars
PERFORM f0100_prepare_tradingpartners.
Fetch data from customer and vendor tables.
PERFORM f1000_fetch_data.
Prepare data. Assign sign to amount, separate line items into 4 age
categories
PERFORM f2000_prepare_data.
End of selection.
END-OF-SELECTION.
Write reports
IF NOT g_t_maintab[] IS INITIAL.
IF p_detrep = 'X'.
PERFORM f4000_write_detailed_rep.
ELSE.
PERFORM f5000_write_summary_rep.
ENDIF.
ELSE.
MESSAGE i999 WITH text-e02 text-e03.
ENDIF.
*Eject
*& Form f0100_prepare_tradingpartners
Subroutine for preparing trading partner numbers. Pad extra
zeros to make trading partner field size 10.
FORM f0100_prepare_tradingpartners.
LOOP AT p_tpartv.
MOVE-CORRESPONDING p_tpartv TO r_tpart.
IF NOT r_tpart-low IS INITIAL.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input = r_tpart-low
IMPORTING
output = r_tpart-low.
ENDIF.
IF NOT r_tpart-high IS INITIAL.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input = r_tpart-high
IMPORTING
output = r_tpart-high.
ENDIF.
APPEND r_tpart.
ENDLOOP.
ENDFORM. " f0100_prepare_tradingpartners
*Eject
*& Form f1000_fetch_data
This subroutine is used to fetch data from customer (BSID and
BSAD) and vendor (BSIK and BSAK) tables.
FORM f1000_fetch_data.
*Get vendor data.
PERFORM f1100_fetch_vend_data.
*Get customer data.
PERFORM f1200_fetch_cust_data.
ENDFORM. " f1000_fetch_data
*Eject
*& Form f1100_fetch_vend_data
This subroutine is used to get data from BSIK and BSAK
tables. First all vendors are selected then all line items are
retrieved from BSIK and BSAK tables.
FORM f1100_fetch_vend_data.
PERFORM f9000_progress_indicator USING text-m01.
*Select all vendors.
SELECT h~lifnr
h~name1
INTO TABLE g_t_vend
FROM lfa1 AS h
JOIN lfb1 AS c
ON h~lifnr = c~lifnr
WHERE h~lifnr IN r_tpart
AND c~bukrs IN p_ccode
AND c~busab IN p_clerk.
IF NOT g_t_vend[] IS INITIAL.
PERFORM f9000_progress_indicator USING text-m01.
Select open line items.
SELECT bukrs "company
lifnr "vendor number
augdt "clearing date
augbl "docno for clearing doc
zuonr "allocation number
gjahr "fiscal year
belnr "acct doc no
buzei "line item within doc
budat "posting date
waers "Currency key
xblnr "document number
shkzg "debit, credit indicator
dmbtr "local currency
hkont "gl acct
dmbe2 "group currency
FROM bsik
INTO CORRESPONDING FIELDS OF TABLE g_t_venddata
FOR ALL ENTRIES IN g_t_vend
WHERE bukrs IN p_ccode "company code
AND lifnr = g_t_vend-lifnr "trading partner
AND budat IN p_pdate "Posting date
AND budat <= p_adate
AND hkont IN p_glacc "gl acct
PERFORM f9000_progress_indicator USING text-m04.
Select cleared line items.
SELECT bukrs "company
lifnr "vendor number
augdt "clearing date
augbl "docno for clearing doc
zuonr "allocation number
gjahr "fiscal year
belnr "acct doc no
buzei "line item within doc
budat "posting date
waers "Currency key
xblnr "document number
shkzg "debit, credit indicator
dmbtr "local currency
hkont "gl acct
dmbe2 "group currency
FROM bsak
APPENDING CORRESPONDING FIELDS OF TABLE g_t_venddata
FOR ALL ENTRIES IN g_t_vend
WHERE bukrs IN p_ccode "Company code
AND lifnr = g_t_vend-lifnr "Selected vendors
AND augdt > p_adate
AND budat IN p_pdate "Posting date
AND budat <= p_adate
AND hkont IN p_glacc "GL acct
ENDIF.
IF NOT g_t_venddata[] IS INITIAL.
*Set Account type flag for vendors -- 'K'.
SORT g_t_venddata BY bukrs lifnr.
SORT g_t_vend BY lifnr.
g_t_venddata-acctp = text-k01.
MODIFY g_t_venddata TRANSPORTING acctp WHERE acctp = ' '.
Add vendor names.
LOOP AT g_t_venddata WHERE name1 = ' '.
READ TABLE g_t_vend
WITH KEY lifnr = g_t_venddata-lifnr BINARY SEARCH.
IF sy-subrc = 0.
g_t_venddata-name1 = g_t_vend-name1.
MODIFY g_t_venddata TRANSPORTING name1 WHERE lifnr =
g_t_venddata-lifnr.
ENDIF.
ENDLOOP.
ENDIF.
ENDFORM. " f1100_fetch_vend_data
*Eject
*& Form f1200_fetch_cust_data
This function module is used to get data from BSID and BSAD
tables. First all customers are selected then all line items
are retrieved from BSIK and BSAK tables.
FORM f1200_fetch_cust_data.
PERFORM f9000_progress_indicator USING text-m06.
*Select all customers.
SELECT h~kunnr
h~name1
INTO TABLE g_t_cust
FROM kna1 AS h
JOIN knb1 AS c
ON h~kunnr = c~kunnr
WHERE h~kunnr IN r_tpart
AND c~bukrs IN p_ccode
AND c~busab IN p_clerk.
IF NOT g_t_cust[] IS INITIAL.
PERFORM f9000_progress_indicator USING text-m06.
*Fetch customer open items.
SELECT bukrs "company
kunnr "customer number
augdt "clearing date
augbl "docno for clearing doc
zuonr "allocation number
gjahr "fiscal year
belnr "acct doc no
buzei "line item within doc
budat "posting date
waers "Currency key
xblnr "document number
shkzg "debit, credit indicator
dmbtr "local currency
hkont "gl acct
dmbe2 "group currency
FROM bsid
INTO CORRESPONDING FIELDS OF TABLE g_t_custdata
FOR ALL ENTRIES IN g_t_cust
WHERE bukrs IN p_ccode "company code
AND kunnr = g_t_cust-kunnr "Selected customer
AND budat IN p_pdate "Posting date
AND budat <= p_adate
AND hkont IN p_glacc "GL acct
PERFORM f9000_progress_indicator USING text-m07.
Select Customer cleared line items.
SELECT bukrs "company
kunnr "customer number
augdt "clearing date
augbl "docno for clearing doc
zuonr "allocation number
gjahr "fiscal year
belnr "acct doc no
buzei "line item within doc
budat "posting date
waers "Currency key
xblnr "document number
shkzg "debit, credit indicator
dmbtr "local currency
hkont "gl acct
dmbe2 "group currency
FROM bsad
APPENDING CORRESPONDING FIELDS OF TABLE g_t_custdata
FOR ALL ENTRIES IN g_t_cust
WHERE bukrs IN p_ccode "company code
AND kunnr = g_t_cust-kunnr "Selected customer
AND augdt > p_adate
AND budat IN p_pdate "Posting date
AND budat <= p_adate
AND hkont IN p_glacc "GL acct
ENDIF.
IF NOT g_t_custdata[] IS INITIAL.
*Set account type for customers -- 'D'.
SORT g_t_custdata BY bukrs kunnr.
SORT g_t_cust BY kunnr.
g_t_custdata-acctp = text-d01.
MODIFY g_t_custdata TRANSPORTING acctp WHERE acctp = ' '.
Add customer names.
LOOP AT g_t_custdata WHERE name1 = ' '.
READ TABLE g_t_cust
WITH KEY kunnr = g_t_custdata-kunnr BINARY SEARCH.
IF sy-subrc = 0.
g_t_custdata-name1 = g_t_cust-name1.
MODIFY g_t_custdata TRANSPORTING name1 WHERE kunnr =
g_t_custdata-kunnr.
ENDIF.
ENDLOOP.
ENDIF.
ENDFORM. " f1200_fetch_cust_data
*Eject
*& Form f2000_Prepare_data
This function module is used to format data according to report
1. Fetch local or global amount value according to user
parametrs.
2. Sign is assigned to each amount
3. Line items are categorized according to the aging category
4. Populate document header text.
5. Populate company names.
FORM f2000_prepare_data.
DATA : l_amount TYPE dmbtr,
l_age_of_item TYPE p,
l_as_of_age TYPE d,
l_posting_date TYPE d,
l_time TYPE t,
l_count TYPE sy-tabix.
DATA: BEGIN OF l_t_doc_txt OCCURS 0,
bukrs TYPE bkpf-bukrs,
belnr TYPE bkpf-belnr,
bktxt LIKE bkpf-bktxt,
END OF l_t_doc_txt.
DATA: BEGIN OF l_t_curr_txt OCCURS 0,
bukrs LIKE t001-bukrs,
waers LIKE t001-waers,
butxt LIKE t001-butxt,
END OF l_t_curr_txt.
PERFORM f9000_progress_indicator USING text-m03.
l_as_of_age = p_adate.
MOVE text-t01 TO l_time.
*Prepare G_T_MAINTAB, 1. Populate vendor data.
LOOP AT g_t_venddata.
CLEAR: g_t_maintab, l_amount, l_age_of_item, l_posting_date.
MOVE-CORRESPONDING g_t_venddata TO g_t_maintab.
g_t_maintab-tpart = g_t_venddata-lifnr.
Check for currency selected by the user.
IF p_local = 'X'.
l_amount = g_t_venddata-dmbtr.
ELSE.
l_amount = g_t_venddata-dmbe2.
ENDIF.
Check for type of transaction. Debit or Credit.
IF g_t_venddata-shkzg = 'H'.
l_amount = l_amount * -1.
ENDIF.
MOVE g_t_venddata-budat TO l_posting_date.
Assign amount value to appropriate aging category.
Calculate age of line item
CALL FUNCTION '/SDF/CMO_DATETIME_DIFFERENCE'
EXPORTING
date1 = l_posting_date
time1 = l_time
date2 = l_as_of_age
time2 = l_time
IMPORTING
datediff = l_age_of_item
EXCEPTIONS
invalid_datetime = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
IF l_age_of_item <= p_range1. "Range1
g_t_maintab-amount1 = l_amount.
ELSE.
IF l_age_of_item > p_range1 AND l_age_of_item <= p_range2."Range2
g_t_maintab-amount2 = l_amount.
ELSE.
IF l_age_of_item > p_range2
AND l_age_of_item <= p_range3. "Range3
g_t_maintab-amount3 = l_amount.
ELSE. "Range4
g_t_maintab-amount4 = l_amount.
ENDIF.
ENDIF.
ENDIF.
Assign balance amounts.
g_t_maintab-balamt = l_amount.
Add record to main internal table
APPEND g_t_maintab.
ENDLOOP.
*Prepare G_T_MAINTAB, 2. Populate customer data.
LOOP AT g_t_custdata.
CLEAR: g_t_maintab, l_amount, l_age_of_item, l_posting_date.
MOVE-CORRESPONDING g_t_custdata TO g_t_maintab.
g_t_maintab-tpart = g_t_custdata-kunnr.
Check for currency selected by the user.
IF p_local = 'X'.
l_amount = g_t_custdata-dmbtr.
ELSE.
l_amount = g_t_custdata-dmbe2.
ENDIF.
Check for type of transaction. Debit or Credit.
IF g_t_custdata-shkzg = 'H'.
l_amount = l_amount * -1.
ENDIF.
MOVE g_t_custdata-budat TO l_posting_date.
Assign amount value to appropriate aging category.
Calculate age of line item
CALL FUNCTION '/SDF/CMO_DATETIME_DIFFERENCE'
EXPORTING
date1 = l_posting_date
time1 = l_time
date2 = l_as_of_age
time2 = l_time
IMPORTING
datediff = l_age_of_item
EXCEPTIONS
invalid_datetime = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
IF l_age_of_item <= p_range1. "Range1
g_t_maintab-amount1 = l_amount.
ELSE.
IF l_age_of_item > p_range1 AND l_age_of_item <= p_range2."Range2
g_t_maintab-amount2 = l_amount.
ELSE.
IF l_age_of_item > p_range2
AND l_age_of_item <= p_range3. "Range3
g_t_maintab-amount3 = l_amount.
ELSE. "Range4
g_t_maintab-amount4 = l_amount.
ENDIF.
ENDIF.
ENDIF.
Assign balance amounts.
g_t_maintab-balamt = l_amount.
APPEND g_t_maintab.
ENDLOOP.
IF NOT g_t_maintab[] IS INITIAL.
SORT g_t_maintab BY bukrs belnr.
SELECT bukrs belnr bktxt FROM bkpf
INTO CORRESPONDING FIELDS OF TABLE l_t_doc_txt
FOR ALL ENTRIES IN g_t_maintab
WHERE bukrs = g_t_maintab-bukrs AND
belnr = g_t_maintab-belnr AND
gjahr = g_t_maintab-gjahr.
SELECT bukrs butxt waers FROM t001
INTO CORRESPONDING FIELDS OF TABLE l_t_curr_txt
WHERE bukrs IN p_ccode.
SORT l_t_doc_txt BY bukrs belnr.
SORT l_t_curr_txt BY bukrs.
Add Document header texts
LOOP AT g_t_maintab.
l_count = sy-tabix.
READ TABLE l_t_doc_txt
WITH KEY bukrs = g_t_maintab-bukrs belnr = g_t_maintab-belnr
BINARY SEARCH.
IF sy-subrc = 0.
g_t_maintab-bktxt = l_t_doc_txt-bktxt.
MODIFY g_t_maintab INDEX l_count TRANSPORTING bktxt.
ENDIF.
CLEAR l_t_doc_txt-bktxt.
ENDLOOP.
PERFORM f9000_progress_indicator USING text-m03.
Update company name and currency field.
LOOP AT g_t_maintab WHERE butxt = ' ' OR waers = ' '.
READ TABLE l_t_curr_txt
WITH KEY bukrs = g_t_maintab-bukrs BINARY SEARCH.
IF sy-subrc = 0.
g_t_maintab-butxt = l_t_curr_txt-butxt.
g_t_maintab-waers = l_t_curr_txt-waers.
MODIFY g_t_maintab TRANSPORTING butxt waers
WHERE bukrs = g_t_maintab-bukrs.
ENDIF.
CLEAR: l_t_curr_txt-butxt, l_t_curr_txt-waers.
ENDLOOP.
ENDIF. "IF NOT g_t_maintab[] IS INITIAL
ENDFORM. " f2000_Prepare_data
*Eject
*& Form f4000_write_detailed_rep
This subroutine is used to write detailed report.
FORM f4000_write_detailed_rep.
DATA l_t_maintab LIKE g_t_maintab.
Variables for summary amount of each account type of a trading pair
DATA: l_tpart_acc1 TYPE dmbtr,
l_tpart_acc2 TYPE dmbtr,
l_tpart_acc3 TYPE dmbtr,
l_tpart_acc4 TYPE dmbtr,
l_tpart_acc_bal TYPE dmbtr.
Variables for summary amount of each trading pair
DATA: l_tpart1 TYPE dmbtr,
l_tpart2 TYPE dmbtr,
l_tpart3 TYPE dmbtr,
l_tpart4 TYPE dmbtr,
l_tpart_bal TYPE dmbtr.
SET TITLEBAR 'DETAILED_REPORT'.
Prepare header texts for report header.
CONCATENATE p_adate4(2) '/' p_adate6(2) '/' p_adate+0(4) INTO
g_headertext1.
CONCATENATE text-h20 g_headertext1
INTO g_headertext1 SEPARATED BY space.
SORT g_t_maintab BY bukrs tpart acctp.
*Start detailed report.
FORMAT INTENSIFIED OFF.
LOOP AT g_t_maintab.
l_t_maintab = g_t_maintab.
*At new company code write page header
AT NEW bukrs.
g_t_maintab = l_t_maintab.
NEW-PAGE.
ENDAT.
*Write line item records.
WRITE:/2 l_t_maintab-tpart, "Trading partner
14 l_t_maintab-acctp, "Account type
17 l_t_maintab-belnr, "Document number
35 l_t_maintab-budat, "posting date
47 l_t_maintab-xblnr, "Reference doc. number
65 l_t_maintab-bktxt, "Doc header text.
92 l_t_maintab-balamt, "balance amount
114 l_t_maintab-amount1, "Amount cat 1
136 l_t_maintab-amount2, "Amount cat 2
158 l_t_maintab-amount3, "Amount cat 3
180 l_t_maintab-amount4. "Amount cat 4
g_t_maintab-bukrs = l_t_maintab-bukrs.
g_t_maintab-gjahr = l_t_maintab-gjahr.
g_t_maintab-belnr = l_t_maintab-belnr.
Hide values so that these can be used on line selection event.
HIDE: g_t_maintab-bukrs, g_t_maintab-gjahr, g_t_maintab-belnr.
Calculate amounts for account summary.
l_tpart_acc1 = l_tpart_acc1 + l_t_maintab-amount1.
l_tpart_acc2 = l_tpart_acc2 + l_t_maintab-amount2.
l_tpart_acc3 = l_tpart_acc3 + l_t_maintab-amount3.
l_tpart_acc4 = l_tpart_acc4 + l_t_maintab-amount4.
l_tpart_acc_bal = l_tpart_acc_bal + l_t_maintab-balamt.
Calculate amounts for trading partner summary.
l_tpart1 = l_tpart1 + l_t_maintab-amount1.
l_tpart2 = l_tpart2 + l_t_maintab-amount2.
l_tpart3 = l_tpart3 + l_t_maintab-amount3.
l_tpart4 = l_tpart4 + l_t_maintab-amount4.
l_tpart_bal = l_tpart_bal + l_t_maintab-balamt.
*At end of one account type write summary for account type.
AT END OF acctp.
g_t_maintab = l_t_maintab.
PERFORM f8100_write_acctype_summary
USING l_tpart_acc1 l_tpart_acc2 l_tpart_acc3 l_tpart_acc4
l_tpart_acc_bal l_t_maintab-acctp l_t_maintab-tpart
l_t_maintab-name1.
CLEAR: l_tpart_acc1, l_tpart_acc2, l_tpart_acc3, l_tpart_acc4,
l_tpart_acc_bal.
ENDAT.
At end of trading pair, write trading partner summary.
AT END OF tpart.
g_t_maintab = l_t_maintab.
PERFORM f8200_write_tradingpair_summar
USING l_tpart1 l_tpart2 l_tpart3 l_tpart4 l_tpart_bal
l_t_maintab-tpart l_t_maintab-name1.
CLEAR: l_tpart1, l_tpart2, l_tpart3, l_tpart4, l_tpart_bal.
ENDAT.
ENDLOOP.
ENDFORM. " f4000_write_detailed_rep
*Eject
*& Form f5000_write_summary_rep
Subroutine to write summary report.
FORM f5000_write_summary_rep.
*Counters for trading partner
DATA: l_count_tpart TYPE i, "Counter for trading pairs.
l_count_tpart1 TYPE i, "Trading partner in age cat 1
l_count_tpart2 TYPE i, "Trading partner in age cat 2
l_count_tpart3 TYPE i, "Trading partner in age cat 3
l_count_tpart4 TYPE i. "Trading partner in age cat 4
Flag for trading partner count.
DATA: l_flag_tpart1 TYPE c, "Flag for Trading partner in age cat 1
l_flag_tpart2 TYPE c, "Flag for Trading partner in age cat 2
l_flag_tpart3 TYPE c, "Flag for Trading partner in age cat 3
l_flag_tpart4 TYPE c. "Flag for Trading partner in age cat 4
Variables to store sum of all line items for a company code.
DATA: l_comp_amt_bal TYPE dmbtr,
l_comp_amt1 TYPE dmbtr,
l_comp_amt2 TYPE dmbtr,
l_comp_amt3 TYPE dmbtr,
l_comp_amt4 TYPE dmbtr.
Internal table to store sum of amounts for all the companies selected.
DATA: BEGIN OF l_t_compall_amt OCCURS 0,
waers LIKE bsad-waers, "Currency key
balamt TYPE dmbtr, "Total balance amount
amount1 TYPE dmbtr, "Amount for category 1
amount2 TYPE dmbtr, "Amount for category 2
amount3 TYPE dmbtr, "Amount for category 3
amount4 TYPE dmbtr, "Amount for category 4
END OF l_t_compall_amt.
DATA: l_tpart_amt_bal TYPE dmbtr,
l_tpart_amt1 TYPE dmbtr,
l_tpart_amt2 TYPE dmbtr,
l_tpart_amt3 TYPE dmbtr,
l_tpart_amt4 TYPE dmbtr.
DATA l_currtxt(11).
DATA l_t_maintab LIKE g_t_maintab.
Prepare header texts for report header.
CONCATENATE p_adate4(2) '/' p_adate6(2) '/' p_adate+0(4) INTO
g_headertext2.
CONCATENATE text-t04 p_glacc-low text-h06 p_glacc-high
INTO g_headertext1 SEPARATED BY space.
CONCATENATE text-t03 g_headertext2 INTO g_headertext2 SEPARATED BY
space.
SET TITLEBAR 'SUMMARY_REPORT'.
SORT g_t_maintab BY bukrs tpart acctp.
DESCRIBE TABLE g_t_maintab LINES l_count_tpart. "***
FORMAT INTENSIFIED OFF.
CLEAR: l_flag_tpart1, l_flag_tpart2, l_flag_tpart3, l_flag_tpart4.
CLEAR: l_tpart_amt_bal,
l_tpart_amt1,
l_tpart_amt2,
l_tpart_amt3,
l_tpart_amt4.
CLEAR: l_comp_amt_bal,
l_comp_amt1,
l_comp_amt2,
l_comp_amt3,
l_comp_amt4.
Write summary report.
LOOP AT g_t_maintab.
l_t_maintab = g_t_maintab.
Maintain open items count
g_open_items = g_open_items + 1.
IF l_t_maintab-amount1 <> 0.
g_open_items1 = g_open_items1 + 1.
ELSEIF l_t_maintab-amount2 <> 0.
g_open_items2 = g_open_items2 + 1.
ELSEIF l_t_maintab-amount3 <> 0.
g_open_items3 = g_open_items3 + 1.
ELSEIF l_t_maintab-amount4 <> 0.
g_open_items4 = g_open_items4 + 1.
ENDIF.
*Calculate amounts for trading partners and maintain trading partner
*count.
l_tpart_amt_bal = l_tpart_amt_bal + l_t_maintab-balamt.
IF g_t_maintab-amount1 <> 0.
l_tpart_amt1 = l_tpart_amt1 + l_t_maintab-amount1.
Increase count according to flag.
IF l_flag_tpart1 IS INITIAL.
l_count_tpart1 = l_count_tpart1 + 1.
l_flag_tpart1 = 'X'.
ENDIF.
ELSEIF g_t_maintab-amount2 <> 0.
l_tpart_amt2 = l_tpart_amt2 + l_t_maintab-amount2.
Increase count according to flag.
IF l_flag_tpart2 IS INITIAL.
l_count_tpart2 = l_count_tpart2 + 1.
l_flag_tpart2 = 'X'.
ENDIF.
ELSEIF g_t_maintab-amount3 <> 0.
l_tpart_amt3 = l_tpart_amt3 + l_t_maintab-amount3.
Increase count according to flag.
IF l_flag_tpart3 IS INITIAL.
l_count_tpart3 = l_count_tpart3 + 1.
l_flag_tpart3 = 'X'.
ENDIF.
ELSEIF g_t_maintab-amount4 <> 0.
l_tpart_amt4 = l_tpart_amt4 + l_t_maintab-amount4.
Increase count according to flag.
IF l_flag_tpart4 IS INITIAL.
l_count_tpart4 = l_count_tpart4 + 1.
l_flag_tpart4 = 'X'.
ENDIF.
ENDIF. "g_t_maintab-amount1 <> 0
Calculate total of amount for all companies
Separate totals into different rows for different local currency.
IF p_local = 'X'.
READ TABLE l_t_compall_amt WITH KEY waers = l_t_maintab-waers.
ELSE.
READ TABLE l_t_compall_amt INDEX 1.
ENDIF.
IF sy-subrc = 0.
l_t_compall_amt-balamt = l_t_compall_amt-balamt +
l_t_maintab-balamt.
l_t_compall_amt-amount1 = l_t_compall_amt-amount1 +
l_t_maintab-amount1.
l_t_compall_amt-amount2 = l_t_compall_amt-amount2 +
l_t_maintab-amount2.
l_t_compall_amt-amount3 = l_t_compall_amt-amount3 +
l_t_maintab-amount3.
l_t_compall_amt-amount4 = l_t_compall_amt-amount4 +
l_t_maintab-amount4.
MODIFY l_t_compall_amt FROM l_t_compall_amt INDEX sy-tabix.
ELSE.
MOVE-CORRESPONDING l_t_maintab TO l_t_compall_amt.
IF NOT p_local = 'X'.
MOVE 'GRP' TO l_t_maintab-waers.
ENDIF.
APPEND l_t_compall_amt.
ENDIF.
Calculate total amount for current company.
l_comp_amt_bal = l_comp_amt_bal + l_t_maintab-balamt.
l_comp_amt1 = l_comp_amt1 + l_t_maintab-amount1.
l_comp_amt2 = l_comp_amt2 + l_t_maintab-amount2.
l_comp_amt3 = l_comp_amt3 + l_t_maintab-amount3.
l_comp_amt4 = l_comp_amt4 + l_t_maintab-amount4.
IF p_local = 'X'.
CONCATENATE text-h04 l_t_maintab-waers
INTO l_currtxt SEPARATED BY space.
ELSE.
MOVE text-h05 TO l_currtxt.
ENDIF.
Write subtotal for each trading partner.
AT END OF tpart.
l_count_tpart = l_count_tpart + 1.
Write the summary lines
WRITE:/2 l_t_maintab-bukrs,
10 l_t_maintab-tpart,
42 l_tpart_amt_bal,
64 l_currtxt,
87 l_tpart_amt1,
109 l_tpart_amt2,
131 l_tpart_amt3,
153 l_tpart_amt4.
CLEAR: l_tpart_amt_bal,
l_tpart_amt1,
l_tpart_amt2,
l_tpart_amt3,
l_tpart_amt4.
CLEAR: l_flag_tpart1, l_flag_tpart2, l_flag_tpart3, l_flag_tpart4.
ENDAT.
Write subtotal for each company code.
AT END OF bukrs.
PERFORM f8300_write_comp_summ USING l_comp_amt_bal
l_comp_amt1
l_comp_amt2
l_comp_amt3
l_comp_amt4
l_t_maintab-bukrs
l_t_maintab-butxt
l_t_maintab-waers.
CLEAR: l_comp_amt_bal,
l_comp_amt1,
l_comp_amt2,
l_comp_amt3,
l_comp_amt4.
ENDAT.
ENDLOOP.
-
Debit/Credit Shift not working with report painter
Dears,
We have defined debit/credit shift while defining financial
statement version. This functionality working well with F.01 however its not
working with report painter results. any help will be highly appreciated
Regards,
FRHi Dave,
I have gone back to the books (JP Terry's "Creating Dynamic Forms with Adobe LiveCycle Designer") and think we can improve on things...
var oFields = xfa.resolveNodes("ViolationsText[*].DebitVal"); // looks to resolve the repeating rows (I think)
var nNodesLength = oFields.length; // assigns the number of rows to a variable
var sumTotal = 0; // this is a temporary holding variable for the total, during the loop
for (var i = 0; i < nNodesLength; i++) // this loops through as previous example
if (oFields.ViolationsText[i].resolveNode("DebitVal").rawValue == "C")
sumTotal = "";
i = nNodesLength; // stops the loop
else
sumTotal += oFields.ViolationsText[i].resolveNode("DebitVal").rawValue;
this.rawValue = sumTotal;
This would go in the calculate event of your Total Debit Points field. I would be amazed if it worked first time. I haven't run through LC. Give it a lash!! (a try!!)
Good luck,
Niall -
Report Painter - What is value type 10 Statistical Plan
One of my customers is running report 6o00-001 Orders: Actual / Plan / Variance. This report is displaying a plan value when, they say, no plan value has been entered. I have checked normal planning and this is correct - there is no plan value. However, when I check the report painter definition, the column in question will display value type 1 (Plan) and value type 10 (Statistical Plan).
Can anyone tell me:
- what is a statistical plan on an order?
- how can I remove the statistical plan value?
Many thanks in advance.Hi Szymon
Thanks for your answer.
But checking the correction constructions the code do reference to the operation RKP5 and the posting are being recording with operation RKP1.
I'm checking for a similar note but with this operation but I can't find it.
Do you know if it is something like that?
Regards
This is like the record looks in the table COSP.
Client
130
MANDT
130
Ledger
0
LEDNR
00
Object number
OR000000760636
OBJNR
OR000000760636
Fiscal Year
2014
GJAHR
2014
Value Type
10
WRTTP
10
Version
1
VERSN
001
Cost Element
56650101
KSTAR
0056650101
CO subkey
HRKFT
Business Transaction
RKP1
VRGNG
RKP1
Trading Partner
VBUND
Trading Part.BA
PARGB
Dr/Cr indicator
D
BEKNZ
S
Transaction Currency
BRL
TWAER
BRL
Period block
016
PERBL
016
Unit of Measure
MEINH
* modification to post revenues - Note 604092 if coeja-wrttp = '10' and uf-activ = 'RKP5'. elseif coeja-wrttp ge '01' and coeja-wrttp le '04'. else. continue. endif. * end modification to post revenues - Note 604092
Code in correction instruction.
* modification to post revenues - Note 604092 if coeja-wrttp = '10' and uf-activ = 'RKP5'. elseif coeja-wrttp ge '01' and coeja-wrttp le '04'. else. continue. endif. * end modification to post revenues - Note 604092 -
How to translate Report Painter Reports (GRRT or other solution)?
Hello All,
We need to translate Report Painter Reports, and it doesn't seem that it can be done using SE63.
The transaction, <b>GRRT, Report Painter->Translate Reports</b>, may be the one to use, but we cannot find any documentation on this transaction. (not even on sap.help.com). The only translation references we could find for Report Painter were regarding translating currency. We need to translate the text content into different languages.
Can you provide any information or links to material about GRRT? Or do you know of an alternate solution to translate Report Painter report content?
Thanks in advance for your help.
Regards,
LisaHi All,
I recommend that you use transaction SE63. This enables you to translate what you need:
1) Selection texts for reports: SE63 -> Translation -> Short Texts -> ABAP -> Program texts -> Enter program name, source and target language and choose Edit.
2) Report Writer texts (what you have been using the G* transactions for): SE63 -> Translation -> Long Texts -> SAPscript -> Report Writer -> Enter name of library, source and target language and choose Edit. You can find documentation on transaction SE63 by choosing Help -> Application Help while you are working in this transaction. The section on Transport Recording also contains information on how to transport translations.
Best wishes,
If you have further queries, you may reach me over
Dr. Ravi Surya Subrahmanyam, PhD Finance,
SAP FICO Consultant,
Answerthink (India) Limited
Hyderabad, India
Phone :91 9848550024
Email : [email protected] -
Dear All,
I am creating a form to be used in report painter with the following:
Transaction Code : FSI4 / FGI4
Library : Financial Statement Key figures / Reporting for Table FAGLFLEXT
In case of both the libraries mentioned above, we get figures based on FS items.
However, my report includes values based on GL balances as well as transaction level.
My first requirement is getting satisfied. But how do I bring in values at the transaction level in these two transaction codes and the reference libraries.
Can Anyone Please Help.In repotr writter or painter you will not get the transaction details as you are looking.
what you get is the total movements i.e. total debits and total credits in the report.
You need to use formulas and special cell processings by selecting the required cell.
You also need to design your Financial statement version exhaustively so that you can get the GL level data.
reward points if useful.
sarma
Maybe you are looking for
-
FireSIGHT Management Virtual Machine download
Recently purchased an ASA 5512-x with FirePOWER services. I am having trouble downloading the FireSIGHT management virtual machine because it says that I need additional licensing requirements to do so. I have tried registering the Control License
-
Mountain Lion will not load on my mac pro with 10.7.4.
I purchased and tried to download Mountain Lion to my mac pro and it will not down load. Once I press download it does nothing. I have already been billed for it. My mac pro notebook is less than a year old opperating 10.7.4 Lion. Any ideas?
-
Vedrsioncue.dll Module Could Not Be Found
I have been running Adobe "eLearning Suite" for over a year and have in the past week encountrered "Specified Module could not be found C:Program Files\Common Files\Adobe\Adobe cs4\Client\4.01\versioncue.dll Running 64 bit in Windows 7 -- Error messa
-
Can imovie11 use plugins?, and if so where is a good place to get them?
i just got imovie'11 and was dissapointed that there was not a lot of effects. Is there more but i have to click somewhere? Also can '11 use plugins, and if so where is a goow website that i could find some?
-
IM notifications not working SCOM 2012 R2
Hi, We are using SCOM 2012 R2 and we are trying to send alerts notifications through IM Channel (Server = Lync 2010, Client - Lync 2013), but nothing is happening. Alerts are generated and notifications are sent by Email Channel, but not by IM Channe