Archive

Archive for the ‘Uncategorized’ Category

Compressing Subpartition Segments

February 11th, 2010 sam No comments

As far as I have recently read, Oracle doesn’t allow you to set some physical features of sub-partitions such as compression clause. I have been mistaken that composite partitioned tables can not be compressed at all. However in data warehouse environments, a general requirement is being able to compress segments of historic partitions of RANGE + HASH partitioned tables. I have tried a few scenarios and finally found a solution. Yes, Oracle allows it.
Naïve Approaches

One approach can be to compress all subsegments by trying recreating partition with COMPRESS clause in parallel. However this approach will not work:

ALTER TABLE X MOVE PARTITION 2007JAN NOLOGGING COMPRESS PARALLEL 16;

You will immediately face with ORA-14257: cannot move partition other than a Range or Hash partition exception. This means Oracle can not recreate all subpartition segments at a time.

Another approach is to try recreating compressed subpartition segments by using COMPRESS option one by one:

ALTER TABLE X MOVE SUBPARTITION 2007JAN_01 NOLOGGING COMPRESS PARALLEL 16;

This time you will come up with ORA-14160: this physical attribute may not be specified for a table subpartition. That’s because Oracle doesn’t allow you to set some physical attributes of subpartitions. NOLOGGING and COMPRESS are two of those attributes. Those attributes inherit from partition of subpartition.
Solution
Change the physical attribute at partition level

The first thing you have to do is to change physical attribute (compression attribute) of the partition which owns the subpartition by using MODIFY clause:

ALTER TABLE X MODIFY PARTITION 2007JAN COMPRESS;

 

This statement will modify partition parameter in such a way that all new data blocks created by direct path inserts will be compressed. Remember that the table has composite partitioning. This means subpartition segment blocks are the compressed blocks.
Recreate subpartition segments

“ALTER TABLE…” statement that we have used above affects only the blocks that are created after the statement has been issued. In order to compress existing subpartition blocks, we need to recreate them:

ALTER TABLE X MOVE SUBPARTITION 2007JAN_01 PARALLEL 16;

ALTER TABLE X MOVE SUBPARTITION 2007JAN_02 PARALLEL 16;

ALTER TABLE X MOVE SUBPARTITION 2007JAN_03 PARALLEL 16;

ALTER TABLE X MOVE SUBPARTITION 2007JAN_04 PARALLEL 16;

All these four subpartition segments will be recreated in compressed form within the tablespace(s) in which they have been currently residing. That is because they inherit the compression attribute from their parents (partition of subpartitions).
Check *_SEGMENTS view to see the effect

As you execute the following command you will see that your segments have already been compressed:

SELECT partition_name, bytes / 1024 / 1024 / 1024 gigabytes

FROM user_segments

WHERE segment_name = ‘X’;

In order to test this scenario I have used one of the summary tables of our data warehouse. Table is RANGE+HASH partitioned and one of these partitions is ~85 GB before compression and ~22 GB after all sixteen subpartitions have been compressed.

Conclusion

Remember that Oracle unfolds, considering that the term is correct, the compressed blocks if you update the data in compressed ones, which decreases the benefit you obtain by using compression. So Oracle advises using compression option with read only tablespaces to guarantee the gain.

Categories: Uncategorized Tags:

How to find Components Versions for 11i

November 17th, 2009 sam No comments

Q: How to find Oracle Applications Web Server Version ?
Q: How to find Version of Apache used with oracle apps 11i ? Log to Application tier as Operating System Usually called as APPLMGR ; go to location $IAS_ORACLE_HOME/Apache/Apache/bin and run command
./httpd -version
You will see output like

Server version: Oracle HTTP Server Powered by Apache/1.3.19 (Unix)
Server built: Dec 6 2005 14:59:13 (iAS 1.0.2.2.2 rollup 5)
Which means you are on iAS Version 1.0.2.2.2 with patchset rollup 5 with Apache Version 1.3.19

