WebSmart Fundamentals Training Class in Denver, CO

We will be holding a WebSmart Fundamentals training class in Denver, Colorado the week of July 10-13 (Tuesday to Friday). If you would like to participate, visit our website to sign up now.

The WebSmart Fundamentals class is a comprehensive course that will give you a working knowledge of all the key areas you need to be familiar with in order to begin developing applications with WebSmart. The course begins with an introduction to HTML (page structure elements, tables, images and links), then continues on to creating simple WebSmart programs. As you familiarize yourself with the tool, you'll add more features to your application: passing parameters between programs, customizing file access, and then prompting users for input and validating what they enter.

The class concludes with exercises in securing applications, using SQL, and using WebSmart’s Change Management interface. This class also includes a session on the WebSmart interactive debugger.

This class will be held at a client's site, just north of the city center. The airport to fly into is Denver International (DEN), and nearby hotels include the MarriottOpens new window, a Hampton InnOpens new window, and a Holiday InnOpens new window.

If you have any questions about the location, content or pre-requisites for these classes, please contact Tech Support.


Sign up for the WebSmart PHP Beta

BCD recently announced the upcoming release of an exciting new application development tool: WebSmart PHP. The first wave of WebSmart PHP betas have already shipped, and we are now seeking additional candidates to participate in the WebSmart PHP beta test. If you haven't signed up to receive the beta yet, fill out the Request for PHP Information form at our website and we'll contact you with instructions on how to download the software.

