Monday, June 30, 2014

E-Filing Your tax Returns in India [ 2014 ]

E-Filing Your tax Returns [ for Employed Individuals ]

* Only If if you have Login Credentials [ or a you are a new user ]
* If you had a login ID, but now forgot your password, then follow other links to retrieve.

https://incometaxindiaefiling.gov.in/
- Go to Downloads in the top Floating bar [ Home, I Am,  Services,  Downloads,  News & Updates ]
- Download ITR1_2014.zip  -> Extract -> 2014_ITR1_PR1.xls  [ There is a Java version, not Explained  here ]
- Open Excel, Enable macros (Tools->macros->Security low), save it, open again

- Tab1 -Income Details  [ Green Boxes need to be filled, before Auto-Fill ]
- Fill Personal Details , PAN , Employer category "OTH" for most, unless you are Gov Employed.
- Retrurn File Under : Set as 11 [ on or before date ], and Return Type as Original
- Income under the head "Salaries" of the employee - as in Form 16, to go in Row 41 in ITR 1 (2014) [ Income from Salary/Pension ]
- Interest to HomeLoan which is Under Section 24 to go as NEGATIVE amount in row 42 [ Income against House Property ]
- NOTE: Section 24 deductions are not mentioned explicitley in ITR1 or ITR2 until 2014, If you have two HOME- You need ITR2
- Put Your Deductions under 80c and any other you already declared with your employer before Feb, and reflecting in Form 16 of the Employer.
- 80c and 80d should be mandatory deductions [ PF and Education cess respectively ] deducted by employer by default.
- Home Loan Prinipal paid back will be in 80c [ within the 1lac limit as of Jun2014] , while Interest on Home is under section 24 [ see above ]
- Press validate button on the macro Enabled Excel sheet, proceed if "OK"
- Press Calculate and see if Interest "Payable" now is same as Interest Payable in Form 16 [ Not same as Interest Paid ]
- If it does not match see the tally again, specially the income row.
- if it matches move to tab2

- Tab2 - TDS
- Fill Employer Details , Declaration , Place and date [ marked Green boxes ]
- TAN Number will be there in the Employer TDS, ( not allowed more than 3 employer in 1 year ]

- Tab 3- taxes Paid and Verification
- Fill Declaration , Place and date [ marked Green boxes ]
- Till 2013 , refund was either from cheque or online direct Debit. From 2014 Direct Debit is the Only option
- If you have refund > 0 then Bank details ( A/C No / IFSCODE / MICR ) are mandatory. you can see in your latest Statement of yours.
- Its advisable to anyways fill bank details, as it becomes easier to file tax next year [ mostly copy paste needed then ]
- Put the date as the date when you are going to Upload the xml [ you may need to revise next day if you wish ]
- Press validate button on the macro Enabled Excel sheet, proceed if "OK"
- Press Calculate and see if you get any returns and same matches your Form16

- Tab 4
- If you have Donations made liable o Tax reliefe [ Example "Prime Minister's National Relief Fund" etc ] then go to tab 4
- This will not be reflected in your Employer Form 16.
- Details of Transaction TAN No etc will be sent by the Donee

- Go back to tab1. Press "Generate". an xml will be Generated.
- Log in https://incometaxindiaefiling.gov.in  . Upload. get Convermation in zip. Print it
- Send the Print by ordinary mail [ Rs 5 stamp ] to below adress within 15 days of upload.

Income Tax Department - CPC,
Post Bag No - 1,
Electronic City Post Office,
Bangalore - 560100,
Karnataka

- There is another Option for Fully online Submission, you need Digital Signature.
- Digital Signature is usually not available with Individuals, Its a costly service and advisable only if you need it for other purpose.
- Digital Signature may cost you 800 per year or more.

Optimus Prime : 02:45 (Transformers: Age of Extinction / Transformers: 4)

Optimus Prime : 02:45 (Transformers: Age of Extinction / Transformers: 4)

Directed: Michael Bay ( Same who did Transformers 3 )
Written by: Ehren Kruger (also wrote "The Ring" )
Starring: Mark Wahlberg (The Departed Officer), Nicola Peltz (ex model & TV Star), Jack Reynor.

