Welcome to TiddlyWiki created by Jeremy Ruston; Copyright © 2004-2007 Jeremy Ruston, Copyright © 2007-2011 UnaMesa Association
302 Found
The requested resource resides temporarily under a different URI. Since the redirection might be altered on occasion, the client SHOULD continue to use the Request-URI for future requests. This response is only cacheable if indicated by a Cache-Control or Expires header field.
The temporary URI SHOULD be given by the Location field in the response. Unless the request method was HEAD, the entity of the response SHOULD contain a short hypertext note with a hyperlink to the new URI(s).
If the 302 status code is received in response to a request other than GET or HEAD, the user agent MUST NOT automatically redirect the request unless it can be confirmed by the user, since this might change the conditions under which the request was issued.
Note: RFC 1945 and RFC 2068 specify that the client is not allowed to change the method on the redirected request. However, most existing user agent implementations treat 302 as if it were a 303 response, performing a GET on the Location field-value regardless of the original request method. The status codes 303 and 307 have been added for servers that wish to make unambiguously clear which kind of reaction is expected of the client.
1) In transaction SICF, locate the services listed below, by path, and activate them - make sure you select the '2nd yes' to activate the underlying services as well
*''/sap/public/bc/''
*''/sap/bc/gui/''
2) In transaction SE80, locate, via the menu, ''Utilities –> Settings'' and find the ''Internet Transaction Server''.
On the ''Publish'' tab, check that ''Integrated ITS'' is selected.
For earlier releases, check ''On Selected Site'' and set it to ''INTERNAL''.
This restricts the publication in the next step to the integrated (internal) ITS.
3) Still using SE80,
locate the Internet Service ''SYSTEM''
Publish the Internet Service with the Context Menu ''Publish -> Complete Service''
locate the Internet Service ''WEBGUI''
Publish the Internet Service with the Context Menu ''Publish -> Complete Service''
4) Now Browse to [[http://<server>:<icmport>/sap/bc/gui/sap/its/webgui/!|http://<server>:<icmport>/sap/bc/gui/sap/its/webgui/!]] and login to the webgui.
As an alternative, in transaction SICF, find the ''webgui'' service and select ''Test Service'' from the context menu. This will fire off the appropriate URL in your default browser, which you can bookmark.
[[OSS Note 1088717|http://service.sap.com/sap/support/notes/1088717]]
Several services may be executed when you call a URL, so you must activate all *service* nodes in the SICF tree. As a result, the URL path is represented in ICF subnodes (services). If, for example, you want to activate services for the URL ''/sap/public/icman'', you must activate the service tree default_host in transaction SICF. You must then activate the individual services sap, public and icman.
An alternative is to use the report ''rsicf_service_activation'' to activate a group of ICF nodes that can be predefined. When you execute this report, you can use the following predefined groups (technical name):
* WEB DYNPRO ABAP
* WEB DYNPRO ABAP DESIGN TIME
Group for the Web Dynpro ABAP development. Note that this setting is not supported for production operation.
* WEB DYNPRO ABAP TEST APPS
Group for test applications. Note that this setting is not supported for production operation.
To align a cell so that its text displays at the top rather than the center, add
{{{vertical-align:top;}}}
at the beginning of the cell.
Also known as ''Country Chart of Accounts''
This [[Chart of Accounts]] contains the GL accounts necessary to meet the specific statutory/legal requirements of a company from which a Company Code operates.
When the operative [[Chart of Accounts]] and the Alternate [[Chart of Accounts]] are different, a link needs to be established by entering the GL account number from the Alternate [[Chart of Accounts]] in the GL master record (under the Company Code section) of the Operative [[Chart of Accounts]] in the field Alternate Account Number.
The assignment of this [[Chart of Accounts]] to a Company Code is optional. It is quite common that both the operative and the country chart of accounts are one and the same. In this case, you will not need two different charts of accounts.
To align a cell so that its text displays at the top rather than the center, add
{{{vertical-align:top;}}}
at the beginning of the cell.
[[Alternate Chart of Accounts]]
[[Business Area]]
[[Chart of Accounts]]
[[Credit Control Area]]
[[Organisational Units]]
- - [[User Defaults For Views and Organizational Levels]]
[[Variant Configuration]]
If you're running SQL Server under the Local System account, it will not have rights to backup the database to a network share (see http://msdn.microsoft.com/en-us/library/ms179313.aspx ). You'll need to change the account used by SQL Server.
Here's the procedure:
# Go to Start —> Run —> services.msc
# Select ''SQL Server (MSSQLSERVER)'' and stop the service.
# Select ''SQL Server (MSSQLSERVER)'' and right click to choose 'Properties.'
# In the tabbed pane, choose ''LogOn''
# Select ''This account'' and provide an account that has rights to access the shared network.
# Click ''OK''
# Repeat the change to the LogOn properties for ''SQL Server Agent (MSSQLSERVER)''
# Restart ''SQL Server (MSSQLSERVER)'' and ''SQL Server Agent (MSSQLSERVER)''
You will now be able to perform backups to any network share to which the account has sufficient permissions.
__''Notes''__
Remember to reset the ''LogOn'' properties back to ''Local System Account'' when you're done.
The account you specify for the SQL Server service account must have FULL CONTROL rights to the file system folder and to the share.
The file share should only be accessed via UNC name, as mapped drives may not be consistently visible to the SQL Service.
Business Areas correspond to specific business segments of a company, and may cut across different Company Codes (for example, product lines). They can also represent different responsibility areas (for example, branch units). ''NOTE - The Business Areas are optional in SAP.''
The financial statements drawn per business area are for internal reporting purposes.
During Configuration, you select which company you want to enable business area financial statements for
When transactions are posted in FI, you have the option of assigning them to a Business Area so that the values are properly captured for internal financial statements.
The Business Area can also be derived from other account assignments, for example, cost center. But to do this, you need to define the Business Area in the master record of that particular cost center.
Business writing is about clarity and persuasion. The main technique is keeping things simple. Simple writing is persuasive. A good argument in five sentences will sway more people than a brilliant argument in a hundred sentences. Don’t fight it.
Simple means getting rid of extra words. Don’t write, “He was very happy” when you can write “He was happy.” You think the word “very” adds something. It doesn’t. Prune your sentences.
Humor writing is a lot like business writing. It needs to be simple. The main difference is in the choice of words. For humor, don’t say “drink” when you can say “swill.”
Your first sentence needs to grab the reader. Go back and read my first sentence to this post. I rewrote it a dozen times. It makes you curious. That’s the key.
Write short sentences. Avoid putting multiple thoughts in one sentence. Readers aren’t as smart as you’d think.
Learn how brains organize ideas. Readers comprehend “the boy hit the ball” quicker than “the ball was hit by the boy.” Both sentences mean the same, but it’s easier to imagine the object (the boy) before the action (the hitting). All brains work that way. (Notice I didn’t say, “That is the way all brains work”?)
That’s it. You just learned 80% of the rules of good writing. You’re welcome.
You should never run scheduled background jobs under a dialog user. Once that user leaves or changes role, their authorisations will change. At the best, jobs will fail due to authorisation failures. At worst the background jobs will complete successfully, but do something other than was intended. If you have a lot to do, a quick and dirty way (assuming you are changing the jobs to user ''HOUSEKEEP'') is :
{{{select JOBNAME, SDLUNAME, STRTDATE, AUTHCKNAM, STATUS from sapr3.TBTCO where SDLUNAME like 'ABC%' and STRTDATE = ' ' and STATUS = 'S'}}}
{{{update sapasd.TBTCO set SDLUNAME='HOUSEKEEP', AUTHCKNAM=' ' where SDLUNAME like 'ABC%' and STRTDATE = ' ' and STATUS ='S'
}}}
{{{commit}}}
Jobs with STAUS = 'S" are scheduled, waiting to run.
SDLUNAME is the user who scheduled the job (from SM37 perspective)
AUTHCKMAN / AUTHCKNAM is the client / user that is used for authorisation. If is blank, the AUTHCKMAN / SDLUNAME combination is used. The easiest way to get round any issues here is to create the HOUSEKEEP user in all clients
Steps to change the default ''SAP'' IMAGE on the right hand column of the screen :-
Transaction code ''SMW0''
Select ''Binary data for WebRFC application''
Hit Enter
Click Execute
Click ''Settings -> Maintain MIME types''
Click the ''Create'' button
Fill in :- ''TYPE'' as //image/gif// and ''EXTENSION'' as //GIF//
Click ''Save''
Return to the ''Binary data for WebRFC'' selection screen
Click ''Create''
Fill in :- ''Obj. name'' as ''ZXXXX/.GIF'' and ''Description'' as //any old text like Company Logo//
Click ''Import'' and specify the filename where your GIF file is located.
Go to transaction code ''SM30'' and select ''Table/View'' of //SSM_CUST//
Click ''Maintain''
if ''START_IMAGE'' is present, overwrite the ''Value to be set' with //ZXXXX.GIF//
otherwise, click ''New Entries'' and add ''Name'' of //START_IMAGE// and ''Value to be set' of //ZXXXX.GIF//
Logoff and Login again for the change to take effect
A Chart of Accounts is the list of GL accounts used in one or more Company Codes. All the GL accounts in a chart of accounts will have an account number, account name, and some control information. The control information decides how the GL account can be created.
A Chart of Accounts includes the following components:
- - Chart of account key
- - Name
- - Maintenance language
- - The GL Account Number
- - Controlling integration
- - Group chart of accounts (consolidation)
- - Block indicator
//Could they be any bigger bores? Julia Gillard, I’mma let you finish, but Cloudstreet is the worst novel of all time. Of. All. Time. That book was written to get on the HSC list. It’s like Winton’s retirement fund. Oh wait, he’ll never retire, he’ll keep subjecting us to the same cloying, boring novels about Australian suburbia until he dies. Because he’s so boring no one would ever kill him. It’s not like he’s going to write a ripping critique of Islam and have himself the subject of a Jihad anytime soon is it. It’s not like he’s going to move to Berlin and go on a four year long introspective nightmare under the influence of copious amounts of smack and come out the other side with an avant garde transgressive masterpiece about male prostitution and AIDS as a metaphor for the global, souless malaise humanity finds itself in.
Literature is about danger and dangerous ideas. But instead of exposing English students to those ideas we give them Tim Winton. Julia Gillard, gives them Tim Winton. Here kids, read this and become fat happy consumers. Congratulations, you’re dux of your meaningless class, take this Dymocks voucher and enjoy the new nine story supernatural romance section.
Cloudstreet. What a joke. Guess what Punch, **spoiler aler** the whole thing takes place in the three seconds or so of brain death in the mind of a time traveling foetus. Hence the 2nd person perspective. That’s why the narration has that all knowing, indigo child tone. It’s a gimmick. It’s the literary equivalent of a pop up book. It might as well have a sound chip in inside the binding that says ‘I’m Tim Winton and I’m very, very smart. So smart, you won’t understand just how deep my book is. I’m very, very smart.’
Why did you betray Australia Julia Gillard? Remember when you were young and hip and up and coming and you dug socialism and anarchism? And the Right maligned you for having that empty, austere house full of white furniture? I bet you were reading The Heart is Decitful Above All Things and pondering the difference between a ‘Veil’ and a ‘Hoax’ as described by JT LeRoy / Laura Albert.
Children of Australia - take your taxpayer funded copies of Cloudstreet and burn them before the damage to Australian literature becomes to great to ever reverse. //
from http://www.thepunch.com.au/articles/revealed-our-federal-politicians-favourite-books/#comments
''SE54'' then select //Generated Objects// and //Create//
Find Scr. Numbers
New
''SE93'' Select //Transaction with parameters//
Transaction SM30/SM31
Skip first Screen Z
UPDATE X
VIEWNAME XXXX
You maybe required go to http://service.sap.com/sscr to register various objects:
R3TR FUGR XXXX
R3TR TOBJ XXXX
R3TR TOBJ XXXX S
Using the EXPORT command, there's a file format supported (besides "DEL" and "ASC") called IXF. It is special in that it also encodes the table's schema into the file. So it is a useful utility for moving tables from one database to another or from one system to another.
{{{export to temp.ixf of ixf }}}
{{{ select * from table where 1 < 0; }}}
{{{import from temp.ixf of ixf }}}
{{{ create into copy; }}}
The option CREATE is available to import for IXF files, because the IXF file contains the schema specification. In this particular example, note that the "where 1 < 0" condition will always fail. This means no rows are selected by the EXPORT command. However, the schema specification of the exported table will still be written to temp.ixf. The IMPORT command will use this to create a new table named copy, with an identical schema to table.
The Credit Control Area helps administer credit management functions relating to customers.
It is used in both in SD and FI-AR modules.
By definition, you can only assign one Credit Control Area per Company Code
However, you can assign many Company Codes to the same Credit Control Area.
[[Remove Users (DB2)]]
[[Create an Empty Copy of a Table (DB2)]]
[[Database Recovery (DB2)]]
Data for OSS messages - following command stores data in "/db2/ABC/db2support.zip"
{{{/usr/opt/db2_08_01/bin64/db2support . -d ABC -c -g -s}}}
Simple DB2 Commands
{{{db2 get db config for ABC show detail}}}
{{{db2 list history backup since 20111001 for ABC > list.history.backup.out}}}
{{{more list.history.backup.out}}}
{{{db2 list history archive log since 20111001 for ABC > list.history.log.out}}}
{{{more list.history.log.out}}}
{{{db2 "list tablespaces show detail" | more}}}
{{{db2 "list tablespace containers for 5"}}}
{{{db2 "list tablespaces show detail" | grep State}}}
{{{db2 "list history alter tablespace containing PSAPBTABD for ABC"}}}
{{{db2 "select schemaname from syscat.schemata"}}}
{{{db2 "select colname, tabname, typename, length from syscat.columns where colname ='STRTTIME'"}}}
{{{db2 rollforward db ABC}}}
{{{db2 rollforward db ABC to end of backup}}}
{{{db2 rollforward db ABC complete}}}
Practical example taken from a redirected restore
{{{....}}}
{{{RESTORE DATABASE ABP CONTINUE}}}
{{{DB20000I The RESTORE DATABASE command completed successfully.}}}
{{{....}}}
{{{nucspfd1:db2abc 11> db2 rollforward db ABC}}}
{{{ Rollforward Status}}}
{{{ Input database alias = ABC}}}
{{{ Number of nodes have returned status = 1}}}
{{{ Node number = 0}}}
{{{ Rollforward status = DB pending}}}
{{{ Next log file to be read = S0021288.LOG}}}
{{{ Log files processed = -}}}
{{{ Last committed transaction = 2011-10-24-04.58.26.000000 UTC}}}
{{{nucspfd1:db2abc 12> ls log_retrieve/ABP/S002128*}}}
{{{log_retrieve/ABP/S0021288.LOG log_retrieve/ABP/S0021289.LOG}}}
{{{nucspfd1:db2aet 13> db2 "rollforward db ABC to end of logs OVERFLOW LOG PATH (/db2/ABC/log_retrieve/ABP)"}}}
When allocating Containers, the default unit is ''pages''. The size of a page is defined by the pagesize of the tablespace.
{{{db2 "alter tablespace ZSAPBTABD add (file '/db2/ABC/sapdata23/ZSAPBTABD.container013' 128000)"}}}
{{{db2 "alter tablespace ZSAPBTABI add (file '/db2/ABC/sapdata13/ZSAPBTABI.container011' 32000)"}}}
{{{db2 "alter tablespace PSAPBTABD resize }}}
{{{(file '/db2/ABC/sapdata17/PSAPBTABD.container225' 100000)"}}}
{{{db2 "alter tablespace PSAPUSER1I resize (all containers 500)"}}}
=================================
ps -ef | grep db2
db2 "select * from syscat.schemata"
db2 get db cfg for XIP | egrep 'pending |consistent'
db2 list tablespaces | egrep 'State |Name'
db2 "select count(*) from SAPXIP.usr02"
db2 select count(*) from SAPXIP.usr02
db2 select * from syscat.tables | more
db2 get db cfg for XIP | grep HADR
db2 "select uflag,count(*) from SAPXIP.usr02 where uflag > 0 group by uflag"
db2 "select uflag,bname,mandt from SAPXIP.usr02 where uflag > 0" > users.txt
db2 "update SAPXIP.usr02 set uflag= 192 where bname not in('MENGLISH', 'SAP*', 'DDIC') "
db2 "update SAPXIP.usr02 set uflag= 0 where bname = 'J2EE_ADMIN'"
db2 "update SAPXIPDB.usr02 set uflag= 0 where bname = 'J2EE_ADMIN'"
‘commit’
‘db2 terminate’
db2 "SELECT COUNT(*) FROM TABLE( REG_LIST_VARIABLES() ) AS X WHERE REG_VAR_NAME = 'DB2ENVLIST' "
db2 "SELECT COUNT(*) as CNT FROM TABLE( REG_LIST_VARIABLES() ) AS X WHERE REG_VAR_NAME = 'DB2_WORKLOAD' AND UPPER( REG_VAR_VALUE ) = 'SAP'"
1 - Determine backup to use
{{{db2adutl query full db PP1}}}
2 - Match up the LOG files with the timestamp chosen in the previous step
{{{db2 list history backup all for PP1}}}
have the required LOG files been written to TSM ?
{{{db2adutl query logs db PP1}}}
''if not, you will need an earlier backup''
3 - Restore the LOG files (to ensure you have them !!!)
{{{db2adutl extract logs between S1234567 and S12345678}}}
4 - Restore the database
{{{db2 restore database PP1 use adsm open 1 sessions taken at <time-stamp>}}}
5 - Complete Recovery
{{{db2 rollforward database PP1 to (end of logs | <time-stamp>)}}}
[[DB2]]
[[MaxDB / SAPDB]]
[[Oracle]]
[[SQL Server]]
Generic SQL
[[Finding Duplicates with SQL]]
From http://service.sap.com/sap/support/notes/99155
DATASET_WRITE_ERROR / DATASET_CANT_OPEN on NT,
Also see http://service.sap.com/sap/support/notes/117395 - Authorization problems with file I/O on windows NT
The following standard situations are known:
Error text: "Invalid argument"
Error code: 22
The destination file is no longer available during repeated file access.
Error text: "No space left on device"
Error code: 28
Insufficient memory space when creating a file or for the append.
Error text: "Bad File descriptor"
Error code: 9
The network link was discontinued.
Error text: "Permission denied"
Error code: 13
The user who uses the R/3 kernel has no authorization to access the network resource.
Error text: "No such file or directory"
Error code: 2
The system does not find the entered network path or the file.
ABAP program ''BTCTRNS1'' suspends all scheduled jobs, i.e. it move jobs to Status //De scheduled due to Upgrade//. It will not cancel running jobs and will not reset the time schedule of these jobs.
Once you are finished with your upgrade or other downtime and you are ready to restore them to their previous status, run ''BTCTRNS2''.
ABAP program ''BTCTRNS2'' changes the status of all jobs with the status //De scheduled due to upgrade// back to //Released//. During this, it also manages the ''rdisp/btctime'' parameter (used to fetch background jobs from the TBTCT and TBTCS tables) to prevent overflow of the background processes. Parameter ''rdisp/btctime'' is used in controlling the //background scheduler// runtime. The default is 60 sec. so the scheduler checks for available background work processes every 60 seconds. If the parameter ''rdisp/btctime'' is set to zero, the background scheduler does not run.
See [[Note 37425 - Cancel job during upgrade|http://service.sap.com/sap/support/notes/37425]]
//"How you do anything is how you do everything. Your 'character' or 'nature' just refers to how you handle all the day-to-day things in life, no matter how small."//
[[Derek Sivers|http://sivers.org/character]]
Need to editing a table where maintenance is not allowed (i.e. production) ???
here's a trick that Security team on many systems have not catered for
Use transaction SE16N -> Enter the table name and press enter to read the fields in.
Then type &SAP_EDIT in the transaction area (as a function code) and hit enter. A success message displays saying "SAP Editing function is activated".
You can now execute the report and you can edit any field except the key fields.
Each time you update JAVA (whether it's the JRE or the JDK), you get a new version installed and recorded in the registry (this can also be seen in the uninstall programs screen available from the Control panel), but the old version is not removed. When you follow the recommendation to remove any older versions, the older Java is correctly removed, but the registry entries can be left behind.
Getting rid of the ''ERROR 1723'' requires that these invalid registry entries be removed. Good news is that they are findable and clearable.
So here they are (and there are few of them) - Note that the GUID will change from installation to installation (although if your systems are built from a template, you may find common GUIDs) .
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{DBC80044-A445-435b-BC74-9C25C1C588A9}
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Installer\Products\4EA42A62D9304AC4784BF238120612FF
You are looking for all and any Java installers.
Then move on to
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83216021FF}
Look for all that have Java information and remove them - I have had as few as 2 and as many as 5.
Once you have done that, reinstall Java
A real pain I know but it works every time
From the command line (log in as ora<sid>) run oerr <error name / number > to get a description of an Oracle error code.
Usage: /oracle/<$DBSID>/816_32/bin/oerr facility error
Facility is identified by the three-letter prefix in the error string. For example, if you get ORA-7300, "ora" is the facilityand "7300" is the error. So you should type "oerr ora 7300". If you get LCD-111, type "oerr lcd 111", and so on.
Eg oerr ora 01108
01108, 00000, "file %s is in backup or media recovery"
// *Cause: Either media recovery is actively being applied to the file, or
// it is being backed up while the database is in NOARCHIVELOG mode.
// It cannot be used for normal database access or crash recovery.
// *Action: Complete or cancel the media recovery session or backup.
As part of R3Copy or major application upgrades, you may be required to switch the log-file. This is done to ensure that Database Recovery can be made to a specific point in the process on another machine (R3Copy) or if the system crashes (application upgrade etc).
You will need to do the following fo Oracle 8 or less systems;
Login as ora<sid>
Start server manager
>svrmgrl
Type the following commands from the server manager prompt;
SVRMGR> connect system/manager;
SVRMGR> alter system switch logfile;
SVRMGR> exit
For Oracle 9 systems
Login as ora<sid>
Start server manager
>sqlplus /nolog
> connect / as sysdba
> alter system switch logfile;
> exit
//"You try not to piss-off your current profitable customers because it costs so much to get them in the first place. The same is true for your employees. Maybe we need a lifetime value calculation for employees?"// Unknown
Look at Table TPLOG (go there using the Transaction Code SE16) and input the transport name in the CMDSTRING field with *.
Example: *UZDK939001*
The following SQL script example shows how to identify duplicate rows in a data table.
SELECT col1, col2, count(*)
FROM sapr3.table
GROUP BY col1, col2
HAVING count(*) > 1
ORDER by count(*)
NOTE: this has worked in DB2 with 12 table columns
Tables with one narrow column and one long column often force line breaks in the narrow column where words are separated by a space, as in this example:
|narrow column|narrow column|very wide column very wide column very wide column very wide column very wide column very wide column very wide column very wide column very wide column very wide column very wide column |
To force those narrow cells onto one line, add the following code at the beginning of the cells:
{{{
@@white-space: nowrap;YOUR-TEXT-HERE@@
}}}
Here is the result:
|@@white-space: nowrap;narrow column@@|@@white-space: nowrap;narrow column@@|very wide column very wide column very wide column very wide column very wide column very wide column very wide column very wide column very wide column very wide column very wide column |
''Line-by-line blockquotes:''
{{{>level 1}}}
{{{>level 1}}}
{{{>>level 2}}}
{{{>>level 2}}}
{{{>>>level 3}}}
{{{>>>level 3}}}
{{{>>level 2}}}
{{{>level 1}}}
produces:
>level 1
>level 1
>>level 2
>>level 2
>>>level 3
>>>level 3
>>level 2
>level 1
''Extended blockquotes:''
{{{<<<}}}
{{{Extended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotes}}}
{{{<<<}}}
produces:
<<<
Extended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotesExtended blockquotes
<<<
|bgcolor(#dddddd):Links with wikiwords|EnchiLada (inactive link - no tiddler yet)<br>WikiWord (active link to tiddler)|{{{EnchiLada}}}<br>{{{WikiWord}}}|
|bgcolor(#dddddd):~De-Wikify a ~WikiWord|~WikiWord, ~EnchiLada|{{{~WikiWord, ~EnchiLada}}}|
|bgcolor(#dddddd):Links with brackets|[[How to add background images]]|{{{[[How to add background images]]}}}|
|bgcolor(#dddddd):Pretty links|[[display text|ColorSchemes]] - links to the tiddler of color schemes|{{{[[display text|ColorSchemes]]}}}|
|bgcolor(#dddddd):External links work the same way:|http://groups.google.com/group/TiddlyWiki <br><br>[[TiddlyWiki Google group|http://groups.google.com/group/TiddlyWiki]]|{{{http://groups.google.com/group/TiddlyWiki}}} <br><br> {{{[[TiddlyWiki Google group|http://groups.google.com/group/TiddlyWiki]]}}}|
|bgcolor(#dddddd):Links to local files|To a file on a CD in your D drive: <br><br>To a file on your USB stick on your e drive: <br><br>To a file in your hard drive:|{{{file:///D:/filename.doc/}}}<br><br>{{{file:///E:/filename.doc/}}}<br><br>{{{file:///C:/filepath/filename.doc/}}}|
''Images:''
{{{[img[http://farm1.static.flickr.com/39/122259544_6913ca58f3_m.jpg]]}}} is the formatting for:
[img[http://farm1.static.flickr.com/39/122259544_6913ca58f3_m.jpg]]
''A tip from Jeremy Hodge:''
"...[You] may add an image as a local file with the following: {{{[img[.\filepath\filename.jpg]]}}} which adds a picture from the directory that is contained within the same directory as TW. This is very useful for me or anyone who carries their own TW on a USB drive such as myself."
''Numbered lists:''
{{{#item one }}}
{{{##Item 1a}}}
{{{###Item 1ai}}}
produces:
#item one
##Item 1a
###Item 1ai
''Bulleted lists:''
{{{*Bullet one}}}
{{{**Bullet two}}}
{{{***Bullet three}}}
produces:
*Bullet one
**Bullet two
***Bullet level three
!This is the formatting:
{{{|!Table header|!Column Two|}}}
{{{|>| colspan |}}}
{{{| rowspan |left aligned|}}}
{{{|~| right aligned|}}}
{{{|bgcolor(#DC1A1A):colored| centered |}}}
{{{||*lists<br>*within<br>*tables<br><br>and double-spaced too|}}}
{{{|caption|c}}}
!This is the result:
|!Table header|!Column Two|
|>| colspan |
| rowspan |left aligned|
|~| right aligned|
|bgcolor(#DC1A1A):colored| centered |
||*lists<br>*within<br>*tables<br><br>and double-spaced too|
|caption|c
*[[Alternate the color of table rows]]
*[[Force the text in a cell not to wrap to the next line at a space]]
*[[Align the text in a cell at the top instead of the center]]
!Format text
|!Format|!It will look like this...|!...if you format it like this...|
|Bold-faced type|''text''|{{{''text''}}}|
|Italic text|//text//|{{{//text//}}}|
|Underlined text|__text__|{{{__text__}}}|
|Strike-through text|--text--|{{{--text--}}}|
|Colored text|@@color(green):green colored@@|{{{@@color(green):green colored@@}}}|
|Text with colored background|@@bgcolor(#ff0000):color(#ffffff):red colored@@|{{{@@bgcolor(#ff0000):color(#ffffff):red colored@@}}}|
|Highlighting|@@text@@|{{{@@text@@}}}|
|Superscript|2^^3^^=8|{{{2^^3^^=8}}}|
|Subscript|a~~ij~~ = -a~~ji~~|{{{a~~ij~~ = -a~~ji~~}}}|
!Make the first letter of a paragraph extra large
(from Morris Gray's TW Help)
''Sample'':
{{firstletter{
@@color:#bbbbbb;O@@}}}kay, so you know how to use ~TiddlyWiki, but now you want more. You want to change the color or layout. You want to add features to it. As the subtitle says, this is an entry-level introduction, so I am not going to show you how to do every possible thing you can do with ~TiddlyWiki. I probably don't know half of what can be done. Advanced documentation such as that found at http://www.tiddlywiki.org/wiki and http://tiddlyspot.com/twhelp/ can hopefully expand your horizons.
''How to do it:''
1. Add the following code to your StyleSheet:
{{{
.firstletter{ float:left; width:0.75em; font-size:400%; font-family:times,arial; line-height:60%; }
}}}
2. Add the following code to your tiddler at the place where your enlarged letter would go (replacing "O" with the appropriate letter):
{{{
{{firstletter{
@@color:#c06;O@@
}}}
}}}
When the target system is NW 7.0 (aka NW 2004s) or later - whether its an install, upgrade copy etc- you need an Installation key.
''Create the product system for which you want to generate the installation key, in the system landscape''
Call the Solution Manager System Landscape (transaction SMSY), in your SAP Solution Manager system.
Select the landscape component Product System, and choose Create New Product System from the context menu.
Enter the system ID as product system name in the next dialog box.
Choose the product and product version from the possible entries help. Save.
Complete the system data as far as possible.
Save your entries.
''To generate the key:''
//Depending on the release, you may have tor restart the SMSY transaction to show the System Landscape option on the menu//
Choose ''System Landscape ==> Other Object'' in the menu.
Set system to be installed or upgraded, from the possible entries.
Choose ''Generate Installation/Upgrade Key''.
Enter the required data and choose ''Generate Key''.
The system displays the key.
Enter this key when requested during the installation / upgrade via ''sapinst''
[[Cloudstreet / Winton]]
[[Madness]]
[[TiddlyWiki wiki|http://tiddlywiki.org/wiki/Introduction]],
[[TiddlyWiki for the rest of us|http://www.giffmex.org/twfortherestofus.html]],
[[TiddlyWiki Applications|http://www.giffmex.org/tw/tiddlywikicentral.html]]
*[[Format text]]
*[[Format links and images]]
*[[Format lists]]
*[[Format tables]]
*[[Format blockquotes]]
*[[Miscellaneous formats]]
Morris Gray has very nice lists of how to do ASCII symbols, Greek and Latin symbols, HTML entities and Math symbols at his wonderful TW Help site. To see these lists at his site, [[click here|http://twhelp.tiddlyspot.com/#Entities-Codes]].
To get started with a blank [[TiddlyWiki]], you'll need to modify the following tiddlers:
* [[SiteTitle]] & [[SiteSubtitle]]: The title and subtitle of the site, as shown above (after saving, they will also appear in the browser title bar)
* [[MainMenu]]: The menu (usually on the left)
* [[DefaultTiddlers]]: Contains the names of the tiddlers that you want to appear when the TiddlyWiki is opened
You'll also need to enter your username for signing your edits: <<option txtUserName>>
For oracle 9.2. its:
cd to the OPatch directory - generally under the /oracle/<sid>
then:
bau106s0:/oracle/OPA/920_64/OPatch> perl opatch.pl lsinventory
OSS note 306408 helped (a bit !!)
For 8.1.7 (OSS note 411068)
bau303s0:oraoba 86> sqlplus
SQL*Plus: Release 8.1.7.0.0 - Production on Mon May 12 13:17:58 2003
(c) Copyright 2000 Oracle Corporation. All rights reserved.
Enter user-name: sapoba
Enter password:
Connected to:
Oracle8i Enterprise Edition Release 8.1.7.4.0 - 64bit Production
With the Partitioning option
JServer Release 8.1.7.4.0 - 64bit Production
SQL> select * from V$VERSION;
BANNER
----------------------------------------------------------------
Oracle8i Enterprise Edition Release 8.1.7.4.0 - 64bit Production
PL/SQL Release 8.1.7.4.0 - Production
CORE 8.1.7.0.0 Production
TNS for IBM/AIX RISC System/6000: Version 8.1.7.4.0 - Production
NLSRTL Version 3.4.1.0.0 - Production
SQL>
Sometimes - cd /oracle/OBA/817_64/bin/ - then 'what oracle' will work. You could also try 'owhat oracle'.
If you get the error: ORA-01502: index 'SAPR3./BIC/B0000***000~0' or partition of such index is in unusable state.
I've been recreating these indexes using either "SE14->Activate and Adjust", or by running function module RSDU_UNUS_PART_INDEX_REPAIR which Sheryl had used previously. I have just found an OSS note though that says not to use SE14 or DB02, as it is unreliable in creating partitioned indexes and can result in further problems when a new partition is added.
The solution is to execute function module RSDU_TAB_UNIQUE_INDX_LOCAL from SE37 by doing a "Test", and specify parameter I_TABLNM = "/BIC/B0000***000~0"
If there are any future reorgs of PSAPODSI, any missing indexes of the above form should be re-created using this method, NOT using mass processing from DB02. See note 515711.
FAQ about Oracle – Note 666061. - LOBs are used to save large datasets (see note 500340) The LOB (Large OBject) datatypes enable you to store large blocks of unstructured data up to four gigabytes in size in a table column.
>sqlplus /nolog
SQL> connect / as sysdba
Owner Object Type Tablespace Extents MaxExtents Next (K)
SAPR3 SYS_LOB0000021687C00034$$ LOBSEGMENT PSAPES620D 1,308 1- 160
SAPR3 SYS_LOB0000057314C00013$$ LOBSEGMENT PSAPEL620D 455 1- 160
SAPR3 SYS_LOB0000057314C00014$$ LOBSEGMENT PSAPEL620D 192 1- 160
note 500340 alter table <table> modify lob (<lobcolumn>) (storage (...));
dba_lobs: table_name, column_name, segment_name (=lobsegment name),
index_name(=lobindex name)
select * from dba_lobs where segment_name = 'SYS_LOB0000021687C00034$$';
select column_name from dba_lobs where segment_name = 'SYS_LOB0000021687C00034$$';
select * from dba_lobs where segment_name = 'SYS_LOB0000057314C00013$$';
select * from dba_lobs where segment_name = 'SYS_LOB0000057314C00014$$';
index_name Owner + table_name column_name
SYS_IL0000021687C00034$$ SAPR3.REPOSRC DATA
SYS_IL0000057314C00013$$ SAPR3.REPOLOAD LDATA
SYS_IL0000057314C00014$$ SAPR3.REPOLOAD QDATA
DBA_LOB_PARTITIONS
Contains partition-specific Information on LOBs in table partitions
DBA_LOB_SUBPARTITIONS
Contains partition-specific Information on LOBs in table subpartitions
DBA_PART_LOBS
Contains default partition settings for LOBs in table partitions
V$TEMPORARY_LOBS
Contains Information on temporary LOBs
SQL> select * from dba_lobs where segment_name = 'SYS_LOB0000021687C00034$$';
OWNER TABLE_NAME
------------------------------ ------------------------------
COLUMN_NAME
--------------------------------------------------------------------------------
SEGMENT_NAME INDEX_NAME CHUNK
------------------------------ ------------------------------ ----------
PCTVERSION CACHE LOG IN_
---------- ---------- --- ---
SAPR3 REPOSRC
DATA
SYS_LOB0000021687C00034$$ SYS_IL0000021687C00034$$ 8192
10 NO YES YES
Table REPOSRC is owned by user SAPR3, so the form of the statement will be except that initial is not permitted, so
SQL>
SQL> alter table REPOSRC modify lob (DATA) (storage (initial 160k next 1600k));
becomes
alter table SAPR3.REPOSRC modify lob (DATA) (storage (next 1600k));
alter table SAPR3.REPOLOAD modify lob (LDATA) (storage (next 1600k));
alter table SAPR3.REPOLOAD modify lob (QDATA) (storage (next 1600k));
Note: Under DB02 the only table name for tablespace PSAPES620D appears to be SYS_LOB0000021596C00015$$ for this SAP KW NT based Oracle system.
select * from dba_segments where segment_name = 'SYS_LOB0000021687C00034$$';
does not have extent size though can see in SAP DB02
''Summary:''
//Hub://
Independent of the selected product version (EHP4 FOR SAP ERP6.0/NW7.01 or EHP4 FOR SAP ERP6.0) the SAP Solution Manager Maintenance Optimizer chooses the Java technology of SAP NetWeaver 7.0.
//Sidecar://
Independent of the selected product version (EHP4 FOR SAP ERP6.0/NW7.01 or EHP4 FOR SAP ERP6.0) the SAP Solution Manager Maintenance Optimizer chooses the Java technology of EHP1 for SAP NetWeaver 7.0.
''Hub System''
We call a SAP NetWeaver system (Java based) a Hub system, if multiple business applications are deployed upon it. The business applications themselves may run against multiple application back-end systems (e.g. ECC-Server, SRM-Server, ...).
SAP NetWeaver Enterprise Portal may be an example. During update or maintenance procedures the system behavior is as follows:
An update of the technology stack (SAP NetWeaver) keeps the SAP Business Suite application part untouched, that means there is no update of the SAP Business Suite application part needed.
An update of the SAP Business Suite application enforce always the respective back-end application, thereby both applications are synchronously.
Example: If innovation is application driven, the SAP NetWeaver hub system stays stable on release 7.0 (if it was before).
''Local Sidecar System''
We call a SAP NetWeaver system (Java based) a sidecar system, if it is exclusively dedicated to one back-end system. This might be an SAP NetWeaver Enterprise Portal with SAP XSS which is exclusively used together with a unique back-end system(e.g. ECC-Server). Other application back-end systems cannot use this SAP NetWeaver system.
During update or maintenance procedures the system behavior is as follows:
Technology stack (SAP NetWeaver) and the SAP Business Suite application part are both updated synchronously. As a result both systems are on the same technology level as well as the same SP Stack level.
Run RSTRANSP to generate enerates entries for transport of variants.
You can enter the names of variants to be transported generically.
/***
|Name|InlineJavascriptPlugin|
|Source|http://www.TiddlyTools.com/#InlineJavascriptPlugin|
|Version|1.6.0|
|Author|Eric Shulman - ELS Design Studios|
|License|http://www.TiddlyTools.com/#LegalStatements and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|
|~CoreVersion|2.1|
|Type|plugin|
|Requires||
|Overrides||
|Description|Insert Javascript executable code directly into your tiddler content.|
''Call directly into TW core utility routines, define new functions, calculate values, add dynamically-generated TiddlyWiki-formatted output'' into tiddler content, or perform any other programmatic actions each time the tiddler is rendered.
!!!!!Usage
<<<
When installed, this plugin adds new wiki syntax for surrounding tiddler content with {{{<script>}}} and {{{</script>}}} markers, so that it can be treated as embedded javascript and executed each time the tiddler is rendered.
''Deferred execution from an 'onClick' link''
By including a {{{label="..."}}} parameter in the initial {{{<script>}}} marker, the plugin will create a link to an 'onclick' script that will only be executed when that specific link is clicked, rather than running the script each time the tiddler is rendered. You may also include a {{{title="..."}}} parameter to specify the 'tooltip' text that will appear whenever the mouse is moved over the onClick link text
''External script source files:''
You can also load javascript from an external source URL, by including a src="..." parameter in the initial {{{<script>}}} marker (e.g., {{{<script src="demo.js"></script>}}}). This is particularly useful when incorporating third-party javascript libraries for use in custom extensions and plugins. The 'foreign' javascript code remains isolated in a separate file that can be easily replaced whenever an updated library file becomes available.
''Display script source in tiddler output''
By including the keyword parameter "show", in the initial {{{<script>}}} marker, the plugin will include the script source code in the output that it displays in the tiddler.
''Defining javascript functions and libraries:''
Although the external javascript file is loaded while the tiddler content is being rendered, any functions it defines will not be available for use until //after// the rendering has been completed. Thus, you cannot load a library and //immediately// use it's functions within the same tiddler. However, once that tiddler has been loaded, the library functions can be freely used in any tiddler (even the one in which it was initially loaded).
To ensure that your javascript functions are always available when needed, you should load the libraries from a tiddler that will be rendered as soon as your TiddlyWiki document is opened. For example, you could put your {{{<script src="..."></script>}}} syntax into a tiddler called LoadScripts, and then add {{{<<tiddler LoadScripts>>}}} in your MainMenu tiddler.
Since the MainMenu is always rendered immediately upon opening your document, the library will always be loaded before any other tiddlers that rely upon the functions it defines. Loading an external javascript library does not produce any direct output in the tiddler, so these definitions should have no impact on the appearance of your MainMenu.
''Creating dynamic tiddler content''
An important difference between this implementation of embedded scripting and conventional embedded javascript techniques for web pages is the method used to produce output that is dynamically inserted into the document:
* In a typical web document, you use the document.write() function to output text sequences (often containing HTML tags) that are then rendered when the entire document is first loaded into the browser window.
* However, in a ~TiddlyWiki document, tiddlers (and other DOM elements) are created, deleted, and rendered "on-the-fly", so writing directly to the global 'document' object does not produce the results you want (i.e., replacing the embedded script within the tiddler content), and completely replaces the entire ~TiddlyWiki document in your browser window.
* To allow these scripts to work unmodified, the plugin automatically converts all occurences of document.write() so that the output is inserted into the tiddler content instead of replacing the entire ~TiddlyWiki document.
If your script does not use document.write() to create dynamically embedded content within a tiddler, your javascript can, as an alternative, explicitly return a text value that the plugin can then pass through the wikify() rendering engine to insert into the tiddler display. For example, using {{{return "thistext"}}} will produce the same output as {{{document.write("thistext")}}}.
//Note: your script code is automatically 'wrapped' inside a function, {{{_out()}}}, so that any return value you provide can be correctly handled by the plugin and inserted into the tiddler. To avoid unpredictable results (and possibly fatal execution errors), this function should never be redefined or called from ''within'' your script code.//
''Accessing the ~TiddlyWiki DOM''
The plugin provides one pre-defined variable, 'place', that is passed in to your javascript code so that it can have direct access to the containing DOM element into which the tiddler output is currently being rendered.
Access to this DOM element allows you to create scripts that can:
* vary their actions based upon the specific location in which they are embedded
* access 'tiddler-relative' information (use findContainingTiddler(place))
* perform direct DOM manipulations (when returning wikified text is not enough)
<<<
!!!!!Examples
<<<
an "alert" message box:
><script show>
alert('InlineJavascriptPlugin: this is a demonstration message');
</script>
dynamic output:
><script show>
return (new Date()).toString();
</script>
wikified dynamic output:
><script show>
return "link to current user: [["+config.options.txtUserName+"]]";
</script>
dynamic output using 'place' to get size information for current tiddler:
><script show>
if (!window.story) window.story=window;
var title=story.findContainingTiddler(place).id.substr(7);
return title+" is using "+store.getTiddlerText(title).length+" bytes";
</script>
creating an 'onclick' button/link that runs a script:
><script label="click here" title="clicking this link will show an 'alert' box" show>
if (!window.story) window.story=window;
alert("Hello World!\nlinktext='"+place.firstChild.data+"'\ntiddler='"+story.findContainingTiddler(place).id.substr(7)+"'");
</script>
loading a script from a source url:
>http://www.TiddlyTools.com/demo.js contains:
>>{{{function demo() { alert('this output is from demo(), defined in demo.js') } }}}
>>{{{alert('InlineJavascriptPlugin: demo.js has been loaded'); }}}
><script src="demo.js" show>
return "loading demo.js..."
</script>
><script label="click to execute demo() function" show>
demo()
</script>
<<<
!!!!!Installation
<<<
import (or copy/paste) the following tiddlers into your document:
''InlineJavascriptPlugin'' (tagged with <<tag systemConfig>>)
<<<
!!!!!Revision History
<<<
''2007.02.19 [1.6.0]'' added support for title="..." to specify mouseover tooltip when using an onclick (label="...") script
''2006.10.16 [1.5.2]'' add newline before closing '}' in 'function out_' wrapper. Fixes error caused when last line of script is a comment.
''2006.06.01 [1.5.1]'' when calling wikify() on script return value, pass hightlightRegExp and tiddler params so macros that rely on these values can render properly
''2006.04.19 [1.5.0]'' added 'show' parameter to force display of javascript source code in tiddler output
''2006.01.05 [1.4.0]'' added support 'onclick' scripts. When label="..." param is present, a button/link is created using the indicated label text, and the script is only executed when the button/link is clicked. 'place' value is set to match the clicked button/link element.
''2005.12.13 [1.3.1]'' when catching eval error in IE, e.description contains the error text, instead of e.toString(). Fixed error reporting so IE shows the correct response text. Based on a suggestion by UdoBorkowski
''2005.11.09 [1.3.0]'' for 'inline' scripts (i.e., not scripts loaded with src="..."), automatically replace calls to 'document.write()' with 'place.innerHTML+=' so script output is directed into tiddler content. Based on a suggestion by BradleyMeck
''2005.11.08 [1.2.0]'' handle loading of javascript from an external URL via src="..." syntax
''2005.11.08 [1.1.0]'' pass 'place' param into scripts to provide direct DOM access
''2005.11.08 [1.0.0]'' initial release
<<<
!!!!!Credits
<<<
This feature was developed by EricShulman from [[ELS Design Studios|http:/www.elsdesign.com]]
<<<
!!!!!Code
***/
//{{{
version.extensions.inlineJavascript= {major: 1, minor: 6, revision: 0, date: new Date(2007,2,19)};
config.formatters.push( {
name: "inlineJavascript",
match: "\\<script",
lookahead: "\\<script(?: src=\\\"((?:.|\\n)*?)\\\")?(?: label=\\\"((?:.|\\n)*?)\\\")?(?: title=\\\"((?:.|\\n)*?)\\\")?( show)?\\>((?:.|\\n)*?)\\</script\\>",
handler: function(w) {
var lookaheadRegExp = new RegExp(this.lookahead,"mg");
lookaheadRegExp.lastIndex = w.matchStart;
var lookaheadMatch = lookaheadRegExp.exec(w.source)
if(lookaheadMatch && lookaheadMatch.index == w.matchStart) {
if (lookaheadMatch[1]) { // load a script library
// make script tag, set src, add to body to execute, then remove for cleanup
var script = document.createElement("script"); script.src = lookaheadMatch[1];
document.body.appendChild(script); document.body.removeChild(script);
}
if (lookaheadMatch[5]) { // there is script code
if (lookaheadMatch[4]) // show inline script code in tiddler output
wikify("{{{\n"+lookaheadMatch[0]+"\n}}}\n",w.output);
if (lookaheadMatch[2]) { // create a link to an 'onclick' script
// add a link, define click handler, save code in link (pass 'place'), set link attributes
var link=createTiddlyElement(w.output,"a",null,"tiddlyLinkExisting",lookaheadMatch[2]);
link.onclick=function(){try{return(eval(this.code))}catch(e){alert(e.description?e.description:e.toString())}}
link.code="function _out(place){"+lookaheadMatch[5]+"\n};_out(this);"
link.setAttribute("title",lookaheadMatch[3]?lookaheadMatch[3]:"");
link.setAttribute("href","javascript:;");
link.style.cursor="pointer";
}
else { // run inline script code
var code="function _out(place){"+lookaheadMatch[5]+"\n};_out(w.output);"
code=code.replace(/document.write\(/gi,'place.innerHTML+=(');
try { var out = eval(code); } catch(e) { out = e.description?e.description:e.toString(); }
if (out && out.length) wikify(out,w.output,w.highlightRegExp,w.tiddler);
}
}
w.nextMatch = lookaheadMatch.index + lookaheadMatch[0].length;
}
}
} )
//}}}
''How to find information about an SAP Java instance''
Go to the index url - http://<server_name>:<port>/index.html then select the “System Information" link.
You will get a page detailing or linking to much of the same information as the SAPgui’s System > Status, including summary information on Software Components installed and their versions. You can also see detailed configuration information for each of the Java Virtual Machines on each of the server nodes and links to provide all the detailed information you can stand.
''How to find logs for SAP Java systems''
In a Java-based system, there is no single transaction that shows you all the logs for all the Java systems, but the first place to start is NetWeaver Administrator.
Go to the Java server main page, as noted above, and click on “NetWeaver Administrator.” Then, navigate to System Management > Logs and Traces, and you can find logs across the Java server node.
Additionally, Visual Administrator (which, granted, is going away with the Netweaver 7.3, or so I hear) will allow you to view any and all logs on the system. So, for example, it can be used to view the contents of the work directory, just as you would look on an ABAP system.
''How to monitor memory in SAP Java systems''
In a Java system, memory utilization works a bit differently from ABAP. Memory is allocated and then later cleaned up by a garbage collection process. By enabling Solution Manager’s Root Cause Analysis Work Center, you can get good information on the utilization of Java memory, as well as the performance and frequency of garbage collection.
Additionally, SAP provides customers a free, fully functional Right To View license for Wily Introscope. It has a few limitations; for example, it doesn’t create custom dashboards and customer alerts, and it can’t be used to monitor non-SAP applications. But it is a highly valuable tool in the free version and can be used to perform a deeper analysis of memory areas in your SAP Java applications. Installing it is highly recommended, if not required, by SAP supp
'''Is it possible to remove/undeploy software components with JSPM?''
No. Undeployment of Netweaver components or applications can easily break runtime dependencies. In Netweaver Java 7.0 one can use SDM for undeployment.
''How do I redeploy the same component with JSPM?''
JSPM does not allow to deploy an SCA with the same version (release, SP-level, patch-level) as an already deployed component. However, in some special cases you may need to redeploy an SCA with the same version. Use command line:
{{{
go "-config=/jspm/forceMode=true" "-config=/jspm/deployVersionRule=updateAll"
}}}
to redeploy all SDAs. See [[note 1123333|http://service.sap.com/sap/support/notes/1123333]] for more options.
{{{// If value is falsy and not a string, return}}}
{{{// undefined. Otherwise, return 'good input!'}}}
{{{// Note that this means that the empty string ('')}}}
{{{// should return 'good input!'.}}}
{{{function detectGoodInput(value) { }}}
{{{ if (!value && value !== "") { }}}
{{{ return false; } }}}
{{{ else { }}}
{{{ return "good input"; } }}}
{{{ } }}}
The following two functions produce identical results....
{{{// This should be similar to the function you implemented }}}
{{{// earlier. }}}
{{{function moreConventionalDefaults(param, defaultParams) { }}}
{{{ if (!params) { }}}
{{{ params = defaultParams; }}}
{{{ } }}}
{{{ return params; }}}
{{{} }}}
{{{function conventionalDefaults(params, defaultParams) { }}}
{{{ // Use || to implement a better default mechanism. }}}
{{{ return params || defaultParams; }}}
{{{} }}}
//“Just remember kids, when you’re out there smashing the state, to always keep a smile on yer lips and a song in yer heart.”//
Woody Guthrie
[[Konami Code]] is Up, Up, Down, Down, Left, Right, Left, Right, B, A.
One of the greatest stories of technological innovation in recent centuries happened with little fanfare or notice. In 1811 - a decade after James Watt's patent expired and his monopoly of the steam-engine market ended - a group of miners got together to produce a monthly journal, the ''Lean's Engine Reporter'', which included performance reports and specifications of the steam engines being used in the tin and copper mines of Cornwall, England. The aim of the journal was to promote the identification and spread of good techniques, and likewise fuel competition and new innovation in steam engines - then the lifeblood of English mining.
Lean's Engine Reporter and the technological advances it fueled taught us a lesson that we're still learning today: Open innovation is better than closed. Open technology - open in the sense that the technology or knowledge is available to the general public for use - encourages new ideas, competition, efficiency and innovation. It can be messy, but it's inclusiveness means that the barriers of entry are low, cost savings occur across the board, and that the best ideas and practices will rise to the top, allowing companies to grow, become profitable and benefit society as a whole.
The Wintel hardware key can be found in \\server\sapmt\sid\SCSxx\work\dev_ms
[Thr 6872] *** I listen to internal port 3901 (3901) ***
[Thr 6872] *** HTTP port 8101 state LISTEN ***
[Thr 6872] CUSTOMER KEY: >B1852323227<
[Thr 6872] build version=701.2008.03.06
search on * CUSTOMER KEY*
//"Madness does not always howl. Sometimes it is the quiet voice at the end of the day saying, "Hey, is there room in your head for one more?"//
Unknown
<<tiddler ToggleRightSidebar with: '►'>>
[[UNIX (Generic)]]
[[UNIX (SAP)]]
[[Windows (Generic)]]
[[Windows (SAP)]]
[[SAP (General)]]
[[Databases]]
[[Scripting Languages]]
[[Other Coding]]
[[Open Source]]
[[Other Stuff]]
[[Quotes]]
[[GettingStarted]]
''Database status / online / offline''
{{{dbmcli db_enum}}}
{{{dbmcli -d NSP -u <control>,<pwd> db_state}}}
{{{dbmcli -d NSP -u <control>,<pwd> db_offline}}}
{{{dbmcli -d NSP -u <control>,<pwd> db_online}}}
''Adding Space''
{{{mkdir f:\sapdb\SM1\sapdata}}}
{{{dbmcli -d NSP -u <control>,<pwd> db_admin}}}
{{{dbmcli -d NSP -u <control>,<pwd> db_addvolume data E:\sapdb\NSP\sapdata\DISKD000 f 1024000}}}
{{{dbmcli -d NSP -u <control>,<pwd> db_online}}}
There are parameters that define maximum number of data files and log files; to change them...
{{{dbmcli -d NSP -u <control>,<pwd> param_getvolsall LOG}}}
{{{OK}}}
{{{UseMirroredLog NO}}}
{{{MaxLogVolumes 4}}}
{{{LogVolumeName001 512000 F F:\sapdb\NSP\saplog\DISKL001 1}}}
{{{LogVolumeName002 512000 F F:\sapdb\NSP\saplog\DISKL002 1}}}
{{{LogVolumeName003 512000 F F:\sapdb\NSP\saplog\DISKL003 1}}}
{{{dbmcli -d NSP -u <control>,<pwd> param_put MaxLogVolumes 8}}}
You can add extra volumes immeadiately
__Note:__ page_size is 8K, therefore ''1,024,000'' equals 8192MB = 8GB
Max. Data per Volume ''512GB''
Max, Volumes per DB ''4095''
Max Database Size: ''32TB''
See the notes on [[ConverterVolumeIdLayout|http://www.google.com.au/search?q=site%3Amaxdb.sap.com%2Fdoc%2F7_8+ConverterVolumeIdLayout]] in the MaxDB documentation for more details on how the maximum database size is calculated.
''Backup - create template for DATABASE, for Redo LOGS', For AUTO Redo LOGS''
{{{dbmcli -d NSP -u <control>,<pwd> db_admin}}}
{{{dbmcli -d NSP -u <control>,<pwd> medium_put SAPDatabase N:\SAPComplete FILE DATA 0 8 YES}}}
{{{dbmcli -d NSP -u <control>,<pwd> medium_put SAPLogs N:\SAPLogs FILE LOG 0 80 YES}}}
''Backup - DATABASE and Redo LOGS''
{{{dbmcli -d NSP -u <control>,<pwd> db_admin}}}
{{{dbmcli -d NSP -u control,<pwd>}}}
{{{dbmcli on NSP>db_connect }}}
{{{dbmcli on NSP>backup_start SAPDatabase}}}
{{{dbmcli on NSP>backup_start SAPLogs}}}
Note: All I/O goes through the kerenel.exe process / kernel daemon
''Backup - Automatic log backup''
{{{dbmcli -d NSP -u <control>,<pwd> db_admin}}}
{{{dbmcli -d NSP -u control,<pwd>}}}
{{{dbmcli on NSP>db_connect }}}
{{{dbmcli on NSP>medium_put SAPLogsAUTO N:\SAPLogs FILE AUTO}}}
{{{dbmcli on NSP>backup_start SAPLogsAUTO}}}
{{{dbmcli on NSP>param_put AutoLog On}}} //Set parameter//
''Execute SQL''
{{{dbmcli -d NSP -u <control>,<pwd> db_execute SELECT username,connectmode,user_id from users}}}
''Important files:''
\sapdb\data\wrk\dbmsrv_hostname.err
\sapdb\data\wrk\dbmsrv_hostname
''Documentation''
See http://maxdb.sap.com/doc/7_7/default.htm
or http://maxdb.sap.com/doc/7_8/default.htm
Version 7.5 of SAP DB was superceded by Version 7.6 of MaxDB
''Tutorials''
http://maxdb.sap.com/doc/7_6/44/4885b7c64c0a67e10000000a422035/content.htm
http://maxdb.sap.com/doc/7_7/44/bbdee4e00215b2e10000000a155369/content.htm
http://maxdb.sap.com/doc/7_86//44/bbdee4e00215b2e10000000a155369/content.htm
''Simple indenting:''
{{{ {{indent{text }}} produces:
{{indent{text
''Headlines'':
{{{!Text}}} produces:
!Text
{{{!!Text}}} produces:
!!Text
{{{!!!Text}}} produces:
!!!Text
and so on.
''Dotted horizontal lines:''
{{{----}}} produces the following line:
----
|!Service |!Range!|!Default !|
|Dispatcher <br>sapdpNN| 32NN |32ZZ|
|Gateway<br>sapgwNN |33NN |33ZZ|
|Gateway<br>sapgwNN |48NN |48ZZ|
|ICM HTTP |80NN |80ZZ|
|ICM HTTPS | 443NN |Not activated by def.|
|ICM SMTP |25 |Not activated by def.|
Note that ZZ refers to the SAP System Number
[[Network Ports - ABAP Engine]]
26000 Log-Viewer
5xx00 JAVA HTTP
5xx01 JAVA HTTPS
5xx02 IIOP Initial Contact
5xx03 IIOP SSL Port
5xx04 JAVA P4 Port
5xx05 JAVA P4 HTTP Tunnelling port
5xx06 JAVA P4 SSL port
5xx07 JAVA IIOP Port
5xx08 JAVA instance - Telnet
5xx09 Monitor Port
5xx10 JMS Port
[[Lean's Engine Reporter]]
[[RESTART ORACLE AFTER CRASH]]
[[FORCE A SWITCH OF THE ORACLE LOG-FILE]]
[[FIND THE MEANING OF ORACLE ERRORS]]
[[TUNING REDO AND ARCHIVE LOGS]]
[[HOW TO FIND OUT YOUR ORACLE PATCH LEVEL]]
[[HOW TO FIX UNBALANCED ORACLE INDEXES]]
[[HOW TO MODIFY ORACLE LOBS (SAP-KW)]]
[[Usefull SQL Statements]]
[[Remove Users (Oracle<=8)]]
[[Remove Users (Oracle9)]]
These are the elements or structures representing business functions, and are used in reporting. For example,
Client (across the various modules),
Company Code (FI),
Controlling Area (CO),
Plant (logistics),
Sales Organization (SD),
Purchasing Organization (MM),
Employee Group (HR), etc.
[[User Defaults For Views and Organizational Levels]]
[[Konami Code]] is Up, Up, Down, Down, Left, Right, Left, Right, B, A.
[[Lean's Engine Reporter]]
<!--{{{-->
<div class='header' macro='gradient vert [[ColorPalette::PrimaryLight]] [[ColorPalette::PrimaryMid]]'>
<div class='headerShadow'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
<div class='headerForeground'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
</div>
<!-- horizontal MainMenu -->
<div id='mainMenu' refresh='content' tiddler='MainMenu'></div>
<div id='sidebar'>
<div id='sidebarOptions' refresh='content' tiddler='SideBarOptions'></div>
<div id='sidebarTabs' refresh='content' force='true' tiddler='SideBarTabs'></div>
</div>
<div id='displayArea'>
<div id='messageArea'></div>
<div id='tiddlerDisplay'></div>
</div>
<!--}}}-->
Hackers & Painters
Civil liberties are not just an ornament, or a quaint American tradition. Civil liberties make countries rich. If you made a graph of GNP per capita vs. civil liberties, you'd notice a definite trend. Could civil liberties really be a cause, rather than just an effect? I think so. I think a society in which people can do and say what they want will also tend to be one in which the most efficient solutions win, rather than those sponsored by the most influential people. Authoritarian countries become corrupt; corrupt countries become poor; and poor countries are weak. It seems to me there is a Laffer curve for government power, just as for tax revenues. At least, it seems likely enough that it would be stupid to try the experiment and find out. Unlike high tax rates, you can't repeal totalitarianism if it turns out to be a mistake.
Suppose you own a beat-up old car. Instead of sitting on your butt next summer, you could spend the time restoring your car to pristine condition. In doing so you create wealth. The world is—and you specifically are—one pristine old car the richer. And not just in some metaphorical way. If you sell your car, you'll get more for it.
In restoring your old car you have made yourself richer. You haven't made anyone else poorer. So there is obviously not a fixed pie. And in fact, when you look at it this way, you wonder why anyone would think there was.
This is why so many of the best programmers are libertarians. In our world, you sink or swim, and there are no excuses. When those far removed from the creation of wealth—undergraduates, reporters, politicians—hear that the richest 5% of the people have half the total wealth, they tend to think injustice! An experienced programmer would be more likely to think is that all? The top 5% of programmers probably write 99% of the good software.
Software should do what users think it will. But, believe me, you have no idea what users can be thinking until you watch them.
//"I'm old enough I don't need to give a crap what most folks think about me."//
Jamie Oswald [[Suburban Father Alliance|http://suburbanfatheralliance.blogspot.com.au/2012/04/sports-loyalty.html]]
//“Never interrupt an enemy when he’s making a mistake”//
attributed to Napoleon Bonaparte
//“If you wish to understand me, you must understand first and foremost that I am an Australian.”//
Dame Nellie Melba
//Sometimes, the ugliest thing at the scene of a terrorist attack is not the blood and the bodies, but the intent. It's something that is almost still hanging in the air. Often journalists are given access to the scene soon after a suicide bombing. Sometimes, I've walked up the same stairs or through the same doorway as the bomber and I can't imagine what they must have been thinking in those final seconds. It's the intent. Something of the intent is still there.//
Sally Sara, ABC Reporter, Afghanistan, from http://www.abc.net.au/news/2011-12-04/sally-sara-farewells-afghanistan/3711410
''How to Work with Stupid People''
//I consider myself reasonably intelligent, yet I have had no problem surrounding myself with people at or above my intellectual level. I’ve also had good relationships with co-workers at all levels of intelligence. Unless you’re a world-class genius (statistically unlikely), you are probably mis-diagnosing people as stupid.//
and
//The problem here is more psychological and emotional than intellectual. Not to assume the other guy is stupid means you have to be willing to acknowledge ''the stupid guy might be you''. Which is something most people do not have the generosity, courage or patience to explore, even for 30 seconds. (How else will you ever learn anything?)//
http://jasoncrawford.org/2010/04/how-to-work-with-stupid-people/
[[Work, Love, Dance, Sing, Live]]
[[Just remember, kids, ....]]
"Everyone gave advice but no one helped" - John Steinbeck, "East Of Eden."
[[Graeme Pietersz|http://pietersz.co.uk/2009/11/fix-capitalism]]
//"Society is permeated, especially in business, politics and economics, with the idea that is people pursue their own interests, this will automatically lead to the best outcome, and that, therefore, people should be selfish. This cannot be fixed by endless incentives to align interests: life and business is too complex for that to work. A free market is not a substitute for integrity."//
[[Lindsay Perigo|http://www.solopassion.com/node/8427]]
//In a free society, people will always use their freedom in ways you disapprove of. Unless they're imposing something on you against your will, however, you have no right to ban them.//
[[Why people don't trust politicians anymore...]]
//"Because if you don't stand up for the stuff you don't like, when they come for the stuff you do like, you've already lost."// Neil Gaiman
//"People should not be afraid of their governments. Governments should be afraid of their people."// Alan Moore
//"Concerning non-violence: It is criminal to teach man not to defend himself when he is the constant victim of brutal attacks."// Malcolm X
//"Kipling was a Conservative… He identified himself with the ruling power and not with the opposition. In a gifted writer this seems to us strange and even disgusting, but it did have the advantage of giving Kipling a certain grip on reality. The ruling power is always faced with the question, “In such and such circumstances, what would you do?”, whereas the opposition is not obliged to take responsibility or make any real decisions. "// George Orwell
//"Resistance to sudden violence, for the preservation not only of my person, my limbs and life, but of my property, is an indisputable right of nature which
I have never surrendered to the public by the compact of society, and which perhaps, I could not surrender if I would. Nor is there anything in the common law of England ... inconsistent with that right."// John Adams, second President of the United States
''Front-End / PC Requirements''
Set up a ''Print to File'' printer in the Windows Print Manager of the PC -
{{{
'Settings' -> 'Printer' -> 'Add Printer'
On the window that appears, click on 'Next' button.
Select 'Local Printer' and click on 'Next'
Select the port 'FILE Print to File'
Select 'Generic/Text Only' driver
Enter 'Printer Name' eg: PDFTEST
Share as: eg: PDFTEST
Select 'Finish'.
}}}
''Back End / SAP Requirements''
Create a printer via transaction SPAD,
{{{
Device Type ''PDF1''
Access method ''G''
Set the Host Printer field to the same name as you defined your 'Print to File' printer in the Windows
}}}
''Usage''
Use the setting 'Print Immediately' in the field 'Time of Printing' in the print dialog pop-up.
When you do this, you should get a pop-up on your Frontend PC asking you for name and path of the PDF file.
You must give the file name a '.pdf' extension.
[[Financial]]
[[Generic]]
[[People]]
[[Philosophy]]
[[Political]]
[[Religious / Spiritual]]
[[Technology]]
[[Scott Adams]]
[[Paul Graham]]
Often you will find that Oracle is not able to restart itself after a system crash. This is usually due to the presence of a connected process at the time of shutdown which results left over connections etc. If you attempt to restart R/3 and Oracle using the startsap script from <sid>adm account you will receive an “unable to start database” type error. A similar message will probably be returned if you run the stopsap scrip.
Further evidence of this problem may be found in the startdb.log file in the <sid>adm home acount. Here is an extract from one such log file;
Connect to the database to check the database state:
R3trans: connect check finished with return code: 12
Database not available
*** ERROR:Database possibly left running when system
went down(system crash?).
Notify Database Administrator.
To restart Oracle you will need to do the following;
Login as ora<sid>
Start server manager
>svrmgrl
Type the following commands from the server manager prompt;
SVRMGR> connect internal
SVRMGR> shutdown immediate
(SVRMGR> shutdown abort if the above doesn't work)
SVRMGR> startup
To get out of svrmgr ctrl-d or ctrl-c or exit.
Login as <sid>adm
Start SAP R/3
>startsap
If the startup command from server manager does not work you may need to run a recover database command in order to reapply the database log files to the data files.
If in doubt, contact your local data management / Unix support group for help.
//"I do not boast that God is on my side, I humbly pray that I am on God’s side.”// Abaraham Lincoln
//"Life should NOT be a journey to the grave with the intention of arriving safely in an attractive and well preserved body, but rather to skid in sideways, chocolate and wine in one hand, body thoroughly used up, totally worn out and screaming "WOO HOO What a Ride!"// Unknown
echo $dbs_db6_schema
db2
connect to <sid>
select mandt, bcode, GLTGB, USTYP, uflag from $dbs_db6_schema.usr02 whereMANDT=100' and BNAME='SAP*'
delete from $dbs_db6_schema.usr02 where bname = 'PDONALDSON' where MANDT=100' and BNAME='SAP*'
alternatives are:
update $db6_schema.usr02 set uflag = 0 where MANDT=100' and BNAME='SAP*'
update $db6_schema.usr02 set pwdstate = 0 where MANDT=100' and BNAME='SAP*'
quit
svrmgrl
connect sapr3/sap;
delete from USR02 where mandt='000' and bname='SAP*';
commit;
exit;
sqldba
connect sapr3/sap;
delete from utab where tabname='USR02' and varkey like '<client>SAP*%';
commit;
exit;
Run Query Analyzer
connect as <SID> or sa
delete from <SID>.<sid>.USR02 where MANDT='000' and BNAME='SAP*';
quit
Use this for copying a database for creating a test / QA / regression system
RESTORE DATABASE [MAQ] FROM DISK = N'F:\SAB_20110130.bak' WITH FILE = 1,
MOVE N'SABDATA1' TO N'D:\MAQDATA1\MAQDATA1.mdf',
MOVE N'SABDATA2' TO N'D:\MAQDATA2\MAQDATA2.mdf',
MOVE N'SABDATA3' TO N'D:\MAQDATA3\MAQDATA3.mdf',
MOVE N'SABLOG1' TO N'E:\MAQLOG1\MAQLOG1.ldf',
NOUNLOAD, REPLACE, STATS = 10
GO
[[Modify Logon Screen via SE61 (external)|https://service.sap.com/sap/support/notes/205487]]
[[Windows script for starting a Solution Manager 7.0 EHP1 instance|http://wiki.sdn.sap.com/wiki/display/Snippets/Windows+script+for+starting+a+Solution+Manager+7.0+EHP1+instance]]
[[SAP GUI]]
[[SAP Web AS]]
[[SAP Java AS]]
[[SAP Router]]
[[Generate Installation key via SolMan]]
[[Dealing with background Jobs during Upgrades or Downtime]]
[[SLD - System Landscape Directory]]
[[Security]]
[[Network Ports used by SAP]]
[[Print from SAP to a PDF file without any third party software]]
[[SAP Tips and Tricks]]
[[Who changed a table ?]]
[[HUB v SIDECAR System]]
[[ABAP]]
[[Useful Tables]]
[[Useful Reports]]
[[Useful Transactions]]
[[SAP and PHP]]
[[Application / Functional Stuff]]
[[Change SM36 / SM37 Job Owner]]
[[Remove Users (DB2)]]
[[Remove Users (Oracle<=8)]]
[[Remove Users (Oracle9)]]
[[Remove Users (SQL Server)]]
''System Environment Variables''
ABTR_TRACE – trace between GUI and RFC; trace is written when this variable is set
DPTRACE – activating trace can be be activated using this variable
RFC_TRACE_DIR – location where trace files (rfc*.trc) are stored
RFC_TRACE_TIME – runtime analysis on the external RFC communication
SAPLOGON_INI_FILE – location of initialization file (saplogon.ini) with all the entries with connection strings to SAP systems
SAP_CODEPAGE – set code page for communication between GUI and SAP system (e.g. UNICODE systems), when client has different code page to server.
SNC_LIB - variable specifies the path to the gssntlm.dll file.
TDW_TIMEOUT – specifies timeout of connection to message server by default it is 10 seconds.
Derived from a [[secude.com Newsletter|http://usa.secude.com/lp2010/newsletter_tid33.html]]
All data & code copied from http://conus.info/utils/#sap and http://conus.info/RE-articles/sapgui.html
[[Readme and example|SAP_pkt_decompr.txt]]
[[win32 version|SAP_pkt_decompr_win32.rar]]
[[linux x86 version|SAP_pkt_decompr_linux86.tar.bz2]]
[[Source code|SAP_pkt_decompr_src.rar]]
If you need to access an SAP system from a locked down PC, you can use the sapgui.exe application to access the system you need. From the Start button, select Run and execute:
{{{ sapgui [appserver-domain] [system number] }}}
If you add the switch /WAN it will treat it as a low speed connection.
One of the benefits of this is that it doesn’t start the SAP Logon application which will save you about 20M of memory. The downside is you don’t get the application in your tray that shows all the systems you are logged on to when you right click it.
Search service.sap.com for "Front-End Network Requirements for SAP Business Solutions"
Depending on how long you are going to keep doing this (or if you don’t want to start the logon pad), you can make this a shortcut and sit it on your desktop.
Depending on which version of the SAP GUI you have installed, you may even be able to right click on your desktop and select “SAP GUI Shortcut”, EDIT the shortcut (don’t change the properties), and create a shortcut to your system.
There are various solutions available for SSO onto SAP systems, but each have their specific purpose and come with landscape dependencies and limitations.
* If you want to SSO from SAPGUI to a SAP ABAP system then you can look at the security products available (component BC-SNC). The SAP standard offering is delivered as an implementation of GSS-API and it part of the ABAP kernel for Windows. GSS-API only implements NT LAN manager security, which will require Windows Active Directory domain security parameters to be relaxed. Also note that this implementation requires your SAP application server to run on Windows.
* When Kerberos authentication was introduced with Windows 2000 Active Directory, SAP also released GSS-KRB which implements Kerberos authentication. In pure Windows environments the Microsoft DLL's can be used, but as Kerberos is an open standard this can be implemented on other platforms as well. In that case, keep in mind that you are 'mixing' Kerberos implementations from different vendors which may cause interoperability issues.
* More information in the security guide, installation manual and the following notes:
o [[Note 138498 - Single Sign-On Solutions|https://service.sap.com/sap/support/notes/138498]]
o [[Note 352295 - Microsoft Windows Single Sign-On options|https://service.sap.com/sap/support/notes/352295]]
o [[Note 121178 - NT: Installation note for SSO Single Sign On|https://service.sap.com/sap/support/notes/121178]]
* If you want to SSO to a SAP JAVA system (or any web application) you can look at SPNego, SAP supports this authentication since NetWeaver 7.0 and there are implementation options for all platforms that SAP is supported on.
* As a standard solution many customers use SPNego to SSO on to NetWeaver portal, and then use SAPGUI shortcut links and logon ticket authentication to SSO to the SAP system. This may have additional benefits, for example you can use the portal to inform end-users when maintenance is occuring on a particular SAP system.
* More information in the security guide, installation manual and the following note;
o [[Note 968191 - SPNego: Central Notehttps://service.sap.com/sap/support/notes/968191]]
o [[Single Sign-on from Windows to the J2EE Engine with SPNego|http://wiki.sdn.sap.com/wiki/display/Security/Single+Sign-on+with+SPNego+(NWAS+Java)]] (SDN Wiki)
The mentioned notes and the [[User Authentication and Single Sign-on|http://help.sap.com/saphelp_nw70/helpdata/en/8a/cb136e68592f478266d19bb2b89766/frameset.htm]] page on [[help.sap|http://help.sap.com]] should provide you a lot of information on this subject. I have been involved with implementing both scenarios mentioned above for customers and the key thing to keep in mind is that you are combining different technologies from different vendors; expect that there may be some interoperability issues. If you take on such a project, make sure that you involve platform (Windows and the platform your SAP system runs on), security and SAP technical specialists. For in-depth troubleshooting, you may require network specialists as well.
[[Dataset can't open on Windows]]
[[Licensing]]
[[Generate Installation key via SolMan]]
[[Create a Transaction to Update a Table]]
[[SAP Transaction Tables]]
[[Edit ANY table (maybe)]]
[[Transactions for working with Files]]
[[force collection of statistics]]
[[How-To Transport Variants]]
[[Find Out Who PERFORMED a Transport Request]]
[[Change image on right hand side of SAP GUI]]
[[SAP GUI Shortcuts for locked down PCs]]
In ''\usr\sap\<sid>\SYS\profile\DEFAULT.PFL'' (undocumented profile parameter)
Autostart=1
''search (within SAPGUI) for a t-code?''
try transaction SEARCH_MENU_SAP
Use SE16 to search table TSTCT
zapgui.exe utility
you can generate licence and developer keys for your (not) legal sap installs ..
use a Web server filter to enable Single Sign-On to external component systems.
https://service.sap.com/sap/support/notes/442401
{{{sappfpar check pf=SRD_DVEBMGS00_srddb}}}
{{{sappfpar check pf=/usr/sap/SRD/SYS/profile/SRD_DVEBMGS00_srddb}}}
{{{sappfpar check pf=D:\usr\sap\ERD\SYS\profile\ERD_DVEBMGS00_riochiapd6}}}
{{{sappfpar check pf=D:\usr\sap\ERQ\SYS\profile\ERQ_DVEBMGS00_riochiapq6}}}
http://<hostname>:<port>/sap/monitoring/ComponentInfo
cleanipc <instance#> remove
This removes all IPC shared memories and semaphores for R/3.
saposcol -k
This stops the collector process.
showipc <instance#>
This should show no IPC objects owned by R/3.
{{{echo brarchive -sd -u / -fill 20|at now}}}
{{{sqlplus /nolog}}}
{{{sqldba}}}
{{{connect sapr3/sap;}}}
{{{svrmgrl }}}
{{{connect sapr3/sap;}}}
du -ks *
ifconfig -a
cd SDM/program
StopServer.sh
sdm.sh jstartup mode=standalone
sdm.sh systemcomponentstate mode=activate
sdm.sh jstartup mode=integrated
StartServer.sh
Via vnc
cdD
setenv DISPLAY ‘localhost:?.0’
or
export DISPLAY=‘localhost:?.0’
echo $DISPLAY
cd <program_dir>
./<program>
/opt/soe/local/bin/sudo -i
remove any outstanding /tmp/.X11-unix/X* files
or
vncserver -kill :1
cd /usr/local/bin <== directory for Xvnc - required for vncserver
/usr/local/bin/vncserver
/usr/local/bin/vncpasswd
/usr/sap/EPQ/JC00/SDM/root/origin/riotinto.com
tp ADDTOBUFFER SRDK900139 SRP pf=/usr/sap/trans/bin/TP_DOMAIN_SRD.PFL -Dtransdir=/usr/sap/trans
tp IMPORT SRDK900139 SRP client500 pf=/usr/sap/trans/bin/TP_DOMAIN_SRD.PFL -Dtransdir=/usr/sap/trans
cd /db2/XIQ/log_archive/db2*/*/N*/C*
slibclean Command removes any currently unused modules in kernel and library memory.
for regular files, either fuser or lsof can be used to tell if they're open.
WinXP xcopy - see $XP version of xcopy.html
cd C:\Documents and Settings\menglis3\My Documents\Rio Tinto XI\SP06_UNICODE
xcopy * z:\SP06_UNICODE /s /z
C:ADSSAP06_0-10003001.SCA
dscdb6up xidadm aMnchp#1
dscdb6up db2xid aMnchp#1
Error messages about changing OS passwords is OK
Check the password of the Java connect user in the configtool and the SAP license
smpdb:/usr/sap/trans/scripts/reset_password.sh
You find the complete list of SAP Userexits:
CMOD -> Utilities -> SAP Enhancements -> F8 Execute
Table ''TSTC'' stores the SAP transactions
Table ''TSTCT'' stores the transaction code text.
Table ''TSTCP'' stores the parameters used by parameter transactions.
Table ''TSTCA'' stores values for transaction authorizations.
e.g.:
TCODE = ZSE16, OBJCT = S_TABU_DIS, FIELD = ACTVT, VALUE = 03
TCODE = ZSE16, OBJCT = S_TABU_DIS, FIELD = DICBERCLS, VALUE =
[[Network Ports - ABAP Engine]]
[[WebDynpro ABAP]]
RFC user logon details can be found table RFCDES,
where in the field RFCOPTIONS:
H = represents the server
S = represents the instance number
M = represents the client number
U = represents the user name
V = represents the password
[[Tasting the mix of PHP, WML and SAP|https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/8035]] SE16
[[Tasting the mix of Flex, PHP and SAP|https://weblogs.sdn.sap.com/pub/wlg/7212]] SE16
[[Tasting the mix of PHP and SAP - Volume 7|https://weblogs.sdn.sap.com/pub/wlg/4301]] SE38 Emulator
[[Tasting the mix of PHP and SAP - Volume 7|https://weblogs.sdn.sap.com/pub/wlg/5293]] SE38
[[Tasting the mix of PHP and SAP - Volume 8|https://weblogs.sdn.sap.com/pub/wlg/6080]] ST22
[[Tasting the mix of PHP and SAP - Volume 9|https://weblogs.sdn.sap.com/pub/wlg/5556]] SP01
[[Tasting the mix of PHP and SAP - Volume 10|https://weblogs.sdn.sap.com/pub/wlg/5697]] SE93
[[Tasting the mix of PHP and SAP - Volume 11|https://weblogs.sdn.sap.com/pub/wlg/6080]] SE49
[[Tasting the mix of PHP and SAP - Volume 12|https://weblogs.sdn.sap.com/pub/wlg/6299]] SE78
[[Tasting the mix of PHP and SAP - Volume 13|https://weblogs.sdn.sap.com/pub/wlg/6416]] SO10
[[PHP, AJAX (Agent) and USR02|https://weblogs.sdn.sap.com/pub/wlg/3960]]
[[Running PHP Applications with Netweaver/PHP Bridge|http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/17506]]
Also see [[How To install SAProuter via SNC|http://wiki.sdn.sap.com/wiki/display/Basis/SAProuter+via+SNC]]
and [[OSS Note 525751 - Installation of the SNC SAPRouter as NT Service|http://service.sap.com/sap/support/notes/525751]]
Assumptions:
Service name is ''SAP_Router''
uses ''saproutab.txt'' and ''saproutab.trc''
Runs under ''sm1adm''
Note: use the same PIN when asked
Environment variables
SECUDIR=C:\usr\sap\saprouter
SNC_LIB=C:\usr\sap\saprouter\sapcrypto.dll
''C:\Users\Administrator>''cd C:\usr\sap\saprouter
''C:\usr\sap\saprouter>''sapgenpse get_pse -v -r C:\usr\sap\saprouter\certreq -p c:\usr\sap\saprouter\local.pse "CN=solman71, OU=0000817116, OU=SAProuter, O=SAP, C=DE"
Got absolute PSE path "c:\usr\sap\saprouter\local.pse".
Please enter PIN:
Please reenter PIN:
Supplied distinguished name: "CN=solman71, OU=0000817116, OU=SAProuter, O=SAP, C=DE"
Creating PSE with format v2 (default)
Generating key (RSA, 1024-bits) ... succeeded.
certificate creation... ok
PSE update... ok
PKRoot... ok
Generating certificate request... ok.
''C:\usr\sap\saprouter>''sapgenpse import_own_cert -c C:\usr\sap\saprouter\srcert.txt -p c:\usr\sap\saprouter\local.pse
Please enter PIN:
CA-Response successfully imported into PSE "c:\usr\sap\saprouter\local.pse"
''C:\usr\sap\saprouter>''sapgenpse seclogin -p C:\usr\sap\saprouter\local.pse -O sm1adm
running seclogin with USER="Administrator"
creating credentials for user "SOLMAN71\sm1adm"...
Please enter PIN:
Adjusting credentials and PSE ACLs to include "SOLMAN71\sm1adm"...
C:\usr\sap\saprouter\cred_v2 ... ok.
C:\usr\sap\saprouter\local.pse ... ok.
Added SSO-credentials for PSE "C:\usr\sap\saprouter\local.pse"
"CN=solman71, OU=0000817116, OU=SAProuter, O=SAP, C=DE"
''C:\usr\sap\saprouter>''
To validate the certifcate, logon as user sm1adm
''C:\Users\sm1adm>''cd C:\usr\sap\saprouter
''C:\usr\sap\saprouter>''sapgenpse get_my_name -v -n Issuer
Opening PSE "C:\usr\sap\saprouter\local.pse"...
PSE (v2) open ok.
Retrieving my certificate... ok.
Getting requested information... ok.
SSO for USER "sm1adm"
with PSE file "C:\usr\sap\saprouter\local.pse"
Issuer : CN=SAProuter CA, OU=SAProuter, O=SAP, C=DE
''C:\usr\sap\saprouter>''
To Install the service you probably need to logon as Administrator.
''Ensure saprouttab.txt is correct for SNC ''
''C:\Users\Administrator>''cd C:\usr\sap\saprouter
''C:\usr\sap\saprouter>''ntscmgr install SAP_Router -b C:\usr\sap\saprouter\saprout
r.exe -p "service -r -W 60000 -T C:\usr\sap\saprouter\saprouttab.trc -R C:\usr\
ap\saprouter\saprouttab.txt -K P:CN=solman71, OU=0000817116, OU=SAProuter, O=SAP, C=DE"
CreateService SUCCESS
''C:\usr\sap\saprouter>''
Modify the SAP_Router service (setting logon to sm1adm)
Modify registry key \HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SAP_Router (see [[OSS Note 525751|http://service.sap.com/sap/support/notes/525751]])
This is to make the Distinguished Name ==> "p:CN=solman71, OU=0000817116, OU=SAProuter, O=SAP, C=DE"
To remove the link between SDM and the Java Control Framework, proceed as follows:
1. Open a command prompt in the usr/sap/<SID>/<INSTANCE_NAME>/SDM/program directory of your J2EE Engine.
{{{
Windows
stopserver.bat
UNIX
StopServer.sh
}}}
2. To remove the link between the SDM and the Java Control Framework execute the following command in the command line:
{{{
Windows:
sdm jstartup "mode=standalone"
UNIX
sdm.sh jstartup mode=standalone
}}}
3. To integrate SDM in the Java Control Framework, use the following command:
{{{
Windows:
sdm jstartup "mode=integrated"
UNIX
sdm.sh jstartup mode=integrated
}}}
4. Start the SDM server again
{{{
Windows
startserver.bat
UNIX
StartServer.sh
}}}
Determining the Number of SLD's is based on your specific requirement.
> Check Pg 16 in SLD planning guide for an immediate idea over what you need.
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/d ocs/library/uuid/29b1f3ea-0c01-0010-2dae-cc64bb381c97?QuickLink=index&overridelayout=true
Simply put,
> More SLD's the more cumbersome, more resources, Synchronization requirements.
> Less SLD's implies a high dependency on the Main Centralized SLD's (which then would need to be setup as Cluster/High Availability so that it doesn't affect the dev work and more important PRD operation).
Once you've got the basic idea, check the following for specific determination of your requirements on SLD Strategy to be followed:
A.
1) http://www.sdn.sap.com/irj/scn/go/portal/prtroot/d ocs/library/uuid/e0a1a8fb-0527-2a10-f781-8b67eab16582?QuickLink=index&overridelayout=true
2) http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/6711
You need to decide how critical the SLD is to your landscape and plan accordingly.
3) http://www.sdn.sap.com/irj/sdn/nw-sld
4) Best Practices Guide for SLD and CTS :
http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/14676
5) SAP Note# 764393 - Configuration of the SAP System Landscape Directory
6) SAP Note# 720717 - Reduce the number of System Landscape Directories (SLD)
Currently, this is the scenario we have setup in our company:
ECC, PI, BI Dev >>>>> PI Dev SLD
ECC, PI, BI QA >>>>> PI QA SLD
ECC, PI, BI PRD >>>> PI PRD SLD
NWDI/CE use PI Dev SLD
CUA have their own SLD's.
> I generally have configured each individual PI SLD to report to SolMan SLD via Data Supplier Bridge so that each system Technical info in Dev/QA/PRD landscape is kept current in PRD.
B.
In relation to GUID Strategy:
1) Dev SLD would contains the Base GUID's of your SWCV (obviously)
2) To ensure the same GUID's are present in QA/PRD, please ensure that there is No "Manual" creation of the SWCV in QA/PRD SLD's (note that manual Export/Import is fine).
3) I would suggest you to look into implementing CTS for XI. See the CTS Central Information link: http://www.sdn.sap.com/irj/sdn/cts?rid=/webcontent/uuid/c0ce1dd8-c020-2b10-d080-a1cd3e985af1
C.
1) PI Dev SLD would be your Design Time SLD
PI PRD SLD would be your Runtime SLD
2) Central SLD is what i would assume would be a central repository which maintains and has the current information of all systems in Landscape.
> I would assume the SolMan SLD would fit this bill if this is the sole purpose.
3) Additionally, a Central SLD would perform all the functions of your Local SLD, if it were to exist, which makes it all the more critical in the case of PI Systems.
> PI depends heavily on SLD for its objects mapping and determinations during its ESR and INtegration Directory Objects, which is why, its usually recommended to use a local SLD for PI.
[[Remove Users (SQL Server)]]
[[Backup an SQL Server Database to a Shared Network Location]]
[[Restore to a new location / Database]]
Some sites store user email addresses within the SAP SU01 user master record.
This data is stored in SAP address tables in the SU01 user master record that use address numbers and person numbers as keys. Yet another table must be consulted for the relationship between the user ID and the person number. If you are doing this programmatically, you should use SAP standard BAP BAPI_USER_GET_DETAIL to read this information.
To identify the release
*SPident -v*
or
*cat /etc/SuSE-release*
SAP ECC 6.0 [SAP_BASIS 700]
The goal is to understand whether the user enters something on the screen, so I can do a check for necessity of confirmation message.
System field SY-DATAR (Selection for Screen Field Input) exactly does the same thing. If there is a input by user, SY-DATAR = X
[[Business Writing]]
http://www.dilbert.com/
http://dilbert.com/blog/
[[SAP SSO]]
[[SU01 User Email Address]]
[[Stop users from displaying SAP HR table contents]]
[[Viewing SAP transaction codes and their profiles]]
[[SAP GUI Password Sniffer]]
|!Program|!Description|
|RSPARAM |List profile parameters|
|RSUSRSUIM |User Information System|
| | |
|RSUSR_SYSINFO_PROFILE |Report cross-system information/profile|
|RSUSR_SYSINFO_ROLE |Report cross-system information/role|
|RSUSR_SYSINFO_ZBV |Report cross-system information/CUM|
| | |
|RSUSRLOG |Log Display for Central User Administration|
|RSUSRSCUC |CUA: Synchronization of the Company Addresses|
|RSUSR080 |Users by License Data|
|RSUSR500 |User Administration: Compare Users in Central System|
| | |
|RSUSR003 |Check the Passwords of Standard Users in All Clients|
|RSUSR005 |List of Users With Critical Authorizations|
|RSUSR006 |Blocked Users and Users with Incorrect Logons|
|RSUSR008_009_NEW |List of Users with Critical Authorizations|
|RSUSR008 |By Critical Combinations of Authorizations at Transaction Start|
|RSUSR009 |List of Users With Critical Authorizations|
|RSUSR200 |List of Users According to Logon Date and Password Change|
| | |
|RSUSR100 |Change Documents for Users|
|RSUSR101 |Change Documents for Profiles|
|RSUSR102 |Change Documents for Authorizations|
| | |
|RSUSR000 |Currently Active Users|
|RSUSR002 |Users by Complex Selection Criteria|
|RSUSR002_ADDRESS |Users by address data|
|RSUSR004 |Restrict User Values to the Following Single Profiles and Auth. Ob|
|RSUSR007 |Display users with incomplete address data|
|RSUSR010 |Executable Transactions ( All Selection Options )|
|RSUSR011 |Lists of transactions after selection by user, profile or obj.|
|RSUSR012 |Search authorizations, profiles and users with specified object va|
|RSUSR020 |Profiles by Complex Selection Criteria|
|RSUSR030|Authorizations by Complex Selection Criteria|
|RSUSR040|Authorization Objects by Complex Selection Criteria|
|RSUSR050|Comparisons|
|RSUSR060|Where-used lists|
|RSUSR060OBJ|Where-Used List: Authorization Object in Program and Transactions|
|RSSUSR061|Enter Authorization Fields|
|RSUSR070 |Roles by Complex Selection Criteria|
|RSUSR300 |Set External Security Name for All Users|
|RSUSR301 |Fill non-checking transactions with auth.object S TCODE|
|RSUSR302 |Delete authorization check on object S TCODE from table TSTCA|
You want to stop users from displaying table contents in SAP HR tables, without taking away access to any SE16 or SE16N based transactions.
Remove authority for S_TABU_DIS for displaying documents in authorization groups that include SAP HR tables. ''SAP HR Personnel Administration (PA)'' is one authorization group assigned to many SAP HR tables.
.header {position:relative;}
.header a:hover {background:transparent;}
.headerShadow {position:relative; padding:2em 1em 1em 1em; left:-1px; top:-1px;}
.headerForeground {position:absolute; padding:2em 1em 1em 1em; left:0px; top:0px;}
.siteTitle {font-size:2em;}
.siteSubtitle {font-size:2em;}
/* allows you to adjust the text shown between triple brackets is pre (block style) */
.viewer pre { font-size:1.2em; line-height:1.4em; color:#009;background:#ffc; }
/*{{{*/
* html .tiddler {height:1%;}
body {font-size:.75em; font-family:arial,helvetica; margin:0; padding:0;}
h1,h2,h3,h4,h5,h6 {font-weight:bold; text-decoration:none;}
h1,h2,h3 {padding-bottom:1px; margin-top:1.2em;margin-bottom:0.3em;}
h4,h5,h6 {margin-top:1em;}
h1 {font-size:1.35em;}
h2 {font-size:1.25em;}
h3 {font-size:1.1em;}
h4 {font-size:1em;}
h5 {font-size:.9em;}
hr {height:1px;}
a {text-decoration:none;}
dt {font-weight:bold;}
ol {list-style-type:decimal;}
ol ol {list-style-type:lower-alpha;}
ol ol ol {list-style-type:lower-roman;}
ol ol ol ol {list-style-type:decimal;}
ol ol ol ol ol {list-style-type:lower-alpha;}
ol ol ol ol ol ol {list-style-type:lower-roman;}
ol ol ol ol ol ol ol {list-style-type:decimal;}
.txtOptionInput {width:11em;}
#contentWrapper .chkOptionInput {border:0;}
.externalLink {text-decoration:underline;}
.indent {margin-left:3em;}
.outdent {margin-left:3em; text-indent:-3em;}
code.escaped {white-space:nowrap;}
.tiddlyLinkExisting {font-weight:bold;}
.tiddlyLinkNonExisting {font-style:italic;}
/* the 'a' is required for IE, otherwise it renders the whole tiddler in bold */
a.tiddlyLinkNonExisting.shadow {font-weight:bold;}
#mainMenu .tiddlyLinkExisting,
#mainMenu .tiddlyLinkNonExisting,
#sidebarTabs .tiddlyLinkNonExisting {font-weight:normal; font-style:normal;}
#sidebarTabs .tiddlyLinkExisting {font-weight:bold; font-style:normal;}
.header {position:relative;}
.header a:hover {background:transparent;}
.headerShadow {position:relative; padding:4.5em 0 1em 1em; left:-1px; top:-1px;}
.headerForeground {position:absolute; padding:4.5em 0 1em 1em; left:0px; top:0px;}
.siteTitle {font-size:3em;}
.siteSubtitle {font-size:1.2em;}
#mainMenu {position:absolute; left:0; width:10em; text-align:right; line-height:1.6em; padding:1.5em 0.5em 0.5em 0.5em; font-size:1.1em;}
#sidebar {position:absolute; right:3px; width:16em; font-size:.9em;}
#sidebarOptions {padding-top:0.3em;}
#sidebarOptions a {margin:0 0.2em; padding:0.2em 0.3em; display:block;}
#sidebarOptions input {margin:0.4em 0.5em;}
#sidebarOptions .sliderPanel {margin-left:1em; padding:0.5em; font-size:.85em;}
#sidebarOptions .sliderPanel a {font-weight:bold; display:inline; padding:0;}
#sidebarOptions .sliderPanel input {margin:0 0 0.3em 0;}
#sidebarTabs .tabContents {width:15em; overflow:hidden;}
.wizard {padding:0.1em 1em 0 2em;}
.wizard h1 {font-size:2em; font-weight:bold; background:none; padding:0; margin:0.4em 0 0.2em;}
.wizard h2 {font-size:1.2em; font-weight:bold; background:none; padding:0; margin:0.4em 0 0.2em;}
.wizardStep {padding:1em 1em 1em 1em;}
.wizard .button {margin:0.5em 0 0; font-size:1.2em;}
.wizardFooter {padding:0.8em 0.4em 0.8em 0;}
.wizardFooter .status {padding:0 0.4em; margin-left:1em;}
.wizard .button {padding:0.1em 0.2em;}
#messageArea {position:fixed; top:2em; right:0; margin:0.5em; padding:0.5em; z-index:2000; _position:absolute;}
.messageToolbar {display:block; text-align:right; padding:0.2em;}
#messageArea a {text-decoration:underline;}
.tiddlerPopupButton {padding:0.2em;}
.popupTiddler {position: absolute; z-index:300; padding:1em; margin:0;}
.popup {position:absolute; z-index:300; font-size:.9em; padding:0; list-style:none; margin:0;}
.popup .popupMessage {padding:0.4em;}
.popup hr {display:block; height:1px; width:auto; padding:0; margin:0.2em 0;}
.popup li.disabled {padding:0.4em;}
.popup li a {display:block; padding:0.4em; font-weight:normal; cursor:pointer;}
.listBreak {font-size:1px; line-height:1px;}
.listBreak div {margin:2px 0;}
.tabset {padding:1em 0 0 0.5em;}
.tab {margin:0 0 0 0.25em; padding:2px;}
.tabContents {padding:0.5em;}
.tabContents ul, .tabContents ol {margin:0; padding:0;}
.txtMainTab .tabContents li {list-style:none;}
.tabContents li.listLink { margin-left:.75em;}
#contentWrapper {display:block;}
#splashScreen {display:none;}
#displayArea {margin:1em 17em 0 14em;}
.toolbar {text-align:right; font-size:.9em;}
.tiddler {padding:1em 1em 0;}
.missing .viewer,.missing .title {font-style:italic;}
.title {font-size:1.6em; font-weight:bold;}
.missing .subtitle {display:none;}
.subtitle {font-size:1.1em;}
.tiddler .button {padding:0.2em 0.4em;}
.tagging {margin:0.5em 0.5em 0.5em 0; float:left; display:none;}
.isTag .tagging {display:block;}
.tagged {margin:0.5em; float:right;}
.tagging, .tagged {font-size:0.9em; padding:0.25em;}
.tagging ul, .tagged ul {list-style:none; margin:0.25em; padding:0;}
.tagClear {clear:both;}
.footer {font-size:.9em;}
.footer li {display:inline;}
.annotation {padding:0.5em; margin:0.5em;}
* html .viewer pre {width:99%; padding:0 0 1em 0;}
.viewer {line-height:1.4em; padding-top:0.5em;}
.viewer .button {margin:0 0.25em; padding:0 0.25em;}
.viewer blockquote {line-height:1.5em; padding-left:0.8em;margin-left:2.5em;}
.viewer ul, .viewer ol {margin-left:0.5em; padding-left:1.5em;}
.viewer table, table.twtable {border-collapse:collapse; margin:0.8em 1.0em;}
.viewer th, .viewer td, .viewer tr,.viewer caption,.twtable th, .twtable td, .twtable tr,.twtable caption {padding:3px;}
table.listView {font-size:0.85em; margin:0.8em 1.0em;}
table.listView th, table.listView td, table.listView tr {padding:0px 3px 0px 3px;}
.viewer pre {padding:0.5em; margin-left:0.5em; font-size:1.2em; line-height:1.4em; overflow:auto;}
.viewer code {font-size:1.2em; line-height:1.4em;}
.editor {font-size:1.1em;}
.editor input, .editor textarea {display:block; width:100%; font:inherit;}
.editorFooter {padding:0.25em 0; font-size:.9em;}
.editorFooter .button {padding-top:0px; padding-bottom:0px;}
.fieldsetFix {border:0; padding:0; margin:1px 0px;}
.sparkline {line-height:1em;}
.sparktick {outline:0;}
.zoomer {font-size:1.1em; position:absolute; overflow:hidden;}
.zoomer div {padding:1em;}
* html #backstage {width:99%;}
* html #backstageArea {width:99%;}
#backstageArea {display:none; position:relative; overflow: hidden; z-index:150; padding:0.3em 0.5em;}
#backstageToolbar {position:relative;}
#backstageArea a {font-weight:bold; margin-left:0.5em; padding:0.3em 0.5em;}
#backstageButton {display:none; position:absolute; z-index:175; top:0; right:0;}
#backstageButton a {padding:0.1em 0.4em; margin:0.1em;}
#backstage {position:relative; width:100%; z-index:50;}
#backstagePanel {display:none; z-index:100; position:absolute; width:90%; margin-left:3em; padding:1em;}
.backstagePanelFooter {padding-top:0.2em; float:right;}
.backstagePanelFooter a {padding:0.2em 0.4em;}
#backstageCloak {display:none; z-index:20; position:absolute; width:100%; height:100px;}
.whenBackstage {display:none;}
.backstageVisible .whenBackstage {display:block;}
/*}}}*/
The Redo and Archive logs are used to maintain a serialized transaction detail of changes to the database since the last database backup. The Redo logs should be placed on separate disks from any other storage. The Archive log should similarly be placed on separate disks from the Redo log files, so that disk contention is reduced between the online and archived logs.
Optimally, you want the Redo logs to change about every 20 – 30 minutes. There is overhead associated with closing an active Redo log and opening a new one, so managing the frequency is important. You also want the next Redo log to be opened on a different disk then the one that currently being closed. Sizing of the Redo logs should be done such that during high volume data loads the frequency of log switches is maintained at the lower level of 20 minutes. During normal usage, when there is not a large volume of DML activity, you would schedule jobs to switch the log around 30 minutes. These log switch intervals are published recommendations from Oracle.
Redo log switching intervals is measured by looking at the V$LOG_HISTORY table. The following query shows the log switching intervals for the last day:
select to_char(first_time,'MM/DD/YYYY HH24:MI:SS') from v$log_history
where first_time > (SYSDATE - 4)
order by to_char(first_time,'MM/DD/YYYY HH24:MI:SS') desc
It was found that frequent log switching was occurring during normal production hours. Log swapping was occurring at times of less than 5 minutes, and sometimes as frequently as 1 minute. This would indicate that the redo log files are sized to small for this application. If 5-minute intervals were the most often seen lower level, then the size of the Redo logs should increase to 4 times their current size. At 4 times their current size, they would more closely approach the recommended lower level of 20 minutes between log swaps.
The LOG_BUFFER parameter is used to determine how much information can be buffered before a write to the Redo log occurs. The following query is used to determine the number of times that the system had a wait state occur while trying to write the buffer to disk.
SELECT NAME, VALUE FROM V$SYSSTAT
WHERE NAME = 'redo buffer allocation retries'
A value greater than zero indicates that there are unnecessary wait stats occurring on writing information to the Redo logs. Increasing the LOG_BUFFER parameter will help to reduce this parameter. It was seen that there where 504 retries occurring over the past eight days, including 2 weekend days. Including the weekends, this is more than 60 waits per day. Just counting the workdays, this averages to about 84 waits per day. The user community of this system is extremely low, so a very high number like this is a concern. SAP’s processing creates tables and inserts them with data, which creates transaction entries that result in Redo log entries. The numbers that I have seen average out to about one wait every 6 minutes. Again this is a very lightly used data system, where this wait could be resulting on every single report run. As the volume of users increases, this issue would increase the delays seen.
//"Trading relies on finding and exploiting inefficiencies in the system while investing grows the economy. Trading is a parasite on investing. I’m not saying to ban it, I AM saying that technology has enabled outfits like Goldman to be such efficient parasites that they threaten the survival of their hosts."//
[[www.cringely.com/2009/08/is-technology-evil|http://www.cringely.com/2009/08/is-technology-evil/]]
//"As usual, the idealists are 100% right in principle and, as usual, the pragmatists are right in practice."//
//"A file format is 'just' a concise summary of all the features an application supports."//
Joel Spolsky, "More Joel on Software"
//"Fail cheap. Fail fast. Fail often. Always make new mistakes."//
[[Esther Dyson.|http://www.google.com/search?q=Esther+Dyson]]
//"If real life were like film I'd be able to port wordpress to my toaster using Number 8 Fencing wire, cat-6 cable and a safety pin."// Unknown
On two occasions I have been asked [by Members of Parliament], //"Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?"//
I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question.
/%
!info
|Name|ToggleLeftSidebar|
|Source|http://www.TiddlyTools.com/#ToggleLeftSidebar|
|Version|2.0.0|
|Author|Eric Shulman|
|License|http://www.TiddlyTools.com/#LegalStatements|
|~CoreVersion|2.1|
|Type|transclusion|
|Description|show/hide left sidebar (MainMenu)|
Usage
<<<
{{{
<<tiddler ToggleLeftSidebar>>
<<tiddler ToggleLeftSidebar with: label tooltip>>
}}}
Try it: <<tiddler ToggleLeftSidebar##show
with: {{config.options.chkShowLeftSidebar?'◄':'►'}}>>
<<<
Configuration:
<<<
{{{
config.options.chkShowLeftSidebar (true)
config.options.txtToggleLeftSideBarLabelShow (►)
config.options.txtToggleLeftSideBarLabelHide (◄)
}}}
<<<
!end
!show
<<tiddler {{
var co=config.options;
if (co.chkShowLeftSidebar===undefined) co.chkShowLeftSidebar=true;
var mm=document.getElementById('mainMenu');
var da=document.getElementById('displayArea');
if (mm) {
mm.style.display=co.chkShowLeftSidebar?'block':'none';
da.style.marginLeft=co.chkShowLeftSidebar?'':'1em';
}
'';}}>><html><nowiki><a href='javascript:;' title="$2"
onmouseover="
this.href='javascript:void(eval(decodeURIComponent(%22(function(){try{('
+encodeURIComponent(encodeURIComponent(this.onclick))
+')()}catch(e){alert(e.description?e.description:e.toString())}})()%22)))';"
onclick="
var co=config.options;
var opt='chkShowLeftSidebar';
var show=co[opt]=!co[opt];
var mm=document.getElementById('mainMenu');
var da=document.getElementById('displayArea');
if (mm) {
mm.style.display=show?'block':'none';
da.style.marginLeft=show?'':'1em';
}
saveOptionCookie(opt);
var labelShow=co.txtToggleLeftSideBarLabelShow||'►';
var labelHide=co.txtToggleLeftSideBarLabelHide||'◄';
if (this.innerHTML==labelShow||this.innerHTML==labelHide)
this.innerHTML=show?labelHide:labelShow;
this.title=(show?'hide':'show')+' left sidebar';
var sm=document.getElementById('storyMenu');
if (sm) config.refreshers.content(sm);
return false;
">$1</a></html>
!end
%/<<tiddler {{
var src='ToggleLeftSidebar';
src+(tiddler&&tiddler.title==src?'##info':'##show');
}} with: {{
var co=config.options;
var labelShow=co.txtToggleLeftSideBarLabelShow||'►';
var labelHide=co.txtToggleLeftSideBarLabelHide||'◄';
'$1'!='$'+'1'?'$1':(co.chkShowLeftSidebar?labelHide:labelShow);
}} {{
var tip=(config.options.chkShowLeftSidebar?'hide':'show')+' left sidebar';
'$2'!='$'+'2'?'$2':tip;
}}>>
/%
!info
|Name|ToggleRightSidebar|
|Source|http://www.TiddlyTools.com/#ToggleRightSidebar|
|Version|2.0.0|
|Author|Eric Shulman|
|License|http://www.TiddlyTools.com/#LegalStatements|
|~CoreVersion|2.1|
|Type|transclusion|
|Description|show/hide right sidebar (SideBarOptions)|
Usage
<<<
{{{
<<tiddler ToggleRightSidebar>>
<<tiddler ToggleRightSidebar with: label tooltip>>
}}}
Try it: <<tiddler ToggleRightSidebar##show
with: {{config.options.chkShowRightSidebar?'►':'◄'}}>>
<<<
Configuration:
<<<
{{{
config.options.chkShowRightSidebar (true)
config.options.txtToggleRightSideBarLabelShow (◄)
config.options.txtToggleRightSideBarLabelHide (►)
}}}
<<<
!end
!show
<<tiddler {{
var co=config.options;
if (co.chkShowRightSidebar===undefined) co.chkShowRightSidebar=true;
var sb=document.getElementById('sidebar');
var da=document.getElementById('displayArea');
if (sb) {
sb.style.display=co.chkShowRightSidebar?'block':'none';
da.style.marginRight=co.chkShowRightSidebar?'':'1em';
}
'';}}>><html><nowiki><a href='javascript:;' title="$2"
onmouseover="
this.href='javascript:void(eval(decodeURIComponent(%22(function(){try{('
+encodeURIComponent(encodeURIComponent(this.onclick))
+')()}catch(e){alert(e.description?e.description:e.toString())}})()%22)))';"
onclick="
var co=config.options;
var opt='chkShowRightSidebar';
var show=co[opt]=!co[opt];
var sb=document.getElementById('sidebar');
var da=document.getElementById('displayArea');
if (sb) {
sb.style.display=show?'block':'none';
da.style.marginRight=show?'':'1em';
}
saveOptionCookie(opt);
var labelShow=co.txtToggleRightSideBarLabelShow||'◄';
var labelHide=co.txtToggleRightSideBarLabelHide||'►';
if (this.innerHTML==labelShow||this.innerHTML==labelHide)
this.innerHTML=show?labelHide:labelShow;
this.title=(show?'hide':'show')+' right sidebar';
var sm=document.getElementById('storyMenu');
if (sm) config.refreshers.content(sm);
return false;
">$1</a></html>
!end
%/<<tiddler {{
var src='ToggleRightSidebar';
src+(tiddler&&tiddler.title==src?'##info':'##show');
}} with: {{
var co=config.options;
var labelShow=co.txtToggleRightSideBarLabelShow||'◄';
var labelHide=co.txtToggleRightSideBarLabelHide||'►';
'$1'!='$'+'1'?'$1':(co.chkShowRightSidebar?labelHide:labelShow);
}} {{
var tip=(config.options.chkShowRightSidebar?'hide':'show')+' right sidebar';
'$2'!='$'+'2'?'$2':tip;
}}>>
|!Transaction|!Description|
| CG3Y |Download a file from SAP (e.g. /usr/sap/file.txt) to your computer |
| CG3Z |Upload a file from your computer to an SAP directory |
| AL11 |Browse files located on the SAP directories |
[[UNIX (SAP)]]
[[UNIX mail]]
[[UNIX Tips and Tricks]]
[[SUSE / SLES]]
[[crontab]]
[[find and xargs]]
[[UNIX (Generic)]]
[[UNIX Tips and Tricks]]
Both on Linux and on Aix, {{{netstat -a}}} will give you the active connections/listening ports; i.e. for port 2500...
{{{netstat -a|grep 2500}}}
(On Aix you would have to install ''nmap'', it's not present by default, see http://www-03.ibm.com/systems/p/os/aix/linux/toolbox/download.html
To identify which daemon has opened a port, use {{{lsof -i |grep port_number}}.
(On Aix you would have to install ''lsof'', it's not present by default, see http://www-03.ibm.com/systems/p/os/aix/linux/toolbox/download.html
{{{nucspfd1:/root # lspv}}}
{{{hdisk0 00cf0ee46cb9d0e0 rootvg active}}}
{{{hdisk1 00cf0ee40d0650c6 None}}}
{{{hdisk2 00cf0ee40d945c82 abcvg active}}}
{{{nucspfd1:/root #}}}
--------
{{{nucspfd1:/root # lsvg}}}
{{{rootvg}}}
{{{abcvg}}}
{{{nucspfd1:/root #nucspfd1:/root # lsvg -p abcvg rootvg}}}
{{{abcvg:}}}
{{{PV_NAME PV STATE TOTAL PPs FREE PPs FREE DISTRIBUTION}}}
{{{hdisk2 active 551 108 00..00..00..00..108}}}
{{{rootvg:}}}
{{{PV_NAME PV STATE TOTAL PPs FREE PPs FREE DISTRIBUTION}}}
{{{hdisk0 active 140 16 00..01..00..00..15}}}
{{{nucspfd1:/root #}}}
--------
{{{nucspfd1:/root # exportfs -i /db2/AET}}}
'{{{nucspfp1:/root # mount -n nucspfd1 /db2/AET /db2/backup}}}
{{{nucspfp1:/root #}}}
-------
[[UNIX Users]]
[[UNIX Space Allocation]]
[[UNIX Network Stuff]]
----
To bring a task out of the background... The [%] character tells the shell that you want to bring a job out of the background and make it the foreground task. If no job number is given, it selects the last job number. You can see which jobs are running by typing the jobs shell command.
host> jobs
host> %1
----
chfs -a size=+256M /db2
chfs -a size=+512M /db2/BB0
----
stlmelsh1:orash1 2> lsvg
rootvg
sapSH1
dumpvg
stlmelsh1:orash1 3> lsvg sapSH1
VOLUME GROUP: sapSH1 VG IDENTIFIER: 000cb8adb054887c
VG STATE: active PP SIZE: 64 megabyte(s)
VG PERMISSION: read/write TOTAL PPs: 8459 (541376 megabytes)
MAX LVs: 256 FREE PPs: 600 (38400 megabytes)
LVs: 24 USED PPs: 7859 (502976 megabytes)
OPEN LVs: 24 QUORUM: 7
TOTAL PVs: 13 VG DESCRIPTORS: 13
STALE PVs: 0 STALE PPs: 0
ACTIVE PVs: 13 AUTO ON: yes
MAX PPs per PV: 1016 MAX PVs: 32
stlmelsh1:orash1 4> /usr/local/bin/sudo su -
stlmelsh1:orash1 4> /usr/local/bin/sudo su -
stlmelsh1# chfs -a size=+2G /oracle/SH1/sapdata1
Filesystem size changed to 35258368
stlmelsh1#
----
{{{gzip 1.2.4 (18 Aug 93)}}}
{{{usage: gzip [-cdfhlLnNrtvV19] [-S suffix] [file ...]}}}
{{{ -c --stdout write on standard output, keep original files unchanged}}}
{{{ -d --decompress decompress}}}
{{{ -f --force force overwrite of output file and compress links}}}
{{{ -h --help give this help}}}
{{{ -l --list list compressed file contents}}}
{{{ -L --license display software license}}}
{{{ -n --no-name do not save or restore the original name and time stamp}}}
{{{ -N --name save or restore the original name and time stamp}}}
{{{ -q --quiet suppress all warnings}}}
{{{ -r --recursive operate recursively on directories}}}
{{{ -S .suf --suffix .suf use suffix .suf on compressed files}}}
{{{ -t --test test compressed file integrity}}}
{{{ -v --verbose verbose mode}}}
{{{ -V --version display version number}}}
{{{ -1 --fast compress faster}}}
{{{ -9 --best compress better}}}
{{{ file... files to (de)compress. If none given, use standard input.}}}
{{{tar}}}
{{{Usage: tar -{c|r|t|u|x} [-BdFhilmopsvw]}}}
{{{ [-Number] [-fFile]}}}
{{{ [-bBlocks] [-S [Feet] [Feet @Density] [Blocksb]]}}}
{{{ [-LInputList] [-NBlocks] [-C Directory] File ...}}}
Use of tar, via http://scn.sap.com/people/muniraju.h/blog/2012/02/23/fast-copy-of-filesystem-with-tar
2 TB of database data files needed to be copied between filesystems.
Traditional linux cp command took 7 hours, even when multiple cp processes were fired in background with nohup.
See
http://www.4bcj.com/post/2008/01/Fast-File-Copy---Linux!.aspx
http://en.gentoo-wiki.com/wiki/Fast_Copy
Logged in as oras1x (owner of S1X database)
{{{cd /oracle/S1Q}}}
{{{nohup tar -Sc sapdata1/ | tar -C /oracle/S1X / -xv &}}}
{{{nohup tar -Sc sapdata2/ | tar -C /oracle/S1X / -xv &}}}
{{{nohup tar -Sc sapdata3/ | tar -C /oracle/S1X / -xv &}}}
{{{nohup tar -Sc sapdata4/ | tar -C /oracle/S1X / -xv &}}}
{{{nohup tar -Sc sapdata5/ | tar -C /oracle/S1X / -xv &}}}
{{{nohup tar -Sc sapdata6/ | tar -C /oracle/S1X / -xv &}}}
{{{nohup tar -Sc sapdata7/ | tar -C /oracle/S1X / -xv &}}}
{{{nohup tar -Sc sapdata8/ | tar -C /oracle/S1X / -xv &}}}
{{{nohup tar -Sc sapdata9/ | tar -C /oracle/S1X / -xv &}}}
{{{nohup tar -Sc sapdata10/ | tar -C /oracle/S1X / -xv &}}}
Monitored the copy speed every 60 seconds. Average speed was 12.6 GB / minute, Peak speed was 56.57 GB / minute.
The copy was completed in 3 hours.
----
{{{find . -type f -mtime +365 -exec gzip {}\;}}}
{{{/usr/local/bin/screen}}}
{{{/opt/soe/local/openssh-4.2p1/bin/ssh <server> -l <user>}}}
if you don't specify <user>, then it will attempt to log you on to the remote server with your current userid.
{{{/opt/soe/local/openssh-4.2p1/bin/scp xiqadm@drxiq:<remote_directory/remote_file_name> <local_directory/local_file_name>}}}
{{{pscp xidadm@xiddb.riotinto.org:/usr/sap/tranGS/defaultTrace.csv c:\temp\Example2_XID_defaultTrace.csv}}}
{{{pscp c:\temp\instance.properties xipadm@148.175.220.34:/usr/sap/XIP/DVEBMGS00/j2ee/cluster/instance.properties}}}
{{{pscp -r xipadm@xipdbriotinto.org:/usr/sap/XIP/DVEBMGS00/j2ee/admin/ c:\SAPAdmin\}}}
netstat -an |grep 5200
{{{perl -pi -e 's/searchpattern/replacewith/g' *.html}}}
cleanipc <instance#> remove
This removes all IPC shared memories and semaphores for R/3.
saposcol -k
This stops the collector process.
showipc <instance#>
This should show no IPC objects owned by R/3.
du -ks *
ifconfig -a
cd SDM/program
StopServer.sh
sdm.sh jstartup mode=standalone
sdm.sh systemcomponentstate mode=activate
sdm.sh jstartup mode=integrated
StartServer.sh
Via vnc
cdD
setenv DISPLAY ‘localhost:?.0’
or
export DISPLAY=‘localhost:?.0’
echo $DISPLAY
cd <program_dir>
./<program>
/opt/soe/local/bin/sudo -i
remove any outstanding /tmp/.X11-unix/X* files
or
vncserver -kill :1
cd /usr/local/bin <== directory for Xvnc - required for vncserver
/usr/local/bin/vncserver
/usr/local/bin/vncpasswd
/usr/sap/EPQ/JC00/SDM/root/origin/riotinto.com
tp ADDTOBUFFER SRDK900139 SRP pf=/usr/sap/trans/bin/TP_DOMAIN_SRD.PFL -Dtransdir=/usr/sap/trans
tp IMPORT SRDK900139 SRP client500 pf=/usr/sap/trans/bin/TP_DOMAIN_SRD.PFL -Dtransdir=/usr/sap/trans
cd /db2/XIQ/log_archive/db2*/*/N*/C*
slibclean Command removes any currently unused modules in kernel and library memory.
for regular files, either fuser or lsof can be used to tell if they're open.
dscdb6up xidadm aMnchp#1
dscdb6up db2xid aMnchp#1
Error messages about changing OS passwords is OK
chuser home=/db2/db2xid db2xid
topas [ -d number_of_monitored_hot_disks ]
[ -h ]
[ -i monitoring_interval_in_seconds ]
[ -n number_of_monitored_hot_network_interfaces ]
[ -p number_of_monitored_hot_processes ]
[ -w number_of_monitored_hot_WLM classes ]
[ -c number_of_monitored_hot_CPUs ]
[ -I remote_polling_interval ]
[ -U username_owned_processes ] | [ -C [ -o field = value,... ] -D | -L |-P | -W ]
[ -m]
passwd orasid
Only root users have the ability to set passwords for other accounts.
if you don't have write acess on files below your current directory,
then rm -r * doesn't work
what you need is ....
bau106s0:oragwa 36> pwd
/oracle/stage/816_64
bau106s0:oragwa 37> chmod -R 777 *
bau106s0:oragwa 38> rm -r *
Vi:
1,$s/bert/ernie/ - 'for each line line 1 to end, substitute first occurrence of bert with ernie'
1,$s/bert/ernie/g - 'for each line line 1 to end, substitute every occurrence of bert with ernie'
.,$s/bert/ernie/ - 'for each line current line to end, substitute first occurrence of bert with ernie'
smitty
System Management
Software Installation and Maintenance
Software License Management
Devices
System Storage Management (Physical & Logical Storage)
Security & Users
Communications Applications and Services
Print Spooling
Problem Determination
Performance & Resource Scheduling
System Environments
Processes & Subsystems
Applications
RS/6000 SP System Management
Using SMIT (information only)
DIR_SAPUSERS ---->> /usr/sap/GWA/DVEBMGS00/work
ps -aef
du -ks
du -ks `ls` <-- note style of quote
To create 2 uncompressed files requires just 1 command
/usr/local/bin/unzip SBS_Houston_TD_2000_Q4.zip.
/usr/local/bin/gzip
/usr/local/bin/gunzip
To tar only files (not subdirectories) in the current directory use this command:
$ tar cvf files.tar ./`ls -l | grep -v '^d' | awk '{ print $9 }'`
ftp to 203.16.36.4 (DE3)
cd ...data (on both machines)
ls -alrt
get R903190.DE3
cd ../cofiles (on both machines)
ls -alrt
get K903190.DE3
quit from ftp
cd ../bin
tp addtobuffer
tp import
Filesystem kbytes used avail %used Mounted on
/dev/vg00/lvol1 199381 150708 28734 84% /
/dev/vg00/lvol7 171477 119539 34790 77% /var
/dev/vg00/lvol6 446741 370216 31850 92% /usr
/dev/vgsapn/trans 1506593 913864 442069 67% /usr/sap/trans
/dev/vgora/putn 2013369 1143570 849665 57% /usr/sap/put
/dev/vgdata3/sapprd
260885 86967 171309 34% /usr/sap/PRD
umeasyd1:prdadm 7> cd /oracle/PRD/sapreorg
umeasyd1:prdadm 8> ls -lat|more
total 10734
drwxr-xr-x 74 oraprd dba 9216 May 9 11:56 .
-rw-r--r-- 1 oraprd dba 1749 May 9 11:56 0005091146.ext
-rw-r--r-- 1 oraprd dba 18560 May 9 11:56 reorgPRD.log
-rw-r--r-- 1 oraprd dba 25503 May 9 11:54 structPRD.log
drwxr-xr-x 2 oraprd dba 1024 May 9 11:54 0005091146
This list contains the files with the details of the latest / current sapdba actions
PRD Kernel Upgrade...
prdadm
cd /sapmnt/PRD
rm -rf exe_backup
cp -prf exe exe_backup
cp /usr/sap/trans/exe_new/* exe
PRINTING (HP)
printing (press MORE INFO button on SPOOL:Display Error Log)
/usr/sap/PRD/DVEBMGS00/data/SP20313B 2
Look for lpsched in task list
Also - SPAD --> utilities --> Display SAPPARAM
rspo/store_location db (means TeSE DB within SAP)
rspo/devinit/datafile
rspo/to_host/datafile
/etc/lp
umeasyd1:prdadm 15> ls -la
total 28
drwxr-xr-x 8 lp bin 1024 Jun 14 17:32 .
dr-xr-xr-x 25 bin bin 6144 Jun 23 09:27 ..
drwxr-xr-x 2 lp bin 1024 Jun 14 17:32 cinterface
drwxr-xr-x 2 lp bin 24 May 18 1995 class
drwxr-xr-x 2 lp bin 24 May 18 1995 info
drwxr-xr-x 3 lp bin 2048 Jun 14 17:32 interface * printer definitions
drwxr-xr-x 2 lp bin 1024 Jun 14 17:32 member
drwxr-xr-x 2 lp bin 1024 Jun 14 17:32 sinterface
/var/spool/lp
umeasyd1:prdadm 31> ls -la
total 168
drwxr-xr-x 6 lp bin 1024 Jun 23 09:50 .
dr-xr-xr-x 14 bin bin 1024 Jan 20 1999 ..
drwx------ 2 lp lp 24 Sep 11 1997 .elm
-rw------- 1 lp lp 20 Sep 11 1997 .sh_history
prw------- 1 lp lp 0 Jun 23 09:50 CLD_FIFO
prw------- 1 lp lp 0 Jun 23 09:50 FIFO
drwx------ 2 lp lp 24 Sep 11 1997 Mail
-rw-rw-rw- 1 lp lp 4 Jun 14 18:01 SCHEDLOCK
lrwxrwxrwx 1 root sys 14 Oct 18 1998 Tclass -> /etc/lp/Tclass
lrwxrwxrwx 1 root sys 15 Oct 18 1998 Tmember -> /etc/lp/Tmember
lrwxrwxrwx 1 root sys 18 Oct 18 1998 cinterface -> /etc/lp/cinterface
lrwxrwxrwx 1 root sys 13 Oct 18 1998 class -> /etc/lp/class
lrwxrwxrwx 1 root sys 18 Oct 18 1998 cmodel -> /usr/lib/lp/cmodel
-rw-r--r-- 1 lp lp 5 Apr 29 1998 default
lrwxrwxrwx 1 root sys 17 Oct 18 1998 fonts -> /usr/lib/lp/fonts
lrwxrwxrwx 1 root sys 12 Oct 18 1998 info -> /etc/lp/info
lrwxrwxrwx 1 root sys 17 Oct 18 1998 interface -> /etc/lp/interface
lrwxrwxrwx 1 root sys 15 Oct 18 1998 log -> /var/adm/lp/log
lrwxrwxrwx 1 root sys 21 Oct 18 1998 lpana.log -> /var/adm/lp/lpana.log
lrwxrwxrwx 1 root sys 19 Oct 18 1998 lpd.log -> /var/adm/lp/lpd.log
lrwxrwxrwx 1 root sys 14 Oct 18 1998 member -> /etc/lp/member
lrwxrwxrwx 1 root sys 17 Oct 18 1998 model -> /usr/lib/lp/model
-rw-r--r-- 1 lp lp 25232 Jun 23 09:50 outputq
-rw-r--r-- 1 lp lp 26460 Jun 23 09:50 pstatus
-rw-r--r-- 1 lp lp 6768 Jun 14 17:32 qstatus
drwxr-xr-x 2 lp bin 24 May 18 1995 receive
drwxr-xr-x 38 lp bin 1024 Jun 14 17:32 request * a dir per printer
-rw-r--r-- 1 lp lp 5 Jun 23 09:50 seqfile
lrwxrwxrwx 1 root sys 18 Oct 18 1998 sinterface -> /etc/lp/sinterface
lrwxrwxrwx 1 root sys 18 Oct 18 1998 smodel -> /usr/lib/lp/smodel
-rw-rw-rw- 1 root sys 206 Jan 9 1998 tmp.txt
cA9480umeasyd1 dA9480umeasyd1 * c == instructions d == data
riochih103:db2xiq 1> passwd -s
Current available shells:
/bin/sh
/bin/bsh
/bin/csh
/bin/ksh
/bin/tsh
/bin/ksh93
/usr/bin/sh
/usr/bin/bsh
/usr/bin/csh
/usr/bin/ksh
/usr/bin/tsh
/usr/bin/ksh93
/usr/bin/rksh
/usr/bin/rksh93
/usr/sbin/uucp/uucico
/usr/sbin/sliplogin
/usr/sbin/snappd
db2xiq's current login shell:
/usr/bin/csh
Change (yes) or (no)? > yes
To?>/bin/csh
riochih103:db2xiq 2>
NW2004s / BASIS 7.00 sapccmsr
Usage: sapccmsr -R [-f <config file>] |-U| -DCCMS |-stop | -status
[ pf=<complete path of agent profile file> ] | -V
sapccmsr -R [-f <config file>]
[ pf=<complete path of agent profile file> ]
Register CCMS agent at central system
sapccmsr -U [ pf=<complete path of agent profile file> ]
Deregister CCMS agent
sapccmsr -DCCMS [ pf=<complete path of agent profile file> ]
Run CCMS agent (start daemon in background)
sapccmsr -stop [ pf=<complete path of agent profile file> ]
Stop CCMS agent
sapccmsr -status [ pf=<complete path of agent profile file> ]
Show CCMS agent status
sapccmsr -V
Show CCMS agent version
ps -ef | grep db2
db2 "select * from syscat.schemata"
db2 get db cfg for XIP | egrep 'pending |consistent'
db2 list tablespaces | egrep 'State |Name'
db2 "select count(*) from SAPXIP.usr02"
db2 select count(*) from SAPXIP.usr02
db2 select * from syscat.tables | more
db2 get db cfg for XIP | grep HADR
db2 "select uflag,count(*) from SAPXIP.usr02 where uflag > 0 group by uflag"
db2 "select uflag,bname,mandt from SAPXIP.usr02 where uflag > 0" > users.txt
db2 "update SAPXIP.usr02 set uflag= 192 where bname not in('MENGLISH', 'SAP*', 'DDIC') "
db2 "update SAPXIP.usr02 set uflag= 0 where bname = 'J2EE_ADMIN'"
db2 "update SAPXIPDB.usr02 set uflag= 0 where bname = 'J2EE_ADMIN'"
‘commit’
‘db2 terminate’
db2 "SELECT COUNT(*) FROM TABLE( REG_LIST_VARIABLES() ) AS X WHERE REG_VAR_NAME = 'DB2ENVLIST' "
db2 "SELECT COUNT(*) as CNT FROM TABLE( REG_LIST_VARIABLES() ) AS X WHERE REG_VAR_NAME = 'DB2_WORKLOAD' AND UPPER( REG_VAR_VALUE ) = 'SAP'"
Check the password of the Java connect user in the configtool and the SAP license
smpdb:/usr/sap/trans/scripts/reset_password.sh
=========================================================================
chuser home=/db2/db2xid db2xid
topas [ -d number_of_monitored_hot_disks ]
[ -h ]
[ -i monitoring_interval_in_seconds ]
[ -n number_of_monitored_hot_network_interfaces ]
[ -p number_of_monitored_hot_processes ]
[ -w number_of_monitored_hot_WLM classes ]
[ -c number_of_monitored_hot_CPUs ]
[ -I remote_polling_interval ]
[ -U username_owned_processes ] | [ -C [ -o field = value,... ] -D | -L |-P | -W ]
[ -m]
passwd orasid
Only root users have the ability to set passwords for other accounts.
if the JDK is in C:\jdk1.4.2 then....
CLASSPATH=C:\jdk1.4.2\src.jar
JAVA_HOME=C:\jdk1.4.2
PATH=%PATH;C:\jdk1.4.2\bin
is the box up ?
ping
tracert
if you don't have write acess on files below your current directory,
then rm -r * doesn't work
what you need is ....
bau106s0:oragwa 36> pwd
/oracle/stage/816_64
bau106s0:oragwa 37> chmod -R 777 *
bau106s0:oragwa 38> rm -r *
Vi:
1,$s/bert/ernie/ - 'for each line line 1 to end, substitute first occurrence of bert with ernie'
1,$s/bert/ernie/g - 'for each line line 1 to end, substitute every occurrence of bert with ernie'
.,$s/bert/ernie/ - 'for each line current line to end, substitute first occurrence of bert with ernie'
smitty
System Management
Software Installation and Maintenance
Software License Management
Devices
System Storage Management (Physical & Logical Storage)
Security & Users
Communications Applications and Services
Print Spooling
Problem Determination
Performance & Resource Scheduling
System Environments
Processes & Subsystems
Applications
RS/6000 SP System Management
Using SMIT (information only)
/oracle/GWA/816_64/dbs/initGWA.dba
/oracle/GWA/816_64/dbs/initGWA.sap
\\itwol_ksca\IIg_K3E7_SAP
\\ITWOL_KSCB\OptR_K3Gen
DIR_SAPUSERS ---->> /usr/sap/GWA/DVEBMGS00/work
ps -aef
du -ks
du -ks `ls` <-- note style of quote
To create 2 uncompressed files requires just 1 command
/usr/local/bin/unzip SBS_Houston_TD_2000_Q4.zip.
/usr/local/bin/gzip
/usr/local/bin/gunzip
To tar only files (not subdirectories) in the current directory use this command:
$ tar cvf files.tar ./`ls -l | grep -v '^d' | awk '{ print $9 }'`
scsapd:wscadm> find . -name sapli\*
./sap/put/exe/saplicense
scsapd:wscadm>
/oracle/PRD/dbs/initPRD.ora
/oracle/PRD/dbs/initPRD.dba
/oracle/PRD/dbs/initPRD.sap
/oracle/PRD/brarchive
/sapmnt/PRD/exe/brarchive
/scratch/oldkernel/brarchive
find /oracle/GW1/saparch -type f -name '*.cds' -atime +7 -exec mv {} /usr/tmp \;
This will move all plain files that have not been accessed in the last 7 days with the format *.cds in directory /oracle/PRD/saparch to directory /usr/tmp.
find /oracle/PRD/saparch -type f -name '*.cds' -atime +21 -exec rm {} \;
find . -type f -name '*.*' -atime +21 -exec rm {} \;
This will remove all plain files that have not been accessed in the last 21 days which match the patterns specified (*.cds or *.*),
from the specified directory /oracle/PRD/saparch or the current directory.
more efficient alternative is
find /oracle/PRD/saparch -type f -name '*.cds' -atime +7 | xargs -t -I {} mv {} /usr/tmp
find /oracle/PRD/saparch -type f -name '*.cds' -atime +7 | xargs -t rm
To search for all files that are greater than 50,000 blocks of 512 bytes long, enter:
find . -size +50000 -print
To search for all files that are greater than 1,000,000 bytes long, enter:
find . -size +1000000c -print
Alternatives -
find . -size +20000 -exec ls -la {} \;
find . -name '*trc' -mtime +21 -exec ls -la {} \;
find . -name '*trc' -mtime +21 | xargs -t rm
or
find . -name '*trc' -mtime +21 -exec rm {} \;
To insert file names into the middle of command lines, enter:
ls | xargs -t -I {} mv {} {}.old
This command sequence renames all files in the current directory by adding .old to the end of each name. The -I flag tells the xargs command to insert each line of the ls directory listing where {} (braces) appear.
The -t flag causes the xargs command to display each command before running it,
If the current directory contains the files chap1, chap2, and chap3, this constructs the following commands:
mv chap1 chap1.old
mv chap2 chap2.old
mv chap3 chap3.old
ftp to 203.16.36.4 (DE3)
cd ...data (on both machines)
ls -alrt
get R903190.DE3
cd ../cofiles (on both machines)
ls -alrt
get K903190.DE3
quit from ftp
cd ../bin
tp addtobuffer
tp import
Filesystem kbytes used avail %used Mounted on
/dev/vg00/lvol1 199381 150708 28734 84% /
/dev/vg00/lvol7 171477 119539 34790 77% /var
/dev/vg00/lvol6 446741 370216 31850 92% /usr
/dev/vgsapn/trans 1506593 913864 442069 67% /usr/sap/trans
/dev/vgora/putn 2013369 1143570 849665 57% /usr/sap/put
/dev/vgdata3/sapprd
260885 86967 171309 34% /usr/sap/PRD
umeasyd1:prdadm 7> cd /oracle/PRD/sapreorg
umeasyd1:prdadm 8> ls -lat|more
total 10734
drwxr-xr-x 74 oraprd dba 9216 May 9 11:56 .
-rw-r--r-- 1 oraprd dba 1749 May 9 11:56 0005091146.ext
-rw-r--r-- 1 oraprd dba 18560 May 9 11:56 reorgPRD.log
-rw-r--r-- 1 oraprd dba 25503 May 9 11:54 structPRD.log
drwxr-xr-x 2 oraprd dba 1024 May 9 11:54 0005091146
This list contains the files with the details of the latest / current sapdba actions
PRD Kernel Upgrade...
prdadm
cd /sapmnt/PRD
rm -rf exe_backup
cp -prf exe exe_backup
cp /usr/sap/trans/exe_new/* exe
PRINTING (HP)
printing (press MORE INFO button on SPOOL:Display Error Log)
/usr/sap/PRD/DVEBMGS00/data/SP20313B 2
Look for lpsched in task list
Also - SPAD --> utilities --> Display SAPPARAM
rspo/store_location db (means TeSE DB within SAP)
rspo/devinit/datafile
rspo/to_host/datafile
/etc/lp
umeasyd1:prdadm 15> ls -la
total 28
drwxr-xr-x 8 lp bin 1024 Jun 14 17:32 .
dr-xr-xr-x 25 bin bin 6144 Jun 23 09:27 ..
drwxr-xr-x 2 lp bin 1024 Jun 14 17:32 cinterface
drwxr-xr-x 2 lp bin 24 May 18 1995 class
drwxr-xr-x 2 lp bin 24 May 18 1995 info
drwxr-xr-x 3 lp bin 2048 Jun 14 17:32 interface * printer definitions
drwxr-xr-x 2 lp bin 1024 Jun 14 17:32 member
drwxr-xr-x 2 lp bin 1024 Jun 14 17:32 sinterface
/var/spool/lp
umeasyd1:prdadm 31> ls -la
total 168
drwxr-xr-x 6 lp bin 1024 Jun 23 09:50 .
dr-xr-xr-x 14 bin bin 1024 Jan 20 1999 ..
drwx------ 2 lp lp 24 Sep 11 1997 .elm
-rw------- 1 lp lp 20 Sep 11 1997 .sh_history
prw------- 1 lp lp 0 Jun 23 09:50 CLD_FIFO
prw------- 1 lp lp 0 Jun 23 09:50 FIFO
drwx------ 2 lp lp 24 Sep 11 1997 Mail
-rw-rw-rw- 1 lp lp 4 Jun 14 18:01 SCHEDLOCK
lrwxrwxrwx 1 root sys 14 Oct 18 1998 Tclass -> /etc/lp/Tclass
lrwxrwxrwx 1 root sys 15 Oct 18 1998 Tmember -> /etc/lp/Tmember
lrwxrwxrwx 1 root sys 18 Oct 18 1998 cinterface -> /etc/lp/cinterface
lrwxrwxrwx 1 root sys 13 Oct 18 1998 class -> /etc/lp/class
lrwxrwxrwx 1 root sys 18 Oct 18 1998 cmodel -> /usr/lib/lp/cmodel
-rw-r--r-- 1 lp lp 5 Apr 29 1998 default
lrwxrwxrwx 1 root sys 17 Oct 18 1998 fonts -> /usr/lib/lp/fonts
lrwxrwxrwx 1 root sys 12 Oct 18 1998 info -> /etc/lp/info
lrwxrwxrwx 1 root sys 17 Oct 18 1998 interface -> /etc/lp/interface
lrwxrwxrwx 1 root sys 15 Oct 18 1998 log -> /var/adm/lp/log
lrwxrwxrwx 1 root sys 21 Oct 18 1998 lpana.log -> /var/adm/lp/lpana.log
lrwxrwxrwx 1 root sys 19 Oct 18 1998 lpd.log -> /var/adm/lp/lpd.log
lrwxrwxrwx 1 root sys 14 Oct 18 1998 member -> /etc/lp/member
lrwxrwxrwx 1 root sys 17 Oct 18 1998 model -> /usr/lib/lp/model
-rw-r--r-- 1 lp lp 25232 Jun 23 09:50 outputq
-rw-r--r-- 1 lp lp 26460 Jun 23 09:50 pstatus
-rw-r--r-- 1 lp lp 6768 Jun 14 17:32 qstatus
drwxr-xr-x 2 lp bin 24 May 18 1995 receive
drwxr-xr-x 38 lp bin 1024 Jun 14 17:32 request * a dir per printer
-rw-r--r-- 1 lp lp 5 Jun 23 09:50 seqfile
lrwxrwxrwx 1 root sys 18 Oct 18 1998 sinterface -> /etc/lp/sinterface
lrwxrwxrwx 1 root sys 18 Oct 18 1998 smodel -> /usr/lib/lp/smodel
-rw-rw-rw- 1 root sys 206 Jan 9 1998 tmp.txt
cA9480umeasyd1 dA9480umeasyd1 * c == instructions d == data
riochih103:db2xiq 1> passwd -s
Current available shells:
/bin/sh
/bin/bsh
/bin/csh
/bin/ksh
/bin/tsh
/bin/ksh93
/usr/bin/sh
/usr/bin/bsh
/usr/bin/csh
/usr/bin/ksh
/usr/bin/tsh
/usr/bin/ksh93
/usr/bin/rksh
/usr/bin/rksh93
/usr/sbin/uucp/uucico
/usr/sbin/sliplogin
/usr/sbin/snappd
db2xiq's current login shell:
/usr/bin/csh
Change (yes) or (no)? > yes
To?>/bin/csh
riochih103:db2xiq 2>
NW2004s / BASIS 7.00 sapccmsr
Usage: sapccmsr -R [-f <config file>] |-U| -DCCMS |-stop | -status
[ pf=<complete path of agent profile file> ] | -V
sapccmsr -R [-f <config file>]
[ pf=<complete path of agent profile file> ]
Register CCMS agent at central system
sapccmsr -U [ pf=<complete path of agent profile file> ]
Deregister CCMS agent
sapccmsr -DCCMS [ pf=<complete path of agent profile file> ]
Run CCMS agent (start daemon in background)
sapccmsr -stop [ pf=<complete path of agent profile file> ]
Stop CCMS agent
sapccmsr -status [ pf=<complete path of agent profile file> ]
Show CCMS agent status
sapccmsr -V
Show CCMS agent version
''UNIX Add Existing User To A Secondary Group''
Use usermod command to modify a user's login definition on the system including group membership. For, example add user xyz to the sales group, enter:
{{{usermod -G sales xyz}}}
Add user tom to sales but also keep his existing membership of ftpusers, enter:
{{{usermod -G ftpusers,sales tom}}}
''UNIX Add Existing User To A Primary Group''
Add jerry to sales primary group and change its existing group membership:
{{{usermod -g sales jerry}}}
For more information read following man pages:
$ {{{man usermod}}}
$ {{{man useradd}}}
$ {{{man passwd}}}
Link http://www.ibm.com/developerworks/aix/library/au-aixuseradmin/
Configure the file /etc/mail/sendmail.cf
See [[Configuring a Mail Server on AIX|https://www-304.ibm.com/support/docview.wss?uid=isg3T1011822]] and http://www.sendmail.org/m4/features.html
Recreating ''mailertable.db'' by use of the makemap utility:
{{{# cd /etc/mail}}}
{{{# makemap hash /etc/mail/mailertable < mailertable}}}
{{{# ls mailertable.db}}}
{{{mailertable.db}}}
{{{#}}}
Restart ''sendmail'' and check the status
{{{# refresh -s sendmail}}}
{{{0513-095 The request for subsystem refresh was completed successfully.}}}
{{{# lssrc -s sendmail}}}
{{{Subsystem Group PID Status}}}
{{{ sendmail mail 221334 active}}}
{{{#}}}
stores User Names and passwords.
RSUMODSP List Modified Objects
|!Table Name|!Column Two|
|ADIRACCESS|contains the object keys that have been registered with SAP for modifying SAP code.|
|SMODILOG|tracks all changes for Customer Modifications to development objects.|
|DEVACCESS|list of the users with development access on a particular system.|
|TADIR|contains object directory entries.|
|TDEVC|contains development classes and packages.|
|TRBAT|if header shows R(running) then CTS thinks the Transport is being imported.|
|[[USR02]]|stores User Names and passwords. |
|USR40|password exception list.|
[[Useful Transactions - BW]]
[[Useful Transactions and Infotypes - HR / HCM]]
RSA1 Modeling - DW Workbench
RSA2 OLTP Metadata Repository
RSA3 Extractor Checker
RSA5 Install Business Content
RSA6 Maintain DataSources
RSA7 BW Delta Queue Monitor
RSA8 DataSource Repository
RSA9 Transfer Application Components
RSABAPSC Statistical Prog. Anal. for Search
RSABAUTH Transfer of Authorization Groups
RSABTPGP Authorization Groups
RSADMIN RSADMIN maintenance
RSANWB Analysis Process Designer
RSBEB Business Explorer Browser
RSBMO2 Open Hub Monitor
RSB_GUI_START Editing an Open Hub Destination
RSRAJ Starts a Reporting Agent Job
RSRAM Reporting Agent Monitor
RSRCACHE OLAP: Cache Monitor
RSRCATTTRACE Catt transaction for trace tool
RSRDA Real-Time Data Acquisition Monitor
RSRD_ADMIN Broadcasting Administration
RSREP BW Administrator Workbench
RSREQARCH Req. Archive Administration Dialog
RSRFCCHK RFC destinations with logon data
RSRFCSTX RFC statistics
RSRFCTRC RFC Trace
RSRHIERARCHYVIRT Maintain Virtual Time Hierarchies
RSRQ Data Load Monitor for a Request
RSRR BW RRI on the Web
RSRR_WEB Report-Report Interface in Web
RSRSDEST System Overview Output
RSRT Start of the report monitor (also RSRT1 and RSRT2)
RSRTQ BWT: Query Definition
RSRTRACE Set trace configuration
RSRTRACETEST Trace tool configuration
RSRV Analysis and Repair of BW Objects
RSRVALT Analysis of the BW objects
RSCUR Start: Currency Translation Type
RSCUSTA Maintain BW Settings
RSCUSTA2 ODS Settings
RSBROWSER BW Browser
RSBWREMOTE Create Warehouse User
RSBMO2 Open Hub Monitor
RSCRT BW Monitor (Near)-Real-Time Loading
RSMO Data Load Monitor Start
RSMONITOR Generic Monitor
''Time Management component''
This offers support in performing all human resources processes involving the time recording, leave management system and valuation of employees, work performed and absence times.
SAP HR Time Management Infotypes
* 0007 – Planned Working Time
* 0041 – Date Specifications
* 0050 – Time Recording Info
* 0080 – Maternity Protection
* 2001 – Absences
* 2006 – Absences Quota
* 2002 – Attendances
* 2003 – Substitutions
* 2005 – Overtime
* 2011 – Time Events
|Transaction Code|Text |Infotype Number|
|PA61 |Maintain Time data |0000, 0001, 0007, 2001,2002, 2003, 2006, 2013,|
|PT63 |Personal Work schedule |0007|
|PA51 |Display time data |0000, 0001, 2001, 2002, 2003, 2006, 0007|
|PT_QTA00 |Generate Absence Quota |For Generating RH, CL , transit leave and compensatory off etc.|
|PT_QTA10 |Display Absence Quota |2001,2006|
|PT50 |Information |To view quota availed and remaining|
|PT01 |Quota Overview|
|PT03 |Create Work Schedule |For generating the EL and ML quota|
{{{ select * from dict ; }}}
Find all views in the data dictionary, with a description of what they contain. Look here for any views that may be usefull for your debugging.
{{{ select TABLESPACE_NAME, count(BLOCKS) from USER_FREE_SPACE GROUP by TABLESPACE_NAME ; }}}
Displays the current amount of freespace (in blocks) for each tablespace.
The user defaults for views can be set under Menus: Defaults –> Views. Select those views to be checked on by default when generating a new material. Select ‘View selection only on request’ when the select view pop-up is to be by-passed unless selected.
For organizational levels, Menus: Defaults –> organizational levels. Enter those organizational levels to be defaulted when generating a new material. Select ‘Org. levels/profiles only on request’ when the select view pop-up is to be bypassed unless selected.
Do not confuse this with ABAP Report / Program Variants, accessible via SE38
New products are often created by modifying existing product designs. The purpose of SAP SAP Variant Configuration is to react quickly to customer’s requirement, by enabling the company to manufacture a wider range of Products from a wider variation of input material.
How can I see which profiles contain (or belong to) a particular T-Code?
Transaction SUIM lets you search on profiles, roles and users, but does not appear to provide a combination for a list of transaction codes and profiles.
Check / Search for "By Authorization" values, then use the authorization object and enter S_TCODE. Hit the return key, and then enter the transaction code in the value field.
Prerequisites:
* [[Activate HTML SAP GUI]]
* [[Activate minimum ICF Services]]
* [[OSS Note 0517484|http://service.sap.com/sap/support/notes/517484]]
[[WDA Tutorial 1 Getting Started with with WDA|WebDynpro_ABAP_1.pdf]]
Step 1 – Creating the Web Dynpro for ABAP (WDA) Object
Step 2 – Creating a View
Step 3 – Adding UI Elements to the View
Step 4 – Creating the Component Controller Context
Step 5 – Data Mapping
Step 6 – Accessing Data from the Component Controller
Step 7 – Define the Navigational Schema
Step 8 – Creating the Application
Step 9 – Testing the WDA Application
!Who changed data in a table ?
Check SCU3 transaction for particular table. It works only when table changes logging is switched on.
If you've make the change from SE16N, changes are logged in the tables shown below.
*SE16N_CD_KEY* : Change Documents - Header
*SE16N_CD_DATA* : Change Documents - Data
!Who changed structure of a table ?
Go to the data dictionary (SE11) in your development system and look at the version history for the object.
Compare each revision made with the previous version, until you can find one where a version contains the column/field,
but the previous version does not. Also check which version is in your other systems (by comparison with the Development system).
//Collate the anti-capital rants of a zillionaire currency speculator George Soros, the green sermons from a late Ted Kennedy who stopped a wind farm from marring his vacation home’s views, a John Edwards of “two nations” fame constructing a Neronian Golden House, a Tom Friedman warning of the consumer habits that lead to a hot, flat earth from a 10,000 square foot English-style estate of the sort that 18th-century English barons built after successful careers in the Raj, the comic case of Jeremiah Wright moving to a mostly white golf course to dream up more sermons about “white folks’ greed runs a world in need,” or a $5 million a year earning Obama — with all his expenses picked up by the government — lamenting out loud why rich people seem to want ever more money they don’t need. Some spread the wealth around.//
[[Windows (SAP)]]
[[Windows Constants]]
[[Windows Services]]
[[xcopy]]
[[Error 1723 when installing / uninstalling / updating JRE or JDK]]
''tasklist''
A command line equivalent of Task Manager - can also run against remote machines.
//tasklist /s [server-name] //
[[Windows (Generic)]]
NW 7+ ABAP+JAVA or JAVA AS Hardware Key
==> D:\usr\sap\<sid>\SCS<nn>\work\dev_ms
==> D:\usr\sap\EPQ\SCS01\work\dev_ms
if the JDK is in C:\jdk1.4.2 then....
CLASSPATH=C:\jdk1.4.2\src.jar
JAVA_HOME=C:\jdk1.4.2
PATH=%PATH;C:\jdk1.4.2\bin
The following table lists the system and local environment variables for Windows XP.
|!Variable|!Type|!Description|
|! %ALLUSERSPROFILE% |!Local|!Returns the location of the All Users Profile.|
|! %APPDATA% |!Local|!Returns the location where applications store data by default.|
%CD%
Local
Returns the current directory string.
%CMDCMDLINE%
Local
Returns the exact command line used to start the current Cmd.exe.
%CMDEXTVERSION%
System
Returns the version number of the current Command Processor Extensions.
%COMPUTERNAME%
System
Returns the name of the computer.
%COMSPEC%
System
Returns the exact path to the command shell executable.
%DATE%
System
Returns the current date. Uses the same format as the date /t command. Generated by Cmd.exe. For more information about the date command, see Date
%ERRORLEVEL%
System
Returns the error code of the most recently used command. A non zero value usually indicates an error.
%HOMEDRIVE%
System
Returns which local workstation drive letter is connected to the user's home directory. Set based on the value of the home directory. The user's home directory is specified in Local Users and Groups.
%HOMEPATH%
System
Returns the full path of the user's home directory. Set based on the value of the home directory. The user's home directory is specified in Local Users and Groups.
%HOMESHARE%
System
Returns the network path to the user's shared home directory. Set based on the value of the home directory. The user's home directory is specified in Local Users and Groups.
%LOGONSEVER%
Local
Returns the name of the domain controller that validated the current logon session.
%NUMBER_OF_PROCESSORS%
System
Specifies the number of processors installed on the computer.
%OS%
System
Returns the operating system name. Windows 2000 displays the operating system as Windows_NT.
%PATH%
System
Specifies the search path for executable files.
%PATHEXT%
System
Returns a list of the file extensions that the operating system considers to be executable.
%PROCESSOR_ARCHITECTURE%
System
Returns the chip architecture of the processor. Values: x86, IA64.
%PROCESSOR_IDENTIFIER%
System
Returns a description of the processor.
%PROCESSOR_LEVEL%
System
Returns the model number of the processor installed on the computer.
%PROCESSOR_REVISION%
System
Returns the revision number of the processor.
%PROMPT%
Local
Returns the command prompt settings for the current interpreter. Generated by Cmd.exe.
%RANDOM%
System
Returns a random decimal number between 0 and 32767. Generated by Cmd.exe.
%SYSTEMDRIVE%
System
Returns the drive containing the Windows XP root directory (that is, the system root).
%SYSTEMROOT%
System
Returns the location of the Windows XP root directory.
%TEMP% and %TMP%
System and User
Returns the default temporary directories that are used by applications available to users who are currently logged on. Some applications require TEMP and others require TMP.
%TIME%
System
Returns the current time. Uses the same format as the time /t command. Generated by Cmd.exe. For more information about the time command, see Time
%USERDOMAIN%
Local
Returns the name of the domain that contains the user's account.
%USERNAME%
Local
Returns the name of the user who is currently logged on.
%USERPROFILE%
Local
Returns the location of the profile for the current user.
%WINDIR%
System
Returns the location of the operating system directory.
''Manipulating Services on a local machine''
Recently, I managed to completely bork an installation. prior to re-installation, I was trying to delete a windows service. (Normally it should not be necessary to manually delete windows Services, but in this case, uninstalling a buggered install meant that the startsap services were not removed automatically). Its very easy to remove a service from registry if you know the right path. Here is how I did that:
{{{
sc delete < SERVICE name>
}}}
Alternatively, you can also use command prompt and delete a service using following command:
1. Run Regedit or Regedt32
2. Find the registry entry "HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services"
3. Look for the service there and delete it. You can look at the keys to know what files the service was using and delete them as well (if necessary).
[[SC command reference|http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/sc.mspx?mfr=true]]
You can also create services:
{{{
sc create <SERVICE name> binpath= <path-name>
}}}
Leave a space between the equal sign (=) and the parameter.
If you have space in the file path you need to use quotation marks ("). For example:
{{{
sc create SAPC11_10 binPath= "D:\usr\sap\C11\DVEBMGS10\exe\sapstartsrv.exe pf=D:\usr\sap\C11\SYS\profile\START_DVEBMGS10_mysapdev"
}}}
''Manipulating Services on a remote machine''
You can use the SC command to access services on other machines. This is useful for when you can't logon to a system via RDP / MSTSC because the terminal Services limit has been reached.
{{{
H:\>sc \\mwsapdev stop SAPRouter
SERVICE_NAME: SAPRoute
TYPE : 10 WIN32_OWN_PROCESS
STATE : 3 STOP_PENDING
(STOPPABLE, PAUSABLE, IGNORES_SHUTDOWN))
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x1
WAIT_HINT : 0xbb8
H:\>sc \\mwsapdev query SAPRouter
SERVICE_NAME: SAPRouter
TYPE : 10 WIN32_OWN_PROCESS
STATE : 1 STOPPED
(NOT_STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN))
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
H:\>sc \\mwsapdev start SAPRouter
SERVICE_NAME: SAPRouter
TYPE : 10 WIN32_OWN_PROCESS
STATE : 2 START_PENDING
(NOT_STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN))
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x7d0
PID : 25776
FLAGS :
H:\>
}}}
[[WordPress Links]]
[[WordPress SQL Queries]]
''Official Sites''
http://wordpress.org
http://wordpress.org/extend/themes/
http://wordpress.org/extend/plugins
''Themes''
http://mashable.com/2008/09/19/top-wordpress-themes
http://mashable.com/2007/08/03/wordpress-3-column
http://mashable.com/2007/09/02/wordpress-4-column
http://mashable.com/2007/09/04/1-column-wordpress-themes
http://mashable.com/2008/03/25/unsual-wordpress-themes
''Plugins''
http://mashable.com/2007/07/27/50-wordpress-plugins-for-multimedia
http://mashable.com/2007/08/07/30-wordpress-plugins-for-statistics
http://mashable.com/2007/07/24/wordpress-comments
http://mashable.com/2007/08/02/wordpress-readers (30+ WordPress Plugins to Get More Blog Readers)
''Miscellaneous''
http://mashable.com/2007/08/16/wordpress-god300-tools-for-running-your-wordpress-blog
http://mashable.com/2008/09/26/wordpress-weirdest-uses
http://www.catswhocode.com/blog/wordpress-10-life-saving-sql-queries
Change a password:
{{{UPDATE 'wp_users' SET 'user_pass' = MD5('PASSWORD') WHERE 'user_login' ='admin' LIMIT 1;}}}
Transfer posts from one user to another:
{{{UPDATE wp_posts SET post_author=NEW_AUTHOR_ID WHERE post_author=OLD_AUTHOR_ID;}}}
Delete post revisions and associated meta data:
{{{DELETE a,b,c FROM wp_posts a WHERE a.post_type = 'revision' }}}
{{{ LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id)}}}
{{{ LEFT JOIN wp_postmeta c ON (a.ID = c.post_id);}}}
Delete Unapproved Comments (i.e. SPAM):
{{{DELETE from wp_comments WHERE comment_approved = '0';}}}
Find unused tags:
{{{SELECT * From wp_terms wt INNER JOIN wp_term_taxonomy wtt ON wt.term_id=wtt.term_id WHERE wtt.taxonomy='post_tag' AND wtt.count=0;}}
Find and replace data:
{{UPDATE table_name SET field_name = replace( field_name, 'string_to_find', 'string_to_replace' ) ;}}}
Get a list of your commentators emails:
{{{SELECT DISTINCT comment_author_email FROM wp_comments;}}}
Disable all your plugins at once:
{{{UPDATE wp_options SET option_value = '' WHERE option_name = 'active_plugins';}}
Delete all tags:
{{{DELETE a,b,c}}}
{{{FROM}}}
{{{ database.prefix_terms AS a}}}
{{{ LEFT JOIN database.prefix_term_taxonomy AS c ON a.term_id = c.term_id}}}
{{{ LEFT JOIN database.prefix_term_relationships AS b ON b.term_taxonomy_id = {{{c.term_taxonomy_id}}}
{{{WHERE (}}}
{{{ c.taxonomy = 'post_tag' AND}}}
{{{ c.count = 0}}}
{{{ );}}}
//Work like you don't need the money
Love like nobody has ever hurt you
Dance like nobody is watching
Sing like nobody is listening
Live as if this was paradise on earth.//
Unknown.
Cardinality = 3,915,437
"export to /db2/PP1/sapdata24/export09.del of del select * from SAPR3.COSP where GJAHR>'2008'"
SQL3104N The Export utility is beginning to export data to file
"/db2/PP1/sapdata24/export09.del".
SQL3105N The Export utility has finished exporting "643673" rows.
"export to /sapr3ss/PP1/export/export07.del of del select * from SAPR3.COSP where GJAHR='2007'"
SQL3104N The Export utility is beginning to export data to file
"/sapr3ss/PP1/export/export07.del".
SQL3105N The Export utility has finished exporting "213834" rows.
"export to /sapr3ss/PP1/export/export08.del of del select * from SAPR3.COSP where GJAHR='2008'"
SQL3104N The Export utility is beginning to export data to file
"/sapr3ss/PP1/export/export08.del".
SQL3105N The Export utility has finished exporting "422158" rows.
"export to /sapr3ss/PP1/export/export06.del of del select * from SAPR3.COSP where GJAHR='2005' or GJAHR='2006'"
SQL3104N The Export utility is beginning to export data to file
"/sapr3ss/PP1/export/export06.del".
SQL3105N The Export utility has finished exporting "574698" rows.
"export to /sapr3ss/PP1/export/export04.del of del select * from SAPR3.COSP where GJAHR='2004'"
SQL3104N The Export utility is beginning to export data to file
"/sapr3ss/PP1/export/export04.del".
SQL3105N The Export utility has finished exporting "503281" rows.
"export to /sapr3ss/PP1/export/export03.del of del select * from SAPR3.COSP where GJAHR='2003'"
SQL3104N The Export utility is beginning to export data to file
"/sapr3ss/PP1/export/export03.del".
SQL3105N The Export utility has finished exporting "518252" rows.
db2 "export to /sapr3ss/PP1/export/export02.del of del select * from SAPR3.COSP where GJAHR='2002'"
SQL3104N The Export utility is beginning to export data to file
"/sapr3ss/PP1/export/export02.del".
SQL3105N The Export utility has finished exporting "551459" rows.
db2 "export to /sapr3ss/PP1/export/export01.del of del select * from SAPR3.COSP where GJAHR<'2002'"
SQL3104N The Export utility is beginning to export data to file
"/sapr3ss/PP1/export/export01.del".
SQL3105N The Export utility has finished exporting "489235" rows.
- - - - - - - - -
643,673
213,834
422,158
574,698
503,281
518,252
551,459
489,235
A crontab file contains entries for each cron job. Entries are separated by newline characters. Each crontab file entry contains six fields separated by spaces or tabs in the following form:
minute hour day_of_month month weekday command
These fields accept the following values:
minute 0 through 59
hour 0 through 23
day_of_month 1 through 31
month 1 through 12
weekday 0 through 6 for Sunday through Saturday
command a shell command
For example, the following entry:
//0 0 1,15 * 1 command//
will run command on the first and fifteenth days of each month, ''as well as'' every Monday. To specify days by only one field, the other field should contain an * .
''Example:'' //find . -type f -mtime +365 -exec gzip {}\;//
//find /oracle/GW1/saparch -type f -name '*.cds' -atime +7 -exec mv {} /usr/tmp \;//
This will move all plain files that have not been accessed in the last 7 days with the format *.cds in directory /oracle/PRD/saparch to directory /usr/tmp.
//find /oracle/PRD/saparch -type f -name '*.cds' -atime +21 -exec rm {} \;//
//find . -type f -name '*.*' -atime +21 -exec rm {} \;//
This will remove all plain files that have not been accessed in the last 21 days which match the patterns specified (*.cds or *.*), from the specified directory /oracle/PRD/saparch or the current directory.
''Note:'' a more efficient alternative is
//find /oracle/PRD/saparch -type f -name '*.cds' -atime +7 | xargs -t -I {} mv {} /usr/tmp//
//find /oracle/PRD/saparch -type f -name '*.cds' -atime +7 | xargs -t rm//
To search for all files that are greater than 50,000 blocks of 512 bytes long, enter:
//find . -size +50000 -print//
To search for all files that are greater than 1,000,000 bytes long, enter:
//find . -size +1000000c -print//
Alternatives -
//find . -size +20000 -exec ls -la {} \;//
//find . -name '*trc' -mtime +21 -exec ls -la {} \;//
//find . -name '*trc' -mtime +21 | xargs -t rm//
''or''
//find . -name '*trc' -mtime +21 -exec rm {} \;//
To insert file names into the middle of command lines, enter:
//ls | xargs -t -I {} mv {} {}.old//
This command sequence renames all files in the current directory by adding .old to the end of each name.
The -I flag tells the xargs command to insert each line of the ls directory listing where {} (braces) appear.
The -t flag causes the xargs command to display each command before running it,
If the current directory contains the files chap1, chap2, and chap3, this constructs the following commands:
mv chap1 chap1.old
mv chap2 chap2.old
mv chap3 chap3.old
{{{brconnect -u / -c -f stats -force allsel -t SAPR3.EDI40}}}
{{{brconnect -u / -c -f stats -force allsel -t SAPR3.EDIDC}}}
{{{brconnect -u / -c -f stats -force allsel -t SAPR3.EDIDS}}}
Copies files and directory trees.
XCOPY source [destination] [/A | /M] [/D[:date]] [/P] [/S [/E]] [/V] [/W]
[/C] [/I] [/Q] [/F] [/L] [/G] [/H] [/R] [/T] [/U]
[/K] [/N] [/O] [/X] [/Y] [/-Y] [/Z]
[/EXCLUDE:file1[+file2][+file3]...]
source Specifies the file(s) to copy.
destination Specifies the location and/or name of new files.
/A Copies only files with the archive attribute set,
doesn't change the attribute.
/M Copies only files with the archive attribute set,
turns off the archive attribute.
/D:m-d-y Copies files changed on or after the specified date.
If no date is given, copies only those files whose
source time is newer than the destination time.
/EXCLUDE:file1[+file2][+file3]...
Specifies a list of files containing strings. Each string
should be in a separate line in the files. When any of the
strings match any part of the absolute path of the file to be
copied, that file will be excluded from being copied. For
example, specifying a string like \obj\ or .obj will exclude
all files underneath the directory obj or all files with the
.obj extension respectively.
/P Prompts you before creating each destination file.
/S Copies directories and subdirectories except empty ones.
/E Copies directories and subdirectories, including empty ones.
Same as /S /E. May be used to modify /T.
/V Verifies each new file.
/W Prompts you to press a key before copying.
/C Continues copying even if errors occur.
/I If destination does not exist and copying more than one file,
assumes that destination must be a directory.
/Q Does not display file names while copying.
/F Displays full source and destination file names while copying.
/L Displays files that would be copied.
/G Allows the copying of encrypted files to destination that does
not support encryption.
/H Copies hidden and system files also.
/R Overwrites read-only files.
/T Creates directory structure, but does not copy files. Does not
include empty directories or subdirectories. /T /E includes
empty directories and subdirectories.
/U Copies only files that already exist in destination.
/K Copies attributes. Normal Xcopy will reset read-only attributes.
/N Copies using the generated short names.
/O Copies file ownership and ACL information.
/X Copies file audit settings (implies /O).
/Y Suppresses prompting to confirm you want to overwrite an
existing destination file.
/-Y Causes prompting to confirm you want to overwrite an
existing destination file.
/Z Copies networked files in restartable mode.
The switch /Y may be preset in the COPYCMD environment variable.
This may be overridden with /-Y on the command line.