Pentaho Tools :

Pentaho C-Tools(CDE,CDF,CDA),Pentaho CE & EE Server,OLAP-Cubes,Analysis using Pivot4J, Saiku Analytics, Saiku Reporting, Ad-hoc Reporting using Interactive Reporting Tool,Dashboards,Reports using PRD, PDD,Data Integration using Kettle ETL,Data Mining usign WEKA,Integration of Servers with Databases,Mobile/iPad compatible Dashboards using Bootstrap Css,Drilldown dashboards,Interactive Dashboards

Thursday, 28 April 2016

Passing Blank from Select component - Dispaly All values when you pass Blank(say null) and display specific content when you pass specific value in Pentaho CDE

Hi Folks,

Its always a fun to me to explore a functionality in CDE.!
In this post you will see how to pass Blank ( Assume a NULL) value to  a CCC Bar chart component that should display all bars in graph.

Few questions ? 
1) Did you ever observe Blank/NULL (Say empty value) in a String type select component ?
2) Did you ever pass Blank value to display the whole content ? ( to a chart or to a table component).
   ( NOT "All" value in drop down)

NOTE : Click on images for the content on it

Here is a USE CASE : 
* Display employee "Position Titles" on X axis and "Salaries" on Y-Axis according to "Education Level".
i.e., filter the employee data with "Education Level".
When you pass "BLANK" value you should get the whole content and when you pass "Specific education level" get the data for that specific level.  (Here the employee content is : "Position Titles" on X-axis and "Salaries"  on Y-axis )

Software Environment for this example : 
1) Pentaho BA Server 6.1 CE
2) Pentaho CTools (16.x)
3) Jaspersoft foodmart database - PostgreSQL

1) Dashboard Design 
Design the dashboard as shown in the final output image.  (Not explaining how to work with rows and columns and create html objects - Assuming that you are aware in designing basic layouts). 

2) Components section : 
Creating parameter : 
Parameter : param_education_level
Default value : ' '    (Single quotes & one space in between)

Creating Select Component : 
Name : select_dept_id
Parameter :  param_education_level
Listner : param_education_level
Data source : query_param_dept_id
HTML Object : col_param
Creating bar chart component : 

 3) Data sources section : 
Preparing SQL for parameter : 
SELECT education_level FROM
(
            (SELECT ' ' :: text  AS education_level FROM employee limit 1)
            UNION ALL
            (SELECT DISTINCT education_level::text AS education_level FROM employee )
) a ORDER BY a.education_level


 Preparing SQL for Bar Chart Component
SELECT
               position_title,
               SUM(salary) sal
FROM employee 

WHERE  
         (education_level :: text = ${param_education_level} OR ${param_education_level}=' ')
GROUP BY 

position_title

NOTE : Check CDA preview for the confirmation of data source connection and queries result sets.

Save the dashboard and preview it. 

TEST- 1: Passing Blank Value


TEST-2 : Passing "Partial High School" value from "Education Level" parameter


Few Points & Limitations on this example :
1) ORDER BY for integer inputs may not be sorted (Its depends on how you concatenate ' ' with integer value in SQL).
2) Some times for the first load of the dashboard it is displaying "No Data". (Oops.!).
3) When you map a parameter to a "Select Component" (Single Select) you wont get any special symbol or blank space in the drop down. ( One can find -- dashed lines in Jaspersoft Server for input controls to pass it as NULL value).
4) This example is not intended to replace "All" functionality in the drop down.

Download Example : 
Click Me

Thank you :-) Hope it helps someone.


Wednesday, 27 April 2016

Tip : Activate Pentaho Ctools in Enterprise BA Server 6.x

Hi, 
This post will help you in configuring CDE in EE server.
Environment for this example is :
BA Server EE 6.0.1

1) To make CDE editor available in Pentaho EE server you need to edit code related to it in xml configuration files. files are :  plugin.xml and settings.xml

