Self imposing modifier keys across all CS5 programs
So, I started having this strange problem yesterday, and am at a loss. Started out in Illustrator. Basically, whenever I try to move an object with either selection tool, it would duplicate the object as though the alt/option key was being pressed. SInce this only happened in CS5, I suspected the key wasn't stuck, and OSX's keyboard viewer confirms this.
I've since tried deleting all the preferences I could find, reinstalling, and doing both together. No luck.
Now more recently, it's acted as though it was the shift key being pressed, and keeps switching back and forth on which one it thinks is being pressed. The problem is sporadic as well. If I restart the computer, it will vanish temporarily, but inevitably come back.
I'm stumped. Please help!
Thanks, Todd... this is nothing short of the perfect solution.
It would have been so easy for the simpletons on chat to provide
this link instead of running their standard 'stall and deflect' script.
Chat excerpts:
Syed:
"I am sorry. The download for older product is unavailable."
Vallabh:
"...since warehouse and server space is limited, we only stock
current version products in warehouse and on our servers."
Vallabh: "...you will get the email form our senior support level. If not,
You may contact us back on chat with the customer ID so we may
check on the status of the request."
I have never heard anything back from anyone... surprise!
Thanks, again.
Similar Messages
-
Feature Request: Consistently Intelligent Font Lists across all CS Program
Current Problems/Inconsistencies in Font Lists + Suggested Solutions:
NUMBER OF FONTS SIMULTANEOUSLY DISPLAYED:
Premiere Pro (PP): 16 (too few!)
AE: 19 (too few!)
Photoshop: 40 (adequate)
Illustrator: auto-maximizing (displays as many fonts as screen supports, 50 on a 1920x1080 monitor)
*SOLUTION: Make all font lists auto-maximizing like Illustrator!
FONT PREVIEWS:
PP: Yes (6 user-defined characters previewed next to font names)
AE: No previews
Photoshop: Yes ('Sample' displayed in each font, but too small for comfortable viewing)
Illustrator: Yes (Each font name is displayed in actual font, but this makes it inconvenient to know the name of 'Dingbat' fonts.)
*SOLUTION: Make all font lists display font names in left column, with 'Sample' displayed in the actual fonts to the right. When users select any text, replace 'Sample' with the first 1-30 selected characters for instant previewing in all available fonts (e.g. selecting the '&' character would display '&' in all available fonts for instant comparison). Also make font lists resizable with a horizontal zoom bar at top of list to ensure comfortable viewing for everyone.
SCROLL BAR:
PP & AE: Yes
Photoshop: Yes (perfect size and color scheme for best visibility)
Illustrator: No (current scrolling method is frustratingly slow!)
*SOLUTION: Add a Photoshop style scroll bar to each font list for best visibility/usability.
FONT SELECTING WITH ARROW KEYS:
PP & AE: Yes, by arrow-keying up/down in both the font fields and font lists
Photoshop & Illustrator: Only from the font fields. Highlighting fonts with the arrow keys in the font lists doesn't result in font visualizing.
*SOLUTION: Allow PREVIEWING of fonts by arrow-keying up/down in font fields and font lists in all CS programs. I emphasize 'previewing' instead of 'selecting', since previewing fonts avoids the problem of unnecessary undos being created for each font visualized with the arrow keys. (Note: Arrow-scrolling through the font field in Photoshop's Options bar works as I suggest, by 'previewing' each font without creating unnecessary undos. Unfortunately, arrow-scrolling through the font field in Photoshop's Character panel does create useless "Set Character Style" History states for every visualized font. This kind of inconsistency even within a single program is crazy!)
CONCLUSION:
CS programs are all part of the same family, and should therefore behave as such with consistently intelligent tools. This includes font lists with a consistently intelligent design.
Please comment and share! Let's get these glaring font list inconsistencies finally fixed!If you want to do this correctly you need to file a request for each feature.
Ripple Sequence and Chapter Markers is already implemented. Sequence markers are the same as chapter markers, yes? (Ripple Sequence Markers, select Marker > Ripple Sequence Markers.)
Ability to print the Keyboard Shortcuts, or save all of them as a text file. also available. (hold ctrl+shift while opening. A button with clipboard appears)
Keyboard shortcuts to scale image zoom in Source and Program tabs. available
Keyboard shortcuts to increase or decrease playback resolution. available
Make Export and Title windows return to the previously adjusted size and placement. They do.
Some feature you posted are great. How about a eyedropper tool for the Color Matte?
I find the Magnet for Snap quite visible. There is also this feature in the Pref to make the playhead snap. -
Database connection not working across all Adobe programs
I have a PDF form connected to an Access database via ODBC. On the form, I created a button that, when clicked, takes the data in the PDF and adds it to the database. The scripts for that action and the connection was established in LiveCycle Designer. I opened the PDF in Acrobat Pro and enabled Usage Rights for Reader (overwriting the file in the process). Here's what I find odd. The button works fine in Acrobat Pro, but when I open the PDF in Reader and try the button, it gives me an error saying that the accessor 'xfa.sourceSet.DataConnection.open();' is unknown. Why on earth would Adobe recognize the connection in Acrobat but not in Reader? That doesn't make sense to me, especially since I did enable the usage rights.
I do not see where this permission is given in the enablement of Acrobat Professional Forms. What I see is the following:
- Save form data
- Commenting and drawing mark-up tools
- Sign an existing signature field
- Digitally sign the documen anywher on the page (only supported in Adobe Reader 8.0)
I do not see connect to a database anywhere.
Sabian -
I recently noticed this and it's been driving me crazy; when I view photos in Photoshop CS5 they appear significantly lighter/more washed out than when viewed in other programs like Zoombrowser, Digital Photo Professional or just in a regular Windows folder using Filmstrip mode (Windows XP). When opening the same photo in both CS5 and Zoombrowser and switching back and forth between the two windows the difference is very apparent...for example, one of the photos I compared was of a person in a black shirt -- in CS5 (lighter/washed out) the folds in the shirt were very obvious, but in Zoombrowser (darker, more contrast/saturation) the folds were nearly invisible and it looked like just solid black. Now, after messing around with the settings in both Photoshop and in Zoombrowser I've found a few ways to get the photos to look the same in the two programs; one way gives them both the lighter/more washed out appearance and another way gives them both the darker appearance with more contrast and saturation. My problem is that I'm not sure which view is accurate.
I use a NEC MultiSync LCD1990SXi monitor with SpectraView II calibration software and calibrate it every 2 weeks using these calibration settings (screenshot): http://img52.imageshack.us/img52/8826/settingsx.jpg
In the SpectraView II Software under Preferences there's an option that says "Set as Windows Color Management System Monitor Profile - Automatically selects and associates the generated ICC monitor profile with the Color Management System (CMS)." This option is checked. Also, when I open the Windows' Color Management window there's only one option displayed, which is "LCD1990SXi #######" (the ####### represents my monitor's serial number).
I assume the above settings are all correct so far, but I'm not sure about the rest.
Here are my current default Color Settings in CS5 (screenshot): http://img97.imageshack.us/img97/666/photoshopcolorsettings.jpg
Changing these settings around doesn't seem to make the photo appear much different. However, when I go to Edit -> Assign Profile, then click off of "Working RGB: sRGB IEC61966-2.1" and instead click Profile and select "LCD1990SXi ####### 2011-06-21 18-30 D65 2.20" from the drop-down menu, the picture becomes darker with more contrast and saturation and matches the picture in Zoombrowser. Also, if I select "Adobe RGB (1998)" from the drop-down menu it's very similar in terms of increased darkness and contrast but the saturation is higher than with the LCD1990SXi setting. Another way I've found to make the image equally dark with increased contrast and saturation is to go to View -> Proof Setup -> Custom and then click the drop-down menu next to "Device to Simulate" and select "LCD1990SXi ####### 2011-06-21 18-30 D65 2.20" again.
Alternatively, to make both images equally light and washed out I can go to Zoombrowser -> Tools -> Preferences and check the box next to "Color Management: Adjust colors of images using monitor profile." This makes the image in Zoombrowser appear just like it does in CS5 by default.
Like I said, I'm confused as to which setting is the accurate one (I'm new to Color Management in general so I apologize for my ignorance on the subject).
It would seem that assigning the LCD1990SXi profile in CS5 would be the correct choice in order to match the monitor calibration given the name of the profile but the "Adjust colors of images using monitor profile" option in Zoombrowser sounds like it would do the same thing as well. Also, I've read that Photoshop is a color managed software whereas Zoombrowser and Windows Picture and Fax Viewer are not which makes me think that maybe the lighter/washed out version seen in Photoshop is correct. So which version (light or dark) is the accurate one that I should use to view and edit my photos? Thanks in advance for any help or info.Sorry for the late reply;
But before we go there or make any assumptions, it's important for
you to determine whether you're seeing consistent color in your
color-managed applications and only inconsistent color in those that are
not color-managed. For that you'll need to do a little research to see
if the applications in which you're seeing darker colors have
color-management capability (and whether it is enabled).
I opened the same picture in 7 different applications and found that the 6 of the 7 displayed the photo equally dark with equally high contrast when compared to the 7th application (CS5). The other 6 applications were Zoombrowser EX, Digital Photo Professional, Windows Picture and Fax Viewer, Quicktime PictureViewer, Microsoft Office Picture Manager and Firefox.
However, at least two of these programs offer color management preferences and, when used, display the photo (from what I can tell) exactly the same as Photoshop CS5's default settings. The two programs are two Canon programs: Zoombrowser EX and Digital Photo Professional. Here's the setting that needs to be selected in Zoombrowser in order to match up with CS5 (circled in red):
And here's the setting in Digital Photo Professional that needs to be selected in order to match up with CS5 (again, circled in red):
*Note: When the option above "Monitor Profile" is selected ("Use the OS settings") the image is displayed exactly the same as when the monitor profile is selected. It's only when sRGB is selected that it goes back to the default darker, more contrasty version.
So with the red-circled options selected, all three programs (CS5, ZB, DPP) display the images the same way; lighter and more washed out. What I'm still having trouble understanding is if that ligher, more washed out display is the accurate one or not...I've read several tutorials for all three programs which only make things more confusing. One of the tutorials says to always use sRGB if you want accurate results and *never* to use Monitor Profile and another says that, if you're using a calibrated monitor, you should always select Monitor Profile under the color management settings...so I'm still lost, unfortunately.
What I also don't understand is why, when the monitor profile is selected in CS5, the image is displayed in the dark and contrasty way that the other programs display it as by default but when the monitor profile is selected in Digitial Photo Professional it displays it in the lighter, more washed out way that CS5 displays it using CS5's default settings (sRGB). Why would selecting the monitor profile in DPP display the photo the same way as when sRGB is selected in Photoshop? And vice versa...why would selecting the monitor profile in Photoshop display the photo the same way as when sRGB is selected in DPP?
I feel like I'm missing something obvious here...which I probably am. Again, I'm very new to this stuff so pardon my ignorance on the topic.
By the way, I find that the way that the non-color managed programs (Windows Picture and Fax Viewer et al.) display the photos is more aesthetically pleasing to the eye than the duller, more washed out display that CS5 gives the photos, but ultimately what I want to see in these programs (especially PS5 where I'll be doing the editing) is the accurate representation of the actual photo itself...i.e. what it's supposed to look like and not a darker (or lighter) variant of it.
So just to reiterate my questions:
Why does selecting Monitor Profile under the color management settings in DPP give the same display results as the default sRGB profile in CS5 and vice versa? (CS5 with monitor profile selected having the same display results as DPP with the sRGB profile selected)
When using CS5 with it's default color management settings (sRGB), using DPP with the Monitor Profile selected, and using Zoombrowser EX with "Adjust color of images using monitor profile" selected this results in all three programs displaying the same lighter, washed-out images...is this lighter, more washed-out display of the images shown in these three programs the accurate one?
I noticed when opening an image in Firefox it had the same darker, contrasty look as the other non-color managed applications had. Assuming that the CS5 default settings are accurate, does this mean that if I edit a photo in CS5, save it, and upload it to the internet that other people who are viewing that image online will see it differently than how it's supposed to look (i.e. in a non-color-managed way?) If so, this would seem to indicate that they'd see a less-than-flattering version of the photo since if their browser naturally displays images as darker and more contrasty and I added more darkness and contrast to the image in CS5, they'd be seeing a version of the photo that's far too dark and probably wouldn't look very good. Is this something I have to worry about as well?
I apologize for the lengthy post; I do tend to be a bit OCD about these things...it's a habit I picked up once I realized I'd been improperly editing photos on an incorrectly calibrated monitor for years and all that time and effort had been spent editing photos in a certain way that looked good on my incorrectly calibrated monitor but looked like crap on everyone else's screen, so the length and detail of this post comes from a desire to not repeat similar mistakes by editing photos the wrong way all over again. Again, thanks in advance for all the help, it's greatly appreciated! -
I am trying to download all the programs that came with my original purchase of CS5. However all I seem to be able to get is Illustrator ?
No Flash, Dreamweaver, fireworks or others that I could swear were included as part of this CS package.help
Any help even if it is telling me I am an idiot and CS5 did not include all those programs. It was $500 at the timeWhatever you purchased in 2011 is what you will be able to download and install and activate. If you purchased a Creative Suite then you need to download the Creative Suite, not individual programs. If you don't know what you purchased, then it should be identified in your Adobe account online. Here is a link to the download files that are available for CS5:
CS5 - http://helpx.adobe.com/creative-suite/kb/cs5-product-downloads.html -
2008 Mac Pro 10.5.8 shuts down after hours of no use, Set to never shut down. Can be resumed pressing any key but all programs not in startup list need to be restarted and unsaved data lost . New behavior. No system changes.
2008 Mac Pro 10.5.8 shuts down after hours of no use, Set to never shut down. Can be resumed pressing any key but all programs not in startup list need to be restarted and unsaved data lost . New behavior. No system changes.
-
Find all Z programs which are being modified in last month
hii all,
I want to find all Z programs which are being modified in last months.Is this possible??.is there any standard or z-program which can give me the detail of all Z-program which are modified.
It is possible if i get last month Request but suppose if there are more than 100 request per month then it is not possible to go through each individual Request and find Z-programs.
Waiting for ur reply.
<removed_by_moderator> ... read [the rules|https://www.sdn.sap.com/irj/sdn/wiki?path=/display/home/rulesofEngagement]!
Thaking You.
Edited by: Julius Bussche on Jul 17, 2008 7:16 PMHello
REPORT ZCHPROG.
TABLES: D010SINF.
DATA: PROGTXT(72) TYPE C OCCURS 0 WITH HEADER LINE.
DATA: PROGTXT1(72) TYPE C OCCURS 0 WITH HEADER LINE.
DATA:
BEGIN OF MT OCCURS 0,
PROG LIKE D010SINF-PROG,
EDTX LIKE D010SINF-EDTX,
R3STATE LIKE D010SINF-R3STATE,
UNAM LIKE D010SINF-UNAM,
CNAM LIKE D010SINF-CNAM,
UDAT LIKE D010SINF-UDAT,
UTIME LIKE D010SINF-UTIME,
END OF MT,
N(4),
PROG(20) TYPE C,
MIN(10) TYPE C.
RANGES: UDAT1 FOR D010SINF-UDAT.
RANGES: UTIME1 FOR D010SINF-UTIME.
SELECT-OPTIONS: PROG1 FOR D010SINF-PROG, "
UNAM1 FOR D010SINF-UNAM, "
CNAM1 FOR D010SINF-CNAM. "
PARAMETERS DEN(4) TYPE C DEFAULT '1'.
PARAMETERS SEC(5) TYPE C DEFAULT '30'.
PARAMETERS DOP AS CHECKBOX DEFAULT ' '.
START-OF-SELECTION.
IF DOP NE SPACE.
MIN = SEC * 60.
UTIME1-SIGN = 'I'.
UTIME1-OPTION = 'BT'.
UTIME1-LOW = SY-UZEIT - MIN.
UTIME1-HIGH = SY-UZEIT.
APPEND UTIME1.
ENDIF.
UDAT1-SIGN = 'I'.
UDAT1-OPTION = 'BT'.
UDAT1-LOW = SY-DATUM - DEN.
UDAT1-HIGH = SY-DATUM.
APPEND UDAT1.
SELECT PROG UNAM UDAT UTIME R3STATE EDTX CNAM
INTO (MT-PROG, MT-UNAM, MT-UDAT, MT-UTIME, MT-R3STATE, MT-EDTX,MT-CNAM )
FROM D010SINF WHERE PROG IN PROG1
AND UDAT IN UDAT1
AND UTIME IN UTIME1
AND CNAM IN CNAM1
AND UNAM IN UNAM1.
APPEND MT.
ENDSELECT.
N = 1.
WRITE: / 'from', UDAT1-LOW, 'to', UDAT1-HIGH.
SORT MT BY UNAM UDAT UTIME.
LOOP AT MT.
WRITE: / MT-CNAM,MT-PROG,MT-UNAM,MT-UDAT, MT-UTIME,
MT-R3STATE, MT-EDTX.
N = N + 1.
ENDLOOP.
WRITE: / N. -
Z program to download all Z programs
HI All!
I herad that there is sample program which downloads all z programs in SAP and writes it onto PS into individual word documents.I mean it stores all z programs on a system which will be useful for one who moves onto the next project as a backup.
Can anyone give me that sample code please..
Regards
PavanHi Pavan,
Take this code the,. This is from http://www.dalestech.com/. It downloads everything. Programs, Tables, Screen Elements, Function Modules....... Explore the options further.
PROGRAM zdown.
*=======================================================================
*=================================
Direct Download Enterprise version 1.2.
THIS SOFTWARE IS FOR PERSONAL USE ONLY.
THIS PROGRAM IS FREEWARE AND IS PROVIDED ON AN AS-IS BASIS WITHOUT
*WARRANTY OF ANY KIND.
THE PROVIDER SPECIFICALLY DISCLAIMS ANY OTHER WARRANTY, EXPRESS OR
*IMPLIED, INCLUDING ANY WARRANTY OF
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL PROVIDER BE LIABLE FOR ANY CONSEQUENTIAL,
PROGRAM DESCRIPTION & USE
Allows a user to download programs, Functions, DD definitions, etc
*to the presentation server. This
version searches recursively for nested includes and function
*modules, and allows you to download
the resulting code as standard text or HTML web pages within a
*suitable directory structure.
You can either search by object name, using wildcards if you wish,
*or a combination of Author and
object name. If you want all objects returned for a particular
*author then select the author name
and choose the most suitable radiobutton. All objects will be
*returned if the fields to the right
hand side of the radiobutton are left completely blank.
Compatible with R/3 Enterprise only, for older versions of SAP you
*will need Direct Download version 5.xx.
This version removes the programming limitations imposed by
*developing across SAP releases 3 to 4.6.
This program is intended to allow a person to keep a visual
*representation of a program for backup
purposes only as has not been designed to allow programs to be
*uploaded to SAP systems.
AUTHOR : E.G.Mellodew
PROGRAM CONTACT : [email protected]
www.dalestech.com
Types
text element structure
TYPES: ttexttable LIKE textpool.
GUI titles
TYPES: tguititle LIKE d347t.
Message classes
TYPES: BEGIN OF tmessage,
arbgb LIKE t100-arbgb,
stext LIKE t100a-stext,
msgnr LIKE t100-msgnr,
text LIKE t100-text,
END OF tmessage.
Screen flow.
TYPES: BEGIN OF tscreenflow,
screen LIKE d020s-dnum,
code LIKE d022s-line,
END OF tscreenflow.
Holds a tablestructure definition
TYPES: BEGIN OF tdicttablestructure,
fieldname LIKE dd03l-fieldname,
position LIKE dd03l-position,
keyflag LIKE dd03l-keyflag,
rollname LIKE dd03l-rollname,
domname LIKE dd03l-domname,
datatype LIKE dd03l-datatype,
leng LIKE dd03l-leng,
ddtext LIKE dd04t-ddtext,
END OF tdicttablestructure.
Holds a tables attributes + its definition
TYPES: BEGIN OF tdicttable,
tablename LIKE dd03l-tabname,
tabletitle LIKE dd02t-ddtext,
istructure TYPE tdicttablestructure OCCURS 0,
END OF tdicttable.
Include program names
TYPES: BEGIN OF tinclude,
includename LIKE trdir-name,
includetitle LIKE tftit-stext,
END OF tinclude.
Method
TYPES: BEGIN OF tmethod,
cmpname LIKE vseomethod-cmpname,
descript LIKE vseomethod-descript,
exposure LIKE vseomethod-exposure,
methodkey TYPE string,
END OF tmethod.
Class
TYPES: BEGIN OF tclass,
scanned(1),
clsname LIKE vseoclass-clsname,
descript LIKE vseoclass-descript,
msg_id LIKE vseoclass-msg_id,
exposure LIKE vseoclass-exposure,
state LIKE vseoclass-state,
clsfinal LIKE vseoclass-clsfinal,
r3release LIKE vseoclass-r3release,
imethods TYPE tmethod OCCURS 0,
idictstruct TYPE tdicttable OCCURS 0,
itextelements TYPE ttexttable OCCURS 0,
imessages TYPE tmessage OCCURS 0,
textelementkey TYPE string,
publicclasskey TYPE string,
privateclasskey TYPE string,
protectedclasskey TYPE string,
typesclasskey TYPE string,
exceptionclass TYPE i,
END OF tclass.
function modules
TYPES: BEGIN OF tfunction,
functionname LIKE tfdir-funcname,
functiongroup LIKE enlfdir-area,
includenumber LIKE tfdir-include,
functionmaininclude LIKE tfdir-funcname,
functiontitle LIKE tftit-stext,
topincludename LIKE tfdir-funcname,
progname LIKE tfdir-pname,
programlinkname LIKE tfdir-pname,
messageclass LIKE t100-arbgb,
itextelements TYPE ttexttable OCCURS 0,
iselectiontexts TYPE ttexttable OCCURS 0,
imessages TYPE tmessage OCCURS 0,
iincludes TYPE tinclude OCCURS 0,
idictstruct TYPE tdicttable OCCURS 0,
iguititle TYPE tguititle OCCURS 0,
iscreenflow TYPE tscreenflow OCCURS 0,
END OF tfunction.
TYPES: BEGIN OF tprogram,
progname LIKE trdir-name,
programtitle LIKE tftit-stext,
subc LIKE trdir-subc,
messageclass LIKE t100-arbgb,
imessages TYPE tmessage OCCURS 0,
itextelements TYPE ttexttable OCCURS 0,
iselectiontexts TYPE ttexttable OCCURS 0,
iguititle TYPE tguititle OCCURS 0,
iscreenflow TYPE tscreenflow OCCURS 0,
iincludes TYPE tinclude OCCURS 0,
idictstruct TYPE tdicttable OCCURS 0,
END OF tprogram.
Internal tables
Dictionary object
DATA: idictionary TYPE STANDARD TABLE OF tdicttable WITH HEADER LINE.
Function modules.
DATA: ifunctions TYPE STANDARD TABLE OF tfunction WITH HEADER LINE.
Tree display structure.
DATA: itreedisplay TYPE STANDARD TABLE OF snodetext WITH HEADER LINE.
Message class data
DATA: imessages TYPE STANDARD TABLE OF tmessage WITH HEADER LINE.
Holds a single message class an all of its messages
DATA: isinglemessageclass TYPE STANDARD TABLE OF tmessage WITH HEADER
LINE.
Holds program related data
DATA: iprograms TYPE STANDARD TABLE OF tprogram WITH HEADER LINE.
Classes
DATA: iclasses TYPE STANDARD TABLE OF tclass WITH HEADER LINE.
Table prototypes
DATA: dumidictstructure TYPE STANDARD TABLE OF tdicttablestructure.
DATA: dumitexttab TYPE STANDARD TABLE OF ttexttable.
DATA: dumiincludes TYPE STANDARD TABLE OF tinclude.
DATA: dumihtml TYPE STANDARD TABLE OF string.
DATA: dumiheader TYPE STANDARD TABLE OF string .
DATA: dumiscreen TYPE STANDARD TABLE OF tscreenflow .
DATA: dumiguititle TYPE STANDARD TABLE OF tguititle.
DATA: dumimethods TYPE STANDARD TABLE OF tmethod.
Global objects
DATA: objfile TYPE REF TO cl_gui_frontend_services.
DATA: objruntimeerror TYPE REF TO cx_root.
Constants
CONSTANTS: versionno TYPE string VALUE '1.2'.
CONSTANTS: tables TYPE string VALUE 'TABLES'.
CONSTANTS: like TYPE string VALUE 'LIKE'.
CONSTANTS: type TYPE string VALUE 'TYPE'.
CONSTANTS: typerefto TYPE string VALUE 'TYPE REF TO'.
CONSTANTS: structure TYPE string VALUE 'STRUCTURE'.
CONSTANTS: lowstructure TYPE string VALUE 'structure'.
CONSTANTS: occurs TYPE string VALUE 'OCCURS'.
CONSTANTS: function TYPE string VALUE 'FUNCTION'.
CONSTANTS: callfunction TYPE string VALUE ' CALL FUNCTION'.
CONSTANTS: message TYPE string VALUE 'MESSAGE'.
CONSTANTS: include TYPE string VALUE 'INCLUDE'.
CONSTANTS: lowinclude TYPE string VALUE 'include'.
CONSTANTS: destination TYPE string VALUE 'DESTINATION'.
CONSTANTS: is_table TYPE string VALUE 'T'.
CONSTANTS: is_program TYPE string VALUE 'P'.
CONSTANTS: is_screen TYPE string VALUE 'S'.
CONSTANTS: is_guititle TYPE string VALUE 'G'.
CONSTANTS: is_documentation TYPE string VALUE 'D'.
CONSTANTS: is_messageclass TYPE string VALUE 'MC'.
CONSTANTS: is_function TYPE string VALUE 'F'.
CONSTANTS: is_class TYPE string VALUE 'C'.
CONSTANTS: is_method TYPE string VALUE 'M'.
CONSTANTS: asterix TYPE string VALUE '*'.
CONSTANTS: comma TYPE string VALUE ','.
CONSTANTS: period TYPE string VALUE '.'.
CONSTANTS: dash TYPE string VALUE '-'.
CONSTANTS: true TYPE i VALUE 1.
CONSTANTS: false TYPE i VALUE 0.
CONSTANTS: lt TYPE string VALUE '<'.
CONSTANTS: gt TYPE string VALUE '>'.
CONSTANTS: unix TYPE string VALUE 'UNIX'.
CONSTANTS: non_unix TYPE string VALUE 'not UNIX'.
CONSTANTS: background_colour TYPE string VALUE '#FFFFE0'.
CONSTANTS: colour_white TYPE string VALUE '#FFFFFF'.
CONSTANTS: colour_black TYPE string VALUE '#000000'.
CONSTANTS: colour_yellow TYPE string VALUE '#FFFF00'.
CONSTANTS: comment_colour TYPE string VALUE '#0000FF'.
CONSTANTS: htmlextension TYPE string VALUE 'html'.
CONSTANTS: textextension TYPE string VALUE 'txt'.
Global variables
DATA: statusbarmessage(100).
DATA: forcedexit TYPE i VALUE 0.
DATA: starttime LIKE sy-uzeit.
DATA: runtime LIKE sy-uzeit.
DATA: downloadfileextension TYPE string.
DATA: downloadfolder TYPE string.
DATA: slashseparator TYPE string.
DATA: frontendopsystem TYPE string.
DATA: customernamespace TYPE string.
RANGES: soprogramname FOR trdir-name.
RANGES: soauthor FOR usr02-bname.
RANGES: sotable FOR dd02l-tabname.
RANGES: sofunctionname FOR tfdir-funcname.
RANGES: soclassname FOR vseoclass-clsname.
RANGES: sofunctiongroup FOR enlfdir-area.
FIELD-SYMBOLS: TYPE tdicttable.
Selection screen declaration
Author
SELECTION-SCREEN: BEGIN OF BLOCK b1 WITH FRAME TITLE tblock1.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 5(23) tauth.
PARAMETERS: pauth LIKE usr02-bname MEMORY ID mauth.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 5(36) tpmod.
PARAMETERS: pmod AS CHECKBOX.
SELECTION-SCREEN END OF LINE.
*--- Local objects
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 5(36) t$tmp.
PARAMETERS: p$tmp AS CHECKBOX DEFAULT ''.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN: END OF BLOCK b1.
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE tblock2.
Tables
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: rtable RADIOBUTTON GROUP r1.
SELECTION-SCREEN COMMENT 5(20) trtable.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 10(18) tptable.
PARAMETERS: ptable LIKE dd02l-tabname MEMORY ID mtable.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 10(79) ttnote.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 10(79) ttnote1.
SELECTION-SCREEN END OF LINE.
Message classes
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: rmess RADIOBUTTON GROUP r1.
SELECTION-SCREEN COMMENT 5(18) tpmes.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 10(18) tmname.
PARAMETERS: pmname LIKE t100-arbgb MEMORY ID mmname.
SELECTION-SCREEN END OF LINE.
Function modules
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: rfunc RADIOBUTTON GROUP r1.
SELECTION-SCREEN COMMENT 5(30) trfunc.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 10(18) tpfname.
PARAMETERS: pfname LIKE tfdir-funcname MEMORY ID mfname.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 10(18) tfgroup.
PARAMETERS: pfgroup LIKE enlfdir-area MEMORY ID mfgroup.
SELECTION-SCREEN END OF LINE.
Classes
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: rclass RADIOBUTTON GROUP r1.
SELECTION-SCREEN COMMENT 5(30) trclass.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 10(18) tpcname.
PARAMETERS: pclname LIKE seoclass-clsname MEMORY ID mcname.
SELECTION-SCREEN END OF LINE.
Programs / includes
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: rprog RADIOBUTTON GROUP r1 DEFAULT 'X'.
SELECTION-SCREEN COMMENT 5(18) tprog.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 10(18) trpname.
PARAMETERS: pprog LIKE trdir-name MEMORY ID mprog.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN SKIP.
Language
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(18) tmlang.
PARAMETERS: pmlang LIKE t100-sprsl DEFAULT 'EN'.
SELECTION-SCREEN END OF LINE.
Package
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(18) tpack.
PARAMETERS: ppack LIKE tadiv-devclass MEMORY ID mpack.
SELECTION-SCREEN END OF LINE.
Customer objects
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(27) tcust.
PARAMETERS: pcust AS CHECKBOX DEFAULT 'X'.
SELECTION-SCREEN COMMENT 32(25) tnrange.
PARAMETERS: pcname TYPE namespace MEMORY ID mnamespace.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN: END OF BLOCK b2.
Additional things to download.
SELECTION-SCREEN: BEGIN OF BLOCK b3 WITH FRAME TITLE tblock3.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(33) tptext.
PARAMETERS: ptext AS CHECKBOX DEFAULT 'X' MEMORY ID mtext.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(33) tmess.
PARAMETERS: pmess AS CHECKBOX DEFAULT 'X' MEMORY ID mmess.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(33) tpinc.
PARAMETERS: pinc AS CHECKBOX DEFAULT 'X' MEMORY ID minc.
SELECTION-SCREEN COMMENT 40(20) trecc.
PARAMETERS: preci AS CHECKBOX DEFAULT 'X' MEMORY ID mreci.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(33) tpfunc.
PARAMETERS: pfunc AS CHECKBOX DEFAULT 'X' MEMORY ID mfunc.
SELECTION-SCREEN COMMENT 40(20) trecf.
PARAMETERS: precf AS CHECKBOX DEFAULT 'X' MEMORY ID mrecf.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(33) tdoc.
PARAMETERS: pdoc AS CHECKBOX DEFAULT 'X' MEMORY ID mdoc.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(33) tpscr.
PARAMETERS: pscr AS CHECKBOX DEFAULT 'X' MEMORY ID mscr.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(33) tpdict.
PARAMETERS: pdict AS CHECKBOX DEFAULT 'X' MEMORY ID mdict.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(33) tsortt.
PARAMETERS: psortt AS CHECKBOX DEFAULT ' ' MEMORY ID msortt.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN: END OF BLOCK b3.
File details
SELECTION-SCREEN: BEGIN OF BLOCK b4 WITH FRAME TITLE tblock4.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(20) tphtml.
PARAMETERS: phtml RADIOBUTTON GROUP g1 DEFAULT 'X'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 5(25) tcomm.
PARAMETERS: pcomm AS CHECKBOX DEFAULT 'X'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 5(25) tback.
PARAMETERS: pback AS CHECKBOX DEFAULT 'X'.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(20) tptxt.
PARAMETERS: ptxt RADIOBUTTON GROUP g1.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN SKIP.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(20) tppath.
PARAMETERS: pfolder LIKE rlgrap-filename OBLIGATORY MEMORY ID
mfolder.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN: END OF BLOCK b4.
Display a directory picker window
AT SELECTION-SCREEN ON VALUE-REQUEST FOR pfolder.
DATA: objfile TYPE REF TO cl_gui_frontend_services.
DATA: pickedfolder TYPE string.
DATA: initialfolder TYPE string.
CREATE OBJECT objfile.
IF NOT pfolder IS INITIAL.
initialfolder = pfolder.
ELSE.
objfile->get_temp_directory( CHANGING temp_dir = initialfolder
EXCEPTIONS cntl_error = 1
error_no_gui = 2
not_supported_by_gui = 3 ).
ENDIF.
objfile->directory_browse( EXPORTING initial_folder = initialfolder
CHANGING selected_folder = pickedfolder
EXCEPTIONS cntl_error = 1
error_no_gui = 2
not_supported_by_gui = 3 ).
IF sy-subrc = 0.
pfolder = pickedfolder.
ELSE.
WRITE: / 'An error has occured picking a folder'.
ENDIF.
initialisation
INITIALIZATION.
Parameter screen texts.
tblock1 = 'Author (Optional)'.
t$tmp = 'Programs only: include local objects'.
tblock2 = 'Objects to download'.
tblock3 = 'Additional downloads for progs, func modules and classes'.
tblock4 = 'Download parameters'.
tauth = 'Author name'.
tpmod = 'Include programs modified by author'.
tcust = 'Only customer objects'.
tnrange = 'Alt customer name range'.
trtable = 'Tables / Structures'.
tptable = 'Table name'.
ttnote = 'Please note: tables are stored under the username of the'.
ttnote1 = 'last person who modified them.'.
trfunc = 'Function modules'.
tpfname = 'Function name'.
tfgroup = 'Function group'.
trclass = 'Classes'.
tpcname = 'Class name'.
tmess = 'Message class'.
tmname = 'Class name'.
tmlang = 'Language'.
tprog = 'Programs'.
trpname = 'Program name'.
tpack = 'Package'.
tptxt = 'Text document'.
tphtml = 'HTML document'.
tcomm = 'Highlight comments'.
tback = 'Include background colour'.
tptext = 'Text elements'.
tpinc = 'Include programs'.
trecc = 'Recursive search'.
tppath = 'File path'.
tpmes = 'Message classes'.
tpfunc = 'Function modules'.
tdoc = 'Function module documentation'.
trecf = 'Recursive search'.
tpscr = 'Screens'.
tpdict = 'Dictionary structures'.
tsortt = 'Sort table fields alphabetically'.
Determine the frontend operating system type.
PERFORM determinefrontendopsystem USING slashseparator.
start-of-selection.
START-OF-SELECTION.
PERFORM checkcomboboxes.
PERFORM fillselectionranges.
downloadfolder = pfolder.
starttime = sy-uzeit.
Fool the HTML routines to stop them hyperlinking anything with a space
*in them
IF pcname IS INITIAL.
customernamespace = '^'.
ELSE.
customernamespace = pcname.
ENDIF.
Main program flow.
CASE 'X'.
Select tables
WHEN rtable.
PERFORM retrievetables USING idictionary[]
sotable[]
soauthor[].
Select message classes tables
WHEN rmess.
PERFORM retrievemessageclass USING imessages[]
soauthor[] "Author
pmname "Message classname
pmlang "Message classanguage
pmod. "Modified by author
Select function modules
WHEN rfunc.
IF pfname+0(1) CA asterix.
Restrict the search to customer objects only.
pcust = 'X'.
ENDIF.
IF pfgroup+0(1) CA asterix.
Restrict the search to customer objects only.
pcust = 'X'.
ENDIF.
PERFORM retrievefunctions USING sofunctionname[] "Function name
sofunctiongroup[] "Function group
ifunctions[] "Foundfunctions
pauth "Author
ptext "Get textelements
pscr "Get screens
pcust "Customer data only
customernamespace. "Customer name range
LOOP AT ifunctions.
Find Dict structures, messages, functions, includes etc.
PERFORM scanforadditionalfuncstuff USING ifunctions[]
preci
"Search for includes recursively
precf
"Search for functions recursively
pinc
"Search for includes
pfunc
"Search for functions
pdict
"search for dictionary objects
pmess
"Search for messages
pcust
"Customer data only
customernamespace.
"Customer name range
ENDLOOP.
Select Classes
WHEN rclass.
IF pclname+0(1) CA asterix.
Restrict the search to customer objects only.
pcust = 'X'.
ENDIF.
PERFORM retrieveclasses USING iclasses[]
ifunctions[]
soclassname[] "Class name
soauthor[] "Author
customernamespace "Customer namerange
pmod "Also modifiedby author
pcust "Customer objectonly
pmess "Find messages
ptext "Text Elements
pdict "Dictionarystructures
pfunc "Get functions
pinc "Get includes
precf "Searchrecursively for functions
preci "Searchrecursively for includes
'X' "Searchrecursively for classes
pmlang. "Language
LOOP AT ifunctions.
Find Dict structures, messages, functions, includes etc.
PERFORM scanforadditionalfuncstuff USING ifunctions[]
preci
"Search for includes recursively
precf
"Search for functions recursively
pinc
"Search for includes
pfunc
"Search for functions
pdict
"search for dictionary objects
pmess
"Search for messages
pcust
"Customer data only
customernamespace.
"Customer name range
ENDLOOP.
Select programs
WHEN rprog.
IF pprog+0(1) CA asterix.
Restrict the search to customer objects only.
pcust = 'X'.
ENDIF.
PERFORM retrieveprograms USING iprograms[]
ifunctions[]
soprogramname[] "Program name
soauthor[] "Author
customernamespace "Customer nam range
pmod "Also modifiedby author
pcust "Customer object only
pmess "Find messages
ptext "Text Elements
pdict "Dictionaystructures
pfunc "Get functions
pinc "Get includes
pscr "Get screens
precf "Search recursively for functions
preci "Searchrecursively for includes
p$tmp "local objects
ppack. "Package
ENDCASE.
end-of-selection
END-OF-SELECTION.
IF forcedexit = 0.
Set the file extension and output type of the file
IF ptxt IS INITIAL.
downloadfileextension = htmlextension.
ELSE.
downloadfileextension = textextension.
ENDIF.
Decide what to download
CASE 'X'.
Download tables
WHEN rtable.
IF NOT ( idictionary[] IS INITIAL ).
PERFORM downloadddstructures USING idictionary[]
pfolder
htmlextension
space
psortt.
Free up any memory used for caching HTML versions of tables
LOOP AT idictionary.
FREE MEMORY ID idictionary-tablename.
ENDLOOP.
GET TIME.
runtime = sy-uzeit - starttime.
PERFORM filltreenodetables USING idictionary[]
itreedisplay[]
runtime.
CLEAR idictionary[].
ENDIF.
Download message class
WHEN rmess.
IF NOT ( imessages[] IS INITIAL ).
SORT imessages ASCENDING BY arbgb msgnr.
LOOP AT imessages.
APPEND imessages TO isinglemessageclass.
AT END OF arbgb.
PERFORM downloadmessageclass USING isinglemessageclass[]
imessages-arbgb
pfolder
downloadfileextension
phtml
space
pcomm
customernamespace
pinc
pdict
pmess.
CLEAR isinglemessageclass[].
ENDAT.
ENDLOOP.
GET TIME.
runtime = sy-uzeit - starttime.
PERFORM filltreenodemessages USING imessages[]
itreedisplay[]
runtime.
CLEAR imessages[].
ENDIF.
Download functions
WHEN rfunc.
IF NOT ( ifunctions[] IS INITIAL ).
PERFORM downloadfunctions USING ifunctions[]
pfolder
downloadfileextension
space
pdoc
phtml
pcomm
customernamespace
pinc
pdict
textextension
htmlextension
psortt.
Free up any memory used for caching HTML versions of tables
LOOP AT ifunctions.
LOOP AT ifunctions-idictstruct ASSIGNING -tablename.
ENDLOOP.
ENDLOOP.
GET TIME.
runtime = sy-uzeit - starttime.
PERFORM filltreenodefunctions USING ifunctions[]
itreedisplay[]
runtime.
CLEAR ifunctions[].
ENDIF.
Download Classes
WHEN rclass.
IF NOT ( iclasses[] IS INITIAL ).
PERFORM downloadclasses USING iclasses[]
ifunctions[]
pfolder
downloadfileextension
htmlextension
textextension
phtml
pcomm
customernamespace
pinc
pdict
pdoc
psortt.
Free up any memory used for caching HTML versions of tables
LOOP AT ifunctions.
LOOP AT ifunctions-idictstruct ASSIGNING -tablename.
ENDLOOP.
ENDLOOP.
Free up any memory used for caching HTML versions of tables
LOOP AT iprograms.
LOOP AT iprograms-idictstruct ASSIGNING -tablename.
ENDLOOP.
ENDLOOP.
GET TIME.
runtime = sy-uzeit - starttime.
PERFORM filltreenodeclasses USING iclasses[]
ifunctions[]
itreedisplay[]
runtime.
CLEAR iclasses[].
CLEAR ifunctions[].
ENDIF.
Download programs
WHEN rprog.
IF NOT ( iprograms[] IS INITIAL ).
PERFORM downloadprograms USING iprograms[]
ifunctions[]
pfolder
downloadfileextension
htmlextension
textextension
phtml
pcomm
customernamespace
pinc
pdict
pdoc
psortt.
Free up any memory used for caching HTML versions of tables
LOOP AT ifunctions.
LOOP AT ifunctions-idictstruct ASSIGNING -tablename.
ENDLOOP.
ENDLOOP.
Free up any memory used for caching HTML versions of tables
LOOP AT iprograms.
LOOP AT iprograms-idictstruct ASSIGNING -tablename.
ENDLOOP.
ENDLOOP.
GET TIME.
runtime = sy-uzeit - starttime.
PERFORM filltreenodeprograms USING iprograms[]
ifunctions[]
itreedisplay[]
runtime.
CLEAR iprograms[].
CLEAR ifunctions[].
ENDIF.
ENDCASE.
IF NOT ( itreedisplay[] IS INITIAL ).
PERFORM displaytree USING itreedisplay[].
ELSE.
statusbarmessage = 'No items found matching selection criteria'.
PERFORM displaystatus USING statusbarmessage 1.
ENDIF.
ENDIF.
*--- Memory IDs
User name
SET PARAMETER ID 'MAUTH' FIELD pauth.
Table name
SET PARAMETER ID 'MTABLE' FIELD ptable.
Message class
SET PARAMETER ID 'MMNAME' FIELD pmname.
Function
SET PARAMETER ID 'MFNAME' FIELD pfname.
Function group
SET PARAMETER ID 'MFGROUP' FIELD pfgroup.
Class
SET PARAMETER ID 'MCNAME' FIELD pclname.
Program
SET PARAMETER ID 'MPROG' FIELD pprog.
Customer namespace
SET PARAMETER ID 'MNAMESPACE' FIELD pcname.
Folder
SET PARAMETER ID 'MFOLDER' FIELD pfolder.
Package
SET PARAMETER ID 'MPACK' FIELD ppack.
Text element checkbox
SET PARAMETER ID 'MTEXT' FIELD ptext.
Messages checkbox
SET PARAMETER ID 'MMESS' FIELD pmess.
Includes checkbox
SET PARAMETER ID 'MINC' FIELD pinc.
Recursive includes checkbox.
SET PARAMETER ID 'MRECI' FIELD preci.
Functions checkbox
SET PARAMETER ID 'MFUNC' FIELD pfunc.
Recursive functions checkbox
SET PARAMETER ID 'MRECF' FIELD precf.
Function module documntation checkbox
SET PARAMETER ID 'MDOC' FIELD pdoc.
Screens checkbox
SET PARAMETER ID 'MSCR' FIELD pscr.
Dictionary checkbox
SET PARAMETER ID 'MDICT' FIELD pdict.
Sort table ascending checkBox
SET PARAMETER ID 'MSORTT' FIELD psortt.
****************************************SUBROUTINES*******************
checkComboBoxes... Check input parameters
FORM checkcomboboxes.
IF pauth IS INITIAL.
CASE 'X'.
WHEN rtable.
IF ptable IS INITIAL.
statusbarmessage = 'You must enter either a table name or author.'.
ENDIF.
WHEN rfunc.
IF ( pfname IS INITIAL ) AND ( pfgroup IS INITIAL ).
IF pfname IS INITIAL.
statusbarmessage = 'You must enter either a function name or author.'.
ELSE.
IF pfgroup IS INITIAL.
statusbarmessage = 'Must enter either a func gp, or an author name.'.
ENDIF.
ENDIF.
ENDIF.
WHEN rprog.
IF pprog IS INITIAL.
statusbarmessage = 'You must enter either a program name or
author name.'.
ENDIF.
ENDCASE.
Check the user name of the person objects are to be downloaded for
ELSE.
IF pauth = 'SAP*' OR pauth = 'SAP'.
statusbarmessage = 'Sorry cannot download all objects for SAP
standard user'.
ENDIF.
ENDIF.
IF NOT statusbarmessage IS INITIAL.
PERFORM displaystatus USING statusbarmessage 3.
forcedexit = 1.
STOP.
ENDIF.
ENDFORM. "
"checkComboBoxes
fillSelectionRanges... for selection routines
FORM fillselectionranges.
DATA: valuetofind TYPE string.
IF NOT pauth IS INITIAL.
soauthor-sign = 'I'.
soauthor-option = 'EQ'.
soauthor-low = pauth.
APPEND soauthor.
ENDIF.
IF NOT ptable IS INITIAL.
IF NOT pcname IS INITIAL AND NOT ptable+0(1) = '/'.
CONCATENATE pcname ptable INTO valuetofind.
ELSE.
valuetofind = ptable.
ENDIF.
sotable-sign = 'I'.
sotable-option = 'EQ'.
sotable-low = valuetofind.
APPEND sotable.
ENDIF.
IF NOT pfname IS INITIAL.
IF NOT pcname IS INITIAL AND NOT pfname+0(1) = '/'.
CONCATENATE pcname pfname INTO valuetofind.
ELSE.
valuetofind = pfname.
ENDIF.
sofunctionname-sign = 'I'.
PERFORM addoption USING valuetofind sofunctionname-option.
sofunctionname-low = valuetofind.
APPEND sofunctionname.
ENDIF.
IF NOT pfgroup IS INITIAL.
IF NOT pcname IS INITIAL AND NOT pfgroup+0(1) = '/'.
CONCATENATE pcname pfgroup INTO valuetofind.
ELSE.
valuetofind = pfgroup.
ENDIF.
sofunctiongroup-sign = 'I'.
PERFORM addoption USING valuetofind sofunctiongroup-option.
sofunctiongroup-low = valuetofind.
APPEND sofunctiongroup.
ENDIF.
IF NOT pclname IS INITIAL.
IF NOT pcname IS INITIAL AND NOT pclname+0(1) = '/'.
CONCATENATE pcname pclname INTO valuetofind.
ELSE.
valuetofind = pclname.
ENDIF.
soclassname-sign = 'I'.
PERFORM addoption USING valuetofind soclassname-option.
soclassname-low = valuetofind.
APPEND soclassname.
ENDIF.
IF NOT pprog IS INITIAL.
IF NOT pcname IS INITIAL AND NOT pprog+0(1) = '/'.
CONCATENATE pcname pprog INTO valuetofind.
ELSE.
valuetofind = pprog.
ENDIF.
soprogramname-sign = 'I'.
PERFORM addoption USING valuetofind soprogramname-option.
soprogramname-low = valuetofind.
APPEND soprogramname.
ENDIF.
ENDFORM. "
" fillSelectionRanges
addOption... fills the option value of ranges
FORM addoption USING value(valuetofind)
option.
IF valuetofind CA asterix.
option = 'CP'.
ELSE.
option = 'EQ'.
ENDIF.
ENDFORM. "
"addOption
retrieveTables... Search for tables in dictionary -
Using scroll wheel with modifier key to zoom out is not working
I can't zoom out with the magnifying tool selected in all programs of the CS3 suite using the option key on a Mac. I can zoom in with no problem. I've been trying to figure this out for "8 hours" now!!!
I do have this checked in the system preferences and Photoshop preferences. I don't think this is considered a keyboard shortcut but I do have universal access checked and zoom out checked in the system preferences.
I searched this site and all of the internet looking for answers but can't seem to find much. I appreciate any help you can give. I'm way behind on my work today.
Thank you!The default key for scrolling zoom is not Command but Control. To change this, go to System Preferences —> Universal Access and click on the Seeing tab. In the Zoom pane, click on the Options button, and in the sheet that drops down, select the text box at the bottom, highlight the character there, then press the modifier key you prefer.
HTH
Archie -
How to make modifier keys lockable? (like Caps Lock for Ctrl or Alt)
Playing around with the non-modal text editor ne, I found myself wondering if one could simulate a modal interface (like vim has) by having something like "Ctrl Lock" or "Alt Lock" (analogous to Caps Lock) and thus a "ctrl mode"/"alt mode". I would like to try this, but I am not sure how to make it happen.
My best guess is that this could be accomplished via XKB, but its documentation looks pretty intimidating. Is anyone here proficient in XKB and could point me in the right direction?
Other ideas:
– Is this something that a terminal emulator could do? Is there already one that can do it?
– Or a shell?
– For console applications, would it be possible to have a small wrapper that did nothing but intercept keyboard input and just pass everything through to the wrapped process, except that it would take into account the desired lockable modifier key? (I am thinking of tput here, but from my first search it appears that it doesn't do this sort of thing.)@Trilby: Thank you for the elaborate input!
@drcouzelis: "sticky keys" normally means that modifiers remain active only until the next keypress, while I want a way to lock them in active state for an arbitrary number of keypresses. But still, "sticky keys" was a worthwile input for the search engine.
The program xkbset, which can be used to set XKB options on the fly, has a function that comes very close to what I desire:
$ xkbset h
Usage: To set or unset various options:
xkbset <options>
where <options> may be all or any of (the '-' switches the feature off,
otherwise it is switched on):
To switch sticky keys on or off, and optionally set or reset:
() two keys pressed at the same time stops sticky keys;
() a modifier pressed twice will be locked:
[-]{sticky|st} [[-]twokey|[-]latchlock]...
I cannot select specific modiers to be affected with xkbset, but that would be fine with me. Sadly, it didn't completely work for me:
– It doesn't affect Alt at all for me.
– The effect seems to go away as soon as I change the window. (Maybe I need to invoke xkbset from .xinitrc for its effects to persist throughout the session? I will try that.)
So I went on and tried to configure XKB manually. I got up to a certain point without studying the documentation in-depth, but now I have landed on an error message that seems to suggest to me that I would have to get to a better understanding about the layout files before I could understand it. Here is what I did:
1. Got my current XKB configuration:
xkbcomp :0 output.xkb
2. Editet output.xkb to include the following at the end of the xkb_compatibility section:
//Hoping this makes the ^-key into a Ctrl-Lock key:
interpret TLDE {
action= LockMods(modifiers=Control);
3. Then I recompiled the configuration back into the running X server:
$ xkbcomp out.xkb :0
Warning: Compat map for group 2 redefined
Using new definition
Warning: Compat map for group 3 redefined
Using new definition
Warning: Compat map for group 4 redefined
Using new definition
Error: Couldn't lookup keysym
Symbol interpretation ignored
Warning: No symbols defined for <AB11> (keycode 97)
Warning: No symbols defined for <JPCM> (keycode 103)
Warning: No symbols defined for <I120> (keycode 120)
Warning: No symbols defined for <AE13> (keycode 132)
Warning: No symbols defined for <I149> (keycode 149)
Warning: No symbols defined for <I154> (keycode 154)
Warning: No symbols defined for <I168> (keycode 168)
Warning: No symbols defined for <I178> (keycode 178)
Warning: No symbols defined for <I183> (keycode 183)
Warning: No symbols defined for <I184> (keycode 184)
Warning: No symbols defined for <FK19> (keycode 197)
Warning: No symbols defined for <FK24> (keycode 202)
Warning: No symbols defined for <I217> (keycode 217)
Warning: No symbols defined for <I219> (keycode 219)
Warning: No symbols defined for <I221> (keycode 221)
Warning: No symbols defined for <I222> (keycode 222)
Warning: No symbols defined for <I230> (keycode 230)
Warning: No symbols defined for <I247> (keycode 247)
Warning: No symbols defined for <I248> (keycode 248)
Warning: No symbols defined for <I249> (keycode 249)
Warning: No symbols defined for <I250> (keycode 250)
Warning: No symbols defined for <I251> (keycode 251)
Warning: No symbols defined for <I252> (keycode 252)
Warning: No symbols defined for <I253> (keycode 253)
The "Error" part is where I am currently stuck. It tells me that my changes were ignored (I no that it's about them because it goes away when I comment them out), but I don't yet understand why. -
Re-install CS5 program,no disc,have both codes
having trouble my friend. need to reinstall Cs5 program, problem is that I don't have the disc. but I do have both codes, tried calling customer support no luck there..... anyone
The links to download the software are listed here: http://prodesigntools.com/all-adobe-cs5-direct-download-links.html for CS5
and here: http://prodesigntools.com/adobe-cs5-5-direct-download-links.html for CS5.5
You should be able to download and use your key with these files. -
This newbie has a simple question that my "Mac Help" feature, 2 big books, and support "search" features hasn't answered. How do you turn off all running programs? I want to install Verizon DSL, and their installation book says to first close all running programs, but I don't have a clue as to how to do that. It looks to me like Finder and maybe even some other things are always running. Can someone please tell me step-by-step what to do? Thank you.
iBookG4 Mac OS X (10.4.5)Hi 4b. There isn't a 'Quit All' command as such, but a really quick way of quitting all open apps is to firstly press and hold down the command (apple) key then click the tab key once (keep the command key depressed). You'll get a row of buttons across the screen that show the open apps. You can use the left and right keys as required to highlight any of these buttons. Clicking on the Q-key will quit the selected app.
What I do is, as long as Finder button is to the left, hold the Q-key down as all apps quit one at a time.
Finder will be left running, and as Glenn says, don't worry about Dashboard. -
Some applications behave as though modifier keys are pressed
I am experiencing occasions when some applications behave as though modifier keys are being pressed (ie Command Key, Option Key and Shift Key). At first I thought the problem was isolated to Adobe Creative Suite Applications but have now found that MYOB is also affected. I have tried multiple keyboards (even no keyboard) so I do not believe it is a keyboard hardware problem. I am running on the hardware and software listed below.
When the problem occurs it immediately affects all applications listed below in the way described. Many other applications appear unaffected. The only way I have found to fix the problem is to reboot the machine. After rebooting, the problem may not reoccur for several days, or may reoccur within half an hour. This problem has been occurring since some time in December 2010. I have also confirmed that none of the behaviour listed below occurs when the problem isn't present.
Affected Applications & Observed Behaviour:
- Adobe Photoshop CS4: All tools behave as though the option key is being pressed (rendering them unusable).
- Adobe Dreamweaver CS4: When clicking on the contents of an open file, Dreamweaver behaves as though Cmd+Opt is pressed (ie the code navigator appears making the program unusable)
- All applications in Adobe CS4 Suite: Upon startup, each application behaves as though CmdOptShift is pressed (resets preferences).
- MYOB: When the cursor is in a data field, the delete key behaves as though the option key is pressed (ie entire field is deleted rather than a single character)
I have been working with Adobe telephone support without success for about 3 weeks but since noticing the problem also affects MYOB, it now seems feasible that it is caused by something outside of the Adobe Creative Suite.
Any help would be appreciated.
Message was edited by: Leon BorrackLeon,
You are not alone - I sometimes suffer a similar issue and I don't use any Adobe software. For me, it manifests itself as modifier keys being pressed in Safari, Mail or Finder. This normally happens shortly after a wake from sleep. I'm using an old-style Bluetooth Apple keyboard on a Mac Pro 1,1. I can't tell you what causes it, but I can tell you the solution that I've found: If I relaunch Finder the problem goes away...
To relaunch Finder (apologies if you already know this), press 'Cmd-Option-Escape', select 'Finder' and click relaunch. For some reason the seemingly stuck modifier is cleared. It's not an terribly elegant solution, but it is a lot quicker and less disruptive than rebooting.
Hope that helps a little.
Greg -
Unique ID in ABAP stack across all Envrionment.
In ABAP Stack is there any table which uniquely identifies one interface mapping across all environments. The requirement is to get a unique ID in ABAP stack (this needs to be hard-coded in an ABAP mapping) which is common in all environment.
There is a table SXMSPFADDRESS which is the master table for addresses in XI i.e. Party, Service, Interface and namespace, and has key address id that is used at many places in XI runtime. But the addressID is different in different environment and hence cant be used.Hi,
maybe start with a description of the issue and we will try to help with some other idea ?
Regards,
Michal Krawczyk -
Why does placing links in Illustrator now change the "Date Modified" data for all of my files?
This seems to be a new glitch that started after I installed the latest updates to Illustrator CC (2014) and reoccurs every time on both computers I work on:
When I choose to place a new image in my Illustrator file and the window opens to let me choose a file to place, the "Date Modified" field of all the files in the folder I'm viewing (except other Illustrator files) quickly changes to the current date and time. This is definitely happening when I'm in Illustrator because when I needed files from a folder that had hundreds of images in it and I was able to select a file quickly, I was able to do so before it had changed the date on all of my files. However, when I needed a file from a folder that had hundreds of images in it but I took a long time to find the image I needed, Illustrator had time to change the date modified on all of my files. This might seem like an unimportant issue because it doesn't actually seem to modify or damage any of my files, but having all of the dates change on my files is a serious problem for my workflow and file management issues. So far, my only work around has been to use back-up image files, but that's not a long term solution and I don't understand why Illustrator should be modifying the dates of my files.
Is there a setting I can choose somewhere to prevent this problem? If not, is there somewhere I can report this kind of glitch? I'm not sure if I'm using the exact language necessary to get the issue across so please let me know if you have any questions! Thanks!iCloud is not compatible with Snow Leopard, that is your problem.
A quick way out is to purchase Soho Organizer which is compatible, even when running on Snow Leopard, it will correctly handle Contacts and Calendars from iCloud. $100, 2 user license.
Soho Organizer
There is a free trial if you want to try it.
Maybe you are looking for
-
Lost the ability to Spotlight Index my Time Machine drive
I have an external, Firewire Time Machine drive which has been working without problems up to now. This evening I had a backup which hung up in the "preparing" stage (no file transfers begun yet). When I went to look in the console, there was a devic
-
External Hard Drive mounts, but can't be selected or opened
I have a 1 TB Western Digital external hard drive. When I plug it into the Firewire 800 port of my 13" Unibody MacBook Pro (running Snow Leopard), the drive shows up on my desktop and in Finder windows, but when I try to access the drive, or "select"
-
Correct practice for settings up an RDS Server alongside a WSE2012 server
Hi there, I am configuring a new environment on Windows Server 2012. I would just like to discuss the correct/best practice for setting up a terminal server alongside a Windows Server Essentials 2012 Domain We have the following setup Windows Server
-
My ipod screen is frozen with yellow and grey on the screen how do i fix it???
I was listening to music and on facebook and all of a sudden my ipod went black and then got frozen on a yellow and grey screen and i have no clue what happened. This was a replaced ipod and now it isnt working the screen is staying on and it wont t
-
Need keyboard short cuts document
went to muse tutorial page it lists short cuts for mac and pc both links go to mac short cuts what up wit dat?