Posts

Showing posts from September, 2011

Help! I changed Open with for exe

Image
Someone right-clicked on an exe file and in the Open With option chose it to open with Internet Explorer. S/he probably left the check mark on "Always use the selected program to open this kind of file". All executables now started showing Internet Explorer's icon and started opening them with IE. If you are in a similar situation, here is what you can do to fix the problem: 1. Open the command prompt (Windows+r and type cmd) 2. Go to windows folder cd\windows 3. Open the Registry Editor using the following command regedit 4. Navigate to HKEY_CLASSES_ROOT\.exe and in right-hand-side pane, change value of Default key to exefile 5. Next, navigate to HKEY_CLASSES_ROOT\exefile\shell\open\command and in right-hand-side pane change value of Default key to "%1" %* 6. Restart your computer.

Sandboxie: Blocking Malware with Virtualization

Sandboxie runs other applications by injecting the application code into Windows kernel by API hooking. by doing this it redirects all the file system calls by the application to a virtual space. This essentially works as if a virtual hard disk is used by the application. The advantage of such mechanism is that any malware downloaded by the application (a web browser in most cases) is limited to the virtual space. For this reason sandboxie is regarded as great security tool. Another advantage of using sandboxie is that if you install a trial software on sandboxie, you will be able to use it beyond the trial period. Sandboxie doesn't work with 64 bit versions of windows 7. You may try DeepFreeze or Microsoft's SteadyState.  Returnil is a more powerful (paid) application. There is a free version of Returnil available for home use.

Unlocking SAP User from Database

This post is meant for people who are new to SAP administration. It will teach you how to unlock a user by altering the table field where the user's lock status is stored. Since the lock status of a user is persisted at the database level. One can unlock (or lock) a user using SQL commands or using transaction SE16. If you intend to use the SQL methods, please ensure that it is done on DEV/QA systems and you are not violating your company's security policies. The lock status is stored in the field uflag in the table  usr02 . If uflag is 128, the user is locked. By changing it to 0, you will be able to unlock it. Here is an example to unlock the user DDIC in client 000: UPDATE sapr3.usr02 SET uflag = 0 WHERE bname = 'DDIC' AND mandt = '000'; commit ;  This technique is useful when you need a mass lock/unlock of users. 

How to Kill an SAP Job

This post is targeted at someone who is new to SAP administration. It will teach you how to terminate an active SAP job. You may have noticed that cancelling an active job using the menu option in SM37 doesn't work most of the times (It never worked for me). Follow these steps to terminate a job. Get the Workprocess which is running the Job Search for the job using SM37. The status of the job should be Active. Double-click on the job name and go to Job Details [F7] Note down "Executing server", "WP number/PID" values Restart the Workprocess Call SM66 Match  Server, WP Number and PID with that of the job. Click on the process Navigate to Goto -> Local Workprocess Select the workprocess Click on Process -> Restart after error -> No Click on Process -> Cancel without core Wait till Status changes to Complete Click on Process -> Restart after error -> Yes Status should change to running

CRM Software Applications

Image
CRM (Customer Relationship Management) software is an application to support the customer-facing employees from marketing, sales, and service departments help increase customer satisfaction and loyalty. The CRM software provides web and mobile interfaces to help the business representatives to provide real time information to the customers. In the background, the CRM system is strongly coupled with other datasources such as ERP systems, BI and SCM systems to provide a unified view. SAP's CRM solutions not only aim at reducing cost and providing data to help make quick and good decisions, it also helps in maintaining a long-term competitive edge.

ICF Recorder for Error Analysis

ICF recorder provides debugging facilities to analyse HTTP problems when using Internet Communication Framework (ICF). It also allows reproduction of the error whenever you need from the details logged into the database. The recorder logs the exchange of HTTP(S) documents. To activate ICF Recorder Call transaction SICF Go to "Edit" -> "Recorder (If ICF acts as server to http requests) and/or Go to "Client" -> "Recorder" (If ICF acts as client making http requests) Choose "Activate Recording" Enter the URL prefix Ex: "/sap/bc/bsp/sap" Specify the recording time and lifetime (to indicate the amount of time this data remains in the database for troubleshooting) You can use "User-Dependent" option to set the recording for a particular user. You can use "Recording Level" to specify "Request" or "Request+Response". To deactivate ICF Recorder Call transaction SICF Go to &qu

SAPClassNotFoundException when using SQL Driver