2) Both files are available at C:\Pentaho\server\biserver-ee\pentaho-solutions\system\pentaho-cdf-dd location.

3) Editing plugin.xml file 
Place-1 : uncomment below code 
             <operation>
                    <id>EDIT</id>
                    <perspective>wcdf.edit</perspective>
                </operation>


Place-2 : uncomment below code 
<overlays>
        <overlay id="launch" resourcebundle="content/pentaho-cdf-dd/lang/messages">
            <button id="launch_new_cde" label="${Launcher.CDE}" command="Home.openFile('${Launcher.CDE}', '${Launcher.CDE_TOOLTIP}', 'api/repos/wcdf/new');$('#btnCreateNew').popover('hide');"/>
        </overlay>
        <overlay id="startup.cde_dashboard"  resourcebundle="content/pentaho-cdf-dd/lang/messages" priority="1">
            <menubar id="newmenu">
                <menuitem id="new-cde_dashboard" label="${Launcher.CDE}" command="mantleXulHandler.openUrl('${Launcher.CDE}','${Launcher.CDE_TOOLTIP}','api/repos/wcdf/new')" />
            </menubar>
        </overlay>
    </overlays>

   
4) Editing settings.xml file 
Define the button for CDE  in Server
Un comment below code that you find at the end

<new-toolbar-button>1,New CDE Dashboard,CDE Dashboard,api/repos/wcdf/new</new-toolbar-button>



Pentaho Offcial Documentation : 
https://help.pentaho.com/Documentation/6.1/0R0/CTools/Activate_CDE

Download the same as PDF file : Click Me.

 

Tuesday, 26 April 2016

Pentaho EE 6.0.1 complete pack installation images for Windows 64 bit OS

Its been almost 4 years, I had installed Pentaho EE 4.8 server for the first time and later never got a chance to  get EE copy at office or home.. Hmm..!!! CE occupied EE's place in bucket :-)

Installation Environment : 
Windows-7 Professional , 64 bit OS with 8 GB RAM. 


Pentaho EE 6.0.1.386 Server installation images.

Download Location: http://www.pentaho.com/download






1)

2)
3)
4)

5)
6)
7)
8)
9)
10)
11)
12)
13)
14)
15)




Services :



 Menu Bar : 



Installation folder structure : 











Thank you. :-)

Thursday, 21 April 2016

Back to Basics on Dual Axes Line Chart example in Pentaho CDE

H,
Its been again longtime I wrote something useful that I explored in  Pentaho or Pentaho Ctools.

Thank you Tharun for making me look back into the basics again. Here is the use case we together explored with foodmart sample data.

Use Case : 
Get 2 lines for Y1- Axis : storecost, storesales
Get 2 lines for Y2- Axis : unitsales, profit

This example is explained step by step in the presentation attached to this post. (Please look at download section).

I hope it will be useful if you have the similar kind of functionality.

Sample screenshots of the presentation : 

Image -1 : Please click on image to get best view
Image-2 : Sample output : please click on image to get best view


Download :
1) Presentation
2) Example : Works on foodmart db.

NOTE : Presentation is password protected. Please send me a request to have a copy of it. 

Click me to download 

:-)

Sunday, 27 March 2016

Box Plot Chart example in Pentaho CDE Dashboard designer

Hi,

In this post, you will see how to develop a box plot chart in Pentaho CDE.

Oops!!! No more theory I am going to write here but uploading a presentation having 5 to 10 slides.
By going through the slides that have step by step screen shots, you can quickly & easily learn how to work with it.

If you want to know more about what is box plot ? Read here : https://en.wikipedia.org/wiki/Box_plot 

OR
http://www.physics.csbsju.edu/stats/box2.html




Important point: 
When you work with CCC Box plot chart component make sure CrossTabMode=False


Few sample Screen shots from the Presentation : 

1)  Data Format for Box plot Chart ( ** Click on Image to get best view of content placed)

2) Sample output in CDE ( ** Click on Image to get best view of content placed)