Server version: Oracle-Application-Server-10g/10.1.2.0.2 Oracle-HTTP-Server

Above is output If you have installed 10g Application Server with 11i

Q: How to find Jinitiator Version ?

Check for file like appsweb_SID_HOSTNAME.cfg under $OA_HTML/bin defined by environment variable FORMS60_WEB_CONFIG_FILE & search for entry like jinit_ver_name , you will see entry like
jinit_ver_name=Version=1,3,1,23
which means Jinitiator version is 1.3.1.23 ; if your version is 1.3.1.18 you will see entry like 1,3,1,18

Q: How to find Forms Version in 11i ?

Login to forms from frontend , on top menu bar of forms click on “Help” & Select “About Oracle Applications” go to “Forms Server ” section. You should see entry like below depending on your forms version
Oracle Forms Version : 6.0.8.26.0
Which mean you are on forms version 6.0.8.26 . If you want to know whats your forms patchset level then subtract 9 from fourth digit which means for above case form patchset 17 is applied.

Q: How to find Forms Version in Apps from command Line ?

Enter “f60gen” on Forms Server and check for first line in output like
Forms 6.0 (Form Compiler) Version 6.0.8.26.0 (Production)
This confirms that you are on forms server version 6.0.8.26.0 and patch set 17. ( Patch Set = Fourth Digit – 9)

Q: How to find Version of any file in Oracle Apps 11i ? or
Q: How to find any Reports Version 11i ? or

In Oracle Applications under ad utilities there is utility called as adident Used for Identification purpose or to find out file version use
adident Header <filename>
for ex. inorder to to find file version of one AR form i.e. ARXGLCOR.fmx
adident Header ARXGLCOR.fmx
You should see output like
$Header APPSTAND.fmb 115.33 2002/04/04 11:13:40 pkm ship
$ $Header ARXGLCOR.fmb 115.15 2005/01/31 13:48 mraymond ship
Which means above form executable consist of two forms whose version is 115.33 & 115.15 resp. Similarly you can use adident to find version of any report in 11i.

