Thursday, January 16, 2014

Linux vs Windows Web Server Hosting: Which one to choose and why?

Linux vs Windows Web Server Hosting: Which one to choose and why?

When you think of hosting your website, the first question strikes in your mind is that which web server hosting should you choose? Should you go for Linux web server hosting or Windows web server hosting. I have tried to compare both Linux and Windows web server hosting. Choosing between Linux and Windows web server hosting mainly depends upon your need and the nature of your website, which programming language and database are you using etc. Let's discuss in detail on choosing between Linux and Windows web server hosting.

1. Which programming language are you using?

You should choose a Linux Web Server Hosting if you are using PHP, Perl, Python, or CGI scripting. On the other hand, if you are using ASP.NET, go for Windows Web Server Hosting.

2. Which database are you using?

Mainly, the Linux Web Server Hosting accounts use MySQL database and Windows Web Server Hosting accounts use SQL Server (MS SQL). 

Advantages of Linux Web Server Hosting over Windows Web Server Hosting

The following are the advantages of using Linux based web server compared to Windows based web server:

Stable: Linux/Unix operating systems have traditionally been believed to be very stable and robust. A web site housed on a Linux operating system will have very high up-time (of the order of 99.9%). Of course, other factors such as power supply, network admin skills, and network load etc. also matter when it comes to maintaining the system uptime.

Low cost: The Linux OS comes free of cost (or at very insignificant cost, usually cost of distribution). Also, it has full fledged server, and desk top applications that comes free along with the OS. These server applications (such as FTP, Web Server, DNS Server, File Server etc.) being free, are also very stable.

Ease of use: When it comes to web hosting, it is easy to host on Linux web servers. The process of uploading and hosting is almost same for both Linux and Windows web servers. 

Easy to move between hosts: A web site designed to be hosted on a Linux based web server can be hosted on a Windows web server easily, where as the reverse is not always true.

Most widely used: Linux/Unix based web hosting is most widely used compared to Windows based web hosting.

Scalability: A web site is dynamic. Usually, a web site starts with a few pages of html and grows over a period of time to suit the customers requirements. It is preferable to design a web site keeping this requirements in mind. A web site designed for compatibility with a Linux/Unix based web server meets the scalability requirement easily without making any site wide design changes.

Disadvantage of Linux Web Server Hosting 

Less ASP and .NET support: Linux based web server is not fully compatible with Microsoft technologies. While there are many software that enable ASP.NET on Linux machines, it is far less common to find a Linux web hosting platform that supports ASP or .NET. If you are using Microsoft based technologies for your web site, it is preferable to host with a Windows based web server. 

Tuesday, January 14, 2014

TFileStream and TMemoryStream Classes in Delphi

TFileStream and TMemoryStream Classes in Delphi

TFileStream class is descendant of THandleStream and is used for manipulating file data. TMemoryStream is used for manipulating data in memory. TMemoryStream is descendant of TStream class. This class introduces read-only property called Memory which is of pointer type. So, you can get direct access to memory maintained by TMemoryStream.

TFileStream class usage in Delphi

Following is the simple delphi program to load a file name 'c:\mydata.dat' for read access into stream and then read 4 bytes from beginning of file into a variable.

var
  afile_st : TFileStream;
  temp_data: cardinal;
...
afile_st:=TFileStream.Create('c:\mydata.dat', fmOpenRead);
try
  //make sure file pointer is on beginning of file
  afile_st.Seek(0, soFromBeginning); 
  //read buffer
  afile_st.ReadBuffer(temp_data, 4);
finally
  afile_st.Free;
end;

TMemoryStream class usage in Delphi

Use TMemoryStream to store data in a dynamic memory buffer that is enhanced with file-like access capabilities. TMemoryStream provides the general I/O capabilities of a stream object while introducing methods and properties to manage a dynamic memory buffer. 

Following is the simple delphi program to load data from a file to memory.

var 
  memStream:TMemoryStream;
  ...
  memStream:=TMemoryStream.Create;
  try
   LoadFromFileToMem('C\myFile.dat',memStream);  
  finally
   memStream.Free;
  end;
  