Summing-up Review:  (by https://www.facebook.com/bit.abhishek )

To start with , the Movie destroys a lot of Property in Chicago in 1st 1.2 hour,
and then in China in 2nd 1.5 hours. You can see a lot of Funky Car Designs ,
Sponsors like beats Audio and Chevrolet cars.
For a Change in US production (Paramount), there is no FBI, no CIA,
no NYPD, no Navy Marines, no Military but only an EX-CIA.

The Story is very small, Megatron could be reborn as Galvatron, but unaware of this
(Certain)People dont believe the Alien Optimus Prime taking care of humans. Certain other People
find the Matter that can be "programmed" to any shape and matter, (aka the transformer).
The 'Government' hunts down autobots so that Planet is free from them.

Galvatron is about to get revived from Seed coming from ancestors which was with Lockdown (aka Gun Face).
Optimus Prime is revived by Mark by accident and Optimus Saves the EARTH.

After 2 Hours 45 min and 15 min of Stupid Advertisement Galvatron still lives, Seed is still safe.

Highs : Animation and Prime. Mark Playing a father to a 17 year hottie.
Could be avoided : Same Buildings are destroyed again which Avengers already did
Lows : Movie Length. So many Cars and Building gets destroyed, but no one dies !!!

Official Trailer



Sunday, June 29, 2014

Tools to log into the Oracle database

The two most widely used tools to log into the database are SQL *Plus and SQL Developer.
Please Note that the tool iSQL *Plus which was introduced with Oracle 9i is dropped with the release of Oracle 11g.

SQL *Plus:

It’s a client server tool for connecting to the database server and running ad hoc SQL queries or PL/SQL. This tool is available with all the various databases for different platforms, and can communicate with the database server through the Oracle Net protocol, independent of the platform (O/S) on which the client(SQL *Plus) or the server (Oracle) is installed.

In Linux installation this can be found typically in a location like /u01/app/oracle/product/db_1/bin/sqlplus

And three environment variables must be set  
ORACLE_HOME : Where the oracle software is installed.
PATH : The path to the bin directory in the Oracle home.
LD_LIBRARY_PATH : The lib directory of the Oracle home.

In windows installation there used to be 2 versions the CUI (sqlplus.exe) and GUI (sqlplusw.exe). Now the GUI version is no longer available.

In typical windows 7 installation the .exe is to be found at location
C:\app\<USERNAME>\product\11.2.0\dbhome_1\BIN\sqlplus.exe
Shortcut for which is
START >> Programs >> ORACLE HOME >> Application Development >> SQL Plus



The SQL Developer

It’s a GUI java tool (requires JRE for running), to connect to the Oracle or some non-oracle databases. It’s used to fire ad hoc SQL queries or to manage the PL/SQL Objects. Multiple connections can be open simultaneously.




Wednesday, June 25, 2014

Logging into the database (Oracle 11g)

After successful installation of the database system, users often have problem in logging into the database, I too had similar kind of problems when I tried to log in as SYS with the same password as I had set at the time of installation for SYS user, using SQL *Plus ( a default client-server tool in the oracle package ). Tried out every variant of the sqlplus command from the command prompt, 
for example:
sqlplus myusername/mypassword@ORCL
sqlplus myusername/mypassword@Host/ORCL
sqlplus sys/mypassword  as dba
etc. But no luck.

Note:
Help on sqlplus command is available by typing:  
sqlplus -H at the command prompt

But then if we configured Oracle Enterprise Manager Database Control during the installation, we can use it to manage our database. Alternatively, we can use Oracle Enterprise Manager Grid Control to manage our database. To display the Database Control:
  1. We use a Web browser to access the Database Control URL:
    http://host:port/em
    
    
    In this example:
    • host is the name of the computer on which we installed Oracle Database
    • port is the port number reserved for the Database Control during installation
    If we do not know the correct port number to use, we look for the following line in the $ORACLE_HOME/install/portlist.ini file:
    Enterprise Manager Console HTTP Port (db_name) = 1158
    
    
    The installation reserves the first available port from the range 5500 to 5519. For example, if we installed Oracle Database on host xyz, and the Database Control uses port 1158, use the following URL:
    http://xyz:1158/em
    
    
    Oracle Enterprise Manager displays the Database Control login page. 
  2. If the db is accessed from the db server itself http://localhost:1158/em can be used.
  3. We Log in to the database using the user name SYS and connect as SYSDBA.
    We Use the password that we have specified for the SYS account during the installation.
 As we log in we see something like this.




We go to Server >> Security >> Users to get the below screen



Now we change the password for the problematic account and check if the account is expired and locked. We can do almost anything to a user account if logged in as a sysdba, e.g. delete, create, set roles and permissions, mark locked assign a temporary table space and so on.


After resetting the SYS password from here, now when we try logging in from the SQL *Plus, it works like a magic.

Unlocking, setting a new password, or granting privileges to other user accounts can be done from OEM db control or from the command prompt while logged in as sysdba. Like
  1. SQL> CONNECT SYS/SYS_password AS SYSDBA
    
  2. SQL> ALTER USER account [ IDENTIFIED BY password ] ACCOUNT UNLOCK;

Monday, June 23, 2014

Indian Istyle Chicken fry recipe - Easy, Quick & Yummy!

Thought of sharing the recipe for the Indian style Chicken Fry recipe, which is easy to make and good to eat :)..so here you go……




