iSimplyShare.com

Yes !! That's what I do !!

By

Android customized title bar does not show up in 4.x devices

While developing apps on android you may want to set custom titles on android and also want the app to be compatible with all android devices. I encountered an issue while making my app with custom title to be compatible with all device versions.

When I ran my application on Android device version 4+, I used to get the error – “You cannot combine custom titles with other features”. Frustrating ;)

Solution :

I had managed to resolve this bug by calling

 <item name="android:windowActionBar">false</item> 

This line disables the action bar. My style.xml went like :


<style name="AppTheme" parent="AppBaseTheme">

<!-- All customizations that are NOT specific to a particular API-level can go here. -->
 <item name="android:windowTitleSize">40dip</item>
 <item name="android:windowTitleBackgroundStyle">@style/CustomWindowTitleBackground</item>
 <item name="android:windowActionBar">false</item>
 </style>

Cause :

When setting custom title you call

 getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.window_title); 

in your activity where you want to add custom title.

Latest version of android devices use Action bar instead of title, so when Window.FEATURE_CUSTOM_TITLE is called it throws an exception saying -  ”You cannot combine custom titles with other features”

Hence, disabling the action bar resolved it :)

If you have anything to ask, feel free to comment !! ;)

By

Android Snippet : Adding a hidden field in Android Layout

While developing Android applications, we may need a way to hide fields in android. We may require this hidden field to store value which we do not want to display to users. We may require this to keep the track of some information that is not entered by the user.

Here is the code to add a hidden text view in Android. Attributes are normal, except a new attribute “android:visibility” which is set to value “gone“.

Note : Hidden components in Android do not consume any space on the layout :)


 <TextView
        android:id="@+id/exp_hidden_id"
         android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:visibility="gone"
       />

You can also achieve this within your Activity using Java as

View b = findViewById(R.id.button); 
b.setVisibility(View.GONE);

By

OBIEE 11g services on system start up of AIX Server

I came across the script posted by Robin Moffatt, over here (Rittmanmead’s blog) and wanted something similar to be implemented for AIX server. I downloaded both the .sh file and the .xml file and did the following modifications to make it compatible with OBIEE on my AIX server.

Values you need to change in the script:

MW_HOME - This is the installation directory of OBIEE

WLSHOST – Host name or ip address

WLSADMINPORT – Port number of weblogic server (Default: 7001)

WLSMGDPORT - Port number of Managed server (Default : 7001 for simple installation and 9704 for  Enterprise install)

OPMN_PORT – Get the port number from <MW_HOME>\instances\instance_name\config\OPMN\opmn\opmn.xml in tag

<port remote="9501" local="9500"/></pre>


Put the value of remote property

 

Here the value will be 9501

WLSNODEMGR_PORT – Get the port number from C:\MWH\wlserver_10.3\common\nodemanager\ nodemanager.properties. Enter the value of “ListenPort” property.

Save it as StartStopServices.sh : 


# Change these as necessary:
export MW_HOME=<Middleware-Home Location>
export WLSHOST=<IP-address or HostName>
export WLSADMINPORT=<Weblogic Server Port>
export WLSMGDPORT=<Managed Sever Port>

# --------------------------------------------------
# Only change these if you are sure that you need to

export WLSMGDNAME=bi_server1
export WLS_SINGLE_SERVER_INSTALL_FLAG=
export BI_URL=http://$WLSHOST:$WLSMGDPORT/analytics
export JAVA_HOME=$MW_HOME/Oracle_BI1/jdk

export PRODUCTION_MODE=true
export DOMAIN_HOME=$MW_HOME/user_projects/domains/bifoundation_domain
export WLS_HOME=$MW_HOME/wlserver_10.3
export INSTANCE_HOME=$MW_HOME/instances/instance1
export ORACLE_BI_HOME=$MW_HOME/Oracle_BI1
export ANT_HOME=$MW_HOME/modules/org.apache.ant_1.7.1

# ---------------------------------------
# Automagically determine listening ports
export OPMN_PORT= #Get it as per instructions mentioned above
export WLSNODEMGR_PORT= #Get it as per instructions mentioned above

# ---------------------------------------
# Initiate startup/shutdown
BASEDIR=$(dirname $0)

$ANT_HOME/bin/ant -f $BASEDIR/StartStopServices.xml $1 -DMW_HOME=$MW_HOME -DDOMAIN_HOME=$DOMAIN_HOME -DWLS_HOME=$WLS_HOME -DINSTANCE_HOME=$INSTANCE_HOME -DORACLE_BI_HOME=$ORACLE_BI_HOME -DPRODUCTION_MODE=$PRODUCTION_MODE -Dwls.host=$WLSHOST -Dwls.nodemgr.port=$WLSNODEMGR_PORT -Dwls.admin.port=$WLSADMINPORT -Dwls.mgd.port=$WLSMGDPORT -Dwls.mgd.name=$WLSMGDNAME -DOPMN_PORT=$OPMN_PORT -DBI_URL=$BI_URL $WLS_SINGLE_SERVER_INSTALL_FLAG