Download Example & PPT : Click Me

NOTE: Presentation is password protected, please request for a one. 

Thursday, 25 February 2016

Pentaho CE 6.0 BA Server Gmail/Yahoo Mail Server Configuration testing (less secure & more secure options for gmail)

Hi Folks,

It been a long time I wrote something useful in Pentaho CE. (Oops..!!! Busy with Jaspersoft)
I have been trying to connect to my gmail for testing scheduling options for reports in it. (Hmmm..!!! I didn't get a chance till today to look in to it from the time when I started exploring Pentaho CE 4.5)

Today, after many trails & discussions with known folks who works on pentaho enterprise, I have successfully connected to my gmail account from Pentaho CE Server
(You may find how to schedule reports in upcoming posts).

I hope this post will help you in configuring the same or your company email for scheduling.

If you had already done it, you can ignore reading it or you can suggest your friends to refer this step by step guide.

Here you go.!

Environment Set up : 
1) Pentaho BA Server 6.0 community edition
2) My gamil acccount
3) Proxy free/Fire wall free network.


With gmail there are 2 secure options
1) Less secure options
2) More Secure Options 

For less Secure Options :

Step 1 : Turn ON less secure option for your gmail account.
1) In your gmail, click on your account picture symbol that you can find at top left corner.
2) Click on "My Account" -> (or you can directly go visit this site : https://myaccount.google.com/?utm_source=OGB)
3) Click on Sign In Security tab -> Scroll down completely till you see an option at little right bottom saying "Allow less secure options".
4) By default it is OFF so make it ON (this means you can access your gmail account in less secure options - for instance few mobile phone email accounts for gmail or apps like pentaho server).

Yeah..!! Its Mobile World Now.. Security matters for open social accounts.

NOTE : Click on images for best view of content placed.
Screen shots for above steps :
Image-1 

Image-2 : 


Step 2 : Configuring gmail SMTP settings in Pentaho BA Server. 
1) Login into the Pentaho BA Server 6.0 CE as an admin 
2) From the drop down of Home -> Select "Administration"
3) Click on middle option which is "Mail Server"
4) Give all the parameters of gmail SMTP as shown below
 Host Name (SMTP) = smtp.gmail.com
 port =587
 Use Authentication = checked
 User Name = sadakar.1988@gmail.com 
 Password = <Password>
 Server Type = SMTP (SMTPs also works for gmail - I have tested and worked for me)
 Email From Address = sadakar.1988@gmail.com ( You can give your name instead email ID)
Use Start TLS = checked (if don't check the setting might not work)
Use SSL = checked ( optional, but I have checked it)

NOTE : TLS is mandatory to check but SSL is optional in my experiment.

That's all .! You are done. Click on "Test Email Configuration" button and on successful message click on "Save"button.

Images for above steps :
Image-3: 

Image-4:

Image-5: Testing notification mail ( Smiles :-) )
 

This way one can setup gmail for yor pentaho BA 6.0 CE server.

For More Secure Options : 

 Alternatively, a more secure option is to configure your gmail server to use 2 step authentication and add Pentaho to the list of trusted applications as follows:

1.    In Google, go to My Account /Sign In & Security / Signing in to Google and change the 2-step Validation from OFF to ON.

2.    This will prompt you for a phone number and some other information. A verification code will be send to the phone number you enter. Enter this code to complete the 2-step authentication.

3.    In Sign-in & Security / Signing in to Google/ go to App Passwords (This will show up under 2-step Verification once it is enabled.

4.    Select Other from the dropbox, and enter Pentaho. Then click on Generate to generate the password.

5.    Go back to your Pentaho Mail Server configuration and enter this generated password under the password box.
6.    Test again.


NOTE : Areas of interest to check other places but need not to do anything with them. 
1) email-config files  under pentaho-solutions folder
<>\biserver-ce-6.0.1.0-386\biserver-ce\pentaho-solutions\system\smtp-email
 email_config.xml
email_config_gmail.xml

