<$BlogRSDUrl$>

Friday, October 29, 2004

Build 362: Performance Improved 

Build 361 has been removed from the site, replaced with Build 362, which improves performance on the output options fairly well. There's still more to be done performance wise but this makes it much easier to work with.
 
As well, there are a few more options: the Output tab has been updated with clearer options and the Request Workbench now "remembers" where you last put it, including the sizing.
 
Download it from http://www.foxfirereporting.com/livedesign/ff80362.zip or download the full setup from http://www.foxfirereporting.com/livedesign/ff80setup.exe
 
 
 

Comment

Foxfire! Build 362: Improved Performance and... 

Build 361 has been removed from the site, replaced with Build 362, which improves performance on the output options fairly well. There's still more to be done performance wise but this makes it much easier to work with.

As well, there are a few more options: the Output tab has been updated with clearer options and the Request Workbench now "remembers" where you last put it, including the sizing.

Download it from http://www.foxfirereporting.com/livedesign/ff80362.zip or download the full setup from http://www.foxfirereporting.com/livedesign/ff80setup.exe



Comment

Monday, October 25, 2004

Performance Issues with Build 361 

We've heard reports of some performance problems with Foxfire! Build 361 - we are looking into it but I wanted to make everyone aware of it.

Comment

Sunday, October 24, 2004

Foxfire! 8.0 Build 361 

Build 361 is no longer available. Download build 362 instead: http://www.foxfirereporting.com/livedesign/ff80362.zip

The major changes are in the Output tab. Foxfire! now has built-in support for Word and RTF output and more improved Excel options. Try it out and give me your views on the new layout options interface. We'll be publicizing more of the features in the next few posts.

Here's what's changed:

Modified Output screen to show newer options better.

Note: When you choose a format of Data File - Excel but then specify you want a Formatted request, it displays a message with some details about what will be changed and then changes the request to an Excel Spreadsheet with Formatted output.

Created separate output UIs for Text files, Data and XML to more accurately show the options available

Added support for new Excel Charting functions. Users can now specify if a legend should or should not appear; extra category titles and other plotting options.

Updated layout to show Form layouts better. When you switch to a Report-Form layout, it actually re-formats the preview area to show the fields in "form" layout mode.

Updated Previewer so that if you are using the Master/Detail layout, you can actually see what it will look like. Master/detail reports by page actually reverse the Groups and Page Headers so the Group details appear before the Column Headings.

Both Master/Detail reports only ever show ONE group summary as well. This is now properly depicted in the preview.

This is being released primarily for the Southwest Conference demo so we can see the functionality of the new output layouts.

Note that the zip file includes several BMPS so be sure to unzip it with Folders intact.



Comment

Monday, October 18, 2004

How Does Foxfire! Build Joins 

The build_from method generates a list of all tables involved in the request from filters, data items and more.

FFBUILDJ is responsible for actually generating the joins. Here's how it does it:

It does this by looking for each used table in the JOINS table and noting its Join Level. (searching by alias1)
If it can't find a join with alias1, it searches for alias2 and increasing the join level by one.

This is important because the JOIN LEVEL is what will be used to identify what is the driving table for the request. (the lowest one usually wins)

The maximum weight of all joins is stored in lnMaxPref.


** Why not just look at the max weight of the joins in the request's tables?

Ensure that all tables have join records in the system
Creates two arrays for tracking which tables have joins and which ones don't.

It identifies the Start table by looking for the first table in the unjoined tables array (which identifies all the tables used) and looks for a matching record with any of the other tables.

(this can be critical because if your request starts with a little used table but there is a jOIN in the array, it will START with that as the primary table for the join)

Update: this has been revised to look for all direct relationships right away once it knows the Start table. it does this by looking for relationships in order of the level in the array. So if your Customer file is at the top, it starts with THAT file and looks for relationships below it. This loop takes place right away and removes entries from the laUnJoined array.


NOTE: Put an exit in the search for empty line tables - it doesn't need to search through everything again. Time waster

If, by this time, the relationship hasn't been figured out.

The Start table is added as the first element of array laJoined here.

Now go through the weights listed here, seeing which tables can be DIRECTLY linked to the START table. (once again, if the WRONG start table is chosen, this could be a problem) In most cases, the lnMaxPref would be 1 so this loop would only be gone through once.

How do weights work? Well it starts at the lowest number (1) and looks for a relationship between any table in the Unjoined array and a table in the joined array that is LESS or equal to that number. If one isn't found, it then moves up to the next weight.