Transfer and save both the files on a particular folder on your AIX server and add the StartStopServices.sh on startup by editing the /etc/inittab file on the AIX Server

By

OBIEE on system startup for windows machine

OBIEE services should start on system startup – A common buzz for OBIEE Consultants out there.

I came across an article here which installs OBIEE as a service on the server and adds it to startup. I thought of my own method and here are some of the simple steps I did to put OBIEE services on system startup.

Before performing the steps below make sure you have configured boot.properties file for auto logging in weblogic server

Steps:

  1. Got to <MWH-HOME>\instances\instance\bifoundation\OracleBIApplication\coreapplication
  2. Right click on StartStopServices.cmd, and click on Create Shortcut. A shortcut for the file is created at the same location
  3. Now go to Start -> All Programs, right click on start up and click on explore. The folder for the start up menu opens up else you can manually Navigate to the startup folder as C:\Documents and Settings\<user-name>\Start Menu\Programs\Startup
  4. Now copy the shortcut created in step 2 to this location
  5. Reboot the system and enjoy!!

Explanation:

OBIEE services can be started by going in Start -> All Programs -> Oracle Business Intelligence -> Start BI Services. This action invokes the StartStopServices.cmd file located in <MWH-HOME>\instances\instance\bifoundation\OracleBIApplication\coreapplication. This script starts the Weblogic server, Managed server and OPMN Services.

Windows has a folder called startup in Start -> All Programs, which can be used to execute scripts or invoke programs on windows machine when system boots.

What we have done above is created a shortcut of the StartStopServices.cmd file and added it to startup folder for its execution on startup.

If you have any doubts/suggestions or need any further explanation feel free to comment or drop me a mail !! :)

By

Some light on Improper Database Design

Improper database design normally occurs when database is not properly designed or not normalized. Poor Database Design can lead to overhead in queries and hence will result in poor performance.

Example:

Let’s have an example of poor database design. Let consider a retail shop that stores the information of all the goods sold to the customer along with the payment information.

The first design stores all the customer and payment information in a single table. What happens here is,

For every customer information entered in the database, we have to enter payment info as well whether customer has done payment or not. This causes additional inserts overhead and consumes additional time.

If a customer pays in installment you will have to re insert the information of the customer again in the table along with the payment information

This will make query a bit slower, will consume more place on the disk.

Design 1:

id Name Address Contact date amount description
1 ABC Street 101, Link Road 9865846521 12th June 1000 Purchase order
2 XYZ Street 102, Khali road 9654585875 NULL NULL NULL

The second design below divides the table above into two different tables (Customer and Payment) which enhances the above design, hence improving the performance of the queries and its readability. The payment table can be related to the customer table with the help of the key pointing to a record in customer table.

Design 2:

Customer Table

Customer_id Cutomer_Name Cutomer_Address Cutomer_Contact
1 ABC Street 101, Link Road 9865846521
2 XYZ Street 102, Khali road 9654585875

Payment Table

Customer_id Payment_date Payment_amount Payment_description
1 12th June 1000 Monthly goods

 

 

By

Pre-requisites for installing OBIEE 11g on AIX

1. XLC Complier (11.1.0.4).

2. Configure the TEMP and TMPDIR environment variables (in addition to TMP) to point to the desired temporary directory with adequate free space of 8 GB.

3. Account by which installation be done must have access to Root folders.

4. Static IP is required.

5. User’s limits should be set to unlimited as the default.

To change this for all sessions edit as root the file /etc/security/limits

ulimit -c unlimited (turn on core files with unlimited size)
ulimit -f unlimited (sets the file limit to unlimited)
ulimit -d unlimited (sets the user data limit to unlimited)
ulimit -n unlimited (allows an unlimited number of open file descriptors)

6. Ensure all the ulimit parameters to be specified as below
<UserAccountName> :
fsize = -1
core = -1
cpu = 3600
data = -1
stack = 1024
rss = 1024
nofiles = -1
threads = -1
nproc = -1
cpu_hard = -1

Note: The above mentioned values will be set in /etc/security/limits configuration file.

7. Install bos.loc.utf.EN_US Package for the Oracle BI locale setting english-usa language.

8. There are two thread types that can be configured i.e. GATEWAY and SERVER. (AIX Admin shall change values as per required OS configurations)

GATEWAY is used by a thread pool to call a database client library for establishing a DB connection.
The default size is 256KB; we require it to be raised to 512KB. (No performance penalty for over-configuring)

SERVER threads are used to run queries.
512 KB is the default size, 2 MB The recommended 64-bit setting. No performance penalty.

9. Available Memory (RAM): 32GB 64-bit operating systems

10. Temp Space: 8GB

11. Swap Space: 12GB

12. Configure the loop back adapter (Make changes in etc/host to accept hostname / IP)