Ingredients:

  • Chicken (boneless, thigh fillet of breast piece) - Cut into small cubes (250gm)
  • Onion - Fine Sliced (One big)
  • Green Chilli - two whole
  • Green Chilli - finely chopped (two)
  • Ginger Paste - One table spoon
  • Garlic Paste - One table spoon
  • Cumin powder - One table spoon
  • Coriander powder - One table spoon
  • Turmeric powder - One table spoon
  • Red Chilli powder - As required
  • Gram flour (besan) or Corn flour of Plain flour (maida) - 5-6 Table spoons ** This is to hold the marination together
  • Salt to taste
  • White Oil as required
Marination:

  • Marinate the chicken cubes with the above ingredients (green chilli slit, ginger paste, garlic paste, coriander, cumin, red chilli and turmeric powder and gram flour) except for Onion and whole green chilli and salt (add the salt to the marination, just before you fry them). Add little Oil during marination. Marinate and keep the chicken in fridge for 1hr or more.
Cooking time :)

  • Heat Oil in a non-stick fry pan, till the oil is hot and fuming. Reduce the flame once the oil is heated
  • Add salt to the marination
  • Place the marinated chicken in the fry pan (try and keep the chicken pieces separated from each other). Medium flame.
  • Ensure the chicken is fried properly on all the side. Change the position of the chicken time and again
  • The chicken should get a Golden brown colour and a brown texture throughout
  • Once the chicken is fried on all sides properly, remove them from the pan and keep them aside
  • In the same oil, sauté the onions and whole green chilli slightly
  • The onions should have a light brown texture
  • Remove the onions and green chilli from the pan and mix them with the fried chicken
  • Your Chicken fry is ready!!
  • Serve with hot rice or noodles or Maggie :) 

Sunday, June 22, 2014

The SQL Command Set

There are 16 total commands in SQL grouped under various headings

Data SELECT Language used for extracting and displaying of Data from the database.

SELECT

DML ( Data Manipulation Language ) : To manipulate the data elements that are inside the database table.

INSERT
UPDATE
DELETE
MERGE

DDL ( Data Definition Language ) : Related to the data structure of the database tables and not the actual data that resides into them. 

CREATE
ALTER
DROP
RENAME
TRUNCATE
COMMENT

DCL ( Data Control Language ) : Related to the Database Security.

GRANT

REVOKE

TCL ( Transaction Control Language ) : To control the behavior of a block of DMLs written as a transaction. 

COMMIT

ROLLBACK
SAVEPOINT

Note:
1. There are many a things that are coming up to my mind, definitely would discuss them but may be in some other posts.
2. Many authors put SELECT statements in DML, but SELECT does not manipulate anything.
3. Many of us often get confused with the grouping of TRUNCATE and DELETE statements. But strictly DELETE is a DML and TRUNCATE is a DDL. I would surely come back to this topic when I shall write about the two.

What is PL/SQL?

SQL lacks the qualities of a structured programming language, for example conditional ( if-then-else ), looping ( for, while ) and logical statements, which are present in other famous languages like C, C++, Java etc. Though CASE and DECODE statements allows to add some level of conditional feel to the SQL statements but are not enough to tackle real life problems which require more complex logical operations.

To overcome the shortcomings of SQL, PL/SQL was introduced.



