CupsRasterinterpretPPD avait une erreur page header uses unsupported values
Problem printing from Photoshop and Epson Stylus Pro 7900 you have an explanation?
What does this error message: current print - "cupsRasterinterpretPPD" was an error = page header uses unsupported values.
thank you for your help
Update photoshop to the latest version (Help>Update...), that should fix it.
Similar Messages
-
Changing colors in webdynpro page header using themes
hi all,
I have created a webdynpro page. how to change the color webdynpro page header using themes.
where to make changes in the themes.
Regards,
ShanthakumarHi
Check it out
https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/3ea0d790-0201-0010-80b8-b680496a3838
https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/d2b1d790-0201-0010-25b7-d1fb059a8ad9 -
Dynamically create javascripts using pl/sql code from page header
I understand by placing a javascript code in the page header is one of the way adding javascript functionality to your pages.
But lets say I need (dynamically) bring my javascripts into the page header using my pl/sql package/functions like core_func_jscript_pkg.get_jscript('jf_isnumber');
1- How can I call my pl/sql package/functions from page header area of Apex?
If I need to use 20 javascripts functions into a page which I have them stored in database (using them on my other pages) and I don't want to copy or re-write them in Apex, instead I like to have 20 line of calls to my pl/sql package like:
core_func_jscript_pkg.get_jscript('myFirstJavascript');
core_func_jscript_pkg.get_jscript('mySecondJavascript');
core_func_jscript_pkg.get_jscript('myThirdJavascript');
core_func_jscript_pkg.get_jscript('myFourthJavascript');
... and so on.
2- In past we wrote our web apps using pl/sql example:
htp.p('<html>');
htp.p('<head>');
core_func_jscript_pkg.get_jscript('jf_get_today_date');
core_func_jscript_pkg.get_jscript('someothe_scripts');
htp.p('</head>');
htp.p('</html>');
I like to do the same thing in Apex, Can I accomplish this in Apex?
Thanks again
-iahmadiThere was a <head> content & dynamic metadata with APEX? that should provide some pointers.
-
Displaying query columns in page header
I have a 6i report, breaking on department, which shows the current department code and name in the page header, using a page-level summary column.
Problem: there are department-level summary data (e.g. totals) that are printed after the detail lines, which sometimes spill over onto a new page; when this happens, the department code on the header of the continuing page is blank.
Many thanks in advance.
Andrew HunterYou can always use a PL/SQL package variable to store the last name and use srw.set_field() in the format trigger to display the value in the margin. When you execute srw.set_field() you use the PL/SQL package variable if the page summary is null and update the package variable if the page summary contains a value.
-
How to pass parameters to a page invoked using java script.--- Very Urgent.
Hello,
I have an advanced Table in my page. In the first column there is a
messageChoice. In the second column there is link item.On the link item i have set the following value for destination uri.
javascript:var a=window.open('OA.jsp?page=/AutoSales/oracle/apps/per/auto/webui/AutoSurrogatesPG&retainAM=Y','a','height=500,width=900,status=yes,toolbar=no,menubar=no,location=no,resizable=yes,scrollbar=yes'); a.focus();
The user selects a value from the message choice and when he clicks on the link item, the value selected from the list should go to the new page invoked using java script as a parameter. I need the value selected from choice to generates few fields in the new page. I have preferred java script because i need the base page and a model window should open. I have tried using setForwardUrl() and setting '_blank' and new window for target frame property on the link item. But it isnt working. The new page is opening in the same window.
I have also tried putting the value in a session.
Please help with any kind of suggestions or solutions.
Thank you.Uma,
You need to
- Have a PPR Action on the messageChoice (this would trigger a form submit to populate the underlying View Attribute)
- Either
- Retrive the value from the View Attribute in the pop-up page (as I could see that you are retaining the AM)
- Use a SPEL in the link (on the modal page) to use the value from the View Attribute as the parameter value (in the form ${oa.current.<ViewAttributeName>)
HTH -
How to use two different report items in SSRS page header
Hi All,
Can we use more than one report item in SSRS 2008 R2 page header...
Like this in expression..
=IIF(Globals!PageNumber=1,ReportItems!Col1.Value,ReportItems!Col2.Value)
Whenever Globals!PageNumber=1 I want to show values present in Col1 and when Globals!PageNumber<>1 then show values present in col2
Also let know if any other work around is there to meet above criteria...
Thanks,
RH
sqlHi RH,
Based on my research, a text box in the page header can only refer to the ReportItems built-in collection once in an expression. So if we directly use the expression in the page header, we can receive the error message that “The Value expression for textrun’’
refer to more than one report item. An expression in a page header or footer can refer to only one report item”.
To work around the issue, we can add two text boxes to the page header: one for the textbox col1 value (=ReportItems!Col1.Value), another for the textbox col2 value (=ReportItems!Col2.Value). Then use the expressions as below to control the visibility of
those textboxes:
=iif(Globals!PageNumber=1,false,true)
=iif(Globals!PageNumber<>1,false,true)
Please note that only text boxes on the current page are available as a member of the ReportItems collection in a page header or page footer section. For example, if ReportItems!textbox_name.Value refers to a text box that only appears on the first page
for a multipage data region, we cannot see a value on other pages except the first page.
Reference:
Using the ReportItems Collection References (Report Builder 3.0 and SSRS)
If there are any other questions, please feel free to ask.
Thanks,
Katherine Xiong
Katherine Xiong
TechNet Community Support -
Comment solutionner ? :Le module d'importation a signalé une erreur générique
Comment solutionner ? :Le module d'importation a signalé une erreur générique
Hi Mr.Romano:
Sorry if it took me some time to get back to you.
Frankly I gave up on this issue, it is getting too much complicated for me, however see what I have found and what seems to be my real issue.
After reading all that and more, The Toshiba DVR630 recorder, is not properly fitted to record DVD and be imported into editing programs, such as Adobe,
that seems to be my main issue.
Best regards and thanks for your help anyway.
André45
A.T. Romano(https://forums.adobe.com/message/2117743#2117743">DVD - VOB Files - The Lowdown
the_wine_snob 2012-06-02 15:52
We often see people trying to edit existing DVD-Videos. Some seem to be able to do this fine, while others struggle mightily. What’s the deal? Why can’t one just Import those VOB files and edit happily away?
Let’s go back to the basics just a bit. A .VOB file is a "Video Object File." As such, and by the DVD-specs., it can contain quite a bit of stuff. Some of this is beyond just the Audio & Video contained in the usually present MPEG-2 file, which is hidden inside the VOB. This VOB can contain subtitles, Menus, and ROM content, to name but a few. With simple VOB’s, one can often play them, if they are just renamed to .MPEG, though not always. In the case where this works, one does not need a DVD software player. Any player program that can handle MPEG-2 can play the file.
The structure and elements of a DVD-Video DVD-5 (4.7GB, single sided, single layer) will be in most cases:
AUDIO_TS folder (usually empty). May also not be present.
VIDEO_TS folder, which contains VIDEO_TS.IFO (Video Manager.info), VIDEO_TS.BUP (VMGI.backup), VTS_01_0.IFO (Video Title #1.info), VTS_01_1.VOB (Video Title #1.video), and more of these, incremented by 1. Depending on the number of "titles" on a particular disc, the numbers can range up to the limit of 99. For Projects from most NLE/authoring programs will only have one "title," so you’ll likely not see more than 4 VOB’s and their accompanying IFO’s and BUP’s. The VOB’s will be approximately 1GB in size, the upper limit.
The title of the "movie" inside the VIDEO_TS folder will be contained in the .IFO and the BUP files. If you open up a DVD-Video in Windows Explorer, you’ll see just the folders, and no name, or anything else. The same is for the file names inside the folder(s). They will look the same for all DVD-Videos, though the exact number of these will differ, depending on the structure and number of discrete titles on the disc. It’s not until one opens the DVD-Video in either a software player, or in a set-top player, that the IFO files will play, allowing the player to then access and work with the .VOB’s, via the instructions that are contained in the IFO and BUP files.
Editing a VOB can be a tricky, as it can contain all those different things. Ripping the MPEG-2 file from the VOB is usually the best approach. That is what PrPro, PE, or other NLE’s (Non Linear Editor) attempt to do. Sometimes, it works fine, but sometimes it does not. Another problem can be when there are multiple VOB’s, as the MPEG-2 files can span multiple VOB’s, as they cannot contain more than about 1GB of data. This is why a DVD-Video can only have 1GB of space for ALL Menus and their elements.
As VOB’s can contain the full menuing structure (this will be the first VOB), unless this structure is done 100% by the DVD-specs, there will be issues. Most DVD-recorders include some form of menuing, and most do not do it perfectly. This WILL create issues. Ripping via software will likely be the only answer, or doing a manual capture from a set-top DVD player, hooked up appropriately to your computer with a capture card, or bridge, and using the software that came with that device. You will not have any "device control," so you must start the capture software, hit Record, and then start your DVD in its player. If you do this, make certain that you capture to DV-AVI Type II w/ 48KHz 16-bit Audio.
Once one has edited the Audio & Video contained in the .VOB(s), the process to get the resulting Project back into DVD-Video form is to Burn to DVD. This is the authoring process.
Three things happen:
1.) The edited file is Transcoded to MPEG-2. If you were working from a VOB already, the Audio & Video material has already been Transcoded to MPEG-2, in which there will already be compression of the data. If you do this again, there will be more compression of the data, resulting in a loss in quality
. Some NLE’s can do "smart rendering/encoding." None of the programs from Adobe can do this, as they are designed to work with material captured from a miniDV tape camera. While they can handle other footage, there will be compromises. When designed, DV-AVI Type II was chosen as the base workflow, because that was what most miniDV tape cameras produced. The introduction of flash memory, miniDVD, and hard drive cameras, plus the introduction of HD, has changed things a bit, and will continue to change them over the next versions of the programs.
2.) The folder structure and the necessary files are created.
3.) The above material is then physically Burned to a DVD-Video, or is copied to a folder on the computer in the required, and necessary form and structure.
In the case of the former, one can then play the DVD-Video via a software player on a computer, or on a set-top player hooked to a TV or display device. In the case of the latter, one needs a software player to play the files in the VOB, with the instructions coming from the IFO, or the BUP files.
Hunt
5. Re: DVD - VOB Files - The Lowdown
the_wine_snob 2009-12-23 15:05 (en réponse à the_wine_snob)
Now, I use a Panasonic that can play either VHS, or DVD's, and can burn from a VHS to a DVD-Video. However, the only thing that I use the DVD aspect for is doing an archive of the VHS tape. Instead of using that DVD, I use an Analog to Digital (A-D) bridge to get my digitized material to the HDD. The reason for this are two-fold:
1.) When a DVD-Video is created, the digitized material is compressed into MPEG-2 format. When you later want to edit this material, it is already compressed, and in what is called a GOP (Group of Pictures) format, and all frames are not there. You have one traditional Frame, and the next ~ 15 are only "difference" frames, which do not contain all of the info, only links back to that last full Frame, the I-frame. If one is going to edit, they need ALL I-frames, and PrE creates those, so one can edit at a Frame-level. When done, if they want to end up with an edited DVD-Video, that footage will have to be compressed again, into MPEG-2. By doing the capture via the A-D bridge, I save that file to DV-AVI Type II, which is ALL I-frame, and edits nicely in PrE. Then, when finished, and I go to my edited DVD-Video, I only have one MPEG-2 compression, and not the 2 that you will have. The quality is much higher.
2.) As stated above, DVR's, most similar machines and many software authoring programs do not follow the DVD-specs 100%. These results will give problems, and usually with the first VOB, which also contains Menus, etc. The use of an A-D bridge bypasses these problems, as all you have are the pure DV-AVI Type II files w/ nothing else included.
I am a big fan of the Canopus ADVC-300 A-D bridge, but their much less expensive unit, the ADVC-110, or the similar unit, the ADS Pyro AV Link, can do all that you would want. The only real advantage of their 300 model is with the Timebase corrections for color balance and gamma correction, plus other corrections. However, it's more expensive and all of those corrections can be done in PrE, though they do take some work and time. For me, being able to do them at the time of capture saves me time.
There are cheaper A-D units, like the Dazzle, but I don't know of anyone, who's ever gotten them to work. We get dozens of users with them each year. The vast majority throw those units into the trash and go with the Canopus, or the Pyro instead.
Good luck,
Hunt
Best regards and thanks for your help anyway.
André45
Le 22/04/15, "A.T. Romano" <[email protected]> a écrit :
Comment solutionner ? :Le module d'importation a signalé une erreur générique created by Premiere Elements - View the full discussion(https://forums.adobe.com/message/7468710#7468710)
andre45
Thanks for the replies with details.
From what you wrote you should not be having the problems described.
1. You start out with content on VHS which you convert to DVD-VIDEO on DVD disc.
2. The disc is displaying the structure of DVD-VIDEO (VIDEO_TS Folder)
3. The VIDEO_TS Folder contains the DVD video file VTS_01_1.VOB and not the VTS_01_0.VOB which typically relates to menus.
4. You use Premiere Elements 11 Windows 7 64 bit Add Media/DVD camera and computer drive/Video Importer and when you hit Get Media in the Video Importer you get an Import Generic Error Message.
Is all of that the way it is? If so,
Suggestions...
1. If you go to the DVD disc in the burner tray and open the disc there to explore its contents, can you open the VIDEO_TS Folder, find the VTS_01_1.VOB file, and play it in Windows Media Player from there? If you can, copy the VTS_01_1.VOB file there and paste it to the computer desktop. Then from the computer desktop, import that file into Premiere Elements 11 Expert workspace using Add Media/Files and Folders/Project Assets. Does the VTS_01_1.VOB import into the project?
You may have to set the project preset manually to PAL DV Standard before you do this suggestion. Otherwise, you may end up with a NTSC AVCHD Full HD1080i25 project instead of a PAL DV Standard project.
2. If suggestion 1 does not help, then repeat suggestion 1 but this time start by renaming the file
From: VTS_01_1.VOB
To VTS_01_1.mpeg
Then try to import that file extension renamed file into Premiere Elements with Premiere Elements' Add Media/Files and Folder/Project Assets
3. If that does not work, then I would like you to go into the Elements Organizer workspace and create a new catalog. See File Menu/Manage Catalogs/Catalog Manager. And, try to import the VTS_01_1.VOB into the Premiere Elements Editor by the various ways mentioned.
Please review and consider and then we can decide what next.
Thank you.
ATR
If the reply above answers your question, please take a moment to mark this answer as correct by visiting: https://forums.adobe.com/message/7468710#7468710 and clicking ‘Correct’ below the answer
Replies to this message go to everyone subscribed to this thread, not directly to the person who posted the message. To post a reply, either reply to this email or visit the message page:
Please note that the Adobe Forums do not accept email attachments. If you want to embed an image in your message please visit the thread in the forum and click the camera icon: https://forums.adobe.com/message/7468710#7468710
To unsubscribe from this thread, please visit the message page at , click "Following" at the top right, & "Stop Following"
Start a new discussion in Premiere Elements by email <[email protected]are.com> or at Adobe Community(https://forums.adobe.com/choose-container.jspa?contentType=1&containerType=14&container=32 71)
For more information about maintaining your forum email notifications please go to https://forums.adobe.com/thread/1516624.
> -
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! -
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 -
How to put report title and page no to appear in multiple pages,when using cross tab reports
Post Author: shaminranaweera
CA Forum: General
I am using crystal reports 9.0 with odbc foxpro database conectivity
I have designed a cross tab report and it is on the report header part and all the report details are fine,except that the report title and and page no's only show on the first page of my report.Pls tell me how can i put my report title and page no on all the pages in my crosstab.Post Author: foghat
CA Forum: General
You need to put your title in the page header if you want it to appear on every page. The report header only displays once per report. -
How to stop to display the main report page header in the subreport!
Hello all,
I have an existed report that display the CR page header on every page of the report. Now I added another subreport into report footer without using link. How do I stop to display the main report page header and display the subreport in the new page with subreport header only? I really appreciate your time to help me out on this issue. Thanks.Hi,
I tried to supress the page header with (onlastrecord and TotalpageCount > 1) condition, but the last page of main report without page header. I still like the page header display on last record, but not on the subreport only. How do I get it? Thanks in advance. -
Error message "Page header or footer longer than a page"
Hi
Our application call crystal report to generate/display crystal report in PDF format. We have a dev system to test this, all looking good, however when we moved to production server, the attached error message is displayed when running crystal report.
Invoking method GENERATEREPORT returned error Page Header plus Page Footer is too large for the page.
Error in File C:\DOCUME~1\SERV
IC1.LIM\LOCALS1\Temp\temp coq new xxxx.rpt:
Page header or footer longer than a page.
Same report doesnu2019t get this error message if running it from crystal report developer.
Not all crystal reports got this error, but some of reports display strange view in PDF, the content of report are reduced in a paper size like label size, not A4 size. I have checked the default printer on the server, it points to a normal window printer, not a label printer. I have checked all possible settings on production server and compared with dev server, all looks same to me
I suspect the label printing size is used somehow when the report is previewed in pdf format, not normal A4 size although I have selected a normal window printer as a default printer on the window,what else should i check?
Could you please shed some light on this?
Thanks!
LiI found the issue is from label printer that is setup on the production server. After I removed the label printer from the server, then error message is gone, all report running fine.
This label printer is not the default window printer, it is a network printer but is configured as a printer using local port on the server.
I think for some reasons, crystal report alway picks up the label printer page size, not the normla page size, I am not sure why and how crystal report do this, it should pick up the default printer, which is a normal printer.
There is no error when I run report within CR. The error happens only when I try to generate crystal report from our application.
I do have logo in page header/footer, subreports in report footer, but I don't think they cause the problem, because I can run same report without any problem in dev system.
Any idea what I should check next?
Thanks -
Hi!
I am looking to create a changeable slideshow at the top of a webpage. I want to be able to select different slideshows to view at the top of the page and use triggers/buttons to select the relevant slideshow. This is for a catering site, so I would like that if the user clicks 'canapes' button the slideshow images at the top of the page will show canapes and the caption will show text about them, if they select the 'cocktails' button then a new slideshow will appear showing images of cocktails together with a relevant caption.
I thought this might be possible by placing slideshows within a lightbox or composition widget but seem to be banging my head against the wall! Can someone help?
Is it possible?
If yes, is there a youtube video to show how its done?
Any help much appreciated.
MartinIs it possible? Yes... I wouldn't do it because having all those images sitting on the one (first) page will slow the page loading times down and just piss people off but thats your main answeer.
The compositions widgets allow you to build more complex ideas and is what I'd use to make this sort of thing in Muse...
p.s. if you just want something fast then have a look at what some people have already made to get ideas;
1. Templates – MuseLayers
2. iChef | Culinary Arts Adobe Muse Template | museGrid.com
3. RESOURCES | Adobe Muse CC -
Pages 5.2.2 - how to add a logo in the page header
Hi, how can I add a logo in the page header of each page?!
seems header and footer only supports text and automated page numbering only...
I need some advise on this one
thanksAdd an image to any page in the section, then drag it where you want it to appear on each page.
Reduce the opacity using the slider in the Style pane of the Format inspector to change the object’s transparency.
Choose Arrange > Section Masters > Move Object to Section Master (from the Arrange menu at the top of your computer screen). -
How to include the page header in smartforms
Hi,the text element of the type include text is placed in the main page in header.
this text element extending to several pages.
The user wants to include page header only on pages where this element displays.
EX:in the page they are 5 elements include text will appear from 3rd page.
then they want to display the page header only from 3rd page.
IS it possible?
Message was edited by:
hymavathi bommaHi!
You have to define more header objects.
You can use conditions, which object appears. You can use a flag variable for this: gv_header_flag.
Based on this gv_header_flag, you can tell the Smartform, which header to print.
And you have to fill gv_header_flag with correct values in some ABAP code, entered into your Smartform, before you print your header.
Regards
Tamá
Maybe you are looking for
-
IMAP error messages "Error while parsing IMAP response"
I'm getting thousands of IMAP errors every hour, can I shut those off? My console log is flooded with them and it keeps me from seeing anything else in the system log. The IMAP errors happen continuously while Mail.app is running. It looks like debu
-
Deserialization Error while invoking web service from JDeveloper 10g
When we tried to invoke a web service from JDeveloper version 10.1.3.4.0.4270, we got deserialization error.Here are the steps that we did to invoke the web service. 1. Using WSDL URL, downloaded WSDL file and associated XSD files into local machine
-
Have a problem with Home Sharing with Apple TV and iTunes. Have latest iTunes and Apple TV downloads. Have both items set up for home sharing with same address and passwords. AppleTV running fine for everything else. FYI, my library is about 60gigs.
-
Rounding off in billing doc for % based milestone billing
Hi, I am working with milestone that is % based. I already have condition type DIFF in the pricing procedure. The rounding off is taking place in sales order. But, milestone value is not being rounded neither at sales order item level nor at billing
-
Search data in a 2d array and generate a signal when found
Hi, i am looking for an interactive way to search data from an array containing a 2d array found in a cluster. The data is in the 2d array. I have attached the vi containing the array. I want an interactive method to look up for the codes in the 2d a