2) Go yahoo too in the same way of gmail (the just change is your SMTP , email passoword)
    Need not change the port number i.e., yahoo also worked with 587 port (465 has not worked).

 


I hope this helps you.! Please hit the share button to help the community.

Thank you.
Until Next post
Sadakar


Monday, 8 February 2016

CCC Charts basic & Advanced Properties in Pentaho CDE - How to Guide ? (PPT)

Hi Folks,

CCC charts in CDE has got many properties. I have written a how to guide(PPT presentation) on it.
I hope you will find it useful for quick understanding and how to use them on charts to have more interactive visualizations.

This guide will helpful to you start with basic then move on to complex areas of properties. 

Below is a sample screenshot of the presentation, to read more about it download the presentation.

NOTE : This presentation has some 4 to 5 slides, collecting more properties with examples and will update the PPT. You can find updated date and what will be added after first line of this post in future. 

** Click on Images to get the best view of the content placed

Image-1 : 


 Download section : 
Click Me 

NOTE: Presentations are password protected, please send a request to have a copy.
Thank you :-) :-) 

Pre Execution, Post Execution , Pre Change, Post Change , Post Fetch in Pentaho CDE - All in one Guide with Examples(PPT)

Hi Folks,

I have explained how to work with Pre/Post-Execution, Post Fetch and Pre/Post Change in CDE.
Earlier, I had written multiple articles on the same concepts.

In this presentation, I have clubbed all of them. With this clubbed information, you can easily understand when to use which scripting option on components in CDE.

I hope you will find it informative and find it useful for quick understanding.

NOTE : This presentation has some 4 to 5 slides, collecting more properties with examples and will update the PPT. You can find updated date and what will be added after first line of this post in future. 

Sample Images of Presentation : 
** Click on images to get the best view of the content on them

Image-1 : 
Image-2: 
Download Presentation : Click Me

NOTE : This presentation is password protected, please send a request to get a copy.  
              ( You will not get a preview when trying to download)

Thank you. :-) :-)

Sunday, 7 February 2016

Extension Points in Pentaho CDE - All in one Guide (PPT)

Hi Folks,

In this presentation, I have clubbed all the information about "Extension Points" in Pentaho CDE.
I hope you will find it interesting and useful for quick development of interactive CCC Charts in CDE.

You can find a list of extension points in my previous post here :
http://pentaho-bi-suite.blogspot.in/2014/07/tipbase-axis-extension-points-in.html

High lights of Clubbed
1) What are extension points in CDE ?
2)  How to apply for CCC Charts ?
3)  Resources for finding extension points ?
4) Quick search from existing examples and use in your dashboards

NOTE : This presentation has some 4 to 5 slides, collecting more properties with examples and will update the PPT. You can find updated date and what will be added after first line of this post in future. 

Sample Slides : 

** Click on Images to get the best view of content : 

Image-1

Image-2 : Quick  Search from Existing Examples


Download PPT here :  Click Me

NOTE :  This presentation is password protected. Send a request to get the password.


Thanks
Sadakar

Thursday, 31 December 2015

Failed : Virus Scan Failed download error in google - How to Fix in Windows machine ?

Follow below steps to fix the issue

1) Click on Start Menu --> In search box type "run" ---> In run box type -> regedit
2)  Navigate to Attachments as shown in below

             HKEY_LOCAL_MACHINE
                  SOFTWARE
                       MICROSOFT 
                              Windows 
                                    CurrentVersion
                                              Polices
                                                       Attachements

3) In the right side window double click on ScanWithAntiVirus option.
4) In the "Edit DWORD(32-bit) value window change value data option from 3 to 1
5) Close the window & restart the Chrome if already running and try downloading now.

:-) :-)


A video tutorial is available at 
 https://www.youtube.com/watch?v=vzv6fuL7tNY

Wednesday, 23 December 2015

Tip : Difference between Text File Input and CSV File Input steps in Pentaho Data Integration(aka Kettle ETL)