13. The Bash Shell needs to be installed, as its required by OBIEE for certain scripts.

14. List of packages required by OBIEE application server installation.

(Note: – we are not aware of latest package version but consider the package name and install the latest version respective to Operating system or Yum repository (local repository) must be configured and OBIEE user shall have sufficient privileges’ to install packages, required for OBIEE installation.)

AIX 6100-02
bos.adt.base
bos.adt.lib
bos.adt.libm
bos.perf.libperfstat
bos.perf.perfstat
bos.perf.protocols
rsct.basic.rte
rsct.compat.clients.rte
xlC.aix50.rte (version 11.1.0.4)
xlC.rte (version 11.1.0.4)

15. Xming installed on AIX box, OBIEE installation requires input in GUI mod.

16. Stack and memory allocation to user from which installation is to be done; must be set to unlimited.

17. Open the <weblogic-server-home>/common/nodemanager.properties file in a text editor and set the StartScriptEnabled property to true from false.

18. Remove the entry of backup LAN entry from hosts.conf file on AIX.

By

What is Business Intelligence ?

What is Intelligence ??

  • Having knowledge and understanding of a particular thing
  • Foresight information about particular thing
  • Ability to solve complex problems
  • Better decision making

We make decisions all the time, which directly impact our Life.

Intelligence + information = Right Decision.
Business people take decision all the time. The decision they take, have direct impact on the success and growth of their business. Some decisions are proactive while others are reactive.

Business intelligence simply means making your business intelligent.

What does a business people have ? – Data about their business

This data is of no use for business people unless and until it is presented in Intuitive and Structured way.

That’s where Business intelligence comes in !! Converting raw data to Legitimate information.

Lets consider an example of John, who is a CEO of Footwear manufacturing company,

John has to keep track of certain things on a day to day basis

  1. How many sales did we do today ?
  2. How much profit did we make on one sale on a average ?
  3. What category of Foot wear contribute maximum to the profit ?
  4. Which region in United States were highest in sales today ?….and more

He has to keep track of these things in order to know how well his business is doing. However, in order to get ready for future success, John has to know some additional things.

  1. Which region in united states are likely to contribute highest sales in future ?
  2. In which region we need to decrease the supply ?
These questions are important if he has to do certain forecasting for the profit of his organisation

John can use two tools
Business Intelligence – which tells you your now
Business Analytics - Which helps you to do forecast

The above two tools will give john right information about his business in a very intuitive, Easily accessed, Structured and easily Managed way.

Quick Facts :

  1. Term Business Intelligence was coined in 1989
  2. More than 90% of the world’s data was generated in last 2 years.

By

What are Cubes and Dimensions ?

Cube A Multidimensional Way to Look at Data – The cube is the primary OLAP structure used to view data. It is similar to a table in the relational database world. The term cube implies three dimensions, but OLAP have stretched the concept a little bit.

Dimensions - The Perspectives Used for Looking at the Data Dimensions are the answer to the question How do you want to see your data?”

Here are some examples of dimensions –

  • Product – wise
  • Time – wise
  • Store
  • Customer Age
  • Customer Income
  • Employee

Levels & Hierarchies of Dimensions

By

OBIEE 11g Installation on Red Hat Linux

 

Prerequisites for successful installation of OBIEE.

 

  • Following list of packages should be installed before OBIEE installation
  1. binutils-2.17.50.0.6
  2. compat-libstdc++-33-3.2.3 for x86-64
  3. compat-libstdc++-33-3.2.3 for i386
  4. elfutils-libelf-0.125
  5. elfutils-libelf-devel-0.125
  6. gcc-4.1.1
  7. gcc-c++-4.1.1 Read More

By

OBIEE 11g simple installation on Windows

OBIEE 11g installation on windows machine is done in 2 parts :
  1. Creating the repository using RCU (Repository Creation utility)
  2. Installing OBIEE 11G
Pre-requisites :
  1. Availability of Oracle database
  2. Setup files for OBIEE 11g
Installation Process:
  • Unzip the RCU zip file into some directory and run the rcu.bat under BIN directory. Start the database before running the RCU; this will install the BI and Metadata schema.
Welcome Screen

Welcome Screen

  • WelcomeScreenOBIEE
  • Create Repository Screen
  • Database Connection Details Screen
  • OBIEE1
  • OBIEE1
  • Select Components Screen (for Create Operation)
  • Check Schema Prerequisites
  • Schema Passwords Screen
  • Map Table spaces Screen
  • OBIEE
  • OBIEE
  • Summary Screen (for Create Operation)
  • Completion Summary Screen (for Create Operation)
  • OBIEE
  • Welcome Screen
  • Software Update Screen
  • Types Of Installation Screen
  • Prerequisite Checks Screen
  • Location Screen
  • Administrator Details Screen
  • Configuration Screen
  • BIPlatform screen
  • Security Update Screen
  • Summary Screen
  • Installation Screen
  • Configuration Progress
  • ORACLE  Business Intelligence Login Page