WebSmart ILE public training in Des Moines, IA in early December to Mid-January
BCD is hosting a 4-day WebSmart ILE Fundamentals training course the week of January 19. If you are interested in attending this class, please submit a training request via our website, or give us a call at (250) 655-1766 to discuss your training needs.
About the WebSmart Fundamentals Course
The WebSmart Fundamentals class is a comprehensive course that will give you a working knowledge of all the key areas you need to master 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 own 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, SQL, and using WebSmart’s Change Management interface. We will also cover the WebSmart interactive debugger.
While we often host training classes at our site in Western Canada, customers in the East and mid-West may save a significant amount on travel costs by attending the class in Des Moines. There are a limited number of seats available, so if you are interested, contact us ASAP!
Thoughts on the Browser Wars
As around us the fall season turns into winter, there has been some big news on the browser front for those of us who work with Web technologies. With a new release of Firefox from Mozilla, a new beta version of Internet Explorer and a beta release of a brand new browser from Google, we’re faced with the question of how this will affect web development.
Firefox 3
The release of Firefox 3.0 will cause the least consternation for Web developers as it contains mostly stability fixes, as well as browser enhancements with no impact on the rendering of web apps. Mozilla is genuinely concerned with adherence to standards; as such, their browser releases usually work with standard compliant sites.
Firefox 3.0 features enhancements to performance, security, privacy, and extensibility. It hosts a redesigned address bar that further enhances usability. Firefox also contains a new security feature that allows websites to supply identity information. This gives users a means to verify they are on a legitimate site and not on a false website.
Firefox is definitely maintaining its momentum in the browser market and developers should continue to be aware of compatibility issues between Firefox and IE8.
IE8
The release of Internet Explorer 8 Beta 2, on the other hand, does raise an issue of concern for developers. IE8 promises improved standards compliance over its previous versions. This will potentially break many websites that have been designed around the nonstandard “standard” mode of IE7. Even Microsoft has acknowledged this potential problem; several of their own sites do not render correctly in IE8 Standard mode. In response to this problem, Microsoft has enabled the ability to switch between IE8’s standard mode and IE7’s nonstandard “standard” mode. For the many companies that use internal web apps designed around IE7, they have the ability to configure the browser to render all intranet pages using the IE7 engine.
With IE8 Microsoft seems genuinely concerned with creating a better browser, or at the very least, with recapturing their market share. Should developers be concerned about this? Probably not in the immediate future. From our basic testing, IE7 compatibility mode seems to work well as a bandage solution for previous web apps. It is worth noting, however, that Microsoft is pushing towards a more standard browser, and developers should consider future pages with this in mind. IE8 also hosts a suite of developer tools which allow debugging of JavaScript and a greater insight into DOM values and HTML attributes. Developers are no longer restricted to the Firefox/Firebug combo to debug Web pages.
And from Google - Chrome
Last, but certainly not least, we come to Google’s new browser. The release of this browser is perhaps the largest source of uncertainty for developers. How will it work with existing pages? Will it take off like Firefox? The browser, dubbed “Chrome”, is Google’s first attempt into the browser market. Chrome brings a fresh look at browser software. According to Google, their reason for creating a new browser, in a saturated market, was to create “a modern platform for web pages and applications.”
On the surface Chrome employs a minimalist interface, implementing what Google termed the “Omnibox” to replace the various search bars and address bars common in current browsers. Under the hood Chrome implements V8, a powerful JavaScript Engine, engineered for “fast execution of large JavaScript applications.” V8 translates JavaScript directly into machine code instead of using a JS interpreter.
Chrome was reported to have captured a market share of just over 1% during the first week of its beta release; however, this number has slipped below the 1% mark as the novelty of a new browser wore off.
The browser does host many new features, but it is important to remember that this is still a beta release. Users have been reporting stability issues, difficulties installing the software while running security applications such as Norton Antivirus, and a plethora of security issues.
Privacy advocates have also raised some flags on the browser. Chrome’s auto-suggest feature potentially allows Google to access any keystrokes in the Omnibox prior to the user hitting enter. Developers have been expressing concern about the unique ID value Chrome generates on each install. This information can be correlated with the other information collected by Google, including IP addresses, and cookies to potentially track web activities. There’s already several third-party software patches designed to anonymize Chrome.
Should we be concerned about a new browser on the market, especially given the compatibility issues we already face between Firefox and Internet Explorer? In our opinion, not yet. While it has a lot of potential, Chrome still faces a host of problems to overcome before it can be a serious contender. It would be, however, a good idea to keep an eye on it. If there is one thing we have learned in the last few years, it’s not to underestimate Google.
Jason Wallace
Using Firebug to Debug JavaScript Issues
This article is to inform you about a useful, free add-on that can help you debug your web applications. For this purpose we recommend that you use Firebug for the Firefox browser. If you ever have any trouble with the look (color, position of elements, fonts, sizes, etc.) of your web page then Firebug can be extremely helpful in understanding the structure of your page, and the design elements controlling the appearance of each section. Firebug can also help you any time you're having trouble with JavaScript. It will both help you debug the JavaScript as the page is running and also show the exact location and describe the reason for any JavaScript errors on the page. In the sections below we will look at examples of these situations.
Help with JavaScript
To demonstrate the JavaScript help, consider the screen shot below, taken as I get into my program right after I run it for the first time and then open up Firebug. When my page first loaded Firebug was not opened yet but I saw the bolded red text of “1 Error” (which you can see below at the bottom of the image). This made me aware that there was one JavaScript error encountered thus far. To open the Firebug window to view the error I left-clicked on the “1 Error” text. If no error has been found you can still open Firebug from the same place except it will just have a picture of a bug instead. As shown here, it directs me to the exact line of JavaScript it finds an error on and tells me it’s a syntax error. This is enough for me to realize that there is an extra closing bracket. If you did feel that you needed to see more of the JavaScript code around this one line then you could click either on the green text or the blue text in the image below to be directed to the same line but in the file itself (where you could then add breakpoints, described next).
Viewing a JavaScript syntax error using Firebug.
Adding Breakpoints
In the next screenshot below you can see some JavaScript code that I wrote on the left-hand side. The red circle on line 16 is a breakpoint which I added on the IF condition. I added this because I'm suspicious that line 18 is not being processed. After refreshing my page so the line of JavaScript is encountered the yellow arrow lands and stays on that line. As with most debuggers, from here you can step through the code line by line or jump to the next breakpoint if one exists. On the right-hand side I can see that the value of ‘myfield’ going into the IF condition isn’t “myvalue”, which I need it to be in order to get to line 18 (problem solved!).
Interactively debugging JavaScript line-by-line using Firebug.
Firebug and CSS Troubleshooting
Lastly I’d like to show you how it can help you identify what CSS is currently being applied to any of the HTML elements on your web page. In the image below I have selected a TH tag which is the very top row in my table for the column headers. Note that I didn’t have to manually find the TH tag, instead I used the ‘Inspect’ button and click on a header rows cell which automatically found it for me.
Determining what styles are applying to HTML elements and finding out their precedence.
On the right you can see all of the CSS properties that are applying to the selected element. In this example I have attempted to make the header text show up as the color red rather than the color black which it currently has applied. I believe my syntax for doing this is correct and I applied it directly to any TH tag on the entire page so I’m sure my headers should find it.
The first thing to look for on the right-hand side of the image below is that my newly added CSS code to turn the color red even shows up so I know it has at least been captured by the HTML element. Although there are lines through them the code itself is there. CSS is based on precedence, the calculation controlling what CSS statements are most precise is complicated but a general rule of thumb is that the most precise statements will take the most precedence. “#contents table.mainlist th” is much more precise than just “th” which I used which is why mine shows up lower in the list (therefore it has less precedence). Because of this the higher precedence black ‘color’ property is not crossed out while my red ‘color’ property is crossed out.
And a Final Note...
Browser usage statistics (according to http://www.w3schools.com) for the month of August say that 43.7% of people are using Firefox so unless your web applications are internal and it has been claimed to not support Firefox then you should be making sure that all of your web applications both support Firefox and Internet Explorer.
Firefox can be downloaded here:
http://www.mozilla.com/en-US/firefox/
Firebug can be downloaded here:
https://addons.mozilla.org/en-US/firefox/addon/1843
Thomas Howe
Running Scheduled Reports with Clover and WebSmart
We recently published a handy KB article that describes how to run scheduled Clover reports. By combining a WebSmart non-CGI program with a new entry in your iSeries job scheduler (WRKOBJSCDE command), you can create a scheduled job that periodically runs a Clover report.
As your starting point, you'll have a Clover report that you want to run periodically. Once you have this in place, your next step is to create a WebSmart non-CGI program. This program will call the Clover report, copy the output to a directory on your IFS, and notify that user that it's available. Fortunately, in WebSmart this isn't difficult to do, and you can copy all the PML you need from the posted KB article. All you'll need to do is change the name of the Clover program the example code references and the email address of the person to be notified.
When you compile and execute your program, it will in turn execute the Clover report and copy it to your IFS. At this point you should be able to verify that the report exists.
Next you can create a scheduled job that runs this report at a specified time and interval.
Once the job is in place, you should start receiving your report every week at that time in an email, and you'll also have an archived version on your IFS.
Finally, the online KB article describes how to add a similar block of code to your Clover report, as an alternative to having a separate WebSmart non-CGI program.
If you have any questions about this technique, contact us!
|
Readers Choices: BCD Fans Offer Feedback

On November 24, System iNetwork's Chris Maxcer published this paragraph at the top of their NEWS daily:
Got Love for a Software Package?
Reader's Choice is a System iNEWS/System iNetwork feature that lets nonbiased readers (no vendor employees, please) offer feedback on products and services that have helped them. If you'd like to recommend a BCD product that you've used to solve actual problems, save an enterprise money, or simplify a process, we - and our readers - want to know about it! Send your recommendation of 500 words or less directly to Erin Bradford at System iNetwork.
Several BCD customers were particularly quick to respond with enthusiastic replies. Visit the System iNetwork Product Lines Blog to see what they said about WebSmart ILE & PHP, Nexus, Clover, ProGen Plus, our Technical Support, and more!
BCD’s Partner Channel Expands by Three,
Focuses on System i Application Modernization
Three new partners have joined BCD’s successful Business Partner program: Deltacare in Benelux countries; evolveIT headquartered in California and Dagessa in Poland. These new partners market and provide services using BCD’s integrated suite of System i modernization solutions that include: WebSmart ILE, WebSmart PHP, Presto, Nexus Portal, Clover Query and Catapult.

“BCD business partners are growing their businesses by offering our suite of five integrated System i and multi-platform application and business modernization solutions and services,” says Eric Figura, BCD’s director of sales and marketing. “Clients really like the idea of having choices by selecting specific solutions that best fit their own definition of modernization. They can stay on the System i without leaving the platform to meet their business goals, and add new integrated modernization components as their business needs expand.”
Please visit our website to read the complete press release.
Thomas Howe is coming into his own as a near-veteran Tech Support Rep these days. Thomas has been with us for two and a half years, and has now handled almost 2500 support incidents! Thomas has also worked on many and sundry in-house and product development tasks, as well as making significant contributions to a few of our most important web development consulting projects. Thomas also plays a key social role in our company, having organized the company golf tournament for the last couple of years, as well as other staff activities.

Thomas started with us in May of 2006, with a fresh Computer Science degree from Vancouver Island University in Nanaimo, where he grew up. Nanaimo is a growing city an hour 'up-island' from Victoria (on Vancouver Island). In asking Thomas to provide a couple links for this article we untapped an outpouring of hither-to hidden hometown loyalty, as he came up with the annual bathtub race, Nanaimo's 2007 designation as the 'Cultural Capital of Canada', the city's status as the 'Google Earth Town', it's tourist attractions including The Bastion (the only remaining original Hudson's Bay Company Bastion in North America), and home of the world-famous Nanaimo bar!