Q: How to find Operation System Version (Unix/Linux) ? For solaris use command
uname -a
You will see output like
For Solaris SunOS servername 5.8 Generic_117350-23 sun4u sparc SUNW,Sun-Fire-V240
For RedHat Linux use command
cat /etc/*release*
You will see output like
Red Hat Enterprise Linux AS release 3 (Taroon Update 6)

Which means you are on Solaris 5.8 or Linux AS 3 resp.

Q: How to find if your Operating System is 32 bit or 64 Bit ?

For solaris use command
isainfo -v
If you see out put like
32-bit sparc applications
That means your O.S. is only 32 bit but if you see output like

64-bit sparcv9 applications
32-bit sparc applications
above means your o.s. is 64 bit & can support both 32 & 64 bit applications

Q: How to find Operating System version ? For solaris use command
uname -a
You will see output like
For Solaris SunOS servername 5.8 Generic_117350-23 sun4u sparc SUNW,Sun-Fire-V240
For RedHat Linux use command
cat /etc/*release*
You will see output like
Red Hat Enterprise Linux AS release 3 (Taroon Update 6)

Which means you are on Solaris 5.8 or Linux AS 3 resp.

Q: How to find if your Operating System is 32 bit or 64 Bit ?

For solaris use command
isainfo -v
If you see out put like
32-bit sparc applications
That means your O.S. is only 32 bit but if you see output like

64-bit sparcv9 applications
32-bit sparc applications
above means your o.s. is 64 bit & can support both 32 & 64 bit applications

Q: Can I run 64 bit application on 32 bit Operating system ?
You can run 32 bit application (like oracle application server, web server, all oracle application server are 32 bit ) on both 32 /64 bit operating system but a 64 bit application like 64 bit database can run only on 64 bit operating system.

Q How to find if your database is 32 bit or 64 bit(Useful in applying Patches) ?

execute “file $ORACLE_HOME/bin/oracle” , you should see output like
/u01/db/bin/oracle: ELF 64-bit MSB executable SPARCV9 Version 1
which means you are on 64 bit oracle
If your oracle is 32 bit you should see output like
oracle: ELF 32-bit MSB executable SPARC Version 1
Now you know what should be bit of patch to download

 

Q: How to find OUI version ?

OUI stands for Oracle Universal Installer. In order to find Installer version you have to execute ./runInstaller -help ( From OUI location)
You will get output like
Oracle Universal Installer, Version 10.1.0.4.0 Production Copyright (C) 1999, 2005, Oracle. All rights reserved.
That means OUI version in above case is 10.1.0.4
OUI location is $ORACLE_HOME/oui/bin

Q: How to find Database version ?

SQL> select * from v$version;
The command returns the release information, such as the following:
Oracle9i Enterprise Edition Release 9.2.0.7.0 – Production
PL/SQL Release 9.2.0.7.0 – Production
CORE 9.2.0.7.0 Production
TNS for 32-bit Windows: Version 9.2.0.7.0 – Production
NLSRTL Version 9.2.0.7.0 – Production

Q: How to find Oracle Workflow Cartridge Release Version ?
Log in to the database as the owf_mgr user and issue
select wf_core.translate(‘WF_VERSION’) from dual;

Q: How to find opatch Version ?
opatch is utility to apply database patch , In order to find opatch version execute
“$ORACLE_HOME/OPatch/opatch version”
You should see output like OPatch Version: 1.0.0.0.52 which means your opatch version is 1.0.0.0.52

 

Q. How to find Version of Apps 11i ?

Run following SQL from apps user ;
SQL> select RELEASE_NAME from fnd_product_groups;
You should see output like
RELEASE_NAME
———————–
11.5.10.2
Which means you are on Apps Version 11.5.10.2
Q: Can I run 64 bit application on 32 bit Operating system ? You can run 32 bit application (like oracle application server, web server, all oracle application server are 32 bit ) on both 32 /64 bit operating system but a 64 bit application like 64 bit database can run only on 64 bit operating system.

Q How to find if your database is 32 bit or 64 bit(Useful in applying Patches) ?

execute “file $ORACLE_HOME/bin/oracle” , you should see output like
/u01/db/bin/oracle: ELF 64-bit MSB executable SPARCV9 Version 1
which means you are on 64 bit oracle
If your oracle is 32 bit you should see output like
oracle: ELF 32-bit MSB executable SPARC Version 1
Now you know what should be bit of patch to download

Q How to Discoverer Version installed with Apps ?

Discoverer with Apps installed in ORACLE_HOME same as 806 is usually 3i or 4i. To find Version login to Application Tier & go to $ORACLE_HOME/discwb4/bin and execute
strings dis4ws | grep -i ‘discoverer version’
You should see output like
Discoverer Version:Session 4.1.47.09.00
Which means you are on discoverer 4i version 4.1.47.09

Categories: Uncategorized Tags:

11i Forms compilation errors

October 22nd, 2009 sam No comments

Forms compilation errors parameter

Recently all custom forms compilation failed with errors like these:

FRM-18108: Failed to load the following objects.

Source Module:APPSTAND
Source Object: STANDARD_PC_AND_VA
Source Module:APPSTAND
Source Object: STANDARD_TOOLBAR
Source Module:APPSTAND
Source Object: STANDARD_CALENDAR
Compiling package specification APP_CUSTOM…
No compilation errors.

or

Compiling KEY-NXTBLK trigger on QUERY_FIND data block…
Compilation error on KEY-NXTBLK trigger on QUERY_FIND data block:
PL/SQL ERROR 49 at line 1, column 1
bad bind variable ‘parameter.G_query_find’
PL/SQL ERROR 49 at line 1, column 1
bad bind variable ‘parameter.G_query_find’
PL/SQL ERROR 49 at line 3, column 1
bad bind variable ‘parameter.G_query_find’

It turned out that FORMS60_PATH was not set correctly. Whenever forms are compiled FORMS60_PATH is set to:

FORMS60_PATH=$FORMS60_PATH:$AU_TOP/forms/US:$AU_TOP/resource

In context file it was set as:

$AU_TOP/resource:$AU_TOP/resource/stub

After correcting this and compiling manually it worked. To make this permanent change the s_f60path to include $AU_TOP/forms/US:$AU_TOP/resour

Categories: Uncategorized Tags:

How to disable Administrative share c$ or d$

October 14th, 2009 sam No comments

The system automatically creates hidden “administrative shares” for its logical drives C:, D:, and so forth which it names C$, D$ and so forth. It also creates the admin$ hidden share for to the \winnt or windows folder. These shares are designed for remote access support by domain administrators. By default, if you delete these admin shares, they will be recreated when you reboot. To disable permanently so they will not be recreated on the next reboot, use the following procedure.

Note:- Before doing this procedure please take a complete registry backup

For Workstations (Vista/XP/2000)

Click Start—>Run type regedit click ok

For vista users Enter your UAC credentials to continue.

Open the HKEY_LOCAL_MACHINE branch.

Open the SYSTEM branch.

Open the CurrentControlSet branch.

Open the Services branch.

Open the LanmanServer branch.

Select the Parameters branch.

Select Edit, New, DWORD (32-bit) Value. Vista adds a new value to the Parameters key (If you have the key just check for correct value).

Type AutoShareWks and press Enter. (You can leave this setting with its default value of 0.)

Restart Windows to put the new setting into effect.

Categories: Uncategorized Tags:

Remove Portal Schema from 11i

September 23rd, 2009 sam No comments

You may remove Oracle Portal 3.0.9 only if you are not using Oracle Portal with
E-Business Suite 11i or if you have migrated existing Oracle Portal 3.0.9 functionality
to Oracle Portal 10g .
It is recommended that the removal of Oracle Portal 3.0.9 be done only after the
migration to Oracle Portal 10g. To remove Oracle Portal 3.0.9 objects from your
E-Business Suite 11i database, follow the steps below.
1. Remove Oracle Portal 3.0.9 dependencies from schema CTXSYS
Download Portal patch 3497474 and follow the instructions in the Readme.
This patch removes Portal 3.0.9 dependencies from schema CTXSYS.

2. Remove Oracle Portal 3.0.9 dependencies from the Oracle Applications schema
Download Oracle Applications patch 43695277 and follow the instructions in the Readme.
This patch removes Portal 3.0.9 dependencies from the Oracle Applications schema.

3. Deinstall Oracle Portal 3.0.9 schemas from your E-Business Suite 11i database
Deinstall the Oracle Portal 3.0.9 and Oracle Login Server schemas in the database using the
Oracle Portal Configuration Assistant.
3.1. Run the shell script $IAS_ORACLE_HOME/assistants/opca/launch.sh to
start the Oracle Portal Configuration Assistant.
Window Step 1 of 6: Installation Options appears.
Click the option to Deinstall Oracle Portal and the Login Server.
3.2. Follow the instructions on the remaining screens to complete the
deinstallation.
3.3. Verify Oracle Portal and Oracle Login Server schemas have been removed.
Start SQL*Plus and verify that no rows are returned from the following query:
% sqlplus
SQL> connect system/<system_password> as sysdba
SQL> select username from all_users
SQL> where username like ‘PORTAL%’
SQL> /
You have successfully removed Oracle Portal 3.0.9 from your E-Business Suite 11i database.

Categories: Uncategorized Tags:

Perosnalize Login in EBS

September 22nd, 2009 sam No comments

1. Attributes of the login page
It is possible to control the display of some attributes of the login page, for instance user name or password hints, language switchers, forgot password link, corporate policy message, etc.
For this, you need to set the profile option ‘Local Login Mask’ (FND_SSO_LOCAL_LOGIN_MASK) with a number being the sum of the mask values described in the table below:

Description Mask value
Hint for Username (USERNAME_HINT) 01
Hint for Password (PASSWORD_HINT) 02
Cancel button (CANCEL_BUTTON) 04
Forgot Password link (FORGOT_PASSWORD_URL) 08
Registration link (REGISTER_URL) 16
Language Images (LANGUAGE_IMAGES) 32
Corporate Policy Message (SARBANES_OXLEY_TEXT) 64
* For instance the value 32 (default) displays only the language icons and value 127 will show all the attributes on the page.

* The change takes effect immediately after re-login to E-Business Suite.

2. Message texts
It is possible to modify or add text on the login page by changing the value of some messages.
The following table shows the related messages and their default value:
Description Default value
FND_SSO_WELCOME Login
FND_SSO_EBIZ_SUITE E-Business Suite
FND_SSO_COPYRIGHT_TEXT Copyright (c) 2007, Oracle. All rights reserved.
FND_SSO_SARBANES_OXLEY_TEXT Corporate Policy Message

To change the value of a message:
1. Go to “Application Developer” responsibility
2. Select “Messages” from the menu
3. Query  the message name and then enter your message text in the
“Current Message Text” field
4. Save changes and exit
5. Clear cache and bounce Apache to see the change

* Note that some messages can be used elsewhere that in the login page and can be updated by a patch
* If you want to change also the default branding ‘E-Business Suite’ on other pages, to match the text on the login page (defined by FND_SSO_EBIZ_SUITE message), then follow the steps below:
a. Login with System Administrator responsibility
b. Navigate: Application —> Function
c. Query the function ‘FWK_HOMEPAGE_BRAND’
d. Replace the value of the ‘User Function Name’ with the desired text
c. Logout and login to see the change (you shouldn’t need to clear caches and bounce apache)

* The ‘FND_SSO_SARBANES_OXLEY_TEXT’ message is only displayed when the mask
value 64 is added to the profile option ‘Local Login Mask’.
3. Corporate branding logo
The Oracle logo is displayed on various E-Business Suite pages and can be changed by setting the ‘Corporate Branding Image for Oracle Applications’  (FND_CORPORATE_BRANDING_IMAGE) profile option to the full path name of an image file (.gif) that contains your corporate image.
However it is not possible to use this method for AppsLocalLogin.jsp since it is hard coded with the Oracle logo image file ‘FNDSSCORP.gif’.
The non supported solution consists in:
1. Go to the $OA_HTML directory
2. Backup the AppsLocalLogin.jsp file
3. Copy your own corporate branding image under $OA_MEDIA directory
4. Edit the AppsLocalLogin.jsp file :

from :
ImageBean imgBean1 = new ImageBean(“/OA_MEDIA/FNDSSCORP.gif”, FND_ORACLE_LOGO);
to :
ImageBean imgBean1 = new ImageBean(“/OA_MEDIA/<your image file name>”, FND_ORACLE_LOGO);
5. Clear caches and bounce Apache to see the change

4. Other modifications

AppsLocalLogin.jsp being a Java Server Page you can change the HTML or Java code (for instance with JDeveloper), create you own messages in the Messages Dictionary thru AOL responsibility, etc., if you want to add other customizations. This is considered a customization and thus not supported by Oracle. If you apply patches replacing AppsLocalLogin.jsp the file will be overwritten.

Categories: Uncategorized Tags:

concurrent manager has timed out waiting for the Output Post-processor to finish this request

June 18th, 2009 sam No comments

The Following error had occured while running the xml report “concurrent manager has timed out waiting for the Output Post-processor to finish this request”

Cause:

Once the Output Post Processor picks up the request, the XML Publisher engine is invoked to generate the final output file. The time that this takes will depends on various elements such as:

  • size of the XML Data File
  • complexity of the template
  • performance of the server
  • ….

By default a timeout will occur if it takes longer then 300 seconds (5 min.) for the XML Publisher engine to generate the output file. The Concurrent Request will complete with status Warning and the Request log file will contain Error Message

Solution:


Increase the value (in seconds) for the profile option ‘Concurrent:OPP Process Timeout’.

Categories: Uncategorized Tags:

SQL PLUS Command Line History

June 10th, 2009 sam No comments

The rlwrap (readline wrapper) utility provides a command history and editing of keyboard input

for any other command. This is a really handy addition to SQL*Plus and RMAN .


Download the latest rlwrap software from the following URL.
http://utopia.knoware.nl/~hlub/uck/rlwrap/

Unzip and install the software using the following commands.

gunzip rlwrap*.gz
tar -xvf rlwrap*.tar
cd rlwrap*
./configure
make
make check
make install


Run the following commands, or better still append then to the “.bash_profile” of the

oracle software owner.

alias sqlplus=’rlwrap ${ORACLE_HOME}/bin/sqlplus’
alias rman=’rlwrap ${ORACLE_HOME}/bin/rman’
alias expdp=’rlwrap ${ORACLE_HOME}/bin/expdp’

You can now start SQL*Plus or RMAN using “sqlplus” and “rman” respectively, and you will have

a basic command history and the current line will be editable using the arrow and delete keys.

Categories: Uncategorized Tags:

How to Learn a Little Every Day

May 17th, 2009 sam No comments

Something can be said for knowing a little bit about a lot of things.
Being an everyman or everywoman can propel you to a more efficient,
productive and fulfilled personal and professional life. Whether
it’s keeping up on current events, a new hobby or interest or
simply any new idea, taking a small amount of time to learn something
every day is a great way to add to your personal knowledgebase.

Incorporating
bits of learning into your every day experience puts you on a path to
lifelong learning. Lifelong learning keeps you engaged in your
environment, builds your knowledgebase, ensures that you use your mind,
provides a sense of accomplishment and simply makes you feel good. The
knowledge you gain, tools you get and experiences you have with
learning a little bit everyday all work together to achieve real
personal advancement.

Here are a few thoughts on how to incorporate learning a new thing each day into your routine.

Make it part of your routine and give it 20 minutes
Are
you a “getting things done” kind of person? Devote a small
amount of time each day, 20 minutes, to reading some new article or
book chapter or watching a video. On average we are all doing way too
much in our daily experience. However, a great way to feel good about
your day is to start off with an accomplishment by learning something
new, exercising or completing a work task. You might try all three
before you start your “real” day, but let’s stick to
the learning a little bit a day theme.

If you can’t start
your day with a little time for learning something new, try doing it at
lunch time or at the end of the day. Take an article to lunch or add a
video to watch to your iPod. After you have shut down your computer for
the day pull out your “learning” file and read a new
article.

Think of learning a little bit in your daily routine as
simple compound interest on your personal knowledgebase. If you were to
put away money every day in an account that earned simple interest the
balance on the account would accumulate exponentially by the daily
addition of principal. The same concept works for your knowledgebase,
add to it daily and your personal abilities will benefit exponentially.

Think About What Interests You and Surprise Yourself
What
ideas, information or things interest you? Answer that question for a
moment. Once you have your answer – find resources (hopefully free, see
below) on those subjects. Organize your interests whether on paper or
electronically in a way that can deliver bits of new information to you
on a regular basis. For example, keep a folder of articles either
physically or electronically. Pick something out of that folder and dig
into it at least once a day.

By the way, web videos of skate
boarders smashing through plate glass windows for the sheer fun of it,
doesn’t necessarily add to your lifelong learning experience -
unless you add it to the what not to do in life column. So, make sure
you choose some piece of information that fits within your personal
goals or might simply add value to your knowledgebase.

Once you
have your interests settled – surprise yourself. At least every few
days choose something to learn that may not be on the top of your list
as an interest or might not even be on your list at all. These things
tend to be really useful later – if not directly then indirectly. For
example, I would venture that most folks reading this article are not
heavily into Japanese Origami. However, twenty minutes of learning how
to fold a paper swan might come in handy years later as a way to change
what’s on your mind and bring some focus back into a really
stressful work day.

Use free resources
Organized
education can be expensive even though a necessity. However, learning a
little bit everyday can be virtually free if you take the time to find valuable resources. Use the web but also understand its limitations and use your public library.

When
using the web, recognize that there are incredible bits and pieces of
information to learn from all over the web from established media
outlets, universities, governments, and other sources. Once you found
some of these resources that interest you, see if they serve up their
information through Really Simple Syndication – RSS.

RSS
feeds can be a great way to find little bits of new information.
Practically, all e-mail programs support RSS and there are many
web-based and desktop programs that also support it. An RSS reader can
help you organize your “learning folder”, in fact it could
be that folder.

Public libraries are an incredible source of
free learning. Find your local library, get your card and take the time
to find books and other information that fit your interests.

Overall, it doesn’t take long to find a small bit of useful and interesting information that you can retain.

Take notes, spend some time reviewing

Learning
something new also requires you to retain all or some of what
you’ve learned. You need to make the most of those 20 minutes of
everyday. So, take some notes – in a journal, on the article or on a
sticky note.

One of the most effective ways of making sure you
retain something is by getting that piece of learning past your short
term memory. A good way to do just that is by taking some action beyond
reading or watching. Note taking can accomplish that by requiring your
brain to process the information in another way. Gather those notes
because you are going to use them later.

Once in a while, at the
end of a week or month, use your 20 minutes to look back at your notes.
Looking back at your notes will ensure that your knowledgebase was
added to and that you have gotten past short term retention.

Try
these few simple tips for learning a little bit every day and enjoy the
added value you have created in your personal knowledgebase.

Categories: General, Uncategorized Tags:

VERY USEFUL) Beneficial things in daily life.

May 17th, 2009 sam No comments

Ants Problem:

Keep the skin of cucumbers near the place or ant hole.

 

www.FunAndFunOnly.net

 

 

To get pure and clean ice:

Boil water first before freezing.

 

 

 www.FunAndFunOnly.net

 

 

To make the mirror shine:

Clean with spirit

 

www.FunAndFunOnly.net

 

 

To remove chewing gum from clothes:

Keep the cloth in the freezer for an hour.

 

 www.FunAndFunOnly.net

 

To whiten white clothes

Soak white clothes in hot water with a slice of lemon for 10 minutes 10.

 

www.FunAndFunOnly.net

 

To give a shine to hair:

Add one teaspoon of vinegar to hair, then wash hair.

 

 

www.FunAndFunOnly.net

 

 

 

To get maximum juice out of lemons:

Soak lemons in hot water for one hour, and then juice them.

 

 

 

www.FunAndFunOnly.net

 

 

To avoid smell of cabbage while cooking:

Keep a piece of bread on the cabbage in the vessel while cooking.

 

 

www.FunAndFunOnly.net

 

 

 

To rid the smell of fish from your hands:

Wash your hands with a little apple vinegar.

 

 

www.FunAndFunOnly.net

 

 

 

To avoid tears while cutting onions:

Chew gum.

 

www.FunAndFunOnly.net

 

 

 

 

To boil potatoes quickly:

Skin one potato from one side only before boiling.

 

 

www.FunAndFunOnly.net

 

 

 

To boil eggs quickly:

Add salt to the water and boil.

 

 

www.FunAndFunOnly.net

 

To remove ink from clothes:

Put toothpaste on the ink spots generously and let it dry completely, then wash.

www.FunAndFunOnly.net

 

 

 

To skin sweet potatoes quickly:

Soak in cold water immediately after boiling.

 

 

www.FunAndFunOnly.net

 

 

 

 

To get rid of mice or rats:

Sprinkle black pepper in places where you find mice or rats. They will run away.

 

 

www.FunAndFunOnly.net

Categories: General, Uncategorized Tags: