Report for Stats like DB20.....
Hi,
We have Oracle 10.2 on Solaris.
Is there any report by SAP or alogorithm at SQL level which can tell me the daviation for all the table stats like it is shown in DB20 trasnaction for one table at a time.
I can write SQL if somebody can tell me the table names. I did some tracing in ST05 to find out the tables names but no major success.
Any help will be greately appreciated.
Regards,
SC
The information is available in the oracle views dba_tables and dba_tab_modifications.
Example, num_rows is the stat for the number of rows:
SQL> select num_rows from dba_tables where table_name = 'USR02';
NUM_ROWS
168
SQL> select count(*) from sapr3.usr02;
COUNT(*)
169
Cheers Michael
Similar Messages
-
AP Line-Item Report for State Auditors
Dear Members,
I am preparing one Report named AP Line-Item Report for State Auditors and i need the following fields in my report.
Check Number PAYR-CHECT
Voucher Number BSEG-BELNR
Check Date PAYR-ZALDT
Voucher Date BKPF-BUDAT
Vendor Number LFA1-LIFNR
Vendor Name ADRC-NAME1
Vendor Street Address ADRC-STREET
Vendor City ADRC-CITY1
Vendor State ADRC-REGIO
Vendor Zip Code ADRC-POST_CODE1
General Ledger Acct No BSEG-HKONT
Purchase Order Number BSEG-EBELN
Tax Status Code BSEG-MWSKZ
Taxable Amount BSEG-HWBAS
Exempt Amount BSEG-MWSTS
Tax BSEG-MWSTS
Tax Accrued BSEG-MWSTS
Total Invoice BSEG-DMBTR
I am new to FI.So I request some one please let me know which datasources contain the above fields and which CUBE is best suited for this.
Thanks in Advance for help and quick reply is much much appreciated.
Best Regards
RC0VENDOR_ATTR - Vendor Master Data Attributes
0FI_AP_51 - Check Register Line Items
0FI_AP_4 - Accounts Payable Line Items
It should be noted, however, that this won't get you everything that you need, so you may have to create enhance one or more of these DataSources and create User Exit ABAP code to get the required data. Also, the 0FI_AP_51 DataSource isn't available if your source system isn't ECC6 EHP3 or higher. If your source system is less than that, you're going to have to create a generic DataSource for the data from the PAYR table. -
How to pass parameter to a report for Operator 'LIKE'
I need to pass a parameter to a report for "LIKE" operator. the parameter for "equal to or is in" operator is 'eq':
'https://secure-ausomxfts.crmondemand.com/OnDemand/user/analytics/saw.dll?Go&Path=/shared/Company_AFTA-D78SR_Shared_Folder/Work Order Asset Lookup&Options=r&Action=Navigate&P0=2&P1=eq&P2=Account.TEXT_61&P3=&p4=
What would 'p1' value for 'LIKE' operator?
ThanksHi, Hope the below helps
neq - Not equal to or not in
lt - Less than
gt - Greater than
ge - Greater than or equal to
le - Less than or equal to
bwith - Begins with
ewith - Ends with
cany - Contains any (of the values in &P3)
call - Contains all (of the values in &P3)
like - Is like (Type %25 rather than the % wildcard)
top - In the top n (&P3 contains 1+n, where n is the number of top items)
bottom - In the bottom n (&P3 contains 1+n, where n is the number of bottom
items)
bet - Between (&P3 must have two values)
null - Is null (&P3 must be 0 or omitted)
nnul - Is not null (&P3 must be 0 or omitted)
Venky CRMIT -
Automating a report for non-Crystal Reports users
Post Author: dmdouglas
CA Forum: Formula
I using version 8.5. Several people I generate a specific report for would like to be able to run it themselves rather than ask me to run it for them. As they are not Crystal Report users, is there a command that will ask the user to input information that will be used to generate a report for a specific month when they run the report, rather than having to go into the select criteria to put in the date they want? For example, if they wanted a report for March, they would just have to answer a prompt like "What month?" and the program would put their response in a variable to calculate the period desired for the report.Post Author: V361
CA Forum: Formula
Not sure for 8.5, but in later release's you add a parameter, the parameter does the prompting "Sort of", then you set the select statement to use the parameter. Parameters will have ? as part of the field name. ie...
= { ?Date_Parameter} -
Document regarding bw implementation for industries lik electricity genara
hi
Iam working on scm-cpm area. I need ur help on any documentation or reports for industries like electricity genarating authority or utilities.
This is very urgent, So please respond as soon as possible.
ormail me at :-- [email protected]
regards
balaji.pCheck if this can help you:
http://help.sap.com/saphelp_nw04/helpdata/en/59/bc833b98bbd10ee10000000a11402f/frameset.htm
Regards -
hi guy's,
i am doing report for the stock statement .... my issue is in MB5B if i reverse some document it shows as it move's to issue QTY and my receipt is same but my closing stock is correct ...is there any std report avalible ....
thank's in advanceUse this code :
TABLES : MSEG,MKPF,MARA,MAKT,BEWART,MSLB,BSIM.
TYPE-POOLS : SLIS.
DATA : IT_FLDCAT TYPE SLIS_T_FIELDCAT_ALV,
IT_LIST_HEADER TYPE SLIS_T_LISTHEADER,
IT_EVENTS TYPE SLIS_T_EVENT,
GS_LAYOUT TYPE SLIS_LAYOUT_ALV,
WA_SORT TYPE SLIS_SORTINFO_ALV,
IT_SORT TYPE SLIS_T_SORTINFO_ALV,
REPID LIKE SY-REPID,
FRM_DATE(10),TO_DATE(10),
DISPTEXT(255),DISPTEXT2(255).
TYPES : BEGIN OF ST_OPBAL,
MATNR LIKE MSEG-MATNR,
MAKTX LIKE MAKT-MAKTX,
BATCH LIKE MSEG-CHARG,
BWART LIKE MSEG-BWART,
MENGE LIKE MSEG-MENGE,
ZEILE LIKE MSEG-ZEILE,
WERKS LIKE MSEG-WERKS,
SOBKZ LIKE MSEG-SOBKZ,
BUDAT LIKE MKPF-BUDAT,
SHKZG LIKE MSEG-SHKZG,
DMBTR LIKE MSEG-DMBTR,
MBLNR LIKE MSEG-MBLNR,
LGORT LIKE MSEG-LGORT,
END OF ST_OPBAL.
DATA : OPBAL TYPE ST_OPBAL OCCURS 0 WITH HEADER LINE,
TMP_OPBAL TYPE ST_OPBAL OCCURS 0 WITH HEADER LINE.
DATA : BEGIN OF BAL_NOREF OCCURS 0,
MATNR LIKE MARA-MATNR,
SHKZG LIKE MSEG-SHKZG,
DMBTR LIKE MSEG-DMBTR,
END OF BAL_NOREF.
DATA : BEGIN OF OPBAL2 OCCURS 0,
SNO(3) TYPE N,
MATNR LIKE MSEG-MATNR,
MAKTX LIKE MAKT-MAKTX,
OP_BAL LIKE MSEG-MENGE,
OP_STKVAL LIKE MSEG-DMBTR, "NEW
REC LIKE MSEG-MENGE,
T_OPBAL_REC LIKE MSEG-MENGE,
REC_STKVAL LIKE MSEG-DMBTR, "NEW
ISS LIKE MSEG-MENGE,
ISS_STKVAL LIKE MSEG-DMBTR, "NEW
SALES LIKE MSEG-MENGE,
T_ISS LIKE MSEG-MENGE,
CL_BAL LIKE MSEG-MENGE,
BATCH LIKE MSEG-CHARG,
SUBCON LIKE MSEG-MENGE,
CL_STKVAL LIKE MSEG-DMBTR,
END OF OPBAL2.
DATA SERNO(4) TYPE C.
DATA OPTOT TYPE P DECIMALS 3.
DATA RECTOT TYPE P DECIMALS 3.
DATA ISSTOT TYPE P DECIMALS 3.
DATA TOTALL TYPE P DECIMALS 3.
DATA FLG TYPE N.
DATA FLAG TYPE N.
DATA STOCKVAL TYPE MSEG-DMBTR.
DATA REC_STOCKVAL TYPE MSEG-DMBTR.
DATA ISS_STOCKVAL TYPE MSEG-DMBTR.
DATA CL_STKVAL TYPE MSEG-DMBTR.
SELECTION-SCREEN BEGIN OF BLOCK X WITH FRAME.
SELECT-OPTIONS: P_MATNR FOR MSEG-MATNR,
P_MGRP FOR MARA-MATKL,
P_DATE FOR MKPF-BUDAT,
P_PLANT FOR MSEG-WERKS DEFAULT 'NB01' OBLIGATORY NO INTERVALS
NO-EXTENSION .
SELECT-OPTIONS: P_STLOC FOR MSEG-LGORT NO INTERVALS NO-EXTENSION.
SELECTION-SCREEN END OF BLOCK X.
INITIALIZATION.
REPID = SY-REPID.
PERFORM FILL_FLDCAT USING IT_FLDCAT.
PERFORM FILL_EVENTS USING IT_EVENTS.
PERFORM FILL_LAYOUT USING GS_LAYOUT.
START-OF-SELECTION.
CONCATENATE P_DATE-LOW6(2) '.' P_DATE-LOW4(2) '.' P_DATE-LOW+0(4)
INTO FRM_DATE.
CONCATENATE P_DATE-HIGH6(2) '.' P_DATE-HIGH4(2) '.' P_DATE-HIGH+0(4)
INTO TO_DATE.
CONCATENATE TEXT-003 FRM_DATE' TO : ' TO_DATE INTO DISPTEXT.
CONCATENATE TEXT-004 P_PLANT-LOW ' Storage Location : ' P_STLOC-LOW
INTO DISPTEXT2.
PERFORM FILL_HEADER USING IT_LIST_HEADER.
SELECT A~MATNR
F~MAKTX
A~CHARG
A~BWART
A~MENGE
A~ZEILE
A~WERKS
A~SOBKZ
D~BUDAT
A~SHKZG
A~DMBTR
A~MBLNR
A~LGORT
INTO TABLE OPBAL
FROM MKPF AS D JOIN MSEG AS A
ON DMBLNR = AMBLNR AND
DMJAHR = AMJAHR
JOIN MARA AS E
ON EMATNR = AMATNR
JOIN MAKT AS F
ON FMATNR = AMATNR
WHERE A~MATNR IN P_MATNR
AND A~WERKS IN P_PLANT
AND A~KZBEW IN (' ','B')
AND E~MATKL IN P_MGRP
AND A~BWART NOT IN ('541','542','321','322','121')
AND A~KZVBR NOT IN ('A')
AND D~BUDAT LE P_DATE-HIGH.
LOOP AT OPBAL WHERE BWART EQ '544' AND LGORT EQ ''.
TMP_OPBAL = OPBAL.
APPEND TMP_OPBAL.
ENDLOOP.
DELETE OPBAL WHERE ( BWART EQ '309' AND DMBTR EQ 0 ).
DELETE OPBAL WHERE ( BWART NE '543' AND LGORT EQ '' ).
LOOP AT TMP_OPBAL.
OPBAL = TMP_OPBAL.
APPEND OPBAL.
ENDLOOP.
STOCKVAL = 0.
SORT OPBAL BY MATNR BATCH BUDAT.
LOOP AT OPBAL.
SELECT SINGLE LBLAB INTO MSLB-LBLAB FROM MSLB
WHERE MATNR = OPBAL-MATNR.
IF OPBAL-BUDAT LT P_DATE-LOW.
IF OPBAL-SHKZG = 'H'.
OPTOT = OPTOT - OPBAL-MENGE.
ELSEIF OPBAL-SHKZG = 'S'.
OPTOT = OPTOT + OPBAL-MENGE.
ENDIF.
For the duration II part *****************
ELSEIF OPBAL-BUDAT IN P_DATE.
IF OPBAL-SHKZG = 'H'.
ISSTOT = ISSTOT + OPBAL-MENGE.
ELSEIF OPBAL-SHKZG = 'S'.
RECTOT = RECTOT + OPBAL-MENGE.
ENDIF.
ENDIF.
AT END OF BATCH. " modified for chek
READ TABLE OPBAL INDEX SY-TABIX.
CLEAR BAL_NOREF. REFRESH BAL_NOREF.
SELECT MATNR SHKZG SUM( DMBTR )
INTO TABLE BAL_NOREF
FROM BSIM
WHERE BUDAT LT P_DATE-LOW AND
MATNR EQ OPBAL-MATNR AND
BWTAR EQ OPBAL-BATCH AND
BWKEY IN P_PLANT AND
BLART IN ('RE','WE','WA','PR')
GROUP BY MATNR SHKZG.
LOOP AT BAL_NOREF.
IF BAL_NOREF-SHKZG = 'H'.
STOCKVAL = STOCKVAL - BAL_NOREF-DMBTR.
ELSE.
STOCKVAL = STOCKVAL + BAL_NOREF-DMBTR.
ENDIF.
ENDLOOP.
CLEAR BAL_NOREF. REFRESH BAL_NOREF.
SELECT MATNR SHKZG SUM( DMBTR )
INTO TABLE BAL_NOREF
FROM BSIM
WHERE BUDAT IN P_DATE AND
MATNR EQ OPBAL-MATNR AND
BWTAR EQ OPBAL-BATCH AND
BWKEY IN P_PLANT AND
BLART IN ('RE','WE','WA','PR')
GROUP BY MATNR SHKZG.
LOOP AT BAL_NOREF.
IF BAL_NOREF-SHKZG = 'H'.
ISS_STOCKVAL = ISS_STOCKVAL + BAL_NOREF-DMBTR.
ELSE.
REC_STOCKVAL = REC_STOCKVAL + BAL_NOREF-DMBTR.
ENDIF.
ENDLOOP.
" MSLB-LBLAB (STOCK WITH SUBCONTRACTOR).
CL_STKVAL = STOCKVAL + REC_STOCKVAL - ISS_STOCKVAL.
TOTALL = OPTOT + RECTOT - ISSTOT.
IF OPTOT = '0' AND RECTOT = '0' AND ISSTOT = '0'.
FLG = 1.
ENDIF.
IF FLG = 1.
CLEAR FLG.
ELSE.
SERNO = SERNO + 1.
OPBAL2-SNO = SERNO.
OPBAL2-MATNR = OPBAL-MATNR.
OPBAL2-MAKTX = OPBAL-MAKTX.
OPBAL2-OP_BAL = OPTOT.
OPBAL2-REC = RECTOT.
OPBAL2-T_OPBAL_REC = OPTOT + RECTOT.
OPBAL2-ISS = ISSTOT.
OPBAL2-T_ISS = ISSTOT.
OPBAL2-CL_BAL = TOTALL.
OPBAL2-BATCH = OPBAL-BATCH.
OPBAL2-SUBCON = MSLB-LBLAB.
OPBAL2-OP_STKVAL = STOCKVAL.
OPBAL2-ISS_STKVAL = ISS_STOCKVAL.
OPBAL2-REC_STKVAL = REC_STOCKVAL.
OPBAL2-CL_STKVAL = CL_STKVAL.
APPEND OPBAL2.
ENDIF.
OPTOT = 0.
RECTOT = 0.
ISSTOT = 0.
STOCKVAL = 0.
ISS_STOCKVAL = 0.
REC_STOCKVAL = 0.
CL_STKVAL = 0.
ENDAT.
ENDLOOP.
WA_SORT-SPOS = 1.
WA_SORT-FIELDNAME = 'MATNR'.
WA_SORT-UP = 'X'.
WA_SORT-SUBTOT = 'X'.
APPEND WA_SORT TO IT_SORT.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = REPID
IT_FIELDCAT = IT_FLDCAT
IT_EVENTS = IT_EVENTS
IS_LAYOUT = GS_LAYOUT
IT_SORT = IT_SORT
TABLES
T_OUTTAB = OPBAL2.
FORM FILL_FLDCAT USING P_FLDCAT TYPE SLIS_T_FIELDCAT_ALV.
PERFORM FILL_PARAM_FLDCAT USING 1 'SNo' 'SNO' ' ' 'X'
'OPBAL2' P_FLDCAT.
PERFORM FILL_PARAM_FLDCAT USING 2 'Material No.' 'MATNR' ' ' 'X'
'OPBAL2' P_FLDCAT.
PERFORM FILL_PARAM_FLDCAT USING 3 'Description' 'MAKTX' ' ' ' '
'OPBAL2' P_FLDCAT.
PERFORM FILL_PARAM_FLDCAT USING 4 'Op.Bal' 'OP_BAL' 'X' ' '
'OPBAL2' P_FLDCAT.
PERFORM FILL_PARAM_FLDCAT USING 5 'Op.Stock Val' 'OP_STKVAL' 'X' ' '
'OPBAL2' P_FLDCAT.
PERFORM FILL_PARAM_FLDCAT USING 6 'Receipts' 'REC' 'X' ' '
'OPBAL2' P_FLDCAT.
PERFORM FILL_PARAM_FLDCAT USING 7 'Total' 'T_OPBAL_REC' 'X' ' '
'OPBAL2' P_FLDCAT.
PERFORM FILL_PARAM_FLDCAT USING 8 'Rect.Val.' 'REC_STKVAL' 'X' ' '
'OPBAL2' P_FLDCAT.
PERFORM FILL_PARAM_FLDCAT USING 9 'Issues' 'ISS' 'X' ' '
'OPBAL2' P_FLDCAT.
PERFORM FILL_PARAM_FLDCAT USING 10 'Iss. Val.' 'ISS_STKVAL' 'X' ' '
'OPBAL2' P_FLDCAT.
PERFORM FILL_PARAM_FLDCAT USING 11 'Cl. Bal.' 'CL_BAL' 'X' ' '
'OPBAL2' P_FLDCAT.
PERFORM FILL_PARAM_FLDCAT USING 12 'Cl.Stock Val' 'CL_STKVAL' 'X' ' '
'OPBAL2' P_FLDCAT.
PERFORM FILL_PARAM_FLDCAT USING 13 'BATCH ' 'BATCH' ' ' ' '
'OPBAL2' P_FLDCAT.
ENDFORM.
FORM FILL_PARAM_FLDCAT USING VALUE(P_COL) VALUE(P_TEXT) VALUE(P_FLDNAME)
VALUE(P_DOSUM) VALUE(P_NOZERO) VALUE(P_TABNAME)
PP_FLDCAT TYPE SLIS_T_FIELDCAT_ALV.
DATA : WA_FLDCAT TYPE SLIS_FIELDCAT_ALV.
CLEAR WA_FLDCAT.
WA_FLDCAT-COL_POS = P_COL.
WA_FLDCAT-SELTEXT_M = P_TEXT.
WA_FLDCAT-FIELDNAME = P_FLDNAME.
WA_FLDCAT-TABNAME = P_TABNAME.
WA_FLDCAT-DO_SUM = P_DOSUM.
WA_FLDCAT-NO_ZERO = P_NOZERO.
APPEND WA_FLDCAT TO PP_FLDCAT.
ENDFORM.
FORM FILL_HEADER USING P_IT_LIST_HEADER TYPE SLIS_T_LISTHEADER.
DATA: LS_LINE TYPE SLIS_LISTHEADER.
CLEAR LS_LINE.
LS_LINE-TYP = 'S'.
LS_LINE-INFO = TEXT-002.
APPEND LS_LINE TO P_IT_LIST_HEADER.
CLEAR LS_LINE.
LS_LINE-TYP = 'S'.
LS_LINE-INFO = DISPTEXT.
APPEND LS_LINE TO P_IT_LIST_HEADER.
CLEAR LS_LINE.
LS_LINE-TYP = 'S'.
LS_LINE-INFO = DISPTEXT2.
APPEND LS_LINE TO P_IT_LIST_HEADER.
ENDFORM.
FORM FILL_EVENTS USING P_IT_EVENTS TYPE SLIS_T_EVENT.
DATA LS_EVENT TYPE SLIS_ALV_EVENT.
MOVE 'TOP_OF_PAGE' TO LS_EVENT-FORM.
MOVE 'TOP_OF_PAGE' TO LS_EVENT-NAME.
APPEND LS_EVENT TO P_IT_EVENTS.
ENDFORM.
FORM TOP_OF_PAGE.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = IT_LIST_HEADER.
ENDFORM.
FORM FILL_LAYOUT USING P_GS_LAYOUT TYPE SLIS_LAYOUT_ALV.
P_GS_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.
P_GS_LAYOUT-ZEBRA = 'X'.
P_GS_LAYOUT-FLEXIBLE_KEY = 'X'.
ENDFORM.
FOR TESTING PURPOSE.
*SORT OPBAL BY BUDAT.
*CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = REPID
IT_FIELDCAT = IT_FLDCAT
IT_EVENTS = IT_EVENTS
TABLES
T_OUTTAB = OPBAL.
*FORM FILL_FLDCAT USING P_FLDCAT TYPE SLIS_T_FIELDCAT_ALV.
PERFORM FILL_PARAM_FLDCAT USING 1 'MBLNR' 'MBLNR'
'OPBAL' P_FLDCAT.
PERFORM FILL_PARAM_FLDCAT USING 2 'CREDIT/DEBIT' 'SHKZG'
'OPBAL' P_FLDCAT.
PERFORM FILL_PARAM_FLDCAT USING 3 'MOV.TYP.' 'BWART'
'OPBAL' P_FLDCAT.
PERFORM FILL_PARAM_FLDCAT USING 4 'ST.LOC.' 'LGORT'
'OPBAL' P_FLDCAT.
PERFORM FILL_PARAM_FLDCAT USING 5 'STOCK VAL' 'DMBTR'
'OPBAL' P_FLDCAT.
PERFORM FILL_PARAM_FLDCAT USING 6 'POS.DATE' 'BUDAT'
'OPBAL' P_FLDCAT.
*ENDFORM. -
Need BAPI or custom report for the Vendor partial clearing like in F-44
Hi exports,
My requirement is for creating a Z-Report for Vendor partial clearing like it happening in t-code F-44.
But I didn't find any BAPI or any report for doing partial vendor clearing inside my report.
Kindly suggest me any BAPI or some code such that I can able to clear those open items from my report.
Or suggest me any process such that i can achieve this.
Thanking you
PravasiniHi, Sagar:
Nice to see your thread here
No matter what kind of transactions you are using, finally, there will be a document posted in General Ledger Accounting, which is what you want. So to read the result, you can always try function module, like FI_DOCUMENT_READ.
Hope it will help.
Best Regards, Lawrence -
Hi MM Gurus,
Good Morning !!!!
I have a situation where i have many branches sales offices in different States, but in SAP we have created only one plant for one state and we have created Storage Locations for other states Branch offices. Now the issue is, from other branches (States) also my client used to raise Vendor Invoices and Customer Billing document, So they need separate report for Input/Output Tax.
Shall i use business Place for other states under one Plant?? Is this is possible? OR in my case how can i get separate reports for Taxes for different states (Storage Locations).
Kindly suggest.
Thanks in advance.
Regards,
NeerajHi,
I dont think business place will help in your case since we assign business places to plant. So in your case you have only one plant.
Which tax procedure are you using ?
How system calculates different taxes in case of different states ?
Thanks & Regards, -
Hi everyone, i got my iPhone 5S in Macedonia for 600 € and someone who lives in Germany tells me that my iPhone is not as good as 5S's that have been produced for Germany or in any state like Germany , does it mean that is not original someone to help me ?
All iPhones are manufactured in the same factory in China, all are the same quality for every country of sale.
But the LTE/4G bands are different for different countries so may not work back in Germany. In addition, the warranty is only valid in the country of sale, so you will not have warranty support in Germany...unless Macedonia is part of the EU and then the warranty is valid for all EU states. -
Report for Power Injector State
I need a report for all Power Inyector installed with a AP, how i have this information in a report?
please i need helpThe is no way to detect if your using a power injector or not. There are commands to enable if your using a power injector, but that doesn't mean its not connected to a PoE switch.
That would be a manual process of going to each ap and looking. -
Crystal Reports for SAP Print Output requirements like Sales Order O/P
Hello,
Has anybody used Crystal Reports for Sales Order or Invoice Print Output type requirements?
Typically these outputs get triggered via Output Management Configuration on Save of a Sales Order or Configuration.
Traditionally in the Output Management configuration of say Sales Order, we can specify the "Output Program" and the "Sapscript" or "Smart Form" or "Adobe Form".
How do we tell SAP t trigger a Crystal Report output if it is a feasible way to go?
Also can anybody tell what is SAP's strategic direction for Print Output requirements?
regards,
AtulHi Atul,
Do you have answers for your questions? If so, could you please share?
Thank you in advance,
Joã -
Reconcillation report for controlling
My requirement as follows.
this is a report for developing reconcillation statement for a company.
i created program as per requirement it is not executing becasuse of COEP table taking much time for executing.
any body have reconcillation report with sourcode kindly forward me.
TECHNICAL SPECIFICATIONS FOR RECONCILIATION REPORT
SELECTION SCREEN:
COMPANY CODE: T001-BUKRS
FISCAL YEAR : BKPF-GJAHR
PERIOD : BKPF-MONAT
OUTPUT FORMAT:
PARTICULARS AMOUNT
A TOTAL OF FI P/L ACCOUNTS
B LESS: TOTAL OF FI P/L ACCOUNTS NOT FLOWN TO CO (including VVGK values)
C TOTAL OF FI P/L ACCOUNTS FLOWN TO CO
D TOTAL OF COST VOLUME (MAT+ FEK+MGK+WVK)
E LESS : TOTAL OF RECONCILIATION ITEMS (ITEMS APPEARING ONLY IN CO - FOR E.G. ED,CC ETC)
F (D) (E)
RECONCILIATION -
( C ) = ( F )
START OF FIELD A
TABLE : SKB1 (G/L Account Master Table)
INPUT : BUKRS (Company Code)
SAKNR - NUMBER RANGE 4* (G/L Account No.)
OUTPUT : SAKNR (G/L Account No)
Result : This step will provide a list of Expenses G/L Accounts
TABLE : GLT0 (G/L Account Balances table)
INPUT : BUKRS (Company Code)
SAKNR - NUMBER RANGE 4*) (G/L Account No.)
DRCRK = S (Debit / Credit Indicator)
RYEAR = GJAHR (Fiscal year)
OUTPUT : HSL0*( * -PERIOD ENTERED IN SELECTION) [G/L Account Balance Amount field in the Table]
SORT AND SUM SAKNR WISE WHILE DISPLAYING IN THE REPORT
Result : This step will provide balances for the list of the expenses G/L accounts fetched from table SKB1 for the company code, fiscal year and period mentioned in the selection screen
LIST OF EXPS. G/L ACCOUNTS WITH VALUES AND THEIR TOTAL LIST A
TOTAL OF ABOVE LIST = FIELD A
The List Is To Be Displayed In The Report On Double-Clicking On The Total (Field A)
END OF FIELD A----
START OF FIELD B
TABLE : SETLEAF (Table for values in a group)
INPUT : SETCLASS = 0102 (Code for Cost Element groups)
SETNAME = FIXED, VARIABLE (Cost Element group names)
OUTPUT : VALFROM, VALTO (Cost Element from & to)
Result : This step will provide a list of cost elements within the cost element groups Fixed and Variable
TABLE : COSP (Cost Accounting postings)
INPUT : GJAHR (Fiscal year)
KSTAR = VALFROM TO VALTO SETLEAF (Cost Elements range)
VRGNG = COIN (CO Business transaction type)
BEKNZ = D (Debit / Credit indicator)
OUTPUT : KSTAR (Cost Element), WKG0( -PERIOD ENTERED IN SELECTION) [Amount field in the table]
Result : This step will provide a list of Cost Centre values used for calculating Activity rate and Overheard rates)
LIST OF COST ELEMENTS WITH VALUES AND THEIR TOTAL LIST B
COMPARE LIST A WITH LIST B FIND RECORDS THAT DONT MATCH
MAKE A LIST OF UNMATCHED RECORDS (FOUND ONLY IN LIST A) AND THEIR TOTALS LIST C
TABLE : SETLEAF (Table for values in a group)
INPUT : SETCLASS = 0101 (Code for Cost Centre groups)
SETNAME = JL-VVGK (Cost Centre group name)
OUTPUT : VALFROM ( COST CENTRE)
Result : This will provide a list of Cost centers in the JL-VVGK cost element group
TABLE : COSP (Cost Accounting Postings)
INPUT : OBJNR = CONCATENATE KSKBX TO SETLEAF- VALFROM WITH SPACE, (OBJNR = Object Number)
GJAHR (Fiscal year)
VRGNG = COIN (CO Business transaction type)
OUTPUT : WKG0( -PERIOD ENTERED IN SELECTION) [Amount field in the table]
Result : This will provide a list of Cost centers values in the in the JL-VVGK cost element group
LIST OF VVGK COST CENTRES WITH VALUES AND ITS TOTAL LIST D
ADD LIST C WITH LIST D THE TOTAL OF WHICH IS EQUAL TO FIELD B
Result : This will provide the costs which are not used to apply Activity Rates and Overhead Rates on the products
The Lists (List C & D) are To Be Displayed In The Report On Double-Clicking On The Total (Field B)
END OF FIELD B----
START OF FIELD C
SUBTRACT FIELD B FROM FIELD A WHICH IS EQUAL TO FIELD C (NO LINE ITEMS REQUIRED)
END OF FIELD C----
START OF FIELD D
TABLE : AUFK (Header table for Orders)
INPUT : KOKRS = KBX (Controlling Area)
BUKRS = SELECTION SCREEN (Company Code)
AUART = RM01 (Order Type)
OUTPUT : OBJNR (Object Number)
Result : This will provide a list Product Cost Collector Numbers
MAT :
TABLE : COSP (Cost Accounting Postings)
INPUT : OBJNR-AUFK (Object number fetched from AUFK table)
GJAHR = SELECTION SCREEN (fiscal year)
WRTTP = 4 (Value type for Actuals)
KSTAR = 41261 TO 41265 (Cost elements range)
BEKNZ = D (Debit / Credit indicator)
OUTPUT : KSTAR (Cost Element), WTG00X (Amount field in the table), OBJNR CONCATENATE (Object Number)
Result : This will provide the MAT costs applied to the products through Product Cost Collectors - MATLIST
FEK :
TABLE : COEP (Cost Accounting Postings)
INPUT : KOKRS = KBX (Controlling Area)
PERIO = SELECTION SCREEN (Period)
OBJNR-AUFK (Object Number fetched from AUFK table)
GJAHR = SELECTION SCREEN (Fiscal year)
KSTAR = 430001 TO 430010 (Cost Elements range)
BUKRS = SELECTION SCREEN (Company Code)
OUTPUT : KSTAR (Cost Element), WTGBTR (Amount field), OBJNR CONCATENATE (Object number)
Result : This will provide the FEK costs applied to the products through Product Cost Collectors - FEKLIST
MGK :
TABLE : COEP (Cost Accounting Postings)
INPUT : KOKRS = KBX (Controlling Area)
PERIO = SELECTION SCREEN (Period)
OBJNR-AUFK (Object Number fetched from AUFK table)
GJAHR = SELECTION SCREEN (Fiscal year)
KSTAR = 410001 (Cost Element)
BUKRS = SELECTION SCREEN (Company Code)
OUTPUT : KSTAR (Cost Element), WTGBTR (Amount field), OBJNR CONCATENATE (Object Number)
Result : This will provide the MGK costs applied to the products through Product Cost Collectors - MGKLIST
WVK :
TABLE : COEP (Cost Accounting postings)
INPUT : KOKRS = KBX (Controlling Area)
PERIO = SELECTION SCREEN (Period)
OBJNR-AUFK (Object Number fetched from AUFK table)
GJAHR = SELECTION SCREEN (Fiscal year)
KSTAR = 410015 (Cost Element)
BUKRS = SELECTION SCREEN (Company Code)
OUTPUT : KSTAR (Cost Element), WTGBTR (Amount field), OBJNR CONCATENATE (Object Number)
Result : This will provide the WVK costs applied to the products through Product Cost Collectors - WVKLIST
TOTAL OF MAT WTG00X, FEK - WTGBTR, MGK - WTGBTR, WVK WTGBTR = FIELD D
The Lists are (MATLIST, FEKLIST, MGKLIST, WVKLIST) To Be Displayed categorically In The Report On Double-Clicking On The Total (Field D)
END OF FIELD D----
START OF FIELD E
TABLE : COSS (Cost Accounting Postings)
INPUT : KOKRS = KBX (Controlling Area)
GJAHR = SELECTION SCREEN (Fiscal year)
WRTTP = 4 (Value type for Actuals)
KSTAR = 44951 TO 44958 (Cost Elements range)
VRGNG = COIN, RKU1, RKU3, (CO Business transaction type)
BEKNZ = D (Debit / Credit Indicator)
OUTPUT : KSTAR (Cost Element), WTG00X (Amount field)
Result : This will provide the costs posted only through Controlling (not FI, MM, SD, PP) which are used to calculate Activity rates and Overhead rates applied to the product EDCCLIST
The EDCCLIST Is To Be Displayed In The Report On Double-Clicking On The Total (Field E)
END OF FIELD E----
START OF FIELD F
SUBTRACT FIELD D FROM FIELD E WHICH IS EQUAL TO FIELD F (NO LINE ITEMS REQUIRED)
END OF FIELD F----
I have return code like as follows.
*& Report ZCO_RECONCILIATION_REPORT *
REPORT zco_reconciliation_report NO STANDARD PAGE HEADING
LINE-COUNT 60 LINE-SIZE 180.
TABLES : t001.
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
PARAMETERS : p_bukrs LIKE t001-bukrs MEMORY ID buk ,
p_year LIKE glt0-ryear MEMORY ID gjh ,
p_period LIKE bkpf-monat .
SELECTION-SCREEN END OF BLOCK b1 .
DATA : BEGIN OF it_skb1 OCCURS 0,
saknr LIKE skb1-saknr ,
END OF it_skb1.
DATA : BEGIN OF it_glt0 OCCURS 0,
racct LIKE glt0-racct ,
hsl01 LIKE glt0-hsl01,
END OF it_glt0.
DATA : BEGIN OF it_glt0_sum OCCURS 0,
racct LIKE glt0-racct ,
hsl01 LIKE glt0-hsl01,
END OF it_glt0_sum.
DATA : BEGIN OF it_setb1 OCCURS 0,
valfrom LIKE cosp-kstar, " setleaf-valfrom,
valto LIKE setleaf-valto,
END OF it_setb1.
DATA : BEGIN OF it_setb2 OCCURS 0,
valfrom LIKE setleaf-valfrom,
objnr LIKE coss-objnr,
END OF it_setb2.
DATA : BEGIN OF it_setd OCCURS 0,
valfrom LIKE setleaf-valfrom,
objnr LIKE coss-objnr,
END OF it_setd.
DATA : BEGIN OF it_sete OCCURS 0,
valfrom LIKE setleaf-valfrom,
objnr LIKE coss-objnr,
END OF it_sete.
DATA : BEGIN OF it_cospb OCCURS 0,
kstar LIKE cosp-kstar,
wkg001 LIKE cosp-wkg001,
END OF it_cospb.
DATA : BEGIN OF it_cossb OCCURS 0,
objnr LIKE coss-objnr,
kstar LIKE coss-kstar,
wkg001 LIKE coss-wkg001,
END OF it_cossb.
DATA : BEGIN OF it_bkpf OCCURS 0,
belnr LIKE bkpf-belnr,
END OF it_bkpf.
DATA : BEGIN OF it_cossd1 OCCURS 0,
objnr LIKE coss-objnr,
belnr LIKE bseg-belnr,
wkg001 LIKE coss-wkg001,
END OF it_cossd1.
DATA : BEGIN OF it_cossd2 OCCURS 0,
objnr LIKE coss-objnr,
kstar LIKE coss-kstar,
wkg001 LIKE coss-wkg001,
END OF it_cossd2.
DATA : BEGIN OF it_cosse OCCURS 0,
objnr LIKE coss-objnr,
kstar LIKE coss-kstar,
wkg001 LIKE coss-wkg001,
END OF it_cosse.
dATA : itab_period TYPE string .
DATA : BEGIN OF it_cospb_sum OCCURS 0,
kstar LIKE cosp-kstar,
wkg001 LIKE cosp-wkg001,
END OF it_cospb_sum.
DATA : BEGIN OF it_cossb_sum OCCURS 0,
kstar LIKE cosp-kstar,
wkg001 LIKE cosp-wkg001,
END OF it_cossb_sum.
DATA : BEGIN OF it_cossd1_sum OCCURS 0,
kstar LIKE cosp-kstar,
wkg001 LIKE cosp-wkg001,
END OF it_cossd1_sum.
DATA : BEGIN OF it_cossd2_sum OCCURS 0,
kstar LIKE cosp-kstar,
wkg001 LIKE cosp-wkg001,
END OF it_cossd2_sum.
DATA : BEGIN OF it_cosse_sum OCCURS 0,
kstar LIKE cosp-kstar,
wkg001 LIKE cosp-wkg001,
END OF it_cosse_sum.
DATA : BEGIN OF it_unmatch OCCURS 0,
kstar LIKE cosp-kstar,
wkg001 LIKE cosp-wkg001,
END OF it_unmatch.
DATA : BEGIN OF it_merge OCCURS 0,
kstar LIKE cosp-kstar,
wkg001 LIKE cosp-wkg001,
END OF it_merge.
DATA : BEGIN OF it_merged OCCURS 0,
kstar LIKE cosp-kstar,
wkg001 LIKE cosp-wkg001,
END OF it_merged.
DATA : BEGIN OF it_field OCCURS 0,
fielda TYPE p DECIMALS 2,
fieldb TYPE p DECIMALS 2,
fieldc TYPE p DECIMALS 2,
fieldd TYPE p DECIMALS 2,
fielde TYPE p DECIMALS 2,
fieldf TYPE p DECIMALS 2,
END OF it_field.
DATA : v_fielda TYPE p DECIMALS 2,
v_fieldb TYPE p DECIMALS 2,
v_fieldc TYPE p DECIMALS 2,
v_fieldd TYPE p DECIMALS 2,
v_fielde TYPE p DECIMALS 2,
v_fieldf TYPE p DECIMALS 2,
v_objnr LIKE coss-objnr,
v_kstar LIKE cosp-kstar,
v_field(1).
yr(4),
mon(2),
day(2),
v_date LIKE sy-datum,
v_date1 LIKE sy-datum,
flag1 TYPE c ,
flag2 TYPE c ,
flag3 TYPE c ,
flag4 TYPE c,
flag5 TYPE c.
data : begin of iaufk occurs 0 ,
objnr like aufk-objnr,
end of iaufk .
DATA : BEGIN OF IFEK OCCURS 0 ,
KSTAR LIKE COEP-KSTAR,
WTGBTR LIKE COEP-WTGBTR,
OBJNR LIKE COEP-OBJNR,
END OF IFEK.
DATA : BEGIN OF IMAT OCCURS 0 ,
KSTAR LIKE COSP-KSTAR,
WTG001 LIKE COSP-WTG001,
WTG002 LIKE COSP-WTG002,
WTG003 LIKE COSP-WTG003,
WTG004 LIKE COSP-WTG004,
WTG005 LIKE COSP-WTG005,
WTG006 LIKE COSP-WTG006,
WTG007 LIKE COSP-WTG007,
WTG008 LIKE COSP-WTG008,
WTG009 LIKE COSP-WTG009,
WTG010 LIKE COSP-WTG010,
WTG011 LIKE COSP-WTG011,
WTG012 LIKE COSP-WTG012,
WTG013 LIKE COSP-WTG013,
WTG014 LIKE COSP-WTG014,
WTG015 LIKE COSP-WTG015,
WTG016 LIKE COSP-WTG016,
OBJNR LIKE COSP-OBJNR,
END OF IMAT.
data : begin of imgk occurs 0 ,
kstar like coep-kstar,
wtgbtr like coep-wtgbtr,
objnr like coep-objnr,
end of imgk.
data : begin of iwvk occurs 0 ,
kstar like coep-kstar,
wtgbtr like coep-wtgbtr,
objnr like coep-objnr,
end of iwvk.
AT SELECTION-SCREEN.
PERFORM validity.
START-OF-SELECTION .
PERFORM get_period.
PERFORM fill_skb1.
PERFORM get_aufk .
perform get_COEP .
PERFORM GET_MGK.
perform get_wvk.
PERFORM fill_it_glt0.
PERFORM fill_it_glt0_sum.
PERFORM fill_set.
PERFORM fill_cospb_cossb.
PERFORM sum_cospb_cossb.
PERFORM fill_cossd1_cossd2.
PERFORM sum_cossd1_cossd2.
PERFORM fill_cosse.
PERFORM sum_cosse.
PERFORM fill_it_unmatch.
PERFORM fill_it_merge.
PERFORM fill_it_merged.
PERFORM fill_it_fieldb.
PERFORM fill_it_fieldc.
PERFORM fill_it_fieldd.
PERFORM fill_it_fieldf.
PERFORM display.
PERFORM fill_it_fielde.
TOP-OF-PAGE.
PERFORM header.
AT LINE-SELECTION.
PERFORM list_display.
*& Form VALIDITY
text
--> p1 text
<-- p2 text
FORM validity .
SELECT SINGLE bukrs FROM t001 INTO t001-bukrs WHERE bukrs = p_bukrs.
IF sy-subrc NE 0.
ENDIF.
ENDFORM. " VALIDITY
*& Form FILL_SKB1
text
--> p1 text
<-- p2 text
FORM fill_skb1 .
SELECT saknr FROM skb1 INTO TABLE it_skb1
WHERE bukrs = p_bukrs
AND saknr LIKE '000004%' .
SORT it_skb1 BY saknr.
ENDFORM. " FILL_SKB1
*& Form FILL_IT_GLT0
text
--> p1 text
<-- p2 text
FORM fill_it_glt0 .
CASE p_period.
WHEN '1' OR '01'.
SELECT racct hsl01
FROM glt0
INTO TABLE it_glt0
FOR ALL ENTRIES IN it_skb1
WHERE racct = it_skb1-saknr
AND bukrs = p_bukrs
AND drcrk = 'S'
AND ryear = p_year.
AND rtcur = 'INR' .
WHEN '2' .
SELECT racct hsl02
FROM glt0
INTO TABLE it_glt0
FOR ALL ENTRIES IN it_skb1
WHERE racct = it_skb1-saknr
AND bukrs = p_bukrs
AND drcrk = 'S'
AND ryear = p_year.
AND rtcur = 'INR' .
WHEN '3' .
SELECT racct hsl03
FROM glt0
INTO TABLE it_glt0
FOR ALL ENTRIES IN it_skb1
WHERE racct = it_skb1-saknr
AND bukrs = p_bukrs
AND drcrk = 'S'
AND ryear = p_year.
AND rtcur = 'INR' .
WHEN '4' .
SELECT racct hsl04
FROM glt0
INTO TABLE it_glt0
FOR ALL ENTRIES IN it_skb1
WHERE racct = it_skb1-saknr
AND bukrs = p_bukrs
AND drcrk = 'S'
AND ryear = p_year.
AND rtcur = 'INR' .
WHEN '5' .
SELECT racct hsl05
FROM glt0
INTO TABLE it_glt0
FOR ALL ENTRIES IN it_skb1
WHERE racct = it_skb1-saknr
AND bukrs = p_bukrs
AND drcrk = 'S'
AND ryear = p_year.
AND rtcur = 'INR' .
WHEN '6' .
SELECT racct hsl06
FROM glt0
INTO TABLE it_glt0
FOR ALL ENTRIES IN it_skb1
WHERE racct = it_skb1-saknr
AND bukrs = p_bukrs
AND drcrk = 'S'
AND ryear = p_year.
AND rtcur = 'INR' .
WHEN '7' .
SELECT racct hsl07
FROM glt0
INTO TABLE it_glt0
FOR ALL ENTRIES IN it_skb1
WHERE racct = it_skb1-saknr
AND bukrs = p_bukrs
AND drcrk = 'S'
AND ryear = p_year.
AND rtcur = 'INR' .
WHEN '8' .
SELECT racct hsl08
FROM glt0
INTO TABLE it_glt0
FOR ALL ENTRIES IN it_skb1
WHERE racct = it_skb1-saknr
AND bukrs = p_bukrs
AND drcrk = 'S'
AND ryear = p_year.
AND rtcur = 'INR' .
WHEN '9' .
SELECT racct hsl09
FROM glt0
INTO TABLE it_glt0
FOR ALL ENTRIES IN it_skb1
WHERE racct = it_skb1-saknr
AND bukrs = p_bukrs
AND drcrk = 'S'
AND ryear = p_year.
AND rtcur = 'INR' .
WHEN '10' .
SELECT racct hsl10
FROM glt0
INTO TABLE it_glt0
FOR ALL ENTRIES IN it_skb1
WHERE racct = it_skb1-saknr
AND bukrs = p_bukrs
AND drcrk = 'S'
AND ryear = p_year.
AND rtcur = 'INR' .
WHEN '11' .
SELECT racct hsl11
FROM glt0
INTO TABLE it_glt0
FOR ALL ENTRIES IN it_skb1
WHERE racct = it_skb1-saknr
AND bukrs = p_bukrs
AND drcrk = 'S'
AND ryear = p_year.
AND rtcur = 'INR' .
WHEN '12' .
SELECT racct hsl12
FROM glt0
INTO TABLE it_glt0
FOR ALL ENTRIES IN it_skb1
WHERE racct = it_skb1-saknr
AND bukrs = p_bukrs
AND drcrk = 'S'
AND ryear = p_year.
AND rtcur = 'INR' .
WHEN '13' .
SELECT racct hsl13
FROM glt0
INTO TABLE it_glt0
FOR ALL ENTRIES IN it_skb1
WHERE racct = it_skb1-saknr
AND bukrs = p_bukrs
AND drcrk = 'S'
AND ryear = p_year.
AND rtcur = 'INR' .
WHEN '14' .
SELECT racct hsl14
FROM glt0
INTO TABLE it_glt0
FOR ALL ENTRIES IN it_skb1
WHERE racct = it_skb1-saknr
AND bukrs = p_bukrs
AND drcrk = 'S'
AND ryear = p_year.
AND rtcur = 'INR' .
WHEN '15' .
SELECT racct hsl15
FROM glt0
INTO TABLE it_glt0
FOR ALL ENTRIES IN it_skb1
WHERE racct = it_skb1-saknr
AND bukrs = p_bukrs
AND drcrk = 'S'
AND ryear = p_year.
AND rtcur = 'INR' .
WHEN '16' .
SELECT racct hsl16
FROM glt0
INTO TABLE it_glt0
FOR ALL ENTRIES IN it_skb1
WHERE racct = it_skb1-saknr
AND bukrs = p_bukrs
AND drcrk = 'S'
AND ryear = p_year.
AND rtcur = 'INR' .
ENDCASE.
SORT it_glt0 BY racct.
ENDFORM. " FILL_IT_GLT0
*& Form FILL_IT_GLT0_SUM
text
--> p1 text
<-- p2 text
FORM fill_it_glt0_sum .
SORT it_glt0 BY racct.
LOOP AT it_glt0.
it_glt0_sum-racct = it_glt0-racct.
AT END OF racct.
SUM.
it_glt0_sum-hsl01 = it_glt0-hsl01.
APPEND it_glt0_sum.
CLEAR it_glt0_sum.
ENDAT.
ENDLOOP.
LOOP AT it_glt0_sum.
AT LAST.
SUM.
it_fielda-fielda = it_glt0_SUM-hsl01.
it_field-fielda = it_glt0_sum-hsl01.
APPEND it_field.
ENDAT.
ENDLOOP.
ENDFORM. " FILL_IT_GLT0_SUM
*& Form fill_SET
text
--> p1 text
<-- p2 text
FORM fill_set .
SELECT valfrom valto FROM setleaf INTO TABLE it_setb1
WHERE setclass = '0102' AND
setname IN ('FIXED', 'VARIABLE') .
SORT it_setb1 BY valfrom .
SELECT valfrom FROM setleaf INTO CORRESPONDING FIELDS OF TABLE it_setb2
WHERE setclass = '0101' AND
setname = 'JL-VVGK'.
SORT it_setb2 BY valfrom .
SELECT valfrom FROM setleaf INTO CORRESPONDING FIELDS OF TABLE it_setd
WHERE setclass = '0102' AND
setname IN ('FBK', 'MAT').
SORT it_setd BY valfrom .
SELECT valfrom FROM setleaf INTO CORRESPONDING FIELDS OF TABLE it_sete
WHERE setclass = '0102' AND
setname = 'CO-RECON'.
SORT it_sete BY valfrom .
LOOP AT it_sete.
CONCATENATE 'KSKBX' it_sete-valfrom INTO v_objnr SEPARATED BY space.
it_sete-objnr = v_objnr.
MODIFY it_sete.
ENDLOOP.
SORT it_sete BY valfrom .
LOOP AT it_setb2.
CONCATENATE 'KSKBX' it_setb2-valfrom INTO v_objnr SEPARATED BY space.
it_setb2-objnr = v_objnr.
MODIFY it_setb2.
ENDLOOP.
LOOP AT it_setd.
CONCATENATE 'KSKBX' it_setd-valfrom INTO v_objnr SEPARATED BY space.
it_setd-objnr = v_objnr.
MODIFY it_setd.
ENDLOOP.
ENDFORM. " fill_SET
*& Form fill_cospb_cossb
text
--> p1 text
<-- p2 text
FORM fill_cospb_cossb .
CASE p_period.
WHEN '1' .
SELECT kstar wkg001 FROM cosp INTO TABLE it_cospb
FOR ALL ENTRIES IN it_setb1
WHERE kstar = it_setb1-valfrom
AND gjahr = p_year
AND vrgng = 'COIN'
AND beknz = 'S'.
SELECT objnr kstar wkg001 FROM cosp
INTO TABLE it_cossb
FOR ALL ENTRIES IN it_setb2
WHERE objnr = it_setb2-objnr
AND vrgng IN ('COIN','RKIV')
AND gjahr = p_year.
WHEN '2' .
SELECT kstar wkg002 FROM cosp INTO TABLE it_cospb
FOR ALL ENTRIES IN it_setb1
WHERE kstar = it_setb1-valfrom
AND gjahr = p_year
AND vrgng = 'COIN'
AND beknz = 'S'.
SELECT objnr kstar wkg002 FROM cosp
INTO TABLE it_cossb
FOR ALL ENTRIES IN it_setb2
WHERE objnr = it_setb2-objnr
AND vrgng IN ('COIN','RKIV')
AND gjahr = p_year.
WHEN '3' .
SELECT kstar wkg003 FROM cosp INTO TABLE it_cospb
FOR ALL ENTRIES IN it_setb1
WHERE kstar = it_setb1-valfrom
AND gjahr = p_year
AND vrgng = 'COIN'
AND beknz = 'S'.
SELECT objnr kstar wkg003 FROM cosp
INTO TABLE it_cossb
FOR ALL ENTRIES IN it_setb2
WHERE objnr = it_setb2-objnr
AND vrgng IN ('COIN','RKIV')
AND gjahr = p_year.
WHEN '4' .
SELECT kstar wkg004 FROM cosp INTO TABLE it_cospb
FOR ALL ENTRIES IN it_setb1
WHERE kstar = it_setb1-valfrom
AND gjahr = p_year
AND vrgng = 'COIN'
AND beknz = 'S'.
SELECT objnr kstar wkg004 FROM cosp
INTO TABLE it_cossb
FOR ALL ENTRIES IN it_setb2
WHERE objnr = it_setb2-objnr
AND vrgng IN ('COIN','RKIV')
AND gjahr = p_year.
WHEN '5' .
SELECT kstar wkg005 FROM cosp INTO TABLE it_cospb
FOR ALL ENTRIES IN it_setb1
WHERE kstar = it_setb1-valfrom
AND gjahr = p_year
AND vrgng = 'COIN'
AND beknz = 'S'.
SELECT objnr kstar wkg005 FROM cosp
INTO TABLE it_cossb
FOR ALL ENTRIES IN it_setb2
WHERE objnr = it_setb2-objnr
AND vrgng IN ('COIN','RKIV')
AND gjahr = p_year.
WHEN '6' .
SELECT kstar wkg006 FROM cosp INTO TABLE it_cospb
FOR ALL ENTRIES IN it_setb1
WHERE kstar = it_setb1-valfrom
AND gjahr = p_year
AND vrgng = 'COIN'
AND beknz = 'S'.
SELECT objnr kstar wkg006 FROM cosp
INTO TABLE it_cossb
FOR ALL ENTRIES IN it_setb2
WHERE objnr = it_setb2-objnr
AND vrgng IN ('COIN','RKIV')
AND gjahr = p_year.
WHEN '7' .
SELECT kstar wkg007 FROM cosp INTO TABLE it_cospb
FOR ALL ENTRIES IN it_setb1
WHERE kstar = it_setb1-valfrom
AND gjahr = p_year
AND vrgng = 'COIN'
AND beknz = 'S'.
SELECT objnr kstar wkg007 FROM cosp
INTO TABLE it_cossb
FOR ALL ENTRIES IN it_setb2
WHERE objnr = it_setb2-objnr
AND vrgng IN ('COIN','RKIV')
AND gjahr = p_year.
WHEN '8' .
SELECT kstar wkg008 FROM cosp INTO TABLE it_cospb
FOR ALL ENTRIES IN it_setb1
WHERE kstar = it_setb1-valfrom
AND gjahr = p_year
AND vrgng = 'COIN'
AND beknz = 'S'.
SELECT objnr kstar wkg008 FROM cosp
INTO TABLE it_cossb
FOR ALL ENTRIES IN it_setb2
WHERE objnr = it_setb2-objnr
AND vrgng IN ('COIN','RKIV')
AND gjahr = p_year.
WHEN '9' .
SELECT kstar wkg009 FROM cosp INTO TABLE it_cospb
FOR ALL ENTRIES IN it_setb1
WHERE kstar = it_setb1-valfrom
AND gjahr = p_year
AND vrgng = 'COIN'
AND beknz = 'S'.
SELECT objnr kstar wkg009 FROM cosp
INTO TABLE it_cossb
FOR ALL ENTRIES IN it_setb2
WHERE objnr = it_setb2-objnr
AND vrgng IN ('COIN','RKIV')
AND gjahr = p_year.
WHEN '10' .
SELECT kstar wkg010 FROM cosp INTO TABLE it_cospb
FOR ALL ENTRIES IN it_setb1
WHERE kstar = it_setb1-valfrom
AND gjahr = p_year
AND vrgng = 'COIN'
AND beknz = 'S'.
SELECT objnr kstar wkg010 FROM cosp
INTO TABLE it_cossb
FOR ALL ENTRIES IN it_setb2
WHERE objnr = it_setb2-objnr
AND vrgng IN ('COIN','RKIV')
AND gjahr = p_year.
WHEN '11' .
SELECT kstar wkg011 FROM cosp INTO TABLE it_cospb
FOR ALL ENTRIES IN it_setb1
WHERE kstar = it_setb1-valfrom
AND gjahr = p_year
AND vrgng = 'COIN'
AND beknz = 'S'.
SELECT objnr kstar wkg011 FROM cosp
INTO TABLE it_cossb
FOR ALL ENTRIES IN it_setb2
WHERE objnr = it_setb2-objnr
AND vrgng IN ('COIN','RKIV')
AND gjahr = p_year.
WHEN '12' .
SELECT kstar wkg012 FROM cosp INTO TABLE it_cospb
FOR ALL ENTRIES IN it_setb1
WHERE kstar = it_setb1-valfrom
AND gjahr = p_year
AND vrgng = 'COIN'
AND beknz = 'S'.
SELECT objnr kstar wkg012 FROM cosp
INTO TABLE it_cossb
FOR ALL ENTRIES IN it_setb2
WHERE objnr = it_setb2-objnr
AND vrgng IN ('COIN','RKIV')
AND gjahr = p_year.
WHEN '13' .
SELECT kstar wkg013 FROM cosp INTO TABLE it_cospb
FOR ALL ENTRIES IN it_setb1
WHERE kstar = it_setb1-valfrom
AND gjahr = p_year
AND vrgng = 'COIN'
AND beknz = 'S'.
SELECT objnr kstar wkg013 FROM cosp
INTO TABLE it_cossb
FOR ALL ENTRIES IN it_setb2
WHERE objnr = it_setb2-objnr
AND vrgng IN ('COIN','RKIV')
AND gjahr = p_year.
WHEN '14' .
SELECT kstar wkg014 FROM cosp INTO TABLE it_cospb
FOR ALL ENTRIES IN it_setb1
WHERE kstar = it_setb1-valfrom
AND gjahr = p_year
AND vrgng = 'COIN'
AND beknz = 'S'.
SELECT objnr kstar wkg014 FROM cosp
INTO TABLE it_cossb
FOR ALL ENTRIES IN it_setb2
WHERE objnr = it_setb2-objnr
AND vrgng IN ('COIN','RKIV')
AND gjahr = p_year.
WHEN '15' .
SELECT kstar wkg015 FROM cosp INTO TABLE it_cospb
FOR ALL ENTRIES IN it_setb1
WHERE kstar = it_setb1-valfrom
AND gjahr = p_year
AND vrgng = 'COIN'
AND beknz = 'S'.
SELECT objnr kstar wkg015 FROM cosp
INTO TABLE it_cossb
FOR ALL ENTRIES IN it_setb2
WHERE objnr = it_setb2-objnr
AND vrgng IN ('COIN','RKIV')
AND gjahr = p_year.
WHEN '16' .
SELECT kstar wkg016 FROM cosp INTO TABLE it_cospb
FOR ALL ENTRIES IN it_setb1
WHERE kstar = it_setb1-valfrom
AND gjahr = p_year
AND vrgng = 'COIN'
AND beknz = 'S'.
SELECT objnr kstar wkg016 FROM cosp
INTO TABLE it_cossb
FOR ALL ENTRIES IN it_setb2
WHERE objnr = it_setb2-objnr
AND vrgng IN ('COIN','RKIV')
AND gjahr = p_year.
ENDCASE.
SORT it_cospb BY kstar.
SORT it_cossb BY kstar.
ENDFORM. " fill_cospb_cossb
*& Form SUM_COSPB_COSSB
text
--> p1 text
<-- p2 text
FORM sum_cospb_cossb .
LOOP AT it_cospb.
it_cospb_sum-kstar = it_cospb-kstar.
AT END OF kstar.
SUM.
it_cospb_sum-wkg001 = it_cospb-wkg001.
APPEND it_cospb_sum.
CLEAR it_cospb_sum.
ENDAT.
ENDLOOP.
LOOP AT it_cossb.
it_cossb_sum-kstar = it_cossb-kstar.
AT END OF kstar.
SUM.
it_cossb_sum-wkg001 = it_cossb-wkg001.
APPEND it_cossb_sum.
CLEAR it_cossb_sum.
ENDAT.
ENDLOOP.
SORT it_cospb_sum BY kstar.
SORT it_cossb_sum BY kstar.
ENDFORM. " SUM_COSPB_COSSB
*& Form fill_it_unmatch
text
--> p1 text
<-- p2 text
FORM fill_it_unmatch .
LOOP AT it_glt0_sum.
READ TABLE it_cospb_sum WITH KEY kstar = it_glt0_sum-racct.
IF sy-subrc NE 0.
it_unmatch-kstar = it_glt0_sum-racct.
it_unmatch-wkg001 = it_glt0_sum-hsl01.
APPEND it_unmatch.
CLEAR it_unmatch.
ENDIF.
ENDLOOP.
ENDFORM. " fill_it_unmatch
*& Form fill_it_merge
text
--> p1 text
<-- p2 text
----We can't really tell without seeing the code. Would you post it please? (Just the portions that are overly slow.)
Rob -
# This file is in the UTF-8 encoding
[Strings]
# LOCALIZATION NOTE (isRTL):
# Leave this entry empty unless your language requires right-to-left layout,
# for example like Arabic, Hebrew, Persian. If your language needs RTL, please
# use the untranslated English word "yes" as value
isRTL=
CrashReporterTitle=Crash Reporter
# LOCALIZATION NOTE (CrashReporterVendorTitle): %s is replaced with the vendor name. (i.e. "Mozilla")
CrashReporterVendorTitle=%s Crash Reporter
# LOCALIZATION NOTE (CrashReporterErrorText): %s is replaced with another string containing detailed information.
CrashReporterErrorText=The application had a problem and crashed.\n\nUnfortunately the crash reporter is unable to submit a report for this crash.\n\nDetails: %s
# LOCALIZATION NOTE (CrashReporterProductErrorText2): The first %s is replaced with the product name (i.e. "Firefox"), the second is replaced with another string containing detailed information. These two substitutions can not be reordered!
CrashReporterProductErrorText2=%s had a problem and crashed.\n\nUnfortunately the crash reporter is unable to submit a crash report.\n\nDetails: %s
CrashReporterSorry=We're Sorry
# LOCALIZATION NOTE (CrashReporterDescriptionText2): The %s is replaced with the product name.
CrashReporterDescriptionText2=%s had a problem and crashed.\n\nTo help us diagnose and fix the problem, you can send us a crash report.
CrashReporterDefault=This application is run after a crash to report the problem to the application vendor. It should not be run directly.
Details=Details…
ViewReportTitle=Report Contents
CommentGrayText=Add a comment (comments are publicly visible)
ExtraReportInfo=This report also contains technical information about the state of the application when it crashed.
# LOCALIZATION NOTE (CheckSendReport): The %s is replaced with the vendor name.
CheckSendReport=Tell %s about this crash so they can fix it
CheckIncludeURL=Include the address of the page I was on
CheckSendEmail=Email me when more information is available
EmailGrayText=Enter your email address here
ReportPreSubmit2=Your crash report will be submitted before you quit or restart.
ReportDuringSubmit2=Submitting your report…
ReportSubmitSuccess=Report submitted successfully!
ReportSubmitFailed=There was a problem submitting your report.
ReportResubmit=Resending reports that previously failed to send…
# LOCALIZATION NOTE (Quit2): The %s is replaced with the product name.
Quit2=Quit %s
# LOCALIZATION NOTE (Restart): The %s is replaced with the product name.
Restart=Restart %s
Ok=OK
Close=Close
# LOCALIZATION NOTE (CrashID): The %s is replaced with the Crash ID from the server, which is a string like abc12345-6789-0abc-def1-23456abcdef1
CrashID=Crash ID: %s
# LOCALIZATION NOTE (CrashDetailsURL): The %s is replaced with a URL that the user can visit to view the crash details.
CrashDetailsURL=You can view details of this crash at %s
ErrorBadArguments=The application passed an invalid argument.
ErrorExtraFileExists=The application didn't leave an application data file.
ErrorExtraFileRead=Couldn't read the application data file.
ErrorExtraFileMove=Couldn't move application data file.
ErrorDumpFileExists=The application did not leave a crash dump file.
ErrorDumpFileMove=Couldn't move crash dump.
ErrorNoProductName=The application did not identify itself.
ErrorNoServerURL=The application did not specify a crash reporting server.
ErrorNoSettingsPath=Couldn't find the crash reporter's settings.
ErrorCreateDumpDir=Couldn't create pending dump directory.
# LOCALIZATION NOTE (ErrorEndOfLife): The %s is replaced with the product name.
ErrorEndOfLife=The version of %s you are using is no longer supported. Crash reports are no longer being accepted for this version. Please consider upgrading to a supported version.I think you may have pasted the wrong thing into the Description.
To try and resubmit a pending report (for example if you lost your internet connection):
#Go to about:crashes in the location bar
#Click the latest report link to resubmit it
If there isn't a pending crash report listed, I'm afraid you may be out of luck for that crash report. -
Can using query create aging report for GL Account
Hi all expert,
I have a challenge scenario which customer request print out aging report for the following GL Account.
This is not a business partner account. However, customer want display like aging report.
30 days aging report for the following GL accounts by projects:-
i) WIP (Work In Progress) account
ii) Accrued Revenue account
iii) Accrued Cost account
Examples:
Current Balance 30 day 60 day 90 day 120 day
Account WIP 10000 2000 3000 5000 0
Any idea or example given? If yes, can you provide a query here?
Regards,
Eric TanHi Eric
In standard SAP Business One this is difficult as the reports are 2 dimensional. To achieve this you will need to write multiple select statements into a temporary table and then select the final result from the temp table. Here is a sample for you to test:
USE [*DATABASE_NAME*]
GO
/****** Object: StoredProcedure [dbo].[REPORT_NAME] Script Date: 04/24/2009 13:17:21 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE proc [dbo].[*REPORT_NAME*]
as
set nocount on
begin
DECLARE @Day_no varchar(2)
DECLARE @Month_no varchar(2)
DECLARE @Year_no varchar(4)
DECLARE @Start_Date Datetime
SET @Day_no = DAY(GetDate())
SET @Month_no = MONTH(GetDate())
SET @Year_no = YEAR(GetDate())
SET @Start_Date = @Year_No + '/' + @Month_no + '/' + @Day_no -- + '/' + @Year_No
IF OBJECT_ID(N'tempdb..#CRDAGEING', N'U') IS NOT NULL
drop table #CRDAGEING
SELECT T0.[CardCode] AS [CardCode], T0.[CardName] AS [CardName], -T0.[Balance] AS [Balance], CAST(0 AS MONEY) AS [Current], CAST(0 AS MONEY) AS [1Week], CAST(0 AS MONEY) AS [2Weeks], CAST(0 AS MONEY) AS [3Weeks], CAST(0 AS MONEY) AS [4Weeks], CAST(0 AS MONEY) AS [5Weeks], CAST(0 AS MONEY) AS [6Weeks], CAST(0 AS MONEY) AS [Over6Weeks], CAST(0 AS MONEY) AS [Avg3Months], CAST (0 AS MONEY) AS [Onhand] INTO #CRDAGEING FROM OCRD T0 WHERE T0.[CardType] = 'S' -- and T0.[CardCode] <> '' --and T0.[DocDate] >= @FromDate AND T0.[DocDate] <= @ToDate
INSERT dbo.#CRDAGEING SELECT T1.[ShortName], NULL, 0, -SUM(T1.[BalDueDeb] - T1.[BalDueCred]), 0, 0, 0, 0, 0, 0, 0, 0, 0 FROM JDT1 T1, OCRD T2 WHERE T2.[CardType] = 'S' and T2.[CardCode] = T1.[ShortName] and T1.[DueDate] <= @Start_Date GROUP BY T1.[ShortName]
INSERT dbo.#CRDAGEING SELECT T1.[ShortName], NULL, 0, 0, -SUM(T1.[BalDueDeb] - T1.[BalDueCred]), 0, 0, 0, 0, 0, 0, 0, 0 FROM JDT1 T1, OCRD T2 WHERE T2.[CardType] = 'S' and T2.[CardCode] = T1.[ShortName] and T1.[DueDate] >= DATEADD(DAY,1,@Start_Date) and T1.[DueDate] <= DATEADD(DAY,8,@Start_Date) GROUP BY T1.[ShortName]
INSERT dbo.#CRDAGEING SELECT T1.[ShortName], NULL, 0, 0, 0, -SUM(T1.[BalDueDeb] - T1.[BalDueCred]), 0, 0, 0, 0, 0, 0, 0 FROM JDT1 T1, OCRD T2 WHERE T2.[CardType] = 'S' and T2.[CardCode] = T1.[ShortName] and T1.[DueDate] > DATEADD(DAY,8,@Start_Date) and T1.[DueDate] <= DATEADD(DAY,15,@Start_Date) GROUP BY T1.[ShortName]
INSERT dbo.#CRDAGEING SELECT T1.[ShortName], NULL, 0, 0, 0, 0, -SUM(T1.[BalDueDeb] - T1.[BalDueCred]), 0, 0, 0, 0, 0, 0 FROM JDT1 T1, OCRD T2 WHERE T2.[CardType] = 'S' and T2.[CardCode] = T1.[ShortName] and T1.[DueDate] > DATEADD(DAY,15,@Start_Date) and T1.[DueDate] <= DATEADD(DAY,22,@Start_Date) GROUP BY T1.[ShortName]
INSERT dbo.#CRDAGEING SELECT T1.[ShortName], NULL, 0, 0, 0, 0, 0, -SUM(T1.[BalDueDeb] - T1.[BalDueCred]), 0, 0, 0, 0, 0 FROM JDT1 T1, OCRD T2 WHERE T2.[CardType] = 'S' and T2.[CardCode] = T1.[ShortName] and T1.[DueDate] > DATEADD(DAY,22,@Start_Date) and T1.[DueDate] <= DATEADD(DAY,29,@Start_Date) GROUP BY T1.[ShortName]
INSERT dbo.#CRDAGEING SELECT T1.[ShortName], NULL, 0, 0, 0, 0, 0, 0, -SUM(T1.[BalDueDeb] - T1.[BalDueCred]), 0, 0, 0, 0 FROM JDT1 T1, OCRD T2 WHERE T2.[CardType] = 'S' and T2.[CardCode] = T1.[ShortName] and T1.[DueDate] > DATEADD(DAY,29,@Start_Date) and T1.[DueDate] <= DATEADD(DAY,36,@Start_Date) GROUP BY T1.[ShortName]
INSERT dbo.#CRDAGEING SELECT T1.[ShortName], NULL, 0, 0, 0, 0, 0, 0, 0, -SUM(T1.[BalDueDeb] - T1.[BalDueCred]), 0, 0, 0 FROM JDT1 T1, OCRD T2 WHERE T2.[CardType] = 'S' and T2.[CardCode] = T1.[ShortName] and T1.[DueDate] > DATEADD(DAY,36,@Start_Date) and T1.[DueDate] <= DATEADD(DAY,43,@Start_Date) GROUP BY T1.[ShortName]
INSERT dbo.#CRDAGEING SELECT T1.[ShortName], NULL, 0, 0, 0, 0, 0, 0, 0, 0, -SUM(T1.[BalDueDeb] - T1.[BalDueCred]), 0, 0 FROM JDT1 T1, OCRD T2 WHERE T2.[CardType] = 'S' and T2.[CardCode] = T1.[ShortName] and T1.[DueDate] > DATEADD(DAY,43,@Start_Date) GROUP BY T1.[ShortName]
SELECT SR.[CardCode], MAX(SR.[CardName]), SUM(SR.[Balance]) AS [BalanceOwing], SUM(SR.[Current]) AS [Current], SUM(SR.[1Week]) AS [1Week], SUM(SR.[2Weeks]) AS [2Weeks], SUM(SR.[3Weeks]) AS [3Weeks], SUM(SR.[4Weeks]) AS [4Weeks], SUM(SR.[5Weeks]) AS [5Weeks], SUM(SR.[6Weeks]) AS [6Weeks], SUM(SR.[Over6Weeks]) AS [Over6Weeks] FROM dbo.#CRDAGEING SR GROUP BY SR.[CardCode] ORDER BY SR.[CardCode]
END
Go to Microsoft SQL Studio manager and select your company database. Then expand the list and select Programmability > Stored Procedures. Right click on Stored Procedures and select New Stored Procedure. Copy the above code over the code in the edit window and change the database name as well as report name. Then select Execute to create the stored procedure. If you make changes, remember to change the word CREATE to ALTER (with other words CREATE for the first execute, and ALTER thereafter). Then in SAP Business One create a new query and leave everything blank. Click on execute and select the pencil to change to edit mode. Remove the words SELECT and type in EXEC REPORT_NAME (change the REPORT_NAME to the name you used in SQL). Then execute again and the results will be displayed in SAP Business One.
Let me know if you get stuck. Remember the above is an example and will need to be changed to use your tables and fields as required. The basic idea is to move across by one column with each select statement. So for example the first select statement does the CURRENT column, the second one the 30DAYS column, and so on.
Kind regards
Peter Juby -
How to take a report for the assigned transaction and activity in a role
Hi Colleagues,
I want to take a report for the assigned transaction with activity for all roles, which are assigned to the users,
Transaction list for a role i can able to take it from SUIM but not able to take the ACTVT for the role.
Please suggest how to take this information.
BR,
JaiHi Jaikumar from the post :
I think you have reached the state of finding the USER to ROLE relationship
Take the output to an excel,
COPY just the roles column exactly in order do not rearrange , use AGR_1251 like other experts have mentioned
insert the roles copied from you buffer and execute, the output will have multiple entries for each role take the output to an EXCEL again , make it unique and match the outputs between both the EXCELS.
It will be a little tricky to do this, but I think you are proficient in MS EXCEL.
This is one of the ways to do , there are many other ways to do it.
Maybe you are looking for
-
Line item only display after run RFSEPA01
Hi expert, I set up all gl account with line item display but i need to block GL and run program RFSEPA01 so that line item will posted to BSIS table. Is this need to run every after new posting done in? As i run for one GL before with RFSEPA01 after
-
No year displayed in events/rolls?
Hello all, Kind of a frustrating problem, in what seems like a great update. It is most relevant when viewing library in events mode. Even scrolling in Photos mode, the year no longer displays on the overlay. The year is clearly in the data, I think,
-
IllegalStateException while invoking livecycle formserver using java api
I am new to livecycle formserver.when i am trying to invoke formserver using java api ,it is giving illegal state exception.My servlet application to invoke formserver is deployed in tomcat 5.o in one system and jboss with formserver is in anohter sy
-
How do you " properly " reply to Apple support once they've contacted you?
This sounds very minuscule ( I KNOW) , but I am pretty sure I am doing this correctly. I am having some issues with my iTunes and need tech support. I've emailed them and got a response from tech very swiftly, asking for specific information and scre
-
Using After Effects in software demonstrations
I'm considering using Adobe After Effects in software demonstrations. The demonstrations will be initially created using Camtasia Studio. I'd like to then add cinematic features. After Effects seems like a great product to do so. I'd also be usin