Standard Iviews and Pages Header Translations
Hi All,
We have a requirement to change the translation of headers for standard iview and pages.
I am maintaining the translations through Portal Content Translation.
Methods tried -
1. Added the copied iviews and pages to the translation worklist and changed the translation - No impact
2. Cleared the cache - No impact
3. Restarted the portal - no impact
4. Added the standard iviews and pages to the translation worklist and changed the translation - No impact
Let me know any pointers for the same.
Regards,
Indu Garg
Hi Indu Garg ,
SAP Enterprise Portal provides a process for translating the Texts of portal objects (iViews, pages, worksets, roles, systems, etc.)
Multilingual object metadata for portal objects that is stored in the database of the Portal Content Directory (PCD). If a property of a portal object has type text attribute, it is marked as a text and can be translated (e.g. name, description).
The translation process is supported by two tools that can be called from the content administration role. Choose Content Administration -->Portal Content Translation --> Translation Worklist Coordination or Worklist Translation. These tools are used to coordinate and to translate translation worklists.
[Translation Worklist Coordination|http://help.sap.com/saphelp_nw70/helpdata/EN/25/08174082fe1961e10000000a155106/content.htm]
[Worklist Translation|http://help.sap.com/saphelp_nw70/helpdata/EN/d4/be1640033ae569e10000000a155106/content.htm]
Regards,
srikanth
Similar Messages
-
How to change the ESS objects, iViews and Pages, translation in the portal?
Hello everyone,
I'd like to change the standard SAP translation for iView and Pages in the Portal level. Does anybody knows how to do this?
My landscape is NW2004s and ESS for ECC 6.0
Regards
Lucianoyou can change the standard SAP iViews and Pages using the Portal Content Translation feature of the Portal ( go to Content Administration->Portal Content Translation. Follow the instructions at
http://help.sap.com/saphelp_nw04/helpdata/en/25/08174082fe1961e10000000a155106/frameset.htm
all ESS iviews and pages have their content "ready for translation" and you can use the instructions above to translate that content.
Tiberiu
please award points if response was useful. -
Post Author: pranay
CA Forum: Crystal Reports
Hi ,
I have a Main report and a Sub report . When a subreport spans across multiple pages , the page header and page footer of the main report gets displayed along with it . I want to hide the Page Footer and Page Header of the main report when a sub report is displayed . Is there any way it could be acheived in Crystal Report 6.0.I am assuming you are talking about the JSControl dropdown menu navigation. The easiest way to hide Community pages is to disable the Below Banner View for that navigation scheme, although it also disables the Subcommunties, Related Communities and Go up to Parent Community links. If you still want these in below the banner menu you could not display Community Pages in the "In this Community" tab and only leave the "Community Members and Knowledge Directly" link in there.
You would think that it would be better to remove the "In this Community" tab althogether but it is tricky to remove it due to the fact that there needs to be a default horizontal menu displayed all the time. Not all Communities will have a Subcommunities or Related Communities tab so these communities would not display any below banner menus at all if there is no "In this Community" tab, which could be confusing. -
Standard iview and custom iview
Hi,
Have any one tried developing a custome MDM iview which displays the record details on click of a record in standard Result Set iview?
There is a section in portal content development guide called "Configuring Data Exchange (Eventing)" which deals with this scenario.
Please share your experience on the integration of Standard iview and custom iview.
I have already gone through the sdn article on "Integrating MDM Item Details iView into a WebDynpro Application".
Thanks and best regards,
Arun prabhu SCustom Event Name - EPCFgetRecordByIds
Any name will do here, so this is fine
Event Type - EPCF ; Record Event
Correct again
Target (URL or Event Name) - getRecordByIds
Again,... Any name will do here (this is what you will use in the wdDoInit to subscribe to)
Namespace - urn:com.sap.pct.mdm.appl.masteriviews (?. not sure abt this)
Though it should not cause an issue I would use something else, this might interfere with the standard iViews events (though they will probably have different event names). You should be able to just come up with your own namespace here
Auto-Fire on Row Select - Yes
Correct
Parameter Format - Standard
Correct
Mapped Field - Record ID
Here you select all fields you like to know the values of in the action-method of your webdynpro. Most likely this is record id or some other unique identifier of the record.
Parameter name - ?
Just give any parameter name. You will use this name to find that specific parameter in the string of your action method.
I want the MDM record id of the selected record as an input.
This is in the string if you configured the iView as above. Just print it to the screen on the action method.
Can you please help me tell me how the record id gets passed from standard iview to custom iview?
That should already happen by the subscribing to the event you did in the wdDoInit. Welcome to the wonderful world of eventing
Jurjen -
hi,
I created index with portal roles search as service and assigned PCD content in repository as datasource. But when i search the iviews and pages that are created by me under portal content, TREX could not show those results. What should I do to enable iview and page search?
Please do help me....
Regards,
GaneshHi Ganesh,
> searching the iview/pages which were created
> by the particular logged on user
That sounds like a misunderstanding. It's not the question if the logged on user has created the elements, but if they are part of his role; who has created them doesn't matter at all.
Re-check your siutation under this point of view.
If you have followed all steps described on help.sap.com and still don't get the results you expect, consider opening an OSS message. I have no time at the moment to check if it's working on my site, sorry.
Hope it helps
Detlev -
Handling standard iview event from web dynpro
Hi all,
I hav w a search iView which is SAP standard, when you click an element on the result list it triggers an event. The link contains the following:
javascript:{jsCode="
EPCM.storeClientData('urn:com.sap.bor:BUS1001','objid','12002');
EPCM.storeClientData('urn:com.sap.bor:BUS1001','AllKeys','objid');
EPCM.raiseEvent('urn:com.sap.bor:BUS1001','select','','a very long url');"};if(opener!=null&&self!=opener){opener.execJS(jsCode);}else{execJS(jsCode);};
On the other side I'm developing a custom WebDynpro iView whick needs to handle this event. By adding to wdInit() the line WDPortalEventing.subscribe("urn:com.sap.bor:BUS1001", "select", wdThis.wdGetGetReportsListForMaterialAction()); I was able to catch the event. But I can't get the parameters from the event.
For what i've learned browsing the forum the javascript code above stores the parameters in the "client data bag", and are not directly passed in the event.
Is there any way to retrieve these parameters from the Web Dynpro iView ?
Thanks in advance,
Diego.Hi all,
As a workaround I made a Portal Component application which receives the event and parameters from the standard iView and lanuchs a new event setting the aprameters in the event as Web Dynpro expects them (without using the client databag). Then I inserted this Iview in the same page as the others, but hidden. It's not elegant but is working. -
MDM Custom Iview and Standard Iview Portal Eventing
Hi
I'm trying to develop a custom iview which updates a Standard MDM Result Set iview:
I found this documentation:
http://help.sap.com/saphelp_mdm550/helpdata/en/45/c87cfd43e56f75e10000000a1553f6/frameset.htm
https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/12195312-0e01-0010-a392-debbd32e39d4
So i created an iview which raises this event
WDPortalEventing.fire("urn:com.sap.pct.mdm.appl.masteriviews","updateSearch","ID=115551&RefreshSearch=True");
Then i upladed my code in the portal, created a new iview and put it in the same page with a Result Set iview. During testing when i rise the event form the custom iview, the standard Result Set catch this event but instead of update it gives the following error:
Error occurred: Error performing search. com.sap.mdm.internal.protocol.manual.ServerException: Illegal value for parameter, com.sap.mdm.internal.protocol.manual.ServerException: Illegal value for parameter (see log for details)
In SDN there is a thread with the same problem (Search Standard iView + Search Custom iView) which is not solved.
Can somebody help me ?sorry, I have same task and tried same code for my alias, table and field.
WDPortalEventing.fire("urn:com.sap.pct.mdm.appl.masteriviews",
"updateSearch",
"MDMSystemAlias=NSI_PRODUCTION_ALIAS&MDMTableName=Assets&R3Code=411000000000000006&RefreshSearch=True");
I fire event (for my alias, table and field)
but not any resultset or Current Search on page is catching this search.
please provide which options must be set made for views on page so that result set to be updated,
I hope this may help
does it need to add some custom event to result set?
thanks
Edited by: Ivan Ivanov on Aug 21, 2009 3:49 PM -
Multi-Language - How to change labels and titles of standard iViews?
Hi Portal Content Management Gurus,
I would like to know how to translate the text parts of the standard SAP provided iViews in order to support multiple languages?
I tried the Translation Worklist Coordination and Translation Worklist facilities provided in the portal. But not able to figure out where I am making the mistake. I am not able to get the translated iViews. I also checked the "include dependent objects" option. But not able to find out where will the generated resource bundles will be available.
Can any body guide me?
Thanks & best regds,
AlagHi Saravanan,
I just tried changing the browser language. I am not able to see the "Content Provided by SAP" folder itself under the "Portal-Content" directory.
(1) Is there anything else I need to do in order to see that folder?
And when I try previewing the iViews after changing the browser language, still the iView content is displayed in English.
(2) Can I make a copy of this iView and edit change the language property to some other language say "German"? In that case, I will have to maintain multiple copies of the same object. But I tried creating a delta link copy of the object. But was not able to edit and change the language.
(3) Or do I have to edit it in the par file of the corresponding iView?
best regds,
Alagammai. -
FF 6 "Page Setup" missing "Format & Options" and "Margins & Header/Footer" tabs
Running 6.0.1 or 6.0.2 on FreeBSD 8.2-STABLE when I select File->Page Setup the standard popup window no longer has tabs for "Format & Options" and "Margins & Header/Footer" that I see on Windows XP when running 6.0.2 - this would be okay were it not for the fact that printing (using CUPS on FreeBSD) no longer prints the headers and footers (which I see just fine when I do Print Preview) something in FF 6.x has regressed and is affecting Page Setup.
Yep, this I know. And have long since done this (probably before FireFox was called Mozilla). In fact my margins are set the way I want them (and have been unchanged for years - at least since 2006). That was the first thing I checked.
The fact is ever since I upgrated to 6.01 from 5.x (which was a few weeks ago) my printing from FF6 has not included the footers and headers. As I've said, I can see my footers and headers when I perform Print Preview, but they do not appear on the printed page(s), I truly believe this is changed behaviour due to the upgrade to FF6. Next week I will try a screen capture of my Print Preview to include an image for the "Add images:" feature when posting a reply, but I don't know how to show the physical printed page lacking those same headers and footers short of shooting a photograph with a macro lens and including that as an image. Therefore for now, you will just have to take my word for the fact of missing footers and headers. Also, next week I would be able to post here my about:config settings for the margin preferences which I assure you have remained unchanged for several years. FWIW, printing from Opera 11.11 to the same printer from the same workstation where FF6 is running does include my footers and headers. To my thinking this fairly much puts the blame for this problem on FF6. Thanks. -
CTRL-E Loads ICE Toolbars and Standard Error 404 Page
I have a site registered with InContext. I have one editable region in index.php. When I click ctrl-e, ICE loads all toolbars, however instead of loading my index.php file, it displays the default standard Error 404 page within the ICE framework.
What information do I need to supply so that someone can help.
Thanks
LoyceOkay. I use 1and1 as my hosting provider and it seems they use sedo domain parking as a revenue stream. So when a HTTP HEAD request is recieved it returns 200 OK even for pages that do not exist and then redirects to an ERROR 404 which contains advertisements. I don't really like this, but you can turn it off and see a standard, generic error page or use custom error pages, however this does not change how the server handles pages that do not exist.
Your solution to go to the InContext Editing Administration Panel and simply "Save" the site settings for this site. Will not work for me because when
ICE automatically checks if it can use HEAD requests on my server it finds that it can and never falls back to the alternate method of FTP.
If I had the option to force the use of FTP, all of my problems would vanish.
I have a request in with 1and1 to address this issue, however I see no reason for them to comply.
I can manually copy my index.php file to index_draft.php and everything will work again until the draft is published or deleted. For now, I plan to edit the ice.js file to check if the file exists and if not, copy the original.php to original_draft.php so that i can bypass this issue for now.
Is there a way to force the HTTP HEAD request to fail on my server?
Anyway, that is where I am so far on this..
Mr Popa, do you have any other thoughts on this so far?
Thanks for your time. -
Pages 5.5.1: When opening a document created with Pages '09 (Version 4.0) with Pages 5.5.1 the page header and the page footer are deleted. How can this be prevented? Or is this a bug in Pages 5.5.1?
Same problem here (no graphics in header or footer) and the problem has been reported months ago. It is another bug/feature lost when Apple moves from 09 to the iCloud-compatible versions. Complain to Apple, you may have better chance than me and they may finally listen to their users....
-
Master Page Header and Footer in Page Viewer Web Part
Hi.
I created a View in Pages Library to view specific folders.
After that i added one Page Viewer web part to one of the aspx page.
There in the Page Viewer web part properties Link i have provided the url of the view.
It is displaying the folders but at the same time it is displaying the master page header and footer inside the web part.
Now i need to display the folders alone inside the Page Viewer web part.
Please let me know how to exclude the master page header and footer inside the Page Viewer web part?
Regards,
Sudheer
Thanks & Regards, SudheerI think that is the default behavior of the page viewer webpart.
In the page viewer web part,your just enter the url of the website.So that is treated as webpage and it is displaying as per page.
http://meritsolutions.com/meritmatters/archives/576-Displaying-a-File,-Folder-or-Web-Page-in-the-Page-Viewer-Web-Part.html
If you want to display a folder, type in a network path to that folder under Link and the folder content will be displayed.
Find the more details about page viewer webpart in msdn
http://office.microsoft.com/en-in/sharepoint-server-help/page-viewer-web-part-HA010024045.aspx -
Page Header and Footer in Printer Friendly mode
Hi,
I have a report which has more than 500 rows and I want to print them.
The printer friendly mode works fine, but is it possible that there is a page "header" and "footer" on every page which is printed?
For example, that the column headings are on every page which was printed?
Or that at the bottom of each page is the page number displayed?
Does anyone have an idea?
Thanks,
TimIE and Firefox are designed for WEB pages.
WEB pages are on Internet. Security is important and browser should not compromise user to use it.
Many users=Many printers!
If you want to write app for especially one printer and know users (Intranet application) then here is what you can do:
1) Use IE
2) write your own ocx with interface for your needs.
3) every user should implement this ocx in their browser.
4) When they accept your ocx, then in this "small app" you could do as much as this user can do on their own windows. So setting printer, orientation and size is a peace of cake.
5) make your report regarding this printer
And this is it!
And few other things...
If user choose larger font then your HTML is broken!!!
For that I think that PL/PDF or Mail merge is better solution! -
How to set a page header and footer of an excel file i'm creating
Hello !
SORRY MY ENGLISH is very BAD.
I tried to set page header and footer in Excel sheet with ABAP ole
DATA : BEGIN OF enter,
x(1) TYPE x VALUE '0D',
END OF enter.
DATA : format(255) TYPE c.
FORM set_page_sheet.
CALL METHOD OF excel 'ActiveSheet' = sheet.
CALL METHOD OF sheet 'PageSetup' = pagesetup.
SET PROPERTY OF pagesetup 'Orientation' = xllandscape.
SET PROPERTY OF pagesetup 'PrintTitleRows' = '$9:$12'.
CLEAR format.
ERROR
CONCATENATE 'PAGESHEET' enter-x 'PAGE &P/&N' INTO format.
ERROR
SET PROPERTY OF pagesetup 'RightHeader' = format.
CLEAR format.
CONCATENATE ' Text 1 ' enter-x 'Text 2'
enter-x 'Text 3 ' INTO format.
SET PROPERTY OF pagesetup 'RightFooter' = format.
FREE OBJECT pagesetup.
ENDFORM. " set_page_sheet
Activate report -
ERROR - The enter-x must by data type c or another then data type x
Thanks for answer.Try to define ENTER this way & try
class cl_abap_char_utilities definition load.
DATA : BEGIN OF enter,
x type c value cl_abap_char_utilities=>cr_lf,
END OF enter.
PS : I am not 100% sure about this.
a® -
I need page no's and top of page header to every page
Hi Experts,
i need page no's and top of page header to every page
to this report.
i took print outs it came only page number 1 to all the pages, after took prints it seems header to all the pages
but not displaying in output screen.
TYPE-POOLS: SLIS.
TABLES: MKPF,LFA1,MSEG,EKET,T001L,MAKT,S031,S032,MARA,LIPS,LIKP,T001W.
DATA FLAG TYPE I.
DATA : MENGE_RE LIKE MSEG-MENGE,
MENGE_IS LIKE MSEG-MENGE,
MENGE_O LIKE MSEG-MENGE,
MENGE_BAL LIKE MSEG-MENGE.
DATA MAGBB LIKE S031-MAGBB.
DATA MZUBB LIKE S031-MZUBB.
DATA V_MONTH LIKE S031-SPMON.
DATA XBLNR LIKE MKPF-XBLNR.
DATA : BEGIN OF ITAB1 OCCURS 100,
MATNR LIKE MAKT-MATNR,
END OF ITAB1.
DATA : BEGIN OF ITAB2 OCCURS 100,
MATNR LIKE MAKT-MATNR,
WERKS LIKE MARD-WERKS,
LGORT LIKE MARD-LGORT,
BUSTW LIKE MSEG-BUSTW,
BWART LIKE MSEG-BWART,
SHKZG LIKE MSEG-SHKZG,
MENGE LIKE MSEG-MENGE,
END OF ITAB2.
DATA: PAGNO(5) TYPE C.
DATA : PAGENO LIKE SY-PAGNO.
DATA: STR1 TYPE DATS,
STR2(14) TYPE C,
STR3(10) TYPE C.
DATA : V_MONUM LIKE T015M-MONUM,
V_MONAM LIKE T015M-MONAM.
TYPES: FARBE TYPE SLIS_T_SPECIALCOL_ALV.
DATA V_STOCK LIKE MSEG-MENGE.
DATA V_STOCK1 LIKE MSEG-MENGE.
DATA: V_MONTH1 LIKE S031-SPMON.
DATA: OSTOCK LIKE MSEG-MENGE.
CONSTANTS:
GC_FORMNAME_TOP_OF_PAGE TYPE SLIS_FORMNAME VALUE 'TOP_OF_PAGE'.
DATA: GT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,
GT_LAYOUT TYPE SLIS_LAYOUT_ALV,
GS_KEYINFO TYPE SLIS_KEYINFO_ALV,
GT_SORT TYPE SLIS_T_SORTINFO_ALV,
GT_SP_GROUP TYPE SLIS_T_SP_GROUP_ALV,
GT_EVENTS TYPE SLIS_T_EVENT,
G_PRINT TYPE SLIS_PRINT_ALV.
DATA: LS_FIELDCAT TYPE SLIS_FIELDCAT_ALV OCCURS 0 WITH HEADER LINE.
DATA: FC_HIER TYPE SLIS_FIELDCAT_ALV OCCURS 0 WITH HEADER LINE.
DATA: GT_LIST_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER.
DATA: GT_REPID LIKE SY-REPID.
DATA: GT_TOP_OF_PAGE TYPE SLIS_FORMNAME VALUE 'TOP_OF_PAGE'.
DATA: GT_TOP_OF_LIST TYPE SLIS_FORMNAME VALUE 'TOP_OF_LIST'.
DATA: FLD(15).
DATA: TXT(50).
I N I T I A L I Z A T I O N
GT_REPID = SY-REPID.
PAGNO = SY-PAGNO.
PERFORM EVENTTAB_BUILD USING GT_EVENTS[].
A T S E L E C T I O N S C R E E N
*AT SELECTION-SCREEN ON BUDAT.
PERFORM VALIDATION.
S T A R T O F S E L E C T I O N
START-OF-SELECTION.
PERFORM FIELDCAT_INIT USING GT_FIELDCAT[].
PERFORM FETCH_DATA.
E N D O F S E L E C T I O N
END-OF-SELECTION.
IF NOT ITAB2[] IS INITIAL.
PERFORM COMMENT_BUILD USING GT_LIST_TOP_OF_PAGE[].
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = GT_REPID
IT_FIELDCAT = GT_FIELDCAT[]
IT_EVENTS = GT_EVENTS[]
IT_SORT = GT_SORT[]
IS_LAYOUT = GT_LAYOUT
TABLES
T_OUTTAB = ITAB2.
ELSE.
MESSAGE S006(Z1).
ENDIF.
CLEAR : GT_LAYOUT.
Report Selections
DATA: BEGIN OF IT_HEADER OCCURS 10,
WERKS LIKE MSEG-WERKS,
NAME1 LIKE T001W-NAME1,
MAKTX LIKE MAKT-MAKTX,
MATNR LIKE MSEG-MATNR,
MENGE_O LIKE MSEG-MENGE,
END OF IT_HEADER.
DATA: BEGIN OF ITAB OCCURS 50,
WERKS LIKE MSEG-WERKS,
MATNR LIKE MSEG-MATNR,
BWART LIKE MSEG-BWART,
LGORT LIKE MSEG-LGORT,
EBELN LIKE MSEG-EBELN,
XBLNR LIKE MKPF-XBLNR,
BUDAT LIKE MKPF-BUDAT,
MBLNR LIKE MSEG-MBLNR,
MENGE LIKE MSEG-MENGE,
MAKTX LIKE MAKT-MAKTX,
XAUTO LIKE MSEG-XAUTO,
NAME1 LIKE T001W-NAME1,
MENGE_O LIKE MSEG-MENGE,
SHKZG LIKE MSEG-SHKZG,
MENGE_IS LIKE MSEG-MENGE,
MENGE_RE LIKE MSEG-MENGE,
END OF ITAB.
DATA: BEGIN OF INT_DATA OCCURS 50,
WERKS LIKE MSEG-WERKS,
MATNR LIKE MSEG-MATNR,
BWART LIKE MSEG-BWART,
XBLNR LIKE MKPF-XBLNR,
MBLNR LIKE MSEG-MBLNR,
BUDAT LIKE MKPF-BUDAT,
MAKTX LIKE MAKT-MAKTX,
MENGE_O LIKE MSEG-MENGE,
MENGE_R LIKE MSEG-MENGE,
MENGE_TO LIKE MSEG-MENGE,
MENGE_TI LIKE MSEG-MENGE,
MENGE_S LIKE MSEG-MENGE,
MENGE_ST LIKE MSEG-MENGE,
MENGE_AD LIKE MSEG-MENGE,
MENGE_RT LIKE MSEG-MENGE,
MENGE_C LIKE MSEG-MENGE,
MENGE_CL LIKE MSEG-MENGE,
MENGE_BAL LIKE MSEG-MENGE,
MENGE_CR LIKE MSEG-MENGE,
NAME1 LIKE T001W-NAME1,
MENGE_RE LIKE MSEG-MENGE,
MENGE_IS LIKE MSEG-MENGE,
MENGE_BAL1 LIKE MSEG-MENGE,
SHKZG LIKE MSEG-SHKZG,
MENGE LIKE MSEG-MENGE,
END OF INT_DATA.
DATA: BEGIN OF INT_DATA1 OCCURS 50,
WERKS LIKE MSEG-WERKS,
MATNR LIKE MSEG-MATNR,
BWART LIKE MSEG-BWART,
MENGE_ST LIKE MSEG-MENGE,
MENGE_O LIKE MSEG-MENGE,
WAMNG LIKE EKET-WAMNG,
WEMNG LIKE EKET-WEMNG,
MENGE LIKE MSEG-MENGE,
RETPO LIKE EKPO-RETPO,
UMREN LIKE EKPO-UMREN,
UMREZ LIKE EKPO-UMREZ,
BSTMG LIKE EKPO-MENGE,
XBLNR LIKE MKPF-XBLNR,
END OF INT_DATA1.
DATA: BEGIN OF INT_DATA2 OCCURS 50,
WERKS LIKE MSEG-WERKS,
LGORT LIKE S031-LGORT,
MATNR LIKE MSEG-MATNR,
BWART LIKE MSEG-BWART,
MENGE_IS LIKE MSEG-MENGE,
MBWBEST LIKE S032-MBWBEST,
MAKTX LIKE MAKT-MAKTX,
END OF INT_DATA2.
DATA:V_GJAHR LIKE MKPF-BUDAT.
DATA : FLAG6 TYPE C,
PAGENO1 LIKE SY-PAGNO,
PAGENO2 LIKE SY-PAGNO.
SELECTION-SCREEN BEGIN OF BLOCK 0 WITH FRAME TITLE TEXT-064.
SELECT-OPTIONS:
MATNR FOR MSEG-MATNR,
MATKL FOR MARA-MATKL OBLIGATORY,
WERKS FOR MSEG-WERKS OBLIGATORY,
LGORT FOR MSEG-LGORT,
*CHARG FOR MSEG-CHARG,
BWART FOR MSEG-BWART,
*LIFNR FOR LFA1-LIFNR,
*WADAT FOR LIKP-WADAT_IST,
BUDAT FOR MKPF-BUDAT.
SELECTION-SCREEN END OF BLOCK 0.
*SELECTION-SCREEN SKIP 1.
Parameters
*SELECTION-SCREEN SKIP 1.
Variante
*SELECTION-SCREEN BEGIN OF BLOCK 0 WITH FRAME TITLE TEXT-064.
DATA: P_VARI LIKE DISVARIANT-VARIANT.
*SELECTION-SCREEN END OF BLOCK 0.
Layout
SELECTION-SCREEN BEGIN OF BLOCK A WITH FRAME TITLE TEXT-060.
DATA: P_ZEBRA VALUE 'X'.
SELECTION-SCREEN END OF BLOCK A.
SELECTION-SCREEN BEGIN OF BLOCK D WITH FRAME TITLE TEXT-063.
PARAMETERS:
P_EXPAND AS CHECKBOX DEFAULT ' '.
DATA: P_DETPOP VALUE 'X' .
SELECTION-SCREEN END OF BLOCK D.
DATA: G_BOXNAM TYPE SLIS_FIELDNAME VALUE 'BOX',
G_EXPANDNAME TYPE SLIS_FIELDNAME VALUE 'EXPAND',
P_F2CODE LIKE SY-UCOMM VALUE '&ETA',
P_LIGNAM TYPE SLIS_FIELDNAME VALUE 'LIGHTS',
G_SAVE(1) TYPE C,
G_TABNAME_HEADER TYPE SLIS_TABNAME,
G_TABNAME_ITEM TYPE SLIS_TABNAME,
G_EXIT(1) TYPE C,
GX_VARIANT LIKE DISVARIANT,
G_VARIANT LIKE DISVARIANT.
INITIALIZATION.
GT_REPID = SY-REPID.
G_TABNAME_HEADER = 'IT_HEADER'.
G_TABNAME_ITEM = 'INT_DATA'.
define keyinfo
CLEAR GS_KEYINFO.
GS_KEYINFO-HEADER01 = 'MATNR'.
GS_KEYINFO-ITEM01 = 'MATNR'.
*GS_KEYINFO-HEADER01.
PERFORM E01_FIELDCAT_INIT USING GT_FIELDCAT[].
PERFORM E03_EVENTTAB_BUILD USING GT_EVENTS[].
PERFORM E04_COMMENT_BUILD USING GT_LIST_TOP_OF_PAGE[].
PERFORM E06_T_SORT_BUILD USING GT_SORT[].
PERFORM E07_SP_GROUP_BUILD USING GT_SP_GROUP[].
Schalter Varianten benutzerspezifisch/allgemein speicherbar setzen
Set Options: save variants userspecific or general
G_SAVE = 'A'.
PERFORM VARIANT_INIT.
Get default variant
GX_VARIANT = G_VARIANT.
CALL FUNCTION 'REUSE_ALV_VARIANT_DEFAULT_GET'
EXPORTING
I_SAVE = G_SAVE
CHANGING
CS_VARIANT = GX_VARIANT
EXCEPTIONS
NOT_FOUND = 2.
IF SY-SUBRC = 0.
P_VARI = GX_VARIANT-VARIANT.
ENDIF.
Process on value request
*AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_VARI.
PERFORM F4_FOR_VARIANT.
AT SELECTION-SCREEN.
PERFORM PAI_OF_SELECTION_SCREEN.
START-OF-SELECTION.
END-OF-SELECTION.
PERFORM LAYOUT_BUILD USING GT_LAYOUT. "wg. Parameters
Call ABAP/4 List Viewer
CALL FUNCTION 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = GT_REPID
IS_LAYOUT = GT_LAYOUT
IT_FIELDCAT = GT_FIELDCAT[]
IT_SPECIAL_GROUPS = GT_SP_GROUP[]
IT_SORT = GT_SORT[]
I_SAVE = G_SAVE
IS_VARIANT = G_VARIANT
IT_EVENTS = GT_EVENTS[]
I_TABNAME_HEADER = G_TABNAME_HEADER
I_TABNAME_ITEM = G_TABNAME_ITEM
IS_KEYINFO = GS_KEYINFO
IS_PRINT = G_PRINT
TABLES
T_OUTTAB_HEADER = IT_HEADER
T_OUTTAB_ITEM = INT_DATA.
FORM E01_FIELDCAT_INIT *
--> E01_LT_FIELDCAT *
FORM FIELDCAT_INIT
USING RT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV.
DATA: LS_FIELDCAT TYPE SLIS_FIELDCAT_ALV.
DATA: POS TYPE I VALUE 1.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'WERKS'.
LS_FIELDCAT-TABNAME = G_TABNAME_HEADER .
LS_FIELDCAT-SELTEXT_L = 'Plant'.
APPEND LS_FIELDCAT TO RT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'NAME1'.
LS_FIELDCAT-TABNAME = G_TABNAME_HEADER .
LS_FIELDCAT-SELTEXT_L = 'Description'.
APPEND LS_FIELDCAT TO RT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'MATNR'.
LS_FIELDCAT-TABNAME = G_TABNAME_HEADER .
LS_FIELDCAT-SELTEXT_M = 'Material'.
APPEND LS_FIELDCAT TO RT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'MAKTX'.
LS_FIELDCAT-TABNAME = G_TABNAME_HEADER .
LS_FIELDCAT-SELTEXT_M = 'Material Description'.
APPEND LS_FIELDCAT TO RT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'XBLNR'.
LS_FIELDCAT-TABNAME = G_TABNAME_ITEM .
LS_FIELDCAT-SELTEXT_M = ' Doc No.'.
APPEND LS_FIELDCAT TO RT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'BUDAT'.
LS_FIELDCAT-TABNAME = G_TABNAME_ITEM .
LS_FIELDCAT-SELTEXT_M = ' Doc Date.'.
APPEND LS_FIELDCAT TO RT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'BWART'.
LS_FIELDCAT-TABNAME = G_TABNAME_ITEM .
LS_FIELDCAT-SELTEXT_M = ' Mvt.'.
APPEND LS_FIELDCAT TO RT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'MBLNR'.
LS_FIELDCAT-TABNAME = G_TABNAME_ITEM .
LS_FIELDCAT-SELTEXT_M = ' Mat.Doc No'.
APPEND LS_FIELDCAT TO RT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'MENGE_R'.
LS_FIELDCAT-TABNAME = G_TABNAME_ITEM .
LS_FIELDCAT-SELTEXT_M = ' STO-In '.
APPEND LS_FIELDCAT TO RT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'MENGE_RT'.
LS_FIELDCAT-TABNAME = G_TABNAME_ITEM .
LS_FIELDCAT-SELTEXT_M = ' Sales Returns '.
APPEND LS_FIELDCAT TO RT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'MENGE_CL'.
LS_FIELDCAT-TABNAME = G_TABNAME_ITEM .
LS_FIELDCAT-SELTEXT_M = ' Canc of Invoice'.
APPEND LS_FIELDCAT TO RT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'MENGE_AD'.
LS_FIELDCAT-TABNAME = G_TABNAME_ITEM .
LS_FIELDCAT-SELTEXT_M = ' Adjustments '.
APPEND LS_FIELDCAT TO RT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'MENGE_S'.
LS_FIELDCAT-TABNAME = G_TABNAME_ITEM .
LS_FIELDCAT-SELTEXT_M = ' Sales. '.
APPEND LS_FIELDCAT TO RT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'MENGE_TO'.
LS_FIELDCAT-TABNAME = G_TABNAME_ITEM .
LS_FIELDCAT-SELTEXT_M = ' STO-Out '.
APPEND LS_FIELDCAT TO RT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'MENGE_CR'.
LS_FIELDCAT-TABNAME = G_TABNAME_ITEM .
LS_FIELDCAT-SELTEXT_M = ' Canc of Sal Returns'.
APPEND LS_FIELDCAT TO RT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'MENGE_AD'.
LS_FIELDCAT-TABNAME = G_TABNAME_ITEM .
LS_FIELDCAT-SELTEXT_M = 'Adjustments '.
APPEND LS_FIELDCAT TO RT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'MENGE_O'.
LS_FIELDCAT-TABNAME = G_TABNAME_ITEM .
LS_FIELDCAT-SELTEXT_M = ' Opening Balance '.
LS_FIELDCAT-NO_ZERO = 'X'.
APPEND LS_FIELDCAT TO RT_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'MENGE_BAL'.
LS_FIELDCAT-TABNAME = G_TABNAME_ITEM .
LS_FIELDCAT-SELTEXT_M = ' Balance '.
APPEND LS_FIELDCAT TO RT_FIELDCAT.
ENDFORM. "E01_FIELDCAT_INIT
FORM E02_DATA_ADD *
--> E02_LT_SFLIGHT *
FORM E03_EVENTTAB_BUILD *
--> E03_LT_EVENTS *
*FORM E03_EVENTTAB_BUILD USING E03_LT_EVENTS TYPE SLIS_T_EVENT.
DATA: LS_EVENT TYPE SLIS_ALV_EVENT.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
I_LIST_TYPE = 1
IMPORTING
ET_EVENTS = E03_LT_EVENTS.
READ TABLE E03_LT_EVENTS WITH KEY NAME = SLIS_EV_TOP_OF_PAGE
INTO LS_EVENT.
IF SY-SUBRC = 0.
MOVE GC_FORMNAME_TOP_OF_PAGE TO LS_EVENT-FORM.
APPEND LS_EVENT TO E03_LT_EVENTS.
ENDIF.
*ENDFORM. "E03_EVENTTAB_BUILD
FORM E04_COMMENT_BUILD *
--> E04_LT_TOP_OF_PAGE *
FORM E04_COMMENT_BUILD USING E04_LT_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER.
DATA: LS_LINE TYPE SLIS_LISTHEADER.
Listenüberschrift: Typ H
CLEAR LS_LINE.
LS_LINE-TYP = 'H'.
LS_LINE-INFO = TEXT-001.
APPEND LS_LINE TO E04_LT_TOP_OF_PAGE.
CLEAR LS_LINE.
LS_LINE-TYP = 'S'.
LS_LINE-KEY = TEXT-050.
LS_LINE-INFO = TEXT-010.
APPEND LS_LINE TO E04_LT_TOP_OF_PAGE.
LS_LINE-KEY = TEXT-051.
APPEND LS_LINE TO E04_LT_TOP_OF_PAGE.
Aktionsinfo: Typ A
CLEAR LS_LINE.
LS_LINE-TYP = 'A'.
LS_LINE-INFO = TEXT-002.
APPEND LS_LINE TO E04_LT_TOP_OF_PAGE.
ENDFORM. "E04_COMMENT_BUILD
FORM E05_LAYOUT_BUILD *
<-> E05_LS_LAYOUT *
FORM LAYOUT_BUILD USING LS_LAYOUT TYPE SLIS_LAYOUT_ALV.
LS_LAYOUT-F2CODE = P_F2CODE.
LS_LAYOUT-ZEBRA = P_ZEBRA.
LS_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.
IF P_EXPAND = 'X'.
LS_LAYOUT-EXPAND_FIELDNAME = G_EXPANDNAME.
ELSE.
CLEAR LS_LAYOUT-EXPAND_FIELDNAME.
ENDIF.
LS_LAYOUT-DETAIL_POPUP = P_DETPOP.
ENDFORM. "E05_LAYOUT_BUILD
FORM E06_T_SORT_BUILD *
--> E06_LT_SORT *
*FORM E06_T_SORT_BUILD USING E06_LT_SORT TYPE SLIS_T_SORTINFO_ALV.
DATA: LS_SORT TYPE SLIS_SORTINFO_ALV.
CLEAR LS_SORT.
LS_SORT-FIELDNAME = 'WERKS'.
LS_SORT-TABNAME = G_TABNAME_HEADER.
LS_SORT-SPOS = 1.
LS_SORT-UP = 'X'.
APPEND LS_SORT TO E06_LT_SORT.
CLEAR LS_SORT.
LS_SORT-FIELDNAME = 'MATNR'.
LS_SORT-TABNAME = G_TABNAME_ITEM.
LS_SORT-SPOS = 2.
LS_SORT-UP = 'X'.
APPEND LS_SORT TO E06_LT_SORT.
*ENDFORM. "E06_T_SORT_BUILD
FORM E07_SP_GROUP_BUILD *
--> E07_LT_SP_GROUP *
FORM E07_SP_GROUP_BUILD USING E07_LT_SP_GROUP TYPE SLIS_T_SP_GROUP_ALV.
DATA: LS_SP_GROUP TYPE SLIS_SP_GROUP_ALV.
CLEAR LS_SP_GROUP.
LS_SP_GROUP-SP_GROUP = 'A'.
LS_SP_GROUP-TEXT = TEXT-005.
APPEND LS_SP_GROUP TO E07_LT_SP_GROUP.
ENDFORM. "E07_SP_GROUP_BUILD
FORM SELECTION *
FORM FETCH_DATA .
STR3 = BUDAT-LOW+0(4).
SELECT * FROM MARA INTO CORRESPONDING FIELDS OF TABLE ITAB1
WHERE MATNR IN MATNR AND
MATKL IN MATKL.
SELECT MATNR WERKS LGORT
INTO TABLE ITAB2
FROM MARD FOR ALL ENTRIES IN ITAB1
WHERE WERKS IN WERKS AND
LGORT IN LGORT AND
MATNR = ITAB1-MATNR.
SELECT SINGLE NAME1 FROM T001W INTO INT_DATA-NAME1
WHERE WERKS = INT_DATA-WERKS.
LOOP AT ITAB2.
SELECT M~MATNR M~WERKS M~LGORT M~MENGE M~MBLNR M~MJAHR M~XAUTO M~SHKZG
M~BWART M~EBELN N~BUDAT N~XBLNR S~NAME1
INTO CORRESPONDING FIELDS OF ITAB
FROM MSEG AS M INNER JOIN MKPF AS N ON
M~MBLNR = N~MBLNR
AND M~MJAHR = N~MJAHR
INNER JOIN T001W AS S ON
M~WERKS = S~WERKS
WHERE N~BUDAT IN BUDAT AND
M~WERKS = ITAB2-WERKS AND
M~LGORT = ITAB2-LGORT AND
M~MATNR = ITAB2-MATNR AND
M~BWART IN BWART.
APPEND ITAB.
CLEAR ITAB.
ENDSELECT.
IF SY-SUBRC NE 0.
ITAB-MATNR = ITAB2-MATNR.
ITAB-WERKS = ITAB2-WERKS.
ITAB-LGORT = ITAB2-LGORT.
ITAB-BWART = ITAB2-BWART.
APPEND ITAB.
ENDIF.
CLEAR: ITAB2,ITAB.
ENDLOOP.
DELETE ADJACENT DUPLICATES FROM ITAB2 COMPARING MATNR WERKS .
V_MONTH = BUDAT-LOW+0(6).
SELECT * INTO CORRESPONDING FIELDS OF TABLE INT_DATA2
FROM S032 FOR ALL ENTRIES IN ITAB2
WHERE MATNR = ITAB2-MATNR
AND WERKS = ITAB2-WERKS
AND LGORT = SPACE
AND MBWBEST <> SPACE.
LOOP AT INT_DATA2 .
SELECT SINGLE * FROM S031
WHERE MATNR = INT_DATA2-MATNR AND
WERKS = INT_DATA2-WERKS AND
LGORT = SPACE AND
SPMON GT V_MONTH.
MODIFY INT_DATA2.
CLEAR: INT_DATA2, S031.
ENDLOOP.
DELETE INT_DATA WHERE MENGE_O IS INITIAL .
DELETE ADJACENT DUPLICATES FROM INT_DATA COMPARING XBLNR MATNR MAKTX.
V_MONTH1 = BUDAT-LOW+0(6).
SORT ITAB BY MATNR WERKS XBLNR .
LOOP AT ITAB.
XBLNR = ITAB-XBLNR.
INT_DATA-MENGE = ITAB-MENGE.
INT_DATA-BWART = ITAB-BWART.
INT_DATA-XBLNR = ITAB-XBLNR.
INT_DATA-BUDAT = ITAB-BUDAT.
INT_DATA-MATNR = ITAB-MATNR.
INT_DATA-MBLNR = ITAB-MBLNR.
INT_DATA-MENGE = ITAB-MENGE.
INT_DATA-SHKZG = ITAB-SHKZG.
INT_DATA-MENGE_IS = ITAB-MENGE_IS.
INT_DATA-MENGE_RE = ITAB-MENGE_RE.
INT_DATA-MENGE_O = ITAB-MENGE_O.
INT_DATA-NAME1 = ITAB-NAME1.
AT NEW MATNR.
FLAG = 1.
IT_HEADER-MATNR = INT_DATA-MATNR.
SELECT SINGLE MAKTX FROM MAKT INTO IT_HEADER-MAKTX WHERE
MATNR = INT_DATA-MATNR.
APPEND IT_HEADER.
CLEAR IT_HEADER.
ENDAT.
IF FLAG = 1.
PERFORM GET_OPENING_STOCK.
ENDIF.
INT_DATA-MENGE_O = OSTOCK.
CASE ITAB-BWART.
WHEN '101'.
IF INT_DATA-SHKZG = 'S'.
INT_DATA-MENGE_R = INT_DATA-MENGE_R + ITAB-MENGE.
ENDIF.
WHEN '453'.
IF INT_DATA-SHKZG = 'S'.
IF ITAB-XAUTO = 'X'.
INT_DATA-MENGE_RT = INT_DATA-MENGE_RT + ITAB-MENGE.
ENDIF.
ENDIF.
WHEN '351' OR '641'.
IF ITAB-LGORT = 0.
INT_DATA-MENGE_R = INT_DATA-MENGE_R + ITAB-MENGE.
ELSE.
INT_DATA-MENGE_TO = INT_DATA-MENGE_TO + ITAB-MENGE.
ENDIF.
WHEN '602' OR '642'.
IF INT_DATA-SHKZG = 'S'.
IF ITAB-LGORT = 0.
INT_DATA-MENGE_CL = INT_DATA-MENGE_CL + ITAB-MENGE.
ENDIF.
ENDIF.
WHEN '552' OR '310'.
IF INT_DATA-SHKZG = 'S'.
INT_DATA-MENGE_AD = INT_DATA-MENGE_AD - ITAB-MENGE.
ENDIF.
WHEN '601'.
IF INT_DATA-SHKZG = 'H'.
INT_DATA-MENGE_S = INT_DATA-MENGE_S + ITAB-MENGE.
ENDIF.
WHEN '641' .
IF INT_DATA-SHKZG = 'H'.
IF ITAB-LGORT = 0.
INT_DATA-MENGE_TO = INT_DATA-MENGE_TO + ITAB-MENGE.
ENDIF.
ENDIF.
WHEN '454' OR '102'.
IF INT_DATA-SHKZG = 'H'.
IF ITAB-XAUTO = 'X'.
INT_DATA-MENGE_CR = INT_DATA-MENGE_CR - ITAB-MENGE.
ENDIF.
ENDIF.
WHEN '551' OR '309'.
IF INT_DATA-SHKZG = 'H'.
INT_DATA-MENGE_AD = INT_DATA-MENGE_AD + ITAB-MENGE.
ENDIF.
IF INT_DATA-SHKZG = 'S'.
MENGE_O = INT_DATA-MENGE_O + ITAB-MENGE.
ENDIF.
ENDCASE.
IF INT_DATA-SHKZG = 'S'.
MENGE_RE = INT_DATA-MENGE_R + INT_DATA-MENGE_RT + INT_DATA-MENGE_CL
+ INT_DATA-MENGE_AD.
ENDIF.
IF INT_DATA-SHKZG = 'H'.
MENGE_IS = INT_DATA-MENGE_S + INT_DATA-MENGE_TO +
INT_DATA-MENGE_CR + INT_DATA-MENGE_AD.
ENDIF.
PERFORM BALANCE.
COLLECT INT_DATA.
CLEAR: INT_DATA,ITAB ,XBLNR, FLAG, OSTOCK.
ENDLOOP.
SORT INT_DATA BY XBLNR BUDAT WERKS MATNR.
LOOP AT INT_DATA.
READ TABLE INT_DATA2 WITH KEY MATNR = INT_DATA-MATNR
WERKS = INT_DATA-WERKS.
SELECT SINGLE * FROM MAKT WHERE MATNR = INT_DATA-MATNR.
INT_DATA-MAKTX = MAKT-MAKTX.
MODIFY INT_DATA.
CLEAR: INT_DATA, INT_DATA2.
ENDLOOP.
LOOP AT INT_DATA WHERE MENGE_O = 0 AND MENGE_RT = 0 AND
MENGE_CL = 0 AND MENGE_AD = 0 AND
MENGE_S = 0 AND MENGE_TO = 0 AND
MENGE_CR = 0 AND MENGE_R = 0 AND MENGE_BAL = 0.
DELETE IT_HEADER WHERE MATNR = INT_DATA-MATNR.
ENDLOOP.
DELETE INT_DATA WHERE MENGE_O = 0 AND MENGE_RT = 0 AND
MENGE_CL = 0 AND MENGE_AD = 0 AND
MENGE_S = 0 AND MENGE_TO = 0 AND
MENGE_CR = 0 AND MENGE_R = 0 AND MENGE_BAL = 0.
ENDFORM. "SELECTION
*& Form EVENTTAB_BUILD
text
-->P_GT_EVENTS[] text
FORM EVENTTAB_BUILD USING RT_EVENTS TYPE SLIS_T_EVENT.
DATA: LS_EVENT TYPE SLIS_ALV_EVENT.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
I_LIST_TYPE = 1
IMPORTING
ET_EVENTS = RT_EVENTS.
READ TABLE RT_EVENTS WITH KEY NAME = SLIS_EV_TOP_OF_PAGE
INTO LS_EVENT.
IF SY-SUBRC = 0.
MOVE GT_TOP_OF_PAGE TO LS_EVENT-FORM.
APPEND LS_EVENT TO RT_EVENTS.
ENDIF.
ENDFORM. " EVENTTAB_BUILD
FORM TOP_OF_PAGE *
FORM TOP_OF_PAGE.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
I_LOGO = 'ENJOYSAP_LOGO'
IT_LIST_COMMENTARY = LT_TOP_OF_PAGE.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
I_LOGO = 'ENJOYSAP_LOGO'
IT_LIST_COMMENTARY = GT_LIST_TOP_OF_PAGE.
ENDFORM. "TOP_OF_PAGE
FORM F4_FOR_VARIANT *
FORM F4_FOR_VARIANT.
CALL FUNCTION 'REUSE_ALV_VARIANT_F4'
EXPORTING
IS_VARIANT = G_VARIANT
I_SAVE = G_SAVE
I_TABNAME_HEADER = G_TABNAME_HEADER
I_TABNAME_ITEM = G_TABNAME_ITEM
IMPORTING
E_EXIT = G_EXIT
ES_VARIANT = GX_VARIANT
EXCEPTIONS
NOT_FOUND = 2.
IF SY-SUBRC = 2.
MESSAGE ID SY-MSGID TYPE 'S' NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ELSE.
IF G_EXIT = SPACE.
P_VARI = GX_VARIANT-VARIANT.
ENDIF.
ENDIF.
ENDFORM. "F4_FOR_VARIANT
*& Form PAI_OF_SELECTION_SCREEN
text
FORM PAI_OF_SELECTION_SCREEN.
IF NOT P_VARI IS INITIAL.
MOVE G_VARIANT TO GX_VARIANT.
MOVE P_VARI TO GX_VARIANT-VARIANT.
CALL FUNCTION 'REUSE_ALV_VARIANT_EXISTENCE'
EXPORTING
I_SAVE = G_SAVE
CHANGING
CS_VARIANT = GX_VARIANT.
G_VARIANT = GX_VARIANT.
ELSE.
PERFORM VARIANT_INIT.
ENDIF.
ENDFORM. " PAI_OF_SELECTION_SCREEN
*& Form VARIANT_INIT
text
--> p1 text
<-- p2 text
FORM VARIANT_INIT.
CLEAR G_VARIANT.
G_VARIANT-REPORT = GT_REPID.
ENDFORM. " VARIANT_INIT
*& Form GET_OPENING_STOCK
text
FORM GET_OPENING_STOCK.
SELECT SUM( MZUBB ) SUM( MAGBB ) INTO (V_STOCK, V_STOCK1)
FROM S031 WHERE MATNR = ITAB-MATNR AND
WERKS = ITAB-WERKS AND
SPMON LT V_MONTH1 AND LGORT = ITAB-LGORT.
OSTOCK = V_STOCK1 - V_STOCK.
IF OSTOCK < 0.
OSTOCK = OSTOCK * -1.
ENDIF.
ENDFORM. " GET_OPENING_STOCK
*& Form check
text
FORM CHECK.
AUTHORITY-CHECK OBJECT 'M_IS_MATNR'
ID 'ACTVT' DUMMY
ID 'MATNR' FIELD MATNR-LOW.
IF SY-SUBRC <> 0.
MESSAGE E016(Z1) WITH MATNR-LOW.
ENDIF.
ENDFORM. "CHECK_AUTHORIZATION
*& Form EVENTTAB_BUILD
text
-->P_GT_EVENTS[] text
*FORM EVENTTAB_BUILD USING RT_EVENTS TYPE SLIS_T_EVENT.
DATA: LS_EVENT TYPE SLIS_ALV_EVENT.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
I_LIST_TYPE = 1
IMPORTING
ET_EVENTS = RT_EVENTS.
READ TABLE RT_EVENTS WITH KEY NAME = SLIS_EV_TOP_OF_PAGE
INTO LS_EVENT.
IF SY-SUBRC = 0.
MOVE GT_TOP_OF_PAGE TO LS_EVENT-FORM.
APPEND LS_EVENT TO RT_EVENTS.
ENDIF.
*ENDFORM. " EVENTTAB_BUILD
FORM TOP_OF_PAGE
*FORM TOP_OF_PAGE.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
I_LOGO = 'ENJOYSAP_LOGO'
IT_LIST_COMMENTARY = GT_LIST_TOP_OF_PAGE.
*ENDFORM. "TOP_OF_PAGE
*& Form COMMENT_BUILD
text
-->P_GT_LIST_TOP_OF_PAGE[] text
FORM COMMENT_BUILD USING LT_TOP_OF_PAGE TYPE
SLIS_T_LISTHEADER.
DATA: LS_LINE TYPE SLIS_LISTHEADER.
DATA: LV_PAGE_STRING(11),
LV_PAGE_NO(3).
PAGNO = SY-PAGNO.
DATA: PAGNO(5) TYPE C.
CLEAR
LS_LINE.
REFRESH LT_TOP_OF_PAGE.
CLEAR
LS_LINE.
LS_LINE-TYP = 'S'.
LS_LINE-KEY = 'Page Number'.
PAGNO = SY-PAGNO.
IF
PAGNO = 0.
PAGNO = 1.
ENDIF.
SHIFT PAGNO LEFT DELETING LEADING SPACE.
LS_LINE-INFO = PAGNO.
APPEND LS_LINE TO LT_TOP_OF_PAGE.
CLEAR LS_LINE.
LS_LINE-TYP = 'H'.
LS_LINE-INFO = TEXT-001.
APPEND LS_LINE TO LT_TOP_OF_PAGE.
CLEAR LS_LINE.
LS_LINE-TYP = 'A'.
SELECT SINGLE * FROM T001W WHERE
WERKS IN WERKS.
CONCATENATE 'Name Of The Plant ' '-' T001W-NAME1 INTO
TXT SEPARATED BY SPACE.
LS_LINE-INFO = TXT.
APPEND LS_LINE TO LT_TOP_OF_PAGE.
CLEAR:TXT, LS_LINE.
LS_LINE-TYP = 'H'.
LS_LINE-INFO = TEXT-002.
APPEND LS_LINE TO LT_TOP_OF_PAGE.
CLEAR LS_LINE.
IF WERKS-HIGH EQ SPACE.
CONCATENATE 'Plant : ' WERKS-LOW INTO TXT.
ELSE.
CONCATENATE 'FROM PLANT : ' WERKS-LOW 'TO PLANT : ' WERKS-HIGH INTO TXT SEPARATED BY SPACE.
ENDIF.
LS_LINE-TYP = 'H'.
LS_LINE-INFO = TXT.
APPEND LS_LINE TO LT_TOP_OF_PAGE.
IF BUDAT-HIGH EQ SPACE.
BUDAT-HIGH = BUDAT-LOW.
ENDIF.
CONCATENATE 'Date : From ' BUDAT-LOW6(2) '-' BUDAT-LOW4(2) '-'
BUDAT-LOW0(4) 'to' BUDAT-HIGH6(2) '-'
BUDAT-HIGH4(2) '-' BUDAT-HIGH0(4) INTO
TXT SEPARATED BY SPACE.
CLEAR LS_LINE.
LS_LINE-TYP = 'A'.
LS_LINE-INFO = TXT.
APPEND LS_LINE TO LT_TOP_OF_PAGE.
ENDFORM. "COMMENT_BUILD
*& Form LAYOUT_INIT
text
-->P_GT_LAYOUT text
FORM LAYOUT_INIT USING RS_LAYOUT TYPE SLIS_LAYOUT_ALV.
RS_LAYOUT-DETAIL_POPUP = 'X'.
RS_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.
ENDFORM. " LAYOUT_INIT
*& Form BALANCE
text
--> p1 text
<-- p2 text
FORM BALANCE.
IF INT_DATA-SHKZG = 'S'.
MENGE_RE = INT_DATA-MENGE_O + INT_DATA-MENGE.
INT_DATA-MENGE_BAL = MENGE_RE.
INT_DATA-MENGE_RE = INT_DATA-MENGE.
ELSEIF INT_DATA-SHKZG = 'H'.
MENGE_RE = MENGE_RE - INT_DATA-MENGE.
INT_DATA-MENGE_BAL = MENGE_RE.
INT_DATA-MENGE_IS = INT_DATA-MENGE.
ENDIF.
ENDFORM. " BALANCE
Thanks & Regards,
Sreedhar.Hi,
try like this.........
get v_linct from system varaible sy-linct
describe table t_output lines lv_lines - Where
t_output is ur final internal table which is displayed
v_pagct = ( lv_lines div v_linct ) + 3.
write: 'PAGE NO:' , sy-pagno ,'/', v_pagct.
Madhavi
Maybe you are looking for
-
Using LoadRunner for WebDynpro for Java Tests
Hi, We're develoing WD4J applications and want to test those applications with LoadRunner. I can create Vuser Scripts and Run them with multiple users via Loadrunner Controller successfully but here are my questions; - I've tested a PHP application w
-
Associating oc4j instance with OID
Hi All, I am trying to associate oc4j instance with OID in enterprise manager (as a first step towards configuring workflow identity service with OID). But I am getting the following error whenever I tried An error occurred while attempting to associ
-
Sending 2 data, is it possible?
Hi, Is it possible to send two data in the same txt file? Lets say, i have specific members from several dimensions and Im always sending 1 data register... Dims: Account, time, version, company, rate Price= $100 1 Data: AccountA,2011.Jan,Bdg11,Compa
-
KM access error: RSO_MORM_CHECK_AUTHORITY
Hi, We're on BI + portal 2004s, SP14 and having a problem where access to KM-folders results in the following error: Runtime Error An exception occured while processing the request. Additional information: Error while executing function module: RSO_M
-
What is the easiest way to upgrade 100 Ipads to IOS5.
Got 100 brand new Ipads, want to upgrade them all to IOS 5. Right now I'm having to register every one, naming them all like they should be, and then manually upgrading each one. Please tell me there is an easier way. I see Lion Server lets you ma