The JDBC channel connecting to SQL server fails with one of these errors: Message processing failed. Cause: com.sap.aii.af.ra.ms.api.RecoverableException: Error when attempting to get processing resources: com.sap.aii.af.service.util.concurrent.ResourcePoolException: Unable to create new pooled resource: DriverManagerException: Cannot establish connection to URL 'jdbc:sqlserver://**************;databaseName=***************;user=sa;password=****************;':  SAPClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver Message processing failed. Cause: com.sap.engine.interfaces.messaging.api.exception.MessagingException: Error when attempting to get processing resources: com.sap.aii.af.lib.util.concurrent.ResourcePoolException: Unable to create new pooled resource: DriverManagerException: Can not establish connection:: SAPClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver The class names for drivers are different for SQL Server 2000 and SQ

Hitler implements SAP

This is a parody of the famous scene from Der Untergang (2004). The dialog is unaltered, it is just the subtitles that are.  

How to Collect Performance Trace for SAP TREX

The TREX application has performance issues, you can record the performance from TREX admin to troubleshoot the performace problems. 1. Start the TREX admin tool (standalone) Go to your TREX dierctory and start or TREXAdmin.sh or'TREX admin' 2. Go to "Landscape: Perf.Trace" 3. Choose Start 4. A new window will pop up where you can specify your options - The user executing the job (e.g. query) - The time when performance trace recording is to stop ("0" is default, which means endless runtime) - The timeline precision (1 second should be chosen) - Flag for "Plan Execution Details" (anytime you want to analyze query performance this flag is recommended). 5. Choose OK 6. Recreate the problem 7. Choose Stop 8. Choose Save to save the results

Virtuawin - Multiple Desktops on Windows

Image
Virtuawin is a free software that let's you set up multiple virtual desktops--a common feature on Linux-based OS. Install and switch around the multiple desktops with Ctrl+Alt+[Arrow Key]. You need to disable keyboard shortcuts on your video card so that these hot-keys are exclusively set for Virtuawin. Read their  FAQ for more details. Virtuawin uses Very small footprint and barely any resources. You can download it for free here .

Part1: Introduction to AWK

AWK is a tool to search for a given pattern and perform specific actions on it. Syntax: awk <options> ' <address> { <actions> }' <input|file(s)> Examples: awk '{print $0}' hi this is a test hi this is a test ^d awk '{print $1, $4}' hi this is a test hi a ^d awk '{print $1, $4}' hi how hi are are you you ^d In the above examples, we did not mention the input explicitly. The input provided on the terminal is used for performing the print action. {print $0} prints the entire line and {print $1, $4} prints the 1st and 4th word in the input. Let's see how input can be passed though a file . echo hi how are you > awk.input awk '{ print $0 } ' awk.input hi how are you awk '{ print "sapnwnewbie: ", $2, $3, $4 } ' awk.input sapnwnewbie:  how are you In all the above examples, we used the default seperator--space. Let's look at an example where we use colon (:) as se

Cloud Backup and Recovery

Cloud storage services are increasingly gaining popularity as they help reduce the costs and the headache of having to maintain hardware. The services are, however, profitable for small and mid-size data (< 100 GB) backups as the service providers charge by the amount of data and bandwidth. If you are licky, you may find a vendor who offers a flat rate. For large companies, the traditional backup mechanism (example TSM) may be the prefered choice, not only from a cost perspective, but also in terms of the time taken to recover the data should there be a need to do so. The throughput would be better when you ship the tapes from off-site instead of copying them over the internet.

301 Redirect Using SAP Web Dispatcher

301 redirects are typically used to redirect accesses that include www to non-www or vice-versa. Example, when you call http://blogger.com, the call is redirected to www.blogger.com. An end-user may prefer to call a URL in any manner. You must ensure that all these calls are redirected to relevant URLs with content. SAP web dispatcher can be configured to send a redirect (301) to the client. To enable redirection add icm/HTTP/redirect_<xx> to the web dispatcher's profile file. The parameter uses the following syntax: icm/HTTP/redirect_<xx> = PREFIX=<URL prefix>[, FROM=<pattern for URL>, FROMPROT=<incoming protocol>, FOR=<pattern for host name:port>,TO=<new URL prefix>, PROT=<protocol>, HOST=<host>, PORT=<port number/name>] Let's say you want to redirect all the HTTP requests on mysource.com on 80 port to mytarget.com on HTTPS 443 port icm/HTTP/redirect_0 = PREFIX=/, FROM=*, FROMPROT=http, FOR=mysource.com:80,