procedure LoadFromFileToMem(const filename:string; memStream:TMemoryStream);
var 
  afileStream:TFileStream;
begin
  afileStream:=TFileStream.Create(filename, fmOpenRead);
  try
    memStream.CopyFrom(afileStream);
  finally
    afileStream.Free;
  end;
end;

Saturday, January 11, 2014

Top 4 Dedicated Web Server Hosting Services Providers

Top 4 Dedicated Web Server Hosting Services Providers

If you have decided to choose dedicated web server hosting for your business application, following is the review of top 4 dedicated web server hosting services provider which might help you in choosing the best dedicated web server hosting provider for your business application. We have reviewed 100TB, InMotion, HostV and SingleHop in terms of their features, performance, reliability and customer service support.

1. 100TB

100TB is a web hosting company that was started in a bid to offer hosting services to people from all over the world. The company since its inception has been able to compete with those already existent companies and has still managed to grow steadily thus getting a slot among the industry leaders in web hosting.

The 100tb web hosting company has been in the hosting industry for several years now and has managed to keep its reputation among the leaders in the web hosting industry. Moreover, the company offers clients great customer support that ensures that their stay at the company is comfortable. 100Tb more so has a reputation of have the latest and state of the art technological equipment in their data centers thus high performance.

Features

1000tb web hosting company prides itself in offering clients the best web hosting services to best suit their needs. This is why the company employs use of the most cutting edge technology and state of the art equipment in their data centers. The servers that the company uses are given back up by redundant state of the art data centers. Better yet, the company offers cloud servers and dedicated servers.

The company offers 100TB worth of bandwidth and unrestricted tier on a monthly basis. Some of the other features of the 1000tb web hosting include, a fast replacement of hardware, SSH Full Root and also FTP. It supports both Windows and Linux based hosting and a user can have up to 8 IP addresses. For Linux, 1000tb offers Web min and has a carrier and redundant network. The company employs the use of different control panels, c Panel for Linux at $25 monthly, PLESK that holds up to 30 domains costs$15 monthly and PLESK supporting 1000 domains goes for $20 monthly. The clients are also given a free domain that one can use for life.

Performance

Customers at 100tb web hosting services receive an up time of up to 99.9% uninterrupted which ensures that clients are well served. With an up time of 99.95 it is guaranteed that the clients’ websites are up and running throughout without interruptions. Their servers are very powerful, of the best quality and high performance which ensures that the services that clients get from them are the best available and on top of that the performance it offers clients is dependable and thus the best. More so, the company offers several free services that clients can enjoy thus making their stay at 100tb more comfortable.

Reliability

The company uses high quality and state of the art hardware and servers to ensure that their customers’ needs are adequately catered for. There are some free services that the 1000tb web hosting company offers their clients such as installation or re installation of a customer’s operating system, Free installation and re installing of a client’s control panel along with free transfer from one host to another.

Customer Service

1000tb more so, ensures that the web hosting needs of their clients are the most important thing and thus customers can access 24/7 customer support from their technical team both in the USA and UK.. Clients can reach the technical team either via e-mail or telephone and on top of that clients have a toll free number they can call to reach 1000tb web hosting.

2. InMotion

The Inmotion Incorporated web hosting company was founded back in the year 2001 and has swiftly grown since then. Since it was started, the company has been able to steadily gained prominence n the web hosting industry to become a leader in offering web hosting services. They offer great hosting services to all types of clients, be it for individual or business use. The company offers great and affordable hosting services to clients from every part of the world. They look to offer affordable hosting services especially to small and medium business enterprises around the world.

The company has a reputation of offering great technical and customer support as they make their clients the primary focus when offering their services.  Furthermore, Inmotion web hosting company upholds a reputation as having great up time statistics which are indisputable. They also have feature-rich hosting services which are designed to attract customers and retain them at the hosting company, along with give them all rounded hosting services. Inmotion is also known as a trusted and reliable web host throughout the world.

Features