PL/SQL is Oracle’s Procedural Language extension to SQL and the RDBMS. It is a combination of SQL along with the procedural features of programming languages and it enhances the capabilities of SQL by injecting the procedural constructs to SQL, such as encapsulation, function overloading, information hiding, block structure, conditional statements, loop statements, variable types, structured data and customized error handling, the PL/SQL language takes on characteristics of object-oriented programming languages. Moreover it can be stored in the database for future reuse. It is loosely based on Ada (a variant of Pascal developed for the US Dept of Defense). PL/SQL was first released in 1992 as an optional extension to Oracle 6.

Note: 
1. PL/SQL is an extension of SQL does not mean it's an upgraded version of SQL or it cannot exist without SQL. PL/SQL is a programming language in its own right; it has its own syntax, its own rules, and its own compiler. We can write PL/SQL programs with or without any SQL statements.

2. PL/SQL is a characteristics of RDBMS, so here we have another difference between a DBMS and an RDBMS. 

Check out the official trailer of Kick

What is SQL?

SQL or structured query language is a 4th generation language (4GL) where you just have to mention what you want to do, and not how do it. It is used to create, manipulate and retrieve information from RDBMS (Relational Database Management Systems).

Some common relational database management systems that use SQL are: Oracle, Sybase, Microsoft SQL Server, Access, Ingres, etc. Although most database systems use SQL, most of them also have their own additional proprietary extensions that are usually only used on their systems.


For history of SQL you can have a look at Wiki which says:

After testing SQL at customer test sites to determine the usefulness and practicality of the system, IBM began developing commercial products based on their System R prototype including System/38, SQL/DS, and DB2, which were commercially available in 1979, 1981, and 1983, respectively.
SQL was initially developed at IBM by Donald D. Chamberlin and Raymond F. Boyce in the early 1970s. This version, initially called SEQUEL (Structured English Query Language), was designed to manipulate and retrieve data stored in IBM's original quasi-relational database management system, System R, which a group at IBM San Jose Research Laboratory had developed during the 1970s. The acronym SEQUEL was later changed to SQL because "SEQUEL" was a trademark of the UK-based Hawker Siddeley aircraft company.
In the late 1970s, Relational Software, Inc. (now Oracle Corporation) saw the potential of the concepts described by Codd, Chamberlin, and Boyce and developed their own SQL-based RDBMS with aspirations of selling it to the U.S. Navy, Central Intelligence Agency, and other U.S. government agencies. In June 1979, Relational Software, Inc. introduced the first commercially available implementation of SQL, Oracle V2 (Version2) for VAX computers.


SQL or "sequel" ?

The above article from wiki clears all our doubts for the pronunciation part of it. But still.. you don't have to worry about it, the pronunciation would come automatically. When I entered the field of databases, I used to say "S-Q-L" for where ever I saw SQL. Now its like "MySQL" , "Sequel Server" or "PL/sequel". The more you love the technology the more you speak of it, the more you speak of it the more you are drawn towards the ease of saying it. SQL has three syllable sequel has two, so good for the lazy developers. 

Saturday, June 21, 2014

Prerequisites for Learning Oracle SQL and PL/SQL


You can find the download links for various versions of the Oracle databases under
http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html

Download your favorite flavor, and if you have any problems in installation then Oracle provides Installation Guides for different operating systems.

For Example (for Oracle 11g Release2) :

For Linux : http://docs.oracle.com/cd/E11882_01/install.112/e47689.pdf
For Microsoft Windows : http://docs.oracle.com/cd/E11882_01/install.112/e47798.pdf

You can also go for the Express Edition if you want
http://www.oracle.com/technetwork/database/database-technologies/express-edition/downloads/index.html

For development purposes we will use SQL *Plus and SQL Developer, both comes with the default installation package. Though most recent versions of the client tools can be downloaded separately.
Like: http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html

Note: Considering the fact that JRE is pre-installed. SQL Developer needs the prior installation of JDK 7.

Starting off with SQL and PL/SQL (Oracle 11g)

Being a techie, having a keen interest on database technologies, and after working for several years as a developer, I thought of revisiting Oracle SQL and PL/SQL. In this blog I would like to share my views and experiences as a matured learner. The database chosen for this purpose is Oracle 11g. For those who want to put in their views are welcome. If I go wrong somewhere or I'm missing something, please feel free to correct them.