Hi Folks,

A question makes us go in-depth of subject, isn't it ? Recently, One of my community folks asked a question on the differences between Text File Input & CSV file input ? Which one would you prefer to use if you are given a CSV file ?  
Hmmm..!!! Was trying to explain some bla stuff but later in the evening had a quick investigation on finding the differences. (An example speaks more than theory when understanding the concepts).

Here we go. ! Pentaho WIKI has detailed information about these two steps at

Text File Input : http://wiki.pentaho.com/display/EAI/Text+File+Input
CSV File Input : http://wiki.pentaho.com/display/EAI/CSV+Input

Here is my quick understanding on the conceptual things which you may find useful.

1) "Text File" input steps can read variety of files such as Text, CSV, Fixed length whereas CSV file  
     can read only read .csv extension files.

2) "Text File" input step is useful to add file information such as File Name, Extension, File URI(File directory and etc) which you can't do with CSV file.

3) What if you given multiple CSV files to read at a time ? Text file input step is capable of reading multiple files whereas CSV file only takes 1 file.

4)  CSV file is a subsidiary component of Text file input step.

5) There are few advantages of CSV file over text file.
*  Use CSV file input step if you are given single file to process at a time (for instance lookup
       files).
* When you use CSV file  input step it will faster the processing and hence increases the 
     performance.
*  It has NIO (Non blocking Input Output / Native System calls) - which is nothing but size of
    read buffer.
*  It represents the amount of bytes that is read in one time from disk. 
*  Parallel running: If you configure this step to run in multiple copies or in clustered mode, and you 
    enable parallel running, each copy will read a separate block of a single file allowing you to
   distribute the file reading to several threads or even several slave nodes in a clustered
   transformation

* Lazy conversion: If you will be reading many fields from the file and many of those fields will not be manipulate, but merely passed through the transformation to land in some other text file or a database, lazy conversion can prevent Kettle from performing unnecessary work on those fields such as converting them into objects such as strings, dates, or numbers.

Example : 




Download Example here : 
Click me .!!!
Change Files path to your system path.

More Information at NIO is at : 
https://en.wikipedia.org/wiki/Non-blocking_I/O_%28Java%29
 

How to create a sample Fixed length file using Excel ? 
create a fixed length text file from excel
https://www.google.co.in/?gws_rd=ssl#q=create+a+fixed+length+text+file+from+excel

 References :
http://stackoverflow.com/questions/21803856/pentaho-data-integration-csv-input-add-filename-column

Monday, 9 November 2015

Pentaho CDE useful links


http://www.pentaho.com/marketplace
http://www.webdetails.pt/info/storywithtruth.html
http:/www.github.com/webdetails
http://www.pentaho.com/Streamlined-Data-Refinery
http://community.pentaho.com/marketplace/plugins/.