Outside work, Thomas is also enthusiastic about his sports, particularly if he doesn't have to drive very far to get to them. Volleyball is his favorite, but disc and real golf also rank highly, and he'll go surfing and tubing any chance he can get. You may also encounter Thomas online, where he likes to play a bit of Texas Holdem, though he'll occasionally stoop to playing with brick and mortar (or is that 'flesh and blood'?') human beings as well.
BCD Welcomes Jason and Mark to the BCD Team
We are pleased to welcome two new support reps to our team. Mark Laidlaw is our most recent addition, while Jason Wallace has been with us for a few months now.
Jason Wallace grew up in Sooke, a small fishing town just outside of Victoria. In 2003 he moved north to Prince George where he went on to earn a degree in computer science. Shortly after graduating in May of 2008, Jason moved back down to Victoria where he joined the technical support team.
Outside of work Jason enjoys a variety of hobbies (more hobbies than he generally finds time for). You'll often find him practicing guitar, riding his mountain bike, tinkering with his robot, snapping photographs with his camera, or swinging his sword at Kendo practice.
Mark Laidlaw is originally from Mississauga, Ontario, where he lived until moving to Victoria for university in 2003. During his studies, Mark earned valuable work experience at Dakins Engineering Group Ltd, where he was responsible for programming electrical panels to automate the controlled processes of water treatment plants throughout Ontario. In 2007, Mark completed his four-year Computer Science degree from the University of Victoria and immediately commenced full-time training with the Canadian National Rowing Team. As a member of the team since 2005, Mark’s first full-time year with the team took him to Oklahoma, San Francisco, Boston, Toronto, London (England), Hanover (Germany) and Linz (Austria). His competitions have also taken him to the Netherlands, Scotland, and Belgium, during all of which he has earned a bronze medal, and two gold medals at the 2008 World Rowing Championships.
Mark spends as much of his spare time as he can with his fiancé Connie, who moved out west in April to be with him. Mark also sings and plays guitar, watches tons of movies, and thoroughly enjoys an active lifestyle. Mark is excited to begin working with BCD and has already immersed himself in office life, taking part in our periodic 'when Marcel is in town' squash tournament.
Current
BCD Software Release Levels
These are the current release levels for all our products:
If you have any questions about how to get to the latest versions, please contact
Technical Support.
Summary
List of Recent Updates
WebSmart 7.00 - PC Build 2334-3664
There is a new client side update for WebSmart 7.0. This update resolves issue where the IDE Wizard occasionally crashed upon clicking Finish.
You can download the current PC and server versions of WebSmart from our website, or go to the WebSmart Updates page to download just the client side, and read more about this update and previous ones.
Catapult 6.19
Catapult 6.19 is V6R1-ready. We also included some improvements in the administrator error messages, adding specific entries for several additional types of email errors.
Spool Explorer 4.51 - PC Update 1366
Update 1366 resolves an intermittent issue involving using Save As quick buttons while viewing a spool file.
Organizations
that Recently Purchased BCD Software
Benetech • Camden County Courthouse • Consolidated Biscuit • Daniel Four Software • Draper Tools • Ductmate • Fumico • Gerdau Macsteel • Gladwin Paint Company • Goodhue County • Greenwood Commissioners of Public Works • J & J Industries • K C Transportation • Kobelt Development Inc. • L & S Electric • LB Water Service • Levante • Leydig, Voit & Mayer, Ltd • Mason Computer Consulting • Midwest of Cannon Falls • Monroe Muffler • Parma Qualita • Peerless Winsmith • Plaid Enterprises • Procecard • Rogers & Brown Cstm. Brkrs. • Shell and Tube • SSA Marine • Universidad Autonoma del Estado de Mexico • Vac-U-Max • Vermont Information Processing • Wenger Corporation
Organizations
That Have Recently Contracted BCD Professional Services
Midwest of Cannon Falls • Vermont Information Processing • Compass Technologies • Western Glove Works • Fleetpride • KDL Hardware |