How to call an Oracle Function in Symfony 2

Hi All,

How are you doing? Seems like my fingers do not want me to stay away from Symfony2 despite the Spring Bank Holiday. 🙂

Today, I am going to talk about how to call an Oracle Function in Symfony2. A function (aka stored function) is a collection of SQL statements which is used to perform various different activities within the Database. The good thing about the function is you can write your chunks of SQL inside the function and call it using a name to initiate. I will be focusing on how to call an Oracle Function in Symfony2 and if you would like to know more about Oracle functions please click here.

First, let’s take a look at a sample function which I have created and is saved in Oracle 12c Database.

create or replace 
FUNCTION testFunc123(old_bname IN VARCHAR2) 
   RETURN VARCHAR2 IS 
   BEGIN 
      IF old_bname = 'TEST' THEN
          RETURN 'Y';
      ELSE
        RETURN 'N';
      END IF;  
    END;

The role of the above created Oracle function is to check whether the value of ‘old_name’ is equal to ‘TEST’ or not. If it is ‘TEST’, then the function will return ‘Y’ otherwise ‘N’. So, now what we going to do is call this function inside a Symfony2 controller. This is really easy, thankfully to wonderful Doctrine2.

Continue reading

Share

CSV to DataTables, WordPress plugin

 

Update! The plugin has been approved by WordPress and it is currently available to download within the extensions directory – https://wordpress.org/plugins/aj-csv-to-datatable

Hi tech heads,

Today, I got the opportunity to create my first ever WordPress plugin. Well, this wasn’t quite planned like this but somehow I ended up creating my own WordPress plugin. Since few days, I badly wanted to show CSV data in a DataTable (yes, in Allan’s DataTables) within WordPress. So, I browsed the WordPress extensions page and found an interesting, easily configurable plugin “csv-to-sortable” which uses the JS sortable library. That is a decent plugin and does the job very well, but I wanted use DataTable instead. (Maybe I am in deep love with DataTables). I got extremely inspired by this plugin and then I decided to create a similar looking WordPress plugin so it can use DataTables to present data. I have submitted this plugin to WordPress plugins and it is currently being reviewed. However, if you want to get your hands dirty with this, before WordPress finish reviewing, then here it is.

Link to download the plugin – http://e-innoving.com/samples/wp-plugins/AJ-CSV-to-DataTable.zip

I have created a new repository in GitHub for this plugin so anyone can see what’s happening inside. Click on the link below to view the repository. Installation and usage details are also mentioned inside the GitHub page.

AJ-CSV-to-DataTable in GitHub

Continue reading

Share

Accessing SQL parameters and its values in DQL 2 in Symfony 2

Hi All,

When you are executing a DQL there must be situation where you might need to see the parameters and its values for the underlying SQL. Usually Doctrine queries are prepared statements and you will not be able to see the values which pass through the query. Prepared statement works in the following way,

  1. Sending the statement,
  2. Sending the parameters,
  3. And executing the prepared statement.
    (More information on prepared statements :- http://www.w3schools.com/pHp/php_mysql_prepared_statements.asp)

So, what you see when you get the SQL query is something similar to this,

 SELECT * FROM some_table WHERE column1 = ? AND column2 = ?

So today, I am going to show you a workaround to get the parameters (such as column1, column2 and so on…) and most importantly get the respective values for those parameters. Continue reading

Share

Five months with Symfony 2

Hi folks,

Well, today I am going to briefly discuss on couple of things which I have learned throughout my journey in Symfony 2.  Well the journey is still ongoing and this brief discussion is about first couple of months, in exact terms first five months.

At very beginning, as an experienced CodeIgnitor and CakePHP developer, I found that Symfony 2 is quite confusing for me. The bundle concept started to bring some nightmares on me. The ‘bundle’ concept is a whole new experience for a developer who is sound with PHP frameworks such as CodeIgnitor and CakePHP. But today I found that, I am so lucky to get my self around with ‘bundles’, which makes developers life very straightforward and easy. I honestly believe Symfony 2, SensioLabs, Fabien did the correct thing by introducing ‘bundles’ for Symfony 2 which was not there for Symfony 1.x versions. Bundles let you organise your features, functions within your project in most efficient manner. The knowledge of arranging your projects according to functions, features within bundles will come to you once you spend sometime playing with Symfony 2. Then you come to a point, you get a feeling that how the things should get arranged in terms of Symfony 2, bundles point of view. So try your self by playing with Symfony 2, creating bundles under various vendors, etc, try your self how the bundle is created.

Continue reading

Share

How to install ApiGen in NetBeans 8.0 using PEAR

Hi All,

Today I am going to show you how to correctly install ApiGen in NetBeans 8 IDE using PEAR. Well, ApiGen is a handy, powerful and customizable code documenting tool which will help you to generate code documentation for your source code. So let’s begin installing ApiGen in to NetBeans.

  • First, you need have PHP installed in your machine and environmental variables set for the installed PHP. (If you need any help in installing PHP or setting environmental variable, just drop me a comment below, I will help 🙂 )
  • Open up your command prompt in Administration mode (right click and run as administrator)  and type this command to enable PEAR auto discovery mode. Auto discovery mode will help you to automate dependency installation. Because ApiGen requires tools such as Texy, Nette and so on. The good thing is when the auto discovery mode is on, it will install all these dependent tools automatically for you.
    pear config-set auto_discover 1

    apigen Continue reading

Share