Utilities;
•    Jquery (https://jquery.com/)
•    JqueryUI (http://jqueryui.com/)
•    Jquery i18n (https://plugins.jquery.com/i18n/)
•    Mustache (https://github.com/janl/mustache.js)
•    Backbone (http://backbonejs.org/)
•    Underscore (http://underscorejs.org/)
•    Moment (http://momentjs.com/)
•    Require (http://requirejs.org/)

Layout related:
•    Modernizr (http://modernizr.com/)
•    Bootstrap (http://getbootstrap.com/)
•    Blueprint (http://www.blueprintcss.org/)
•    Font-awesome (http://fortawesome.github.io/Font-Awesome/)

Components:
•    Raphael (http://raphaeljs.com/)
•    Protovis (http://mbostock.github.io/protovis/)
•    DataTables (https://www.datatables.net/)
•    Community Charts Components – CCC (www.webdetails.pt/ccc)
•    Select2 (https://select2.github.io/)
•    Chosen (http://harvesthq.github.io/chosen/)
•    Sparklines (http://omnipotent.net/jquery.sparkline/#s-about)
•    Fancybox (http://fancybox.net/)

Pentaho Data Integration - 8 - (DWH) - Change Data Capture(CDE) OR incremental loading of dimension table - Sample example

Hi, 

This post will give you the beginner learning concepts in understanding incremental loading of data from a OLTP database(transaction database)  table into OLAP database(data warehouse dimension table) table.

Software used for this example :
1) Pentaho Data Integration CE 5.4 (or 6.0 CE)
2) PostgreSQL  CE

Source data:
create database OLTP;
create table customer(c_id int not null primary key,c_name text,c_location text);

insert into customer values(1,'sadakar','hyderabad')

insert into customer values(2,'hasini','mncl');
insert into customer values(3,'anji','banglore');
insert into customer values(4,'venkat','chenni');
insert into customer values(5,'anjali','karimnagar');

select * from customer


c_id c_name  c_location
----------------------
1;"sadakar";"hyderabad"
2;"hasini";"mncl"
3;"anji";"banglore"
4;"venkat";"chenni"
5;"anjali";"karimnagar"


Scenario  :
Lets say a new record is inserted in above customer table then while running ETL transformation/job then the only newly inserted record should be loaded into the customer dimension table in warehouse table.
i.e.,
if 6;"soujanya";"banglore" is inserted into above table then this record only load into the customer dimension table in warehouse.

Target :  
create database OLAP
CREATE TABLE dim_customer
(
  customer_id INTEGER NOT NULL PRIMARY KEY
, customer_name TEXT
, customer_location TEXT
)
;
NOTE : 
You can create above dimension table manually in the database or can generate the script using table output step.

Steps : 
1) Create two data source connections (one is for OLTP and the other is for OLAP) in kettle.
2) Drag and drop "Table Input" step and write below query taking from OLTP database.
     SELECT * FROM customer
3) Drag and drop "Table Output" step and give all the properties in the window.
    database name : OLTP , table name : dim_customer 
   Check Specify database fields 
   Table field      Stream field
 =========================
   customer_id      c_id
   customer_name  c_name
   customer_location  c_locatioin 
4) ETL 1st run : save the transformation and run the job. 
    Observe , Step Metrics tab from "Execution Results: tab ( 5 rows are read and 5 rows are written). 


dim_customer table output after 1st ETL run
customer_id customer_name customer_location 
====================================
1;"sadakar";"hyderabad"
2;"hasini";"mncl"
3;"anji";"banglore"
4;"venkat";"chenni"
5;"anjali";"karimnagar"



5) Now, drag and drop table input step for finding the maximum of customer id from "dim_customer" table using below query.
SELECT COALESCE(max(customer_id),0) FROM dim_customer

6) connect this step to source table input step as shown in below

7) Edit the source table input step - i.e., Give insert data from Step - connect the above step to source table input step.
Also, impotently change the SQL code from
     SELECT * FROM customer to
      SELECT * FROM customer WHERE c_id > ?

8) ETL 2nd Run : Save the transformation and run the job. 


In above case no new  record is inserted in OLTP table hence no new records are loaded into dimension table. You can see it in Step Metrics in above figure.

dim_cusotmer table output after 2nd run of ETL 
customer_id customer_name customer_location 
====================================
1;"sadakar";"hyderabad"
2;"hasini";"mncl"
3;"anji";"banglore"
4;"venkat";"chenni"
5;"anjali";"karimnagar"



9) Now, insert few new records in OLTP customer table.
lets say,
insert into customer values(6,'soujanya','banglore');
insert into customer values(7,'kumar','bellampally');
insert into customer values(8,'srinivas','somagudem');
insert into customer values(9,'srinandan','warangal');

SELECT * from customer
c_id c_name c_location
====================
1;"sadakar";"hyderabad"
2;"hasini";"mncl"
3;"anji";"banglore"
4;"venkat";"chenni"
5;"anjali";"karimnagar"
6;"soujanya";"banglore"
7;"soujanya";"banglore"
8;"kumar";"bellampally"
9;"srinivas";"somagudem"
10;"srinandan";"warangal"


i.e, from row 6 to 10 are newly inserted rows in OLTP customer table.

Now when you run the ETL, the c_id should load from 6 .


10) ETL 3rd run - Insert the newly inserted rows of OLTP into OLAP dim_customer table


Observe the table input has read 5 records which were not available in dim_customer table and loaded only these new 5 rows.

dim_customer table after 3rd ETL run 
customer_id customer_name, customer_lcoation
=====================================
1;"sadakar";"hyderabad"
2;"hasini";"mncl"
3;"anji";"banglore"
4;"venkat";"chenni"
5;"anjali";"karimnagar"
6;"soujanya";"banglore"
7;"soujanya";"banglore"
8;"kumar";"bellampally"
9;"srinivas";"somagudem"
10;"srinandan";"warangal"



NOTE :
The same procedure can be applied on dates.
 # If you are taking CREATED_ON in OLTP, find the max(CREATED_ON) instead of ID.
 # You can also take the combination of ID and CREATED_ON for incremental loading.

Download sample .ktr file :  Click Me.!!

References : 

Table Input 1 (Select MAX(Insert Timestamp) from DestinationTable ) ->
Table Input 2 ( Select * from SourceTable where Insert Timestamp > ? ; Insert Data from Table Input 1) ->
 Table Output (Insert Rows into DestinationTable)

1) Table Input: Select MAX(ID) from LocalTable
2) Table Input: Select * from RemoteTable where ID>? (Insert Data from 1)
3) Table Output: All Fields into LocalTable

http://forums.pentaho.com/showthread.php?170386-Incremental-load
http://forums.pentaho.com/showthread.php?190987-Incremental-Load-in-Pentaho
http://forums.pentaho.com/showthread.php?93240-Loads-incremental-data-from-a-table-of-one-database-to-table-of-another 


I hope this helps some one .! Please do share if you find this post is useful.

Cheers..!!!












Sunday, 30 August 2015

TIP : Copy files from Windows10 Host to Ubuntu 15.04 Guest installed in VMWare

Hi Folks,

Find below steps to copy files from Windows Host machine to Ubuntu Guest installed in VMware.

Software Used
1) Windows 10 as Host
2) Ubuntu 15.04 server(not desktop Ubuntu) as Guest
3) VMWare Work Station 10.01
4) WinScp 5.7.5
5) Internet is on Wi-Fi