Inmotion web hosting company employs the use of the renowned c-Panel control panel which is the most preferred in the industry. The c Panel is widely use thanks to its great features and better yet the user friendly interface which makes it very easy to use. The company offers their clients web hosting services that is packed with e commerce features. On top of that, each client gets a free domain name on setting up an account with the company. The company offers three types of hosting services: VPS hosting, shared hosting and dedicated hosting services to their clients. Inmotion web hosting company has never failed to deliver on their advertised network up time of 99.9% that is advertised on their web site. Other features include: free domain registration, easy data backup and restore for every clients’ website, high speeds for professional hosting for businesses, various hosting plans to suit each clients needs, Word Press, Joomla and Drupal and last but not least secure hosting for e-commerce websites. Inmotion web hosting company web sites are powered by Unix and Linux Operating Systems.

Performance

The company’s up-time is just great which is a plus as clients do not have to experience any down time and their web sites are up running all through the day. Clients more over get the data backed up on a daily basis to ensure that it is safely kept just in case of anything.  In case the company’s performance does not suit the clients needs before 90 days are over, there is a money back guarantee by the company to refund unsatisfied clients. Clients are offered a guaranteed network up time of up to 99.9% which ensures that clients websites are running throughout.

Customers are able to ask for help 24/7 by phone, calling their toll-free phone number, via live chat, emails or community forum. Are you a ‘do it your self’ person? Their knowledge base is right for you; here you can find out how to get started with your hosting account, learn from video tutorials and improve your webmaster skills.

Reliability

The company’s reliability can only be described as awesome. Their clients get extraordinary customer and technical support from the customer care team round the clock, which ensures that their clients needs are adequately looked after. More so, their network up-time statistics are great. In short, the company’s servers rarely ever collapse, they are always up and thus very reliable. Clients furthermore get daily data back ups which help protect their information better.

Customer service

Clients of Inmotion web hosting company are entitled to rounded the clock U.S based support and more over have access to a toll free number that they can use to reach the customer care desk. The customer care desk is available 24/7 regardless of what day of the year it is.The customers are more over entitled to a 90 day money back guarantee in case they are unsatisfied with the services offered.

3. HostV

HostV web hosting company was founded in 2007 and was part of the Cirtex Corp which was started back in 2003. HostV prides itself in employing the most experienced staff in the industry and offering quality hosting services along with outstanding customer care. These are just but a few of the reasons why the company has grown to become a leader in offering VPS hosting services and dedicated server hosting services. The company operates from two very well equipped data centers in the U.S, one in New Jersey and the other in Chicago.

HostV web hosting company is held in high esteem when it comes to expert staff, as they employ only the best and the most experienced in the industry. On top of that they are known to use only the latest technologies in their hosting services thus powerful and high quality hosting services. They are also seen as among the leaders in offering VPS and dedicated server hosting.

Features

The company offers dedicated server hosting services along with VPS hosting services and for both, the company offers clients three basic hosting plans that they can choose from, the Z 1 hosting plan, Z 2 hosting plan and the Z 3 hosting plan. Some of the features of their Virtual private servers include: Full Root or rather administrator access, the use of powerful Quad Core Nodes and are powered by Virtuozzo with 16 Linux distro and better yet they are well equipped with a variety of features to suit the various needs of clients. On top of that, all software comes readily installed and is updated and configured to the suit clients needs. Their dedicated servers also come with some features that set them apart and make them among the best in the industry and these are the fact that they run on a Linux CentOs, use the world renowned c Panel control panel and on top of that allow for Full Root administrator access and better yet they come with independent servers and services. HostV’s hosting services further come ready with all the latest technologies in the industry from programming languages such as Ruby, Perl, Python, CGI,PHP, MySQL, FFMpeg, Red5,SSH, SFTP, SSL, FTP, POP3, Imap, Smtp, Web-mail along with the option of choosing between two control panels: the cPanel  and the WHM and so much more.

Performance

The hosting services at HostV web hosting company are quite reliable considering that they operate at a fairly good hosting speed and are full of various features to suit the varying client needs. The company also offers a guaranteed network up time of 99.9% along with an expert team of engineers with experience to look into the various needs of their clients. They employ the use of powerful servers to ensure that their clients get the speed, power and quality that they are looking for.

Reliability

A network up time of 99.9% ensures that the clients of the company have their web sites online throughout, regardless of what time of day or night it is. They also show fairly good hosting speeds and great customer and technical support.

Customer service

HostV has a very dedicated customer care desk that can be reached round the clock, all through the day and night to cater for the needs of their clients. The technical team of experts is also very responsive and available to cater for technical issues that may be curbing their clients.

4. SingleHop

The Singlehop web hosting company was founded back in the year and is based in Chicago. The company is among the industry leaders when it comes to offering hosting services. It offers a variety of services ranging from dedicated server hosting, cloud computing services, managed hosting and so much more. The company has been steadily growing at a very fast rate since its inception back in the year 2006 and has been able to maintain a portion of the market share even in an industry that is swamped with companies. The company is an industry leader in offering cloud computing services to clients from all over the world and thus competes with the giants in the web hosting industry.

Single Hop has created a reputation in the web hosting industry as the fastest growing hosting company that offers great hosting services. On top of that, the company uses powerful state of the art technology equipment to power their hosting services. Great up time statistics and outstanding customer care are some of its strong points.

Features

Single Hop offers cloud hosting that comes with 25GB of space, unlimited e-mail accounts, a 99.9% network up time guarantee and 3000 GB of bandwidth for only $149 each month. They use a self created control panel known as LEAP that provides a uniform platform for the deployment and management of the cloud infrastructure. The company more over has come up with an Ajax platform that allows clients to open a number of windows simultaneously to control new tasks from restarting the servers to checking with the bandwidth and graphs and so forth. The company offers their clients a 30 % discount coupon and more so provides 24/7 customer care support via live ticket and telephone support in less than 15 minutes. Some of the other features that the company has to offer include the use of powerful SATA  disks, their servers are either single core, dual core or quad core.

Performance

The Single Hop web hosting company has very good features and uses the latest and state of the art equipment in their data centers to ensure that clients get the best, powerful and speedy hosting services available in the industry. More so the company offers an undisputed network up time of up to 99.9% which ensures that their servers are never off line.

Reliability

Single Hop web hosting company uses state of the art technology and leaves nothing to question in terms of powerful, speedy and feature rich hosting services which form the basis of a dependable we host. On top of that, their customer care and technical desk are always at the clients disposal in order to cater for their needs.

Customer service

Single Hop’s customer care desk and technical support team are at the clients disposal all day and night to look after the needs of their clients. They are more very responsive to client queries and can be reached throughout the day and night. The technical team is made up of experts in the industry and thus the clients are well catered for.

Dedicated vs Managed vs Colocation Web Server Hosting Services

Dedicated vs Managed vs Colocation Web Server Hosting Services

Which form of web server hosting service to choose: Dedicated, Managed or Colocation? The answer of this question is very difficult and it totally lies upon your business need. In this article, we will compare Dedicated, Managed and Colocation Web Server Hosting Services in terms of their cost, flexibility, uptime, reliability, storage space, bandwidth, software and hardware requirements etc. 

What is Managed Web Server Hosting?

Managed Web Server hosting means that the hosting provider will manage everything that is required to give you an online presence for your website - the hardware (web server and networking equipment), software (web server and email software, site creation software), the internet backbone connection, maintenance, upgrades, backups, and so on. Once signed up, all you have to do is to create your web pages, set up your email boxes, and order any other additional services you want.

What is Dedicated Web Server Hosting?

As with managed hosting, your provider owns and manages the hardware, and takes care of all the infrastructure details (networking and internet connectivity), backups and maintenance. But in this case, the entire server is dedicated for just your use. Typically, the software installed on the server will allow you to host more than one website, and you are allowed full control over how the server itself functions, which is NOT the case with managed accounts. Your IT team can manage all the software and hardware installations.

Dedicated servers are leased on a monthly or yearly basis. The most common use for a dedicated server is for Web services. Dedicated server offerings are typically limited to server configurations that are popular and sell quickly as most providers don't want to stock server inventory for long periods of time. Most dedicated server providers offer very low end equipment that is not backed by any type of SLA. The service is a best effort service. Additionally, dedicated servers are usually provided as an unmanaged service. This means you are responsible for managing all aspects of the server. If you need additional management assistance, additional fees will be incurred. Businesses that host multiple Web sites are excellent candidates for dedicated servers. Be aware that few if any low priced dedicated server solutions come with any guarantee. If your business and your clients expect a high degree of uptime assurance, a colocated solution will be better in the long run.

What is Colocation Web Server Hosting?

Businesses who colocate use their own equipment. The equipment is sent to the colocation provider's facility, installed and typically not touched by the provider unless there is an issue that requires immediate intervention or unless the business has negotiated a management agreement with the provider. Equipment is typically owned by the business that is securing colocation services. In addition, software licenses are owned by the business that owns the equipment. Colocation gives your business the flexibility to plan for growth, to incorporate mirroring, load balancing and other options that are not available on a leased basis.

Comparison between Managed, Dedicated and Colocation Web Server Hosting

Although it is less expensive to lease a dedicated server, managed hosting provides extra features and services that make it a valuable investment. For instance, it can greatly reduce the resources required to power your ecommerce website. With a managed hosting, you will not require an IT staff to run the server and you will not have to buy the hardware required  for the server infrastructure as the host provides the hardware and you can choose your needed software applications. As well as saving on operating costs, you will save on the office space that would normally be required to maintain the physical equipment.

With a dedicated server, you have more freedom and control over your server, however, this means it will be a 24/7 job to maintain the server, including its security. With a managed hosting solution, you will have the time to expand your website instead focusing on the technical administration and monitoring. You also save time because the host takes care of administering the server 24/7 allowing you to focus on growing your business. It is a cost efficient and trouble-free way to host a website and you can be assured of effective security. As well, you do not have to have a fully managed hosting service as there are partially managed hosting solutions available so you can have the control you need.

Why Choose Colocation Hosting?

There are many, many factors that will go into deciding which solution (Colocation, Dedicated and Managed Hosting) makes the most sense for you, making it nearly impossible to employ a simple 'checklist' approach. But, there are some major considerations which can get you going in the right direction, as follows.

YOU NEED ROBUST OR CUSTOM HARDWARE AND/OR LOTS OF BANDWIDTH. 

A big limitation of Managed Hosting is that your provider will typically select the hardware and software that you get, though they may give you some choices as to the 'class' of product. If you only wish to host a simple home page, almost any basic server setup will do. But if you need to host database applications, audio/video streaming, websites like search engines and portals which generate lots of traffic, online applications, or anything else that requires lots of bandwidth or hardware resources, typical managed solutions are likely to come up short. With Colocation, YOU are in control and can implement the hardware and software that will give you the most bang for your buck - and you can get it from the vendor of your choice. While the initial entry cost for a Colocation plan can be high as compared to a simple managed plan, you'll generally find that, when dealing in large amounts of bandwidth, you'll get a better deal with Colocation.

YOU NEED TO SET UP SERVER CLUSTERS, LOAD BALANCING, REDUNDANT HARDWARE, ETC. 

These kinds of things are beyond the realm of the typical Managed Hosting provider. They have a cookie-cutter approach, and can host thousands of home pages cheaply, but enterprise-class stuff like this is usually too exotic for them. Colocation allows you to use multiple servers, dedicated internet appliances (such as firewalls, load balancers, etc) and custom devices, and to interconnect these as you see fit, even creating your own mini-network, which you then uplink to the public internet using the interface provided by your Colocation vendor. 

YOU NEED TO HOST CONTENT OR SEVICES NOT ALLOWED BY MOST MANAGED HOSTING PROVIDERS. 

It is not uncommon for Managed Hosting providers to place restrictions on the types of content and services they will let you host. Many will not allow any adult content, or hosting of IRC channels, for instance. On the other hand, Colocation service providers generally will allow any content or service, as long as it's legal.

YOU NEED A DEDICATED TELCO LINE TO YOUR SERVER(S). 

If you simply want a dedicated line for remote control or monitoring, or you are setting up a VoIP server, a VPN or some other special networking application, a Colocation provider - especially one who uses a carrier-neutral facility (meaning that the facility is available for service from all telcos), regularly does this and will be able to accommodate you.

YOU WANT FREEDOM FROM ARBITRARY OR COSTLY LIMITS. 

As you may have gleaned at this point, Managed Hosting providers will typically impose a range of limits on your service. They may seem insignificant at first, but when you find yourself bumping up against limits on the number of domains you can host, types of services or content you can use, processor overhead available to you, IP addresses available to you, etc, things can get frustrating - and if these limits can be lifted, you will pay for the privilege! Colocation typically imposes no such limits - you will pay more if your power/cabinet space or bandwidth usage increases, but you will enjoy 'bulk rates' that will become even more cost-effective as you grow.

YOU WANT/NEED TO BE IN CONTROL. 

There could be a thousand reasons why, but the bottom line is that YOU want to be in the driver's seat of your Internet presence project. Colocation puts you there.

Friday, January 10, 2014

ReportBuilder 15 and Delphi XE4: Report Objects

ReportBuilder 15 and Delphi XE4: Report Objects

I am using ReportBuilder 15 into Delphi XE4. ReportBuilder is a reporting tool which is used to print reports in Delphi applications. I just came across various Report Objects like TppDBText, TppDBImage, TppDBBarCode, TppDBCalc, TppDetailBand, TppFooterBand, TppHeaderBand, TppGroup, TppImage, TppLabel, TppLine, TppMemo, TppRegion, TppShape, TppSubReport, TppTitleBand, TppSummaryBand and TppSystemVariable. Lets try to understand all these Report Objects of ReportBuilder 15.

1. TppDBText

The TppDBText component is a data-aware report control that is used to print text from a database field. The database field that is printed is the value of the DataField property. 

To avoid printing the same data on consecutive detail lines set the SuppressRepeatedValues property to true. When SuppressRepeatedValues is set to True you can enable the field value to reprint on the first detail line of a new page by setting the ReprintOnSubsequent property to True.

Use the DisplayFormat property to control how the text is formatted. 

How the text of the caption aligns within the label is determined by the value of the Alignment property. 

You can have the control resize automatically to fit a changing caption if you set the AutoSize property to True. 

Set the WordWrap property to True if you the want the text to wrap rather than be truncated to fit inside the control.

2. TppDBImage

The TppDBImage component is a data-aware report control that is used to print a graphical image stored in a database field, such as a BLOB field. The image that is printed is determined by the value of the DataField property. 

Set the Stretch property to True if you want to scale the picture to fit inside the report control.

3. TppDBBarCode

Use this object to print bar codes on your report for numeric data.  All data fields will use the TppDBText object.

4. TppDBCalc

Used for simple database calculations (Sum, Min, Max, Count and Average). The value can be reset when a group breaks using the ResetGroup property.

The TppDBCalc component is a data-aware report component used to perform common report calculations and print the resulting value. The calculation is performed based on the value of the field specified in DataField Use the DBCalcType property to indicate the necessary calculation.

Calculations such as group totals are available through ResetGroup property. Each time the field value for the Reset Group changes (breaks), all associated DBCalc components are reset to zero.

Use the DisplayFormat property to control how the text is formatted.

Text alignment of the caption is determined by the value of the Alignment property. You can force the control to resize to fit a changing caption by setting the AutoSize property to True.

You can control the appearance of this component (Font, Alignment, etc.) at design-time by using the Format Bar of the Report Designer. The Format Bar also allows you to set the DataField property from a drop down list box at the far left. You can also set key properties by using the speed menu. To access the speed menu, position the mouse cursor over the component and click the right mouse button.

5. TppDetailBand

The detail band prints multiple times on the page until all page space is utilized or an ending condition is detected. The Detail Band is used for printing multiple records.

This object is created automatically along with the TppHeaderBand and the TppFooterBand.  

NOTE: TppSubReports may be placed ONLY in a Detail Band.

6. TppFooterBand

The Footer Band will print at the bottom of each page.

This object is created automatically along with the TppDetailBand and the TppHeaderBand.  

NOTE: If you need the last page of a report to contain additional information, create a TppSummaryBand.

7. TppHeaderBand

The Header Band will print at the top of each page. This object is created automatically along with the TppDetailBand and the TppFooterBand.  

8. TppGroup

Use this feature to section your report. Each group can start on its own page and you can force group items to stay together. 

9. TppImage

Use this object to put a picture on the report format. This is what you would use if you want to print a logo or something similar that wouldn't change.The image that is printed is determined by the value of the Picture Property. 

Set the AutoSize property to True if you want the report control to resize to accommodate the size of the picture. 

Set the Stretch property to True if you want to scale the picture to fit inside the component.

10. TppLabel

Use this object to put text directly into the report.  Whatever you put into the Caption property will print on the report.  If you want to put data from your program into the report you would use the TppDBText or TppDBBarCode object instead.

The TppLabel component is a report control that displays text on a report. Report labels are typically used for report titles, column headings, group headings, etc. The text of a label is the value of its Caption property. 

How the text of the caption aligns within the label is determined by the value of the Alignment property. 

You can have the label resize automatically to fit a changing caption if you set the AutoSize property to True. 

Set the WordWrap property to True if you the want the text to wrap rather than be truncated to fit inside the control.

You can control the appearance of this component (Font, Alignment, etc.) at design-time by using the Format Bar of the Report Designer. The Format Bar also allows you to set the Caption property from an edit box at the far left. You can also set key properties by using the speed menu. To access the speed menu, position the mouse cursor over the component and click the right mouse button.

11. TppLine

Use TppLine to print vertical or horizontal lines. The orientation of the line is determined by the value of the Position property. 

Use the Style property to control whether a single or double line is printed. 

The Pen property is used to control the line's color and width. 

Set the StretchWithBand property to True if you want the Height of the line to stretch as the band stretches (this only occurs when a memo component is stretching and the band PrintHeight property has been set to phDynamic).

The TppLine component is very useful for giving reports a distinctive, professional look. Double Style lines are great for underscoring report totals.

Use the Report Designer's Format Bar to set the Position property and to BringToFront or SendToBack. 

Use the Graphics Palette to set the Pen Color (PC) and Pen.Width. To access the speed menu for this component, position your mouse cursor over the component and click the right mouse button.

Use this object to draw a line on the report.  This would generally be used to put lines above totals, between values, etc.

12. TppMemo

Use this object to put a large amount of text directly into the report. Whatever you put into the Lines property will print on the report. If you want to put data from your program into the report you would use the TppDBText or TppDBBarCode object instead.

The TppMemo component is a report control that prints multiple lines of text on a report. The text of a memo is the value of its Lines property. 

How the lines of text align within the memo is determined by the value of the Alignment property. 

The amount of space between the lines within the memo is determined by the value of the Leading property. 

You can enable the height of the memo to stretch automatically by setting Stretch to True and the parent Band PrintHeight property to phDynamic.

At design-time you can use the Report Designer's Format Bar to control the appearance of the report memo. Use the Object Inspector to set the value of the Lines property. Press the right mouse button to access a speed menu and set other key properties for this control.

13. TppRegion

Use the Region object to control whether items print or not and to give objects below the ability to move up if the region doesn't print. Generally you will put one or more TppDBText or TppLabel objects within a Region. Then, if you turn the Region off, none of the items within the region will print.

14. TppShape

Use this object to draw a shape on the report. This could be used to draw boxes around fields, etc.

15. TppSubReport

Use the SubReport object to create compound reports.  By placing one or more SubReports in a Detail Band (on any page), the program will look for a buffer that uses the same RB_NUM as the Tag property for that SubReport.  Any records waiting (they are created with the Output_Report_Data and Update_Report_Data commands) will be printed.  The Detail Band can contain a combination of text (TppLabel), objects (such as TppDBText) and SubReports.

16. TppTitleBand

This object is created automatically for all SubReports that you add to your Report Form.  The Title Band prints just once, when the SubReport starts.  Don't forget, the Header Band created on the main page will still print on every page.

17. TppSummaryBand

This object is created automatically for all SubReports that you add to your Report Form.  The Summary Band prints just once, at the end of the SubReport.  Don't forget, the Footer Band created on the main page will still print on every page.

18. TppSystemVariable

This is a specialized object that you can use to put date, time or page numbers on your report.

Thursday, January 9, 2014

ReportBuilder 15 and Delphi XE4: TppDBImage Component and its Properties

ReportBuilder 15 and Delphi XE4: TppDBImage Component and its Properties

The TppDBImage component is a data-aware report control that is used to print a graphical image stored in a database field, such as a BLOB field. The image that is printed is determined by the value of the DataField property. 

Properties of TppDBImage Component

AutoSize: If this is checked, the object will resize itself automatically, if the text that will print on the report grows too large for the size you specified at design time.

Center: Center the picture in the middle of the space provided. The default setting is checked.

DirectDraw: If you are having problems printing the object on your printer then check this property. It will use a different method of printing and may render the picture better.  The default setting is unchecked.

MaintainAspectRatio:The aspect ratio is the ratio of the width of a shape to its height.

Stretch: Set the Stretch property to True if you want to scale the picture to fit inside the report control.

DataField: Field of the database to be printed.

ShiftWithParent:

If you have a TppDBText object in a band with the WordWrap and AutoSize both checked and, if the band the object is placed on has it's PrintHeight property set to phDynamic, this property (ShiftWithParent) will control whether this object will print in the same relative location as you have it designed. 

For example, if you have a TppDBText object designed as a single line on the report form, and, another TppDBText object follows it, directly underneath.  Two possibilities could occur:

1.  If the ShiftWithParent property is not checked for the second TppDBText then it will print over the previous object.

2.  If the ShiftWithParent property is checked the second object will print directly under the first as you expected.

The default value is unchecked.

Transparent: If this property is checked, anything behind the object will be visible where the object has blank spaces.

Other basic properties are Font, Height, Left, Name, Visible, Width, Tag, Top etc.

Types and Examples of NoSQL Databases

Types and Examples of NoSQL Databases

NoSQL databases are growing with very rapid speed because of their exciting features like more flexibility and scalability, schema-free architecture, easy replication support, simple API, consistent / BASE (not ACID), support for big data and more. Key-Values Stores, Column Family Stores, Document Databases, Graph Databases are the types of NoSQL Databases. MongoDB, CouchDB, CouchBase, Cassandra, HBase, Redis, Riak, Neo4J are the popular NoSQL databases. MongoDB, CouchDB, CouchBase are document-oriented NoSQL databases, Redis and Riak are key-value stores, Cassandra and HBase are column family stores and Neo4J is a graph database. Lets discuss these types of databases in detail.

1. Key-Values Stores

The main idea here is using a hash table where there is a unique key and a pointer to a particular item of data. The Key/Value model is the simplest and easiest to implement. But it is inefficient when you are only interested in querying or updating part of a value, among other disadvantages.

Examples: Tokyo Cabinet/Tyrant, Redis, Voldemort, Oracle BDB, Amazon SimpleDB, Riak

2. Column Family Stores

These were created to store and process very large amounts of data distributed over many machines. There are still keys but they point to multiple columns. The columns are arranged by column family.

Examples: Cassandra, HBase

3. Document Databases

These were inspired by Lotus Notes and are similar to key-value stores. The model is basically versioned documents that are collections of other key-value collections. The semi-structured documents are stored in formats like JSON. Document databases are essentially the next level of Key/value, allowing nested values associated with each key.  Document databases support querying more efficiently.

Examples: CouchDB, MongoDb

4. Graph Databases

Instead of tables of rows and columns and the rigid structure of SQL, a flexible graph model is used which, again, can scale across multiple machines. NoSQL databases do not provide a high-level declarative query language like SQL to avoid overtime in processing. Rather, querying these databases is data-model specific. Many of the NoSQL platforms allow for RESTful interfaces to the data, while other offer query APIs.

Examples: Neo4J, InfoGrid, Infinite Graph