Web 2.0 is a registered trademark and has been since 2003! CMP Media, the trademark holder, co-produces the Web 2.0 conference. So for you developers out there talking and publishing about Web 2.0 hype, you are infringing on a trademark.
Category: Programming
Coding
Work Complete!
I just finished a fun piece of code for a client. In addition to web server logs, they have a prioprietary advertising campaign tracker. They needed data aggregated and queries optimized which was phase 1 and included some MS SQL stored procedure magic, queries of queries (ColdFusion), and manually creating query result sets.
Phase II was to minimize the amount of text presented, show results in graphs, and create a way for an advertising client to view only their data. Fortunately, ColdFusion comes through with a fancy tag called CFChart and after the server configuration was debugged, graphs appeared. Then text on the screen was hidden using CSS (and I’m really starting to use and enjoy the cascading aspect of css) and made to appear through JavaScript.
Since some charts show way too much data, a form was added to filter the data and only show lines on the graphs that are relevant to the end user’s needs.
CFChart problem solved!
I changed multiple variables at once so all of this may not be necessary. The final solution to the CFChart doesn’t work / won’t display / is blank problem is to add a virtual directory in IIS under the website wanting to use CFChart for "CFIDE" and another virtual directory for "JRunScripts". The last post in this thread helped me realize that having virtual directories for CFIDE and JRunScripts in the webroot was not sufficient.
Allan – CFUG Spain 5 Dec 2004 21:16:55 [ permanent link ]
What you have do is:
- Create the file GraphData.cfm in the CFIDE directory. (As a file can’t be empty stick a comment in there )
- Make sure the IIS website entry has a virtual directory to CFIDE (C:\Inetpub\wwwroot\CFIDE)
- Make sure the IIS website entry has a virtual directory to JRunScripts (C:\CFusionMX\runtime\lib\wsconfig\1)
Then restart CFMX server and Bob should be your uncle.
Allan
Update: Insult to injury. 6.5 hours ago, someone online recommended I confirm my mappings for CFIDE and scripts. I misinterpretted their question and blew it! Time to self-deprecate.
Time to regroup – CFChart or not CFChart
So I’ve spent most of the day working on this issue. To recount, I’m trying to use CFChart to plot some data but the webpage returns blank. What we know:
- ColdFusion Server 7,0,1,116466 (that’s CFMX 7.01 aka CF7.01)
- Windows 2000
- IIS 5.0
- ColdFusion MX 7.0.1 Cumulative Hot Fix 2 applied
- Zero-byte files for internal ColdFusion processes created
- Various permission checked
- Server and services restarted
- caches cleared
The zero byte file reference was interesting. For people having trouble with CFChart or RDS you may need to know:
Some ColdFusion Administrator functions, as well as RDS and cfchart functionality, rely on two ColdFusion templates. However, these templates do not exist by default. You will need to create the following zero-byte files, since IIS will check for them during processing.
- Open Windows Explorer.
- Navigate to the web_root/CFIDE directory, typically located at \inetpub\wwwroot\CFIDE.
- Create a blank file named GraphData.cfm.
- Create a directory called main.
- Navigate to the new directory at web_root/CFIDE/main.
- Create a blank file titled ide.cfm.
- Repeat steps B-F for any additional instances of web_root/CFIDE.
At this point I’m running out of time. Can I do this with a different solution?
Simple is never simple
So I take on two quickie low cost, fast turn around projects and they are eating me alive!
The first is a ColdFusion reporting project that is simply supposed to take the existing statistics report and produce a chart using CFChart. Works fine on my CFMX6.1 development server but apparently IIS6 and CF7.1 don’t play nice when it comes to CFChart. The problem is with IIS but Adobmedillare has been kind enough to release a hot fix that doesn’t work. "This hot fix explicitly generates HTTP headers before the chart data."
The second simple project is a PHP COTS shopping system (x-cart) that needs some customization. Only, it’s not using PHP per se. The customizations are all done using SMARTY. The challenge with programming, particularly web application programming, is constantly having to learn new languages/frameworks/methodoligies and being able to turn work like its old hack.
Using this simple CFChart example works in CF6.1 and fails in CF7.01 even after the hot fix.
<cfchart>
<cfchartseries type="pie">
<cfchartdata item="New car sales" value="50000">
<cfchartdata item="Used car sales" value="25000">
<cfchartdata item="Leasing" value="30000">
<cfchartdata item="Service" value="40000">
</cfchartseries>
</cfchart>
Anyone have extra tickets for CFUnited? I’d love to go this year but can’t justify the cost of the event.
UPDATE: Just tried the ColdFusion MX 7.0.1 Cumulative Hot Fix 2 with no luck. Note the hot fix advises:
Any individual hot fixes previously installed that are now contained in this cumulative hot fix should be removed.
…
we recommend always using the latest version of the cumulative hot fix
In short, remove any previous *.jars and only install the latest fix.
Woohoo! Aardvark is working again. CSS troubleshooting is easier.
For you developers out there troubleshooting CSS, Aardvark is an extension for Firefox which greatly helps troubleshoot your css since it will show the elements with labels. Aardvark is not listed on Mozilla’s official list of extensions which typically means that the extension is not completely compatible with Firefox, sloppy, or the developer just didn’t submit it. I like Aardvark but had to quit using it when Firefox released version 1.5. Only today did I realize that Aardvark had a new release.
I definitely recommend adding Aardvark to your list of development tools!
Query of Query Quirkiness
In my recent post regarding Queries of Queries I should have pointed to a site with some information others my find useful.
Project Done!
Most of the time I try to avoid talking about my work. Often it just is not appropriate. However, many people have no idea what I do. I find solutions to computer problems with a focus on web application development and database design; usually my work is in content management, inventory control, and e-commerce/point of sales. I have bid projects on automation of assembly lines, and done work as diverse as writing C++ programs with the aid of Russian programmers (that app had many millions of downloads btw). I sometimes get hands on and build computers or troubleshoot and repair systems. Often, I find some of my solutions to problems both fun and really cool.
I just completed two fun projects that each tormented me with overruns on deadlines due to technical hurdles. The latter was simply a statistical report of some tracked performance on a website. The challenge in organizing and categorizing the data came down to database design choices previously made by the client including housing some of the data in a MS SQL database and some of the data in a MS Access database. A requirement was speed so the choice was made to place as much onus on the MS SQL database for preparing the data. Unfortunately, this came down only to using some aggregate functions to get the totals and unioning a couple of tables. I did have the pleasure of writing a neat little UDF to convert a list into some table results. Because of the way the aggregate functions had to be written, the data came out neither grouped appropriately and with some unavoidably duplicate data.
Fortunately, ColdFusion now has the ability to perform queries on queries including the joining of data across different datasources. So now that I had data appropriately summed albeit out of order and with some duplicates (as stated previously), I could write a query to pull the labels from the MS Access database. All labels and details were in Access; all statistical information, referred to only by id, was in SQL. Next I used a query of query to join the resultset from the stored procedure with the result set from the Access database and now the data started to resemble something meaningful; however, duplicate information still litered the results.
ColdFusion also allows for manually building a result set. I’ve seen the unfortunate growth in popularity of the term "fake query" which is a terrible misnomer. It is a manual query result set. You, the programmer, are programmatically reproducing a set of data that otherwise would have been delivered via a database engine. So, using a loop to step through our latest result set formed from the QoQ and logic within the loop, I create a result set that combines information from the semi-duplicated rows into a single row. In the process I wrote a slick little number using a structure to hold the grand totals for each segment that I could refer to mathmatically when outputing the result set. Then I simply display the results reaching into the structure for additional information when necessary.
Wahla! Greek.
Code Whippin’
ColdFusion’s StructSort has been kicking my head in. Showin’ me who’s boss. Byting me to bits. Making me loopy.
Seeking PHP Programmer in Knoxville
Any bored (ie. time on your hands) PHP consultants about willing to assist on a fixed rate project? If so, drop me a line at juggler@gmail.com. Work doesn’t have to be onsight but it does need to be done in Knoxville.
Workin’
I avoided the sirens song and am happily banging keys.
Progress!
Today I have coded like a mad man. Pending client approval, I have put a project to rest and enjoyed myself in the process! Next…
Flip 0 and 1
As a programmer you often have to track the state of something. Let’s say your application shows a report for night and a different report for day.You would want a variable that lets you know if you are looking at the nighttime report or the daytime report. Lengthy programming discourse follows.
Progress!
Wahoo! A small project that I slipped into my schedule to help a friend out has finally made its way off my plate. Funny how the "small" things get big so fast.
Grouping UNIONed Data
Calling all programmers. Soliciting your help! The following is a bunch of coding stuff. Click MORE to view post.