1)  Install open ssh server in Ubuntu terminal
     Example : sudo apt-get install openssh-server

2) Download WinSCP in Windows
    Download Link : https://winscp.net/eng/download.php

3)  Check VMware internet connection
     #  VM-> Settings ->Virtual Machine Settings window will pop up
     # Select Network Adapter (NAT) and check NAT option in Network connection Tab.



4) Find the ipaddress using ifconfig on Ubuntu terminal
   Example : 192.168.1.128

5) Note down the sudo su username and password of Ubuntu
   Example : User name : hasini and password is hasini

6) Open WinScp and click on Advanced settings
     Left side Environment tab -> Shell
     Right side : In shell tab and shell property choose sudo su -
 

7) Now, provide the credentials of Ubuntu server in WinScp
(If you won't follow this, you will get can't copy error error

8) Click Login to get connect to Ubuntu server and happy file coping.

  Testing : Copy a file from windows directory to ubuntu directory

 Before copying  a file: 

After copying : Drag and drop the file (In above image point 2 to point 4)

NOTE : Alternative way to copy files
1) Copy files tmp folder of Ubuntu
2) Go to tmp folder and using mv command move the file to the target directory in ubuntu.

:-) :-)

Did you find it useful ? Please share for community guys like us..!

Reference :
https://it4beginners.wordpress.com/2011/10/27/connect-to-ubuntu-from-windows-using-ssh/
https://community.bitnami.com/t/how-to-transfer-files-to-server-winscp-gives-permission-denied/1365/2