What is WebSmart PHP?
WebSmart PHP is a development tool for creating PHP applications that run on the System i and other PHP-supported platforms such as Linux, Unix and Windows. More than just an editor, WebSmart PHP provides application frameworks and composition tools that help you construct complete, working programs with no PHP coding experience required. It guides you through every step to create powerful dynamic web apps. It’s built for professional application development which is reflected in the robust feature set not found in typical PHP editors. It uses the same sophisticated IDE as WebSmart ILE (though of course you'll be coding PHP, not PML) and also supports Web 2.0; Web Services, SOA, AJAX, LDAP, Mobile Computing and more.

Why Do I Need WebSmart PHP?
Even if you already own and use WebSmart ILE, there are many reasons why WebSmart PHP should become an integral part of your development cycle:
  • WebSmart PHP unlocks the door to the open source world. There are many open source PHP applications available for download, and more are being created and collaborated on every day. Until now, you've normally had to either buy a package and pay for customization, or write your own. In the PHP world, there is a third prevalent model: download free applications with their source code, and make any changes you need to, while working with other enthusiastic contributors. Sites such as http://www.hotscripts.comOpens new window list over 13,000 PHP scripts and programs, and there are many other newsgroups and lists you can join.
  • PHP programs can be seamlessly combined with ILE in the same application, allowing you to take advantage of the strengths of both environments.
  • When you create PHP programs you can take advantage of the thousands of PHP functions. PHP has been used *very* extensively to build online applications for several years now, and in that time developers have encountered and resolved most of the challenges you will face as you migrate your applications to the web.
  • There are millions of PHP programmers. When you add the option of building your web applications with PHP, your hiring base will broaden exponentially.
  • PHP also supports Object Oriented programming.
  • PHP programs are portable. With WebSmart WebSmart PHP, you can create PHP programs that will run on other servers and/or access other databases.
If your future plans include an ever-expanding online presence, adding WebSmart PHP to your toolkit will give you access to the broadest possible range of functions and tools for addressing the requirements of a feature-rich Web application.
 


OptimaConsulting
Abidjan, Ivory Coast
www.optimaconsulting-ci.com

We would like to introduce BCD's newest overseas business partner: OptimaConsulting, serving West and Central African countries.

Joseph Nongbé is a Senior Consultant with OptimaConsulting, with whom we have been working the last few months. We asked Joseph to tell us a little about OptimaConsulting, and in his response he writes: "OptimaConsulting is an African company (based in the Ivory Coast) focused on Information Systems and Technology Integration Services around AS/400 (iSeries, i5) and Linux platforms. We deliver cost-effective and iSeries Server Proven value-added solutions to customers in the West and Central African area. With experienced, high skilled, certified technical engineers dedicated to implementing solutions and support customers, we are working to deliver satisfaction to well-known customers such Nestle, FDFP, etc."

OptimaConsulting has been working with the BCD Technical and Sales teams to introduce our line of products to their area, and has already sold several software licenses.

Joseph adds: "OptimaConsulting is focusing primarily on marketing the BCD products such as WebSmart, Clover, Nexus and EZ-Pickin's, which are designed to help extend existing iSeries applications to the growing demands of today's customers; in particular, looking for Web-based solutions that don't require you to reinvent the wheel."

For more information about OptimaConsulting, please contact Joseph Nongbé by email or phone +225 05 40 45 09/ +225 22 44 42 25.

 


Why WebSmart PHP?
If you are already thinking of using PHP to develop iSeries applications, consider the following advantages to using WebSmart as your development tool:
  • BCD's System i expertise. The BCD sales and development teams have specialized in the System i family of computers for over 30 years. We understand how you think and work, and the types of applications you need to create.
  • Intelligent Templates and Wizards. There is lots of PHP code available online, and many sample applications. But putting all the pieces together to create a working program for a business environment can be a long and painful process. With WebSmart PHP you can choose from many different templates as a starting point, and the wizard steps you through the process of filling in the blanks to add fields, files, calculations and other logic. You can create your first working PHP programs, over your own files, within minutes of installing. Read more about this in Duncan Kenzie's latest article.
  • The WebSmart Central Repository. Like WebSmart ILE, WebSmart PHP has a central repository where you can define business, database and presentation rules at the database level, effectively providing powerful data modeling capabilities. Once extensions are defined in the repository the intelligent templates can exploit them.
  • Complete integration with WebSmart ILE. WebSmart PHP uses the same IDE as WebSmart ILE, so if you are already designing CGI applications with WebSmart ILE, you can immediately jump into creating PHP applications in the same environment.
  • Templates designed with a unique separation of content presentation from logic. The way WebSmart templates structure your PHP, HTML and CSS makes your code much more readable and maintainable, and allows designers and programmers to easily work together on an application without stepping on each other's toes.
These are just a few of the reasons that WebSmart PHP poses some unique advantages when developing PHP applications for the System i family. For additional information on WebSmart PHP, you can read the introductory article in the May Tech Update, or request the WebSmart PHP Datasheet. For a little background reading, review these other recent articles by Don Rima in IT JungleOpens new window and Duncan Kenzie in MC Press onlineOpens new window. IBM's article, Use PHP on System iOpens new window, is also informative and helpful.


Sign up for the WebSmart 6.5 Beta

We are preparing to release WebSmart 6.5 (ILE) and are now looking for candidates to participate in the beta.

WebSmart 6.5 includes the following features, among many other smaller items:
  • Support for working with multiple definitions and other documents in the main IDE window.
  • A new visual HTML editor.
  • An FTP interface for accessing other web development files (JavaScript, CSS, etc.)
  • Support for editing JavaScript files in the IDE (including color coding, formatting and function lists/positioning)
  • Support for Unicode data type.
  • Improvements to all templates.
  • Improvements to the Most Recently Used file list.
  • Faster generation time.
  • Improved 'undo' functionality.
If you have any questions about WebSmart 6.5, please contact Technical Support.


Signed up for myBCDsoftware.com yet?

myBCDsoftware.com has been live for almost a year now, and since its inception we have been using it to host a growing number of services and documents for our customers. When you log in to myBCDsoftware.com, you can track any technical support incidents you have reported, review your product license keys and download new software versions (without filling out the download form). The growing number of developer resources now includes documents and tips not available elsewhere on our site, as well as a list of recommended HTML, CSS and SQL resources. We also have a number of additional site enhancements in the works, including:
  • Beta-tester info pages (beginning with WebSmart PHP), where you can get the latest releases and information about the current status of the software.
  • The ability to generate short-term license keys. This has been requested by a number of clients implementing disaster-recovery programs, where they are mapping out a process to immediately activate software on another system at any time. If your system is somehow disabled at night or on a weekend, and you can't get in touch with BCD to request a license key, you'll be able to sign in to myBCDsoftware.com and generate an emergency license key to get you up and running on a different box.
  • A form to request additional printed copies of the user guides.
We plan to add these features, and many others, during the coming months. If you haven't yet taken the time to request a myBCDsoftware.com profile, visit our website to request an account.


WebSmart Feedback Request: WCM Changes and Enhancements

One of the areas of software being revised for the next release of WebSmart is the set of change management features.

If you regularly use WebSmart Change Management, please get in touch with us, and we'll send you a survey you can fill out.

We use WCM intensively in-house, and already have several of our own objectives for this project, but before we get too far we want to hear your feedback and suggestions on what you like now, and what you would like to see changed.


ProGen Plus Tip: Using a Member other than *FIRST

When your ProGen Plus program opens a file, it defaults to using a member name of *FIRST. At the Work with Files screen you can override this with another member name, or use the special value *VAR:



When you specify this value at the Work with Files screen, ProGen creates a workfield named @VM01 (for the first file). The easiest way to open a member based on a run-time value is to define a *ENTRY parameter that uses the *VARMBR work field name as the receive value. This causes the generated program to override the specified file to the member name in *VARMBR work field, prior to the file being opened in the program:



If you have several files which all need to be overridden to the same member name, you can receive the member name into a *PANEL work field. Then, using actions at the *INIT program context, you can populate multiple *VARMBR work fields with the contents of the *PANEL work field. This is useful if you have several files which all need to be overridden to the same member name.

To do this, you would specify *VAR for each file on the Work With Files panel, thus creating a *VARMBR work field for each one. Then, create an addition 10A *PANEL work field, specify this on the *ENTRY parameter list and write actions such as these at *INIT:

UPDFLD @VM01 TOMBR
UPDFLD @VM02 TOMBR
UPDFLD @VM03 TOMBR

In this example, we named the *PANEL work field TOMBR.

If you have any questions on this tip, give Technical Support a call. You can find this and many other tips in the ProGen Plus Knowledge Base at our website.


WebSmart 6.5 Feature Profile: FTP Sites

One of the new features that we have added to the WebSmart 6.5 IDE is the FTP Sites tab.

Here is an illustration of the WebSmart 6.5 IDE, where we've made the main window small for clarity:



Notice the following features:

The FTP Sites
The FTP sites tab is visible at the bottom left of the IDE. In this illustration we have defined several sites, and are currently about to open the file print.css in the websmart/idaho/css folder. For this FTP connection, the initial folder is set to /esdi/websmart/, and we're using it to quickly access the style sheets and javascript associated with our definitions. We have also created additional FTP connections to other locations.

In the second box on the right you can see the CSS references in the HTML that are pointing to the files we're about to open from the FTP tab. One of the important advantages to using WebSmart PHP to create your applications is how these templates consistently reference external JavaScript and CSS files. The ability to define FTP connections to the locations where all these files exist makes it easy to manage all the types of changes you need to make your application.

Multiple Definitions and Files Open in the IDE
In the box at the top you can see that we have both ILE and PHP definitions open, as well as two generated PHP files (which we also opened from the IFS). This allows us to easily compare the definitions (with their multiple PHP and HTML segments) with the final PHP code. The FTP sites interface was primarily added for WebSmart PHP, to make it easier to find and open your generated PHP programs. But for those of us who have been using WebSmart 6.5 internally for the last couple of months, this feature has already become one that falls into the 'How did I ever live without this?' category for many other reasons as well.

For further information about WebSmart 6.5 (PHP), or to sign up for the beta, please contact Technical Support.


Using Nexus Protections to Secure CGI Applications: Technical Advantages
Part 3 of a 3-Part Series

Nexus provides unparalleled flexibility in terms of the group and user setup, and a much better experience for your end-users as they attempt to log in to your application. And it does it without sacrificing security or performance.

If you have tried to configure your Apache HTTP server instance for anything more complex than a standard iSeries user profile validation, you know how challenging this can be. Nexus does in fact run using the standard HTTP Server (Powered by Apache), but it features a unique approach to security: using Apache web server extensions that plug directly into Apache. So, when you start a web server instance, you can not only use the standard directives that secure different areas of your site, but you are also allowed to define a further level of granularity in security.

When you use the Nexus web-based site administration facility you can establish authorities for documents or programs by specific users, groups or subgroups. The process works by maintaining information in a set of secure database files that are part of Nexus. This approach is analogous to customized object authority. This means you can use Nexus to establish complex, granular authorities for individual documents and users, as well as grant broad sweeping sharing options to groups of users and sets of documents sharing a particular set of characteristics. Whenever a user logs in to Nexus, every aspect of what they see is controlled by the site authorities you define. The Nexus sharing options control everything from the site-level menus and menu options to individual documents and links on your pages.

An important advantage to this approach is this can all be managed without having to stop and start the web server, and yet the security validations actually take place within the scope of the web server, not further along at the application program level. This means you can use standard ‘not authorized’ pages, and have the web server perform standard access logging for Nexus-implemented sites, adding another level of robustness to your web server security.

In Praise of Small Things: The Log Out Option
Nexus also features another apparently small yet very important feature: a log out option. When you use standard protections through your HTTP server instance configuration,you can obligate someone to sign in to access a resource, but once signed in, the only way to ensure that no one else exploits that login is to entirely close the browser window.

So if in the midst of navigating the Web you log in to your iSeries to see a document or run a program, until the time that you close that browser session you are exposed to the possibility of someone else using your PC to re-access that same link. The Nexus log out option allows you to avoid this; it cannot be circumvented using the browser history or the Back button.

Other Security Features
Other technical advantages to using Nexus to secure your online content include:
  • All documents, portlets, pages and menus can be individually secured from unauthorized access. Site pages or particular paths can be explicitly allowed or denied access, at the group or user level.
  • Because security is implemented as extensions to the iSeries HTTP server (Powered by Apache) configuration, there is no “back-door” means of circumventing it.
  • If you are creating a public site Nexus allows you to create a generic, limited authority Guest user, allowing casual visitors access to some areas of your site.
  • Nexus supports many useful password configuration options, such as the ability to disable profiles when too many invalid logins are attempted. At the user maintenance pages,Administrators can also click a button to email users their forgotten passwords.
  • You can create new user profiles entirely within Nexus, or link your Nexus users to existing iSeries profiles. If you import existing iSeries user profiles to Nexus, you can add these to your Nexus groups. You can import your iSeries profiles individually, or many at a time.
  • The portal administration tool is secured to a special user profile shipped with the software, to which you set the password when you install Nexus. The protection imposed on the site administration areas is analogous to QSECOFR authority and security in 5250 sessions.
This topic is discussed in more detail in a new tutorial section of the Nexus 3.3 Reference Guide. To discuss how you can use Nexus in your organization, please contact BCD.


New Nexus 3.3 Demo Site Live

In conjunction with the release of Nexus 3.3, we have completely revamped the Nexus Portal Demo Site (http://nexus.harmonicswholesale.com/).

The new Nexus demo site has been built so you can take a self-directed tour of the software, familiarizing yourself with the key features in a logical way. Each site page includes explanatory text that describes the content on each page.

If you are exploring the challenge of making an ever-increasing number of iSeries resources available online to a diverse set of users, consider Nexus as a way to organize your content, and manage access to it.

For more information on Nexus, visit the Nexus home page.


New Example Programs: Linking to Google Maps, SmartCharts Features

We have published two more WebSmart and Clover example programs this month:
  • Example 132 - Creating Links to Google Maps. Our latest example program (illustrated at right) uses Google's map API's and displays a map based on an address location from our internal manufacturer file. The main program is a simple customer list, with a link to display a map of their address in a new window.

  • Example 131 - Clicking SmartChart Bars for More Info. This Clover example program presents a bar graph showing the number of orders for each customer. When the user clicks the bar, the program presents a new window (in this case, using Example 127) displaying additional details about the selected customer.
If you have any questions about any of the examples posted, please drop a note to Technical Support.


 Summary List of Recent Updates


WebSmart 6.05/Clover 1.51
There is a new iSeries update for WebSmart 6.05, update W605005P. This update addresses several issues, including:
  • Fix compile errors for wrtdbgdta when debug option not turned on.
  • Protection from SQL Injection.
  • Resolve issue where date types could not be included in a structure.
  • Program generation can now be binding directory/WAS specific.
  • Redirect functions using the SECURE parameter will now correctly redirect to the specified connection type.
In conjunction with this iSeries-side update, you also need to download Build 9048 of the WebSmart IDE. This PC-side update also includes a few other fixes:
  • SQL templates now use program field PGMF_SQLCOD to allow easier viewing of SQLCOD values in debug
  • Search and Replace window is now automatically populated with highlighted text.
  • Search and Replace now warns you if you try to replace text when the replace field is empty.
  • PML Validation now catches fields which are being treated as array elements.
  • File maintenance templates now enable/disable key fields appropriately.
  • Fixes an incorrect PML syntax validation error saying "Invalid use of array index operator on field: xyz".
Note that these updates include an item to protect new programs from SQL injection. For instructions on how to address this vulnerability in existing programs, please visit the WebSmart Updates page.



© 2007 ExcelSystems Software Development, Inc.
ProGen WebSmart and ProGen Plus are Registered Trademarks in the US and Canada, and Trademarks in all other countries.

Business Computer Design, Int'l, Inc. (BCD) Exclusive world-wide distribution and marketing rights.