This is done in reverse order in the unjoined array.





If this uses Advanced SQL (??? How is this defined ??? )
it identifies the new join by calling j_gen_instjoin with no parameters
sf_alias is a separate array that ?????

This join is now added to a cursor called FFCJOINS
This is repeated for all the tables involved and the table is removed from the unjoined array.

At this stage, the unjoined array should be empty. If it's not, a warning is posted and the request is stopped.

In addition, a variable named lcJoinstring now contains essentially the WHERE clause if there were no outer joins being used here.

The FFCJOINS table is now sorted by Join Level (from the JOIN table) and the Alias 1.
This lets FF! know what the highest join level is.


*!*!*!!*!* BUG: Don't use ALLTRIM(STR() use PADL(joinlevel, 3) - this sets the WRONG level.

Do we still want to support nested Joins vs. sequential?
Sequential Version
The Nested
posted by andrew macneill at 7:16 am

Comment

Monday, October 11, 2004

Foxfire! Build 357: Updates to problems with 355 

There were some problems with Build 355 in that a file named AUTOCLOSE.TXT was included in the full install.

If you have downloaded the Full install (and don't want to reinstall the whole thing), erase the file AUTOCLOSE.TXT from your FF80 folder.

Update file: http://www.foxfirereporting.com/livedesign/ff80357.zip

Fixed problem with Timestamp fields in report
Fix for Custom report widths not working properly
Fixed problem when unloading class libraries

Removed AUTOCLOSE.TXT from FULLINSTALL which was causing the Close Workbench to not work properly.


Fixed occurrences when multiple item drag and drop onto the Preview did not add items to the Data Item

Fixed PREPFLD problem with requests that aren't sorted

Updated some of the sample requests to show the comments on the header


Comment

Thursday, October 07, 2004

Foxfire! 8.0 Build 355: Nightly Build 

Here's a new nightly build (10:34 EST) with key updates for filters and more
http://www.foxfirereporting.com/livedesign/ff80355.zip
Expression Editor now shows proper English expression when editing an existing Data Item

VFP 9 support for templates. When you modify a layout using VFP 9, it will show the Data Item names instead of the expressions. (this requires the full rebuild)
Added LastRun and LastRuntime to oRequest in object model
Added Last Run times and stats
to General page
Fixed Drag and Drop of multiple items from Workbench onto preview area
Fixed problem when selecting new data group from list and getting invalid array dimension
Made Roll-up and docking behavior more consistent.
If
you close the Workbench by clicking the "X", it automatically rolls up with workbench on the preview area.
If you have rolled up the workbench in the Preview area AND undock it, the undocked work bench will roll-down.
If you subsequently re-dock it, it will still appear rolled up.
Rolling
up the work bench only applies to the current session. When you re-open the request, it will be rolled down.
Made the tabs more consistent.
Whenever you
click on a tab (even the active page), it will automatically expand so you can see the content.
Updates to the Expression Builder to work properly with date functions and clear up expressions.
Fixed problem in aarCombo where the controlsource was not being updated properly.
Ensured that Filter Data Item combo refills when new data items are added
Automatically switching to Preview when moving from a file output (graph, excel, etc) back to a report.
Fixed Resize of the Chart output option
Nightly build with fixes for filters and layout resizing


Comment

Wednesday, October 06, 2004

Interim Update : FFADMIN.EXE 

Here is a link to an updated FFADMIN.EXE. I was working with a new user yesterday and discovered that the Setup Wizard was out of sync with some of the changes in the OM and have corrected them.
 
You can use the same password as before but here's the link:
 
http://www.foxfirereporting.com/livedesign/ffadmin.zip
 
Just unzip this file into your Foxfire! 8.0 folder.
 
Primary Changes:
1. Setup Wizard uses proper structure for new data items and requests.
2. The picture clause no longer gets filled in with X's for character fields. This has been in the product from day one and makes it almost impossible for users to change the report width easily. Now at least it's out of the Setup Wizard so you should be able to move on it faster.
 
Note: a new full build will be coming later this week.

Comment

Friday, October 01, 2004

Foxfire! 8.0 Build 352: Beta Period Extended 

If you recently downloaded Build 351 and tried to run it today (Oct 1), you would find that the beta period had expired.
Download the latest build to correct this with some other minor updates as well.

Here's the link: http://www.foxfirereporting.com/livedesign/ff80352.zip

(password is still the same)
If you need the full install, it has also been updated.

Comment

This page is powered by Blogger. Isn't yours?