Book Image

Ext JS Data-driven Application Design

By : Kazuhiro Kotsutsumi
Book Image

Ext JS Data-driven Application Design

By: Kazuhiro Kotsutsumi

Overview of this book

Sencha Ext JS is an industry leader for business-standard web application development. Ext JS is a leading JavaScript framework that comes with a myriad of components, APIs, and extensive documentation that you can harness to build powerful and interactive applications. Using Ext JS, you can quickly develop rich desktop web applications that are compatible with all major browsers. This book will enable you to build databases using information from an existing database with Ext JS. It covers the MVC application architecture that enables development teams to work independently on one project. Additionally, the book teaches advanced charting capability, enabling developers to create state-of-the-art charts just once. These charts are compatible with major browsers without the need to rely on plugins. This hands-on, practical guide will take you through the mechanics of building an application. In this instance, we will use this application to manage existing data structures in the form of a database. You will begin by making SQL and tables in MySQL and will then move on to developing the project environment and introducing Sencha Cmd. You will learn to create a form to input data and monitor the state of the input, while seeing how Ext Direct will validate the form on the server side. Finally, you will have a working application that is ready for you to customize to suit your needs. You can also use it as a template for any future projects when you need a similar database.
Table of Contents (14 chapters)
Ext JS Data-driven Application Design
Credits
Foreword
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Preface

Ext JS is a leading JavaScript framework that comes with a wealth of components, APIs, and extensive documentation that you can harness to build powerful and interactive desktop applications. By using Ext JS, you also quickly develop rich desktop web applications that are compatible with all major browsers. This book will take you step-by-step through building a clear and user-friendly sales database in Ext JS using information from an existing database.

Rather than just explaining MVC, this book is a hands-on, practical guide that will take you through the mechanics of building an application. By the end of the book you will have a working application that is ready to customize. You can also use the architecture from this book in future projects to simplify controls, improve maintenance, and expand applications with ease.

You should be able to grasp the idea of the example data structure introduced in this book. This book has been written on the premise that you are familiar with JavaScript and have basic operational knowledge of MySQL.

What this book covers

Chapter 1, Data Structure, focuses on preparing the basic foundations of your database. It will deal with an existing virtual company's data structure and the making of SQL and tables in MySQL.

Chapter 2, Planning Application Design, develops the environment of the project, while at the same time introducing Sencha Cmd. You will learn to design a simple application and optimize Ajax requests in order to use Ext Direct and Ext.util.History to control the screen with a URL.

Chapter 3, Data Input, discusses making a form to input data, then transmit that data to a server via Ext Direct. You will also learn to monitor the state of the input and how Ext Direct will validate it on the server side.

Chapter 4, List and Search, speaks mainly about displaying data that we read in Chapter 3, Data Input. However, users will no doubt want to search the data, so this chapter will also introduce data searches.

Chapter 5, Reporting, focuses on the implementation of the report displaying it with four different types of graphs on the dashboard.

Chapter 6, Data Management, focuses on the implementation of data import/export, done to restore or to keep a backup of the data.

What you need for this book

For using this book, you will need to be familiar with JavaScript and have a basic operational knowledge of MySQL.

Before you start reading, you need to have the following setup in your system:

  • The most recent version of Sencha Ext JS with GPL. You can download this from the Sencha website available at http://www.sencha.com/products/extjs/download/. This book was made based on Ext JS Version 4.2.2.

  • Any good code editor.

  • A web browser, any modern web browser is okay. In this book we are using Google Chrome, so we suggest that you use Google Chrome as well, if possible.

Who this book is for

This is a tutorial for intermediates in Sencha Ext JS that explains the process of building a UI that deals with an existing database.

This book is for anyone who wants to be able to systematically learn how to construct an application from the first step of implementation.

Conventions

In this book, you will find a number of styles of text that distinguish between different kinds of information. Here are some examples of these styles, and an explanation of their meaning.

Code words in text are shown as follows: "The Bill table is almost the same as the Quotation table."

A block of code is set as follows:

UPDATE
    users
SET
    email='[email protected]',
    passwd=SHA1(MD5('password')),
    lastname='Kotsutsumi',
    firstname='Kazuhiro',
    modified=NOW()
WHERE
    id=1

Any command-line input or output is written as follows:

# The name of the package containing the theme scss for the app
app.theme=ext-theme-classic
↓
# The name of the package containing the theme scss for the app
app.theme=ext-theme-neptune

New terms and important words are shown in bold. Words that you see on the screen, in menus or dialog boxes for example, appear in the text like this: "By doing this, you can keep deleting just by continuing to click on the Delete button."

Note

Warnings or important notes appear in a box like this.

Tip

Tips and tricks appear like this.

Reader feedback

Feedback from our readers is always welcome. Let us know what you think about this book—what you liked or may have disliked. Reader feedback is important for us to develop titles that you really get the most out of.

To send us general feedback, simply send an e-mail to , and mention the book title via the subject of your message.

If there is a topic that you have expertise in and you are interested in either writing or contributing to a book, see our author guide on www.packtpub.com/authors.

Customer support

Now that you are the proud owner of a Packt book, we have a number of things to help you to get the most from your purchase.

Downloading the example code

You can download the example code files for all Packt books you have purchased from your account at http://www.packtpub.com. If you purchased this book elsewhere, you can visit http://www.packtpub.com/support and register to have the files e-mailed directly to you.

Errata

Although we have taken every care to ensure the accuracy of our content, mistakes do happen. If you find a mistake in one of our books—maybe a mistake in the text or the code—we would be grateful if you would report this to us. By doing so, you can save other readers from frustration and help us improve subsequent versions of this book. If you find any errata, please report them by visiting http://www.packtpub.com/submit-errata, selecting your book, clicking on the errata submission form link, and entering the details of your errata. Once your errata are verified, your submission will be accepted and the errata will be uploaded on our website, or added to any list of existing errata, under the Errata section of that title. Any existing errata can be viewed by selecting your title from http://www.packtpub.com/support.

Piracy

Piracy of copyright material on the Internet is an ongoing problem across all media. At Packt, we take the protection of our copyright and licenses very seriously. If you come across any illegal copies of our works, in any form, on the Internet, please provide us with the location address or website name immediately so that we can pursue a remedy.

Please contact us at with a link to the suspected pirated material.

We appreciate your help in protecting our authors, and our ability to bring you valuable content.

Questions

You can contact us at if you are having a problem with any aspect of the book, and we will do our best to address it.