Release Notes
Version 4.7 Production
You can download the software package from www.newfire.com.
Please read the license agreement before installing the software.
This release contains the following components:
- New Fire Server 4
- New Fire LDAP Integration
- New Fire Defect Tracker 4
- New Fire Enterprise Support 4
- Java Runtime Environment 1.6.0_01
- Tomcat 5.5.20*
- JavaMail 1.3.2
- JavaBeans Activation Framework JAF 1.0.2
- Java API for XML
Processing 1.2.4
- JavaHelp 2.0
- iText 1.02b**
- Jakarta Commons Codec 1.3*
* This product includes software developed by the Apache
Software Foundation (http://www.apache.org/).
** This product includes software developed by Bruno Lowagie and
Paulo Soares (http://www.lowagie.com/iText/) and under the MPL
license (http://www.mozilla.org/MPL/).
Bug Fixes:
- Message action "message:" not working. Cause
response.isCommitted is false. To make it true, we need
to out.flush().
- Cannot set _vkey in save: action
- Update violation, Timestamp problem
Changes:
- Adding condition expression to Rule and Action, e.g.
(Date>{%_today%+3600000})
- Dynamic tree toolbar depend on user access control
- New set: format To handle X^=Y (move up Y in X)
To handle X^^=Y (move down Y in X)
To handle X*=Y (add Y to X)
To handle X-=Y (remove Y from X) - Added %_req.*% variable. e.g. %_req.host%, %_req.url%
Version 4.6.5 Production
Bug Fixes:
- Action buttons were not shown because no standard buttons
are selected.
- Do not export NONE attributes to xml file.
Changes:
- Make User.Password a password field, so it cannot be seen
when entring.
- Allow Klass.getIcon() to parse variables.
- Use Related Attribute like the foreign key in relational
database to for a relation between 2 classes.
- Added language option to show language selector in
various forms, FN, FV and FM.
- Changed default port numbers from 1000 to 80 and 2000 to
443.
- Server Statistics in admin menu.
- Implemented order by ASC | DESC [NULLS FIRST | NULLS
LAST]
Version 4.6.3 BETA 3
Bug Fixes:
- New daylight saving update.
- Upgrade Bug klass may run send mail actions and keep
histories.
- ORA-00932: inconsistent datatypes: expected NUMBER got
LONG.
- Oracle thin driver handles string up to 4000 characters
for clob type. Oracle OCI handles string up to 1000 for
clob type, more than that it is just corrupted.
- export LD_ASSUME_KERNEL=... to workaround a hanging
problem of tomcat running on Linux.
Changes:
- Upgrade to Java Runtime Environment 1.6.0_01
- Now title can be placed on top of attribute field entry.
- Always show label on search forms.
- Timezone is displaced wherever time is displaced.
- Increased default db connection from 1 to 10.
- Introducing LIMIT OFFSET in querry.
- Implemented incremental loading for object tree display.
- Custume or automatic attribute indexing for faster
database query.
- FixedValue can now be used in attribute rule.
- Added orderBy, orderIn to upwardTree. Attribute with
Object Tree picker can define ORDERIN and ORDERBY in
picker.
- Implement OP_FORM_MODIFY operation to include _CONDITION
Version 4.6.2 BETA 2
Bug Fixes:
- MySQL error using order by.
- PostgreSQL error using _oid.
- Type-in text-field search was not working for unicode
characters.
Changes:
- Condition optimization
- Emigrate tables from database back to default file
system.
- Testing of unicode/utf-8 character set when changing
database parameters.
- Added Events to Admin Menu
Version 4.6.1 BETA 1
Bug Fixes:
- Parsing condition like "(Ref[]%_this%)", would
find '_' as op first, before '[]'.
- During Upgrade to 4.4, removing orphan attribute with
parent klass==null throws NullPointerException.
- When saving an object having a modified INLINE_FORM
attribute with missing required field, the missing
required field is not reported as required.
- If an object is new, and its OBJECT-INLINE_FORM attribute
is old and not modified, then the attribute cannot be
modified and saved.
- Could not use "+" and "-" operators
to add and remove key from User.Keys. Cause:
Adding/Removing a key to User.Keys was like
adding/removing a list to a list.
- Coding error in evaluation CONTAINS operation for 32bit
checkboxes
- Changes to the SearchValue of a NONE-TABLE attribute did
not reflect the table result upon refleshing.
- Did not handle TYPE_OID for NOT_EQUAL. e.g.
ID=234&ID_=3 in search value could not work.
- When entering function in Action String as:
call:Class=com.newfire....&Date=%25Date%
We have error, "25Date" attribute not found.
- SMTP did not work with 465 and SSL for relaying (i.e.
smtps) but STARTTLS works.
- Use AttrRule to alter selected properties not to replace
properties.
- Need put "<br>" for EACH '\n' found,
currently consecutive newlines are merged as only one.
- (rule) After "set:", changes not reflected
after refreshing Form.
- Picker for Mail.DistributionList did not take the
_CO=(Klass=User) condition in the picker.
- Get additional condition in picker. It was removed in
4.0.7.
- Attribute action did not show the available Attribute
choices.
- (calendar) Catch large year (more than 7 digits), which
runs to inifinite loop.
- Label hidden implemented for OBJECT, LIST, NONE types
- If installed on a directory with space in the path, it
cannot find the home directory.
- Could not show "New Item" link on NONE-TABLE
attribute. Could not delete newly added item on this
attribute.
- Could not open attachment saved in Doc class.
- cc.properties not found when deploying as WAR
- Upgrading from 2.1 to 4.4: Should not run action on save.
Changes:
- Upgrade to Tomcat 5.5.20.
- Performance updates.
- Implement new options for OP_FORM_NEW/MODIFY/VIEW.
Without OID, Attribute=Value pairs are used to do query
to find the object for display.
- (html/js/menu.js) Allow redefining menu divider image and
background color using variable mnImgDivider and
mnBackgroundColor.
- New function com.newfire.cd.NewObject
- New Function: com.newfire.cd.GetObject
- New variables: e.g.
%_object.User.(Status>0)%
%_if:(X=%%_today%%)A:B;%
%_exp:{2+4}%
- New action string: delete:[attr]
- Double (data type), like Integer type should also have
Min/Max value entry to attribute.
- Now can set Fixed Value to evaluate expression: {%A%*%B%}
- Added Proxy Access Control (PAC)
- Added new PROP_DEPENDANT property, which
set and unset sub-objects _proxy value.
This attribute of all the sub-classes are also inherited.
- Added Assignment String to Attribute
Rule to handle:
- choices:
- display.name:
- display:
- display.length:
- properties:
- picker:
- Allow charting to have the same access control as Report.
- Implement Attr.ENCRYPTION for 1-way and
2-way.
- Added Confirmation Question before
running an action.
Added Run Every (seconds) to Action.
Added Run Option: Run in Current
Window, Run in Background.
- (action event and rule) Now can handle "new:"
action string.
- Allow "Show object link" for Inline form
display as well.
Allow List-Inline form type.
- Enable administrator to see system tasks and rerun them.
Allow alarm to report return value from actionevents.
- Added new variable _now. It is used in
condition to have a precision of seconds.
- Now can use attrRule for style: and style.class:
- Allow >, >=, <, <= for all INTEGER data type.
e.g. Dropdown/SingleSelection attr can do X > 11,
where (11, "Ready").
- (Integer Pair) Removed minValue of "0" from Key
to allow negative integers.
- Added event: picker for TextArea. Added event:
picker for TextField.
- Added rule: action protocol.
- New function Class=com.newfire.cd.Update
- Added new variable type: %_esc:% to
escape quotes and newlines. So that it can be put into a
quoted string.
- Do not allow ';' as Action String separator any more. So
that we can us ';' within it. e.g. writing javascript for
attention:.
- Added new action type: message:
- Implemented IFRAME calendar.
- Implemented iframe Dropdown list picker
- Use tree in iframe picker.
- Condition dialog in iframe
- Implemented PROP_PARSE property, so as not to parse
attribute value with % which errors.
- Put import map in data directory.
- Add public user in data.sys as autologin.
- Implemented STRING-TEXTFIELD-KLASSNAME attribute.
- Put file size in File object title.
- Implemented BINARY attribute exporting and importing
using base64 encoding.
Version 4.4
Bug Fixes:
- Unable to select class from creating a report.
- Some unique attribute may not be unique.
- OBJECT-DROPDOWNLIST attribute on read only form, it
should follow OBJECT_LINK property. And also style class.
- Treeview is not sorted correctly in child nodes, root
nodes are fine.
- Attribute with display type "Text
Area" in read mode, inserts an extra line break
<br>.
Changes:
- Upgrade to Tomcat 5.5.17
- Action String "save:Parent" saves the object in
the Parent attribute if any.
- new GetCount function.
- Implement pre/next for table attribute in form.
- Added new attribute property: PROP_NOT_OPENABLE.
- Added text field attribute to have link to object itself
on Inline-Form and Table using SHOW_OBJECT_LINK
property.
Removed dialog16.gif from object link.
- Parse variables in string/text attribute with Parse
properties.
It also recursively parse the result.
- Show attribute Subtitle only on New/Modify/Default form
- Implement Previous/Next javascript function in forms.js,
common.js.
- Allow attribute action to be displayed as button.
- Add Frame to klass definition.
Use _FRAME= to specify frame in FORM/TABLE operation.
- New %_locale% variable. e.g.
%_locale.sl.Username% to get the Username string in
current locale.
- New %_object% valiable: e.g.
%_object.User.6644.Username% to get the username.
- New %_call:% variable. e.g.
%_call:Call=com.newfire.sl.GetCount&_KN=User% to get
the number of users.
- Using %% to escape % within %variable%,
e.g. %_CO=(Owner=%%_user%%)%
- admin/Repair Also checks user-defined class objects.
- Specify LogonPanel in Configuration.
- On NoPriviledgeException, prompt logon panel.
- Added CSS Class for attribute display style.
- New NONE-LIST type attribute.
- Made attr InitialValue, FixedValue and SearchValue not
modifiable if parent class is a view.
Version 4.2
Bug Fixes:
- View Search table should only open row (double clicking)
with FORM_VIEW type.
- TextArea field on FORM: spaces are replaced by
" ", and no wrapping is done. Also no
<br> for "\n".
- Inline html form in email cannot display Chinese and
Japanese.
- Form Print Detail: Long text cannot be wrapped.
- Cannot open file document directly, only open up the file
Form.
- Problems upgrading from 2.0.
- Cannot delete objects in database.
Changes:
- Update shows all installed packages, so we know the whole
history.
- Language dropdown in form and Language checkboxes in
Configuration display each language in its own locale.
- Modified how attribute-actions are displayed. Do not put
it under klass-action-list any more.
- Implemented new DISPLAY_IMAGE attribute
display type.
- Attr.getDisplayHeight(), Height is no longer soly for
Text Area. Removing default height of 6.
- Implemented CD_Object.removeObject(), which is a generic
method to remove OBJECT/LIST attribute.
- Attribute Style field added.
- Table CLOSE botton added in class
operation.
- Sum function of charting now includes Double data type.
- Allows condition in tree picker: _TP=TREE&_CO=(...)
- Allows deleting attributes for Series 2000.
- Certified using of Oracle Jdbc OCI driver (ojdbc14.jar)
Version 4.1
Bug Fixes:
- A empty DATE_TIME attribute always shows 12/30/1969. It
cannot be set to null.
- Cannot view report.
- When selecting language from a ViewForm, it throws No
Priviledge attention.
- html/treeview.jsp does not respond to locale.
- Setting a rule with attention:de and attention:en; when
locale is de, en is displayed.
- If value has '<', etc, it does not show up in table.
- Importing an object reference from OBJECT/LIST field did
not use the mapped new oid, the old one in xml file is
used.
- ORA-01425: escape character must be character string of
length 1
- Unable to clear date without resetting time fields, HH:MM
AA
Changes:
- Upgrade JavaMail from 1.3.1 to 1.3.2.
- Added USER, PASSWORD, SECURITY to SMTP in Configuration.
- New customer menus.
- Now only allow one key for OLAC. It was a list of keys
before.
- New html/treeview2.jsp tree view for
top-down tree.
- Allow to run action using action ID. e.g.
_OP=AC&_KN=Folder&_ID=42422&_AC=List
- Added LDAP to admin menu.
- Use LDAP Mapping for user logon authentication.
- Added LDAP selection to Edit Configuration.
- Added search options for drop-down list for search form.
- Use LDAP Mapping to import, export and password hashing.
- Added new variables: _admin_key, _forbid_key, _profile.
- Added view condition "and (Report:Owner is not
null)" to reports, so that public report without an
owner (any more) cannot be viewed.
- Allow search form return size to have 500, and 1000.
- Moved User.properties and Key.properties to data
directory for integrity.
- During import, cannot set null value to attribute using
tag like <name></name>
- Enabled calendar dialog to have time zone.
- Integrate time zone into charts,
conditions, date entry and retrieval.
- After import, do localize.
- Allows deleting attributes for Series 2000.
- Allows using "all" for language code.
- Allow OLAC to Reports.
Version 4.0.7 Beta 4
Bug Fixes:
- Form's Previous/Next buttons did not show changes to
total number of items.
- Form's Previous/Next buttons do not hide even if disabled
from klass operation tab.
- When parent class adds an attribute, attribute is not
added to sub class if the sub class is loaded already.
- Cannot delete a report.
- Close button on right top corner of table goes back 2
pages. Now it goes back one page.
- Enhance condition parsing: 1. Check validation, 2. Cannot
save complex condition of the form (( )|( )).
- Cannot create a new item to a NONE-TABLE attribute of a
View.
- Ordering a list attribute of a new object saves the
object. Use OK/Save button based on attribute's
SAVE_PARENT property.
- Errors while import a class with Action or Rule.
- There were 2 "List Not Deletable" properties
for LIST attribute.
- html/js/form.js: fmPdf opens a window, which is blank.
Occurred in FORM.
- Could not order Object-Type attributes in Series 2000.
- Removed Action properties: OnTableToolbar,
OnTableViewToolBar.
- Object links on table opens form dialog which cannot be
dismissed.
- Cannot search for STRING/TEXT attribute for the right
locale.
Changes:
- Upgrade to Java 1.5, Tomcat 5.5.9
- Added delete icon on FORM.
- Only print Help(?) on selected tab.
- Using OP_FORM_MODIFY operation for a new object
automatically changed to OP_FORM_NEW operation.
- Use proper View klass for tbUP(), tbDelete(), tbDown(),
and tbModify(). Only apply TABLE-BUTTON_MODFY to
standalone search table. If Parent is New, allow table
item to modify (to make change).
- html/formprint.jsp: Separate each item in a NONE-TABLE
attribute to a new line. Add ";<br>"
between each item of NONE-TABLE attribute.
- cd/PDF: Skip attribute in hidden Tabs.
- Do not keep history for NONE type attribute.
- Added STRING-SCHECKBOX attribute type.
- Added "Log Off" action event.
- Set attribute's NOT_LOCALIZED property as default.
- Added attribute KEEP_CHANGE_HISTORY property and set it
as default.
- Added variable %_pdf% for pdf file
attachment.
- Object-DropDown attribute can use SearchValue to set
criterion to the search result.
- Re-engineer how action button is used. Changed display
properties.
- Allow List display to set width and height. There will
not be a truncated title followed by "...".
- Allow OBJECT-TEXTFIELD attribute to type in title and
validate value.
- Allow setting custom picker.
- Added language select for search form.
Version 4.0.6 Beta 3
Bug Fixes:
- Enclosure's Attachment attribute is empty.
- JDBC options setFetchSize, setRowSize, setCursorName are
not configurable. SendError, UseCookie are not
configurable.
- I.E. cannot open pdf file, it shows blank.
- Fixed how filename shows up when one download an
attachment.
- Cannot parse a condtion like (Created<3/8/2005) or
(Created<1110281714905) or (Created<3/8/2005 3:35
AM)
- Cannot show tree nodes whose parents are not viewable.
- html/picker2.jsp only shows 10 items. Also need to order
the list.
Changes:
- Use collator to order text with locale specification.
- Removed useless key=value pairs in search url.
- Add close icon to search form and search result table.
- Change PDF to icon and use divider for better
presentation on Form.
Version 4.0.5 Beta 2
Bug Fixes:
- The use of session in Fixed Value are different between
Form and Table display.
- User password is not imported correctly, hence cannot log
on after import.
- When using a case-sensitive database, lower case
"oid" was used.
- Duplicated returns seen on dropdown list of object-attr.
Changes:
- Change command line export syntax to facilitate single
class export.
- Enable copy of attribute within a class.
- Allow duplication and history of button actions.
- Allow duplication and history of rules.
Version 4.0.4 Beta 1
Bug Fixes:
- For a String-Dropdownlist attribute, set choices using
attribute rules: This choices in attribute rules are not
showing up in the assignment form after system restart.
- When using database, to order a column of one out of 2
tables in a form, if the column does not exist in the 2nd
table, the 2nd table has an Internal Error.
- html/formprint.jsp, formsprint.jsp: Does not show page in
UTF-8 encoding.
- Masked attribute is not masked in Table, and PDF display.
- MySQL error: "Every derived table must have its own
alias"
- Migrate data creates KlassOfAlarm.obj in
data/KlassOfKlass directory.
- Internal Error after migrating to QED.
- Create a NONE-TABLE attribute object and reopen it and OK
it, there are 2 of the same item on the table of this
attr.
- When one item of NONE-TABLE attribute is deleted, parent
object cannot be saved.
- Recursively hit index_fr.html if browser's native
language is fr.
- Condition variable in picker (e.g. _CO=(X=%Y%)) is not
resolved.
- java.sql.SQLException: Base table or view not found
message from server: "Unknown table 'ta' in where
clause". Shown up using MySQL.
- A condition of this form (Note:Task.Project.Customer =
User:belongs to Customer) involves Note, Task, Project,
Customer and User classes in the WHERE clause of SELECT
statement. So we need to update all these tables. Error
shows that when op1 is a constant, Note table is not
created.
- Cannot delete a condition from an object which has delete
protection (e.g. dkey = Forbidden Key). Example, delete
Creating Condition under Report tab of a Class.
- > Workbench > Mail > Report Tab > View
Condition > Class attribute not showing Report.
- > Workbench > Task > Report > Viewing
Condition: new condition > Attribute = Order By... :
Internal Error.
- > New Mail > Distribution List > Search > No
privilege.
- A report with condition. Run it. Click next. The
condition is no longer used.
- Result table from a report cannot use the Next properly.
- A engineer cannot see any Histories of a Defect, but an
admin can.
- The values in the table under the chart do not align
properly.
- If cache level set to NONE, we cannot modify user-defined
classes. e.g. User, Defect.
- After migration, user cannot log on again after log out,
or from another browser.
- Migrate *_H table to database.
- Creating a new class of the same name should fail.
- Internal Error when deleting a subclass of Object-class.
- When deleting the some class, there is an Internal Error.
- Should not drop column if deleting a view.
- html/dt/engineer/inbox.jsp, outbox.jsp: Limit batch size
to follow that of the report.
- Running a report should follow the report's OrderBy,
OrderIn, and BatchSize.
- Clicking KlassOfFile object link should open the file
directly and not showing a Form when language other than
English is selected.
- Integer chart not showing up any bars.
Changes:
- Changed mail attachment temp object from Doc to File. Can
now send PDF file.
- Added Condition class to list of Class Name attribute, so
that it is possible to create a Condition attribute.
- Added search options for INTEGER and DOUBLE attributes
used in Quick Search.
- Added search options for OBJECT attributes used in Quick
Search.
- For database: Do not allow searching the List attribute
any more because List attribute is store in _T table.
Version 4.0.3
Bug Fixes:
- Attribute order panel shows 2 items of the same name.
- Importing an object with an obsolete attribute errors,
need to ignore.
- Attribute choices did not show the default choices, it
shown the choices from the first attribute rule whose
condition is wrongly evaluated to true.
- If you enter 262004 for year, Postgres entered the date
into database but on retrieval, it gives BAD DATE FORMAT
error. So we just have to skip that attribute and
retreive the rest of the object values. That way the
problem can be fixed.
- List attribute in View Form shows object without comma
and with "...", they should be separated with
commas and new line. e.g. Profile.Keys attribute.
- The pdf view from a View class (Profile) shows the
super-class (User) 's attributes.
- Importing a user to Series 1000 works, but importing to
Series 2000 database does not work.
- Form next from Profile table shows the User.
- Cache level not initialized properly.
Changes:
- Default newly added klass operation buttons.
- Optimize Text/List field upgrade process for large table.
- Repair utility which resolves OID conflict where 2 object
of different classes have the same OID.
- When deleting an attribute, also drop the database table
column.
- Sequence actually starts with 1, so it should be (1, 2,
...)
- New File class to replace Doc class. Do not ship Doc
class any more.
- Use Alarm for Scheduled Task.
- Save KlassOfAlarm into database.
- Can put Subtitle under attribute field.
- Floating Tabs so that they can wrap around to next line.
- Added Mask attribute property.
- Added Vertical Alignment, No Wrap to
attribute properties.
- Separate PrintDetails and PDF on FORM.
- Allow ViewClass to have data rules (beforesave, ...) and
display rules(on view, on modify).
- Move all old History objects to new KlassOfHistory class.
Do not ship History class any more.
- Import can now use Origin option for oid mapping.
- Auto repair oids when running upgrade.
Version 4.0.2
Bug Fixes:
- PDF Print Details should print base on the form type: New
Form, Modify Form or View Form.
- Object retreived from search must first look up the
session cache for modified one, so that we can actually
do modification of list-objects.
- java.sql.SQLException: [Microsoft][SQLServer 2000 Driver
for JDBC][SQLServer]Invalid object name 'N_Message_T'.
Changes:
- Add modify icon on Form View if user has the privilege to
modify the object.
- Ordering Dialog to quickly order List
attributes.
- Show Prev/Next on both the XForm and TXForm.
- Integration of LDAP server to allow importing users into
New Fire User.
- Include Attribute selection under ClassName field. So
that we can actually make a dropdown list of all the
attribute of a class to select from.
- Upgrade Tomcat from 5.0.19 to 5.0.28
Version 4.0.1
Bug Fixes:
- Text Data Type: from char 255 and up, multiple locales
use the same attribute value.
- Using Print Table from a search result table, instead of
having "Project: (Name Contains o)" as title,
we have "Project%3A+%28Name+Contains+o%29".
Changes:
- Transaction using NONE-TABLE attribute such that items
created in this attribute will not be saved until the new
parent is saved.
- Order attribute choices used in dropdown list by title.
This allows us to order by more than one columns.
- For NONE-TABLE attribute, the result set can be defined
by using the CHOICES attribute rule's condition in
criterion. This allow us to get a list of items for this
attribute by using a joint-table query.
For examle the condition can be: Project: (
(Project:_this = Project-User:Project) and
(Project-User:User = First Administrator) )
- Allow Delete Cascade property for NONE-TABLE attribute.
- Implemented Previous and Next on Form
from a search result table.
- Added DISPLAYHEIGHT to TEXTAREA attributes.
- Action Buttons can be specified from search string in
table attribute. Defined CC._OPEN, CC._ACTIONS for search
string.
- Added stack to url which has "jsp?".
- Added setFetchSize, setMaxRows, setCursorName into
configuration.
- Make Text data type searchable.
- Fixed Value, Initial Value now use "set:" to
set value and use "call:" to call function.
e.g. "call:Class=com.abc.xyz&Param1=A".
- Form and table button enable and disable
allowed.
- Turn on/off cache level.
Version 3.7 Patch
Bug Fixes:
- Recursively hit index_fr.html if browser's native
language is fr.
Version 3.6 Patch
Bug Fixes:
- Importing an object with an obsolete attribute errors,
need to ignore.
- Attribute choices did not show the default choices, it
shown the choices from the first attribute rule whose
condition is wrongly evaluated to true.
Version 3.4 Patch
Bug Fixes:
- Phantom class in Object klass's sub-classes list, say
Project. If one imports or creates a class called Project
under Other class, then Project shows up in the Object
klass's sub-classes list.
- If server is 3.4, Server Updates still showing 3.2 patch.
Version 3.3 Patch
Bug Fixes:
- Date chart, double click on bar errors: Unparseable date:
"1009872000000".
- Reporting using condition having _this_week does not
work.
Version 3.2 Patch
Bug Fixes:
- Cannot delete items from a Quick Search Result.
Version 3.1 Patch
Bug Fixes:
- Order workbench tree nodes by title.
- Open up date field for manual data entry.
- Add back today in date calendar
- Clicking text of checkbox or radio input fields can
select.
- When posting a form throws a validation exception,
entered values are not posted to object.
- Form replication only copies 255 char from TEXT/LIST Type
attributes.
- Cannot serch across title attributes. For example
FirstName, LastName are title attributes, we cannot
search for "John Smith", but we can search for
"JohnSmith".
- Setting database connection > 1 does not open more
than one connection pool.
- Fail to upgrade password fields when the password was
null.
- Upgrading from version 1.3 may cause
NoPrivilegeAttention.
- For (NONE, TABLE) attribute, setting LIST_NOT_DELETABLE
does not hide the delete icon.
- java.sql.SQLException: [Microsoft][SQLServer 2000 Driver
for JDBC]ResultSet can not re-read row data for column 1.
Changes:
- Added _HD key for form heading in form operations:
FORM_NEW, FORM_MODIFY, ...
- Allow (NONE, TABLE) attribute to use LIST_NOT_ADDABLE,
LIST_NOT_MODIFIABLE, and LIST_NOT_DELETABLE properties.
Version 3.0
Bug Fixes:
- New class with super class Object is not listed under
Object on workbench class tree hierarchy.
- Preserve space and \n in Text attribute using
" " and "<br>" when
text area is displayed.
- Cannot delete items in NONE-TABLE attribute.
- On form, when a non-modifiable String attribute is
appended to the previous Date-Time attribute, the String
attributes value is displayed lower than its Label.
- Do a QuickSearch on date shows (Effective Date >
6/2004)", it should be "(Effective Date >
6/1/2004)"
- UpdateViolationException is detected wrongly during
saving.
- When a class is being deleted, the klass_T and klass_B
table must also be dropped. The problem was that only the
klass table was dropped. Also on dropping an object, both
_T and _B tables must also drop the object.
Changes:
- Do not include TAB and LABEL attributes to be in Table
attribute list.
- Added English Letters for Text Constraints. This is used
to limit the name of attributes and klasses.
- Keep change history note also records old value.
"attrname: oldValue >>> newValue".
- Added /(Is Null), and !/(Is not Null) to
condition parser.
- Added _CO to Search Value so that complex condition can
be specified.
- QuickSearch with:
"_OP=SR&...Date=%25_yesterday%25&Date_=9"
not working because %_yesterday% not implemented in this
context.
- Supports QED and PostgreSQL
databases for testing only.
- Oracle Text data changed from long to clob or nclob.
Version 2.2.0.25 Beta 8
Bug Fixes:
- When creating a new klass, if the klass name contains Ėܤ漬
you get an error saving it.
- For a class without any attribute with "Use as
Object Title" property, if you do a title search
with database, there is an error. SQL: select
count(distinct a.OID) from N_Customer a where () like ?
escape '\'
- Create and update table missing VERSION column.
Changes:
- Allow digits as well as letters for class name.
- Give date type attribute some search options like: =,
>=, <, Year of, Month of, ...
Version 2.2.0.24 Beta 7
Bug Fixes:
- Internal Error occurred when clicking tree node on Defect
Tracker Engineer Menu’s Explore Tree.
- Import error: com.newfire.cc.InternalException: Internal
Error.
CD_Object.setValue0: Invalid attrName: Name_de. Parameter
attrName must be the true name without locale extension.
- If newfire home is placed under a “lib” directory,
newfire home is not calculated correctly.
- The set: action string does not apply text value to the
correct locale. Therefore, if using de, it is applied to
en_US. Same thing to action event.
- Internal Error trying to delete from Product Tree.
- Use “Print Table” from Quick Search result. If the
title contains 䠵sing _HD=%C3%A4, it is not displayed
correctly.
- If an object title contains 쬠from FORM, click View
Change History. The table title is not display correctly.
- Series 1000: deleting a class may not delete all the
instances from FS.
- If one creates a klass under Object. Then delete it. Then
create the same klass under User. Then from the Workbench
klass tree, there is a shodow klass under Object still.
- All None type attribute should not be sortable in table
column. It cause database error.
- On German OS, import always imports the *_de attributes
and the default (no locale) attributes are ignored.
Changes:
- Added help "?" icon on Configuration page.
- Enhanced how TREE VIEW is displayed. Incorporate
OBJECT-TREE VIEW into Picker.
- TYPE_SAVE should only display object attributes.
TYPE_PUSH and TYPE_POP should not require Operator nor
Attributes.
- Allow Digit as well as Letter in Attribute Name.
- New -i option for installing classes using the given OID
in xml. Do not assign new OID nor use Import.map.
Version 2.2.0.23 Beta 6
Bug Fixes:
- Search for € in Quick Search, then click on the title
bar to get the search form again, the search string is no
longer €.
- Cannot do database search with %, _ characters. ‘%’,
‘_’, and sometime ‘[ ]’, because they are used as
wild character in the LIKE clause, so we need to escape
them in order to be able to search for those characters.
- java.lang.ClassCastException at
com.newfire.cc.PrecisionDate.leastPrecision(PrecisionDate.java:88)
- If there is no instance of a class, hence the table is
not created yet. If we do charting which does a getSum(),
getMinMax(), we have a database error.
- Cannot disable Action properties programatically.
- In IE6, the minimum size of bar in the barchart is about
20 pixels height.
- Cannot localize: “admin Localize Bug de”.
- Charting of date is wrong for YEAR and MONTH interval.
- Search with Exact Match on a ListOfObjects field does not
give result. For example: Quick search of (Subs
ExactMatch Human Resource).
- Cannot switch Tabs on VIEW_FORM
- Memory leek in cache management.
- Cannot delete partial condition properly.
- Attention does not work in rule with On View and On
Modify when using ActionEvent.
- Inline table items can be deletable even when parent
attribute has not modifiable properties.
- XML import of a xml file exported from 2.2.0.17
containing Ėܤ漠string result in wrong decoding.
-
Changes:
- Using Binary/File attribute requires FileName and
FileType helping attributes. Now Binary/File attribute
can be used solely without helping attributes, just that
the filename and filetype is unknown.
- Added Apply button to Report and Chart form.
- Preserve SEQUENCE attribute’s continuity. Sequence
number is only assigned when first saved.
- Added a close button on barchart.
- Clearing of Search Form also clears the Remembered field
of that class in profile.
- Added “Exact Match” operator for List attribute in
condition.
- In Series 2000, charting with Object data type as XAxis
does not include zero count range any more.
- Can duplicate report.
- Deprecated CC.OP_PRINT, use html/formsprint.jsp instead.
Because OP_PRINT may give wrong encoding.
Version 2.2.0.22 Beta 5
Bug Fixes:
- Class Reporting conditions for Create and Search should
not use Report Class, it should use the current class.
- Run report action should check report access control from
the corresponding class. Therefore, if reporting is
turned off, one should not be able to run report by
knowing the report OID.
- Do not show constants (_today, _yesterday, …) in the
first condition attribute, show in the 2nd
condition attribute. So there is no need to do things
like _last_week = 3/2/2004.
- Wrong where clause running report with (Bug.Created =
_today), (Bug.Created = _this_week), and (Bug.Created =
_last_week).
- Showing Change History in zh shows this as title: ?: 813
Tree is
good&_OB=Update&_OI=1&_LC=zh.
- Maximum open cursor error on Oracle 9i
- Should not be able to create a sub-class from View. One
can only create a sub-View from View.
- Action String “set:X=a” does not set to the
appropriate locale attribute. E.g. set the attribute “X_ja”
as “a”, instead of “X” as “a”.
- In Chinese locale using html/tableprint.jsp, the HEADER
is scrambled. Because it is not encoded to UTF-8, which
must be used in URL.
- Using of %_html% give garbage encodeing
- Cannot modify an item in Bug.EEnclosure.Atts. This is
because the parent is 2 levels up.
- ActionEvent New Form for Company, resetting Name not
working after restart server.
- ActionEvent New Form for Case, setting default value of
Type not showing up
- ActionEvent New Form, while entering Defaults before
selecting Class, should not show Enter Object link.
- Objects in Default attribute is being saved correctly.
This can cause problem when using database.
- Log out, then click the “Log On” button to log on,
after click “Log on”, it shows the log on panel
again.
- Click New Class, do change password from logon panel,
change password, click ok for password changed, then
there is “No operation” error.
- In bin/startserver.bat, import.bat, export.bat, there are
trailing spaces.
- It is not possible to create two Tabs in a class where
one Tab is New Form hidden.
Changes:
- Should only show valid assignment fields: Display Name,
Display Type, Choices, Properties, Display Length,
Picker.
- Show only Properties which can be used in assignment.
- Move cancel icon to the top right.
- Tilde can be use to display localized date string for
%~_today%
- Do not display non-relevant properties to Tab and Label
attributes.
- Attribute properties renamed: "Not Searchabel"
to “Search Form Hidden”, "Not View
Searchable" to "View Search Form Hidden"
- Search form now allows tabs.
Version 2.2.0.21 Beta 4
Changes:
- html/treepicker.jsp: Make picker depend on object, which
uses getPicker(CD_Object, Locale)
- Do not show “New Item” on table when user cannot
create new instances of that class.
Bug Fixes:
- Message objects cannot be migrated to db because it was
db flag is already set.
- Internal error while running a report.
- Run a report with Japanese heading. The result heading is
scrambled.
- Internal Exception during migration. Cause: an Enclosure
instance has size zero in ###.obj file.
- List synchronization cause deadlock.
- Attribute rules for PICKER and DISPLAY LENGTH do not
work. It can cause StackOverflow.
Version 2.2.0.20 Beta 3
Changes:
- Open a new form(FN) of a saved object is automatically
changed to Modify Form (FM).
Bug Fixes:
- Changing the language dropdown does not always work.
- StackOverflow while doing quick search of defects in ja.
Because Bug.FixedValue=(Original=%this%)?:%Original%
- Double click workbench class node problem on NS browser.
- Without auto logon, welcome page prompt logon panel, then
it does not show welcome page, because there is no
...jsp?... in stack.
- Allow empty Klass
- Fixed Internal Error when select _this from condition
- Show Object Link, If I display a Table in a Table, there
will be always displayed the link. The attribute “Show
Object Link” in the table has no effect.
- Print Details: “,” after the last entry
- The first field on a form should ignore its “Append to
last field” properties
- When creating a new class, the “Save…” icon was
running fmSave(), should run fmSaveReload()
- System try to search the database for local-bound class
instance, result in object not found during migration.
- If an attribute has both Unique Key and Remembered
properties, uniqueness is not checked.
- Object sharing violation between 2 sessions
- Delete some classes, show workbench, internal error.
- html/js/tree.jsp: updated.
- html/deleteall.jsp: Ignore NoPrivilegeAttention during
deletion.
-
Version 2.2.0.19 Beta 2
Changes:
- Added more parameters for OP_REPORT operator
Bug Fixes:
- If an attribute has ⦣128;œChange On Reload⦣128;
and ⦣128;œNot Modifiable⦣128; properties,
selecting a value of such attribute from Quick Search
form will not stick.
- IllegalStateException when running jsp.
- CLAC's "Modifying Requires" condition on a
klass hides the delete buttons on table display.
- Using Oracle database cannot retrieve *_de attribute
values.
- Cannot order table column when using German language.
Version 2.2.0.18 Beta 1
New Features:
- Added CD_Object.getOldValue(String) method.
- Added "On Modify" class rule
type.
- Show object link of object attributes on table display.
- Allow attribute's default search value to have all search
parameters, e.g. batch size, start index, columns, etc.
- provides a customizable single selection picker
html/picker.jsp.
- making all SEQUENCEs and NEXT_OID to database in Series
2000.
- Use Inline Form for {NONE, FORM} attribute.
- Implement condition to handle variable "%B.C%"
as in _CO=(A=%B.C%).
- Implement "View History Requires".
- Implement Bottom-Up Tree View as
html/tree.jsp.
- Added Show Object Link attribute
property.
- Support Import -u option for update
only, not replace.
- Added "Run on Save New" class
rule type.
- Action Event's "New Object" type does not use
Value attribute for attribute name any more. Now using
Attrs attribute and Params attribute for default.
- Added "In New Window" property
for Action Button.
- Introduce _this in condition attribute
to simplify query.
- Do not show Modify icon in table if the object is not
modifiable.
- Make Unique Key not localizable.
- Added html/logonpanel.jsp for customization.
- Added "Hide table index" attribute property.
- Added column name field in attribute definition.
- "Form Hidden" attribute property is defined for
Modify Form, but implemented as a master form (hidden for
all forms). Changed to implement for Modify Form.
- Implementation of New Tab attribute type.
- Strictly allow only FORM type properties in attribute
rules. This will reduce the condition evaluation which
could be a performance burden.
- html/doc/cust/toc.js, performance.html: New doc page for
performance impact.
- Implement Report's Access Control.
- Optimize all existing conditions of x._oid = _oid to x = _this.
- Implement table display alignment.
- Encript Password Field in data storage.
- Allow date attributes in {expression}
evaluation. However, sorting attribute with {expression}
in FixedValue cannot be sorted when using database! Note:
"...{expression}..." is not supported any more,
because there is no way to format the expression within
the string.
- CD_Object.toHtml( ) now follows the Form View property.
Therefore, if an attribute is meant for input (modify)
only, it should have isFormViewHidden property checked.
For example, an HTML attribute showing buttons.
- Enable the use of expression to handle date in attribute
Default Values. e.g. {%_today% + 24 * 60 * 60 * 1000}.
- Implemented javascript: action for
Action Button.
- Windows Services implementation.
- Added XML action button in Class
Definition Form.
- Added Before and After Delete Class
Rules.
- Added _yesterday, _this_week, _last_week, _this_month,
_last_month in condition.
- Implemented batch delete from search result.
- Added Validate Form to Action Button.
Changes:
- Make NONE type and {LIST, TABLE> type attribute not
searchable.
- Mail function added Enclose as Attachment and Enclose
In-line option. Removed AttachThis attribute.
- Sub windows will tile with the parent window
- Double click to open node in workbench.
- Do double click select on tree picker.
- Implement character set for dabase. Otherwise we have a
problem using JDBC driver to support German and other
languages when the database does not take UTF-8 raw.
Bug Fixes:
- A default value of {1+1} will return a double
"2.0", which have to convert to Integer.
- Attribute not found error when viewing an item from a
{NONE, Table} attribute.
- Click Profile, out of stack error.
- When modified the View History CLAC condition, reload an
object will run into recursion.
- When showing Class Details from Customization, it errors.
- Using of formstable.jsp does not compile.
- No operators for Double type.
- Report condition shows changed value after ran.
- Fixed Object which is OnTreeMenu not to show up on form
as well.
- Did not handle comparision of Comparable in Quick Search.
e.g. Status != 5
- A bug which cause some query with no result.
- Localize the time entry method.
- Action String in Rules and Actions must be locale
specific.
- Show "* Required Field" legend on Modify Form.
- S2000 errors with "Invalid column name
N__user.", when _user is used as condition in
attribute rule to alter attribute properties.
- When charting with X-Attr which generate this error:
Deref.derefObject: Session is required to dereference
_user.
- Email Function's Class attribute is showing in Action
Event as blank. After saving it, Class value is null and
hence email does not work any more.
- {0, number, ⦣130;죬###.##}for
European numbering requires locale, so that we can format
⦣130;췮553.444,15
- com.newfire.cc.InternalException: Deref.derefObject:
Session is required to dereference _user
- Internal Exception when using UNDER operator to
non-topdown tree class.
- A Criterion like: Project: ( (Project:Project leader._oid
Exact Match _user._oid) or (Project:Description Is not
Null) )
is wrongly translated into SQL where clause: (
(upper(a1.OID) = ?) or (a.N_descrip is not null) ) and
(a.N_projLead = a1.oid)
The correct clause should be: ( (a.N_projLead =
a1.oid) and (upper(a1.OID) = ?) or (a.N_descrip is
not null) )
- While searching for BugView, N_BugView is used in the
query.
- A condition with (Bug:ID = 1) will become ( ), empty
condition, in database query statement.
- Sequence number has been using up.
- Using the Public user, it cannot enter Enclosure into
BugView. Explicit implementation of display class fixes
this problem.
- The action button icon field is not localized properly.
- The class icon field of class defintion is not localized
properly.
- XML export does not export these
æ#132;æ#150;æ#156;äöü characters into UTF-8
encoding.
- Close database connection before discard database link.
Otherwise testing database connection may use up database
connection allowed by database.
Version 2.1 (Defect Tracker, Enterprise Support)
New Features:
- Enable email to have UTF-8 encoding.
- Single database multiple connections.
- Supports French, Chinese, Spanish and German in UTF-8
encoding.
- Change English to UTF-8 encoding.
- Japanese encoding changed from Shift_JIS to UTF-8.
- Report error to New Fire automatically when an internal
error occurred.
- All servlet path is changed from
"/servlet/com.newfire.sl.SL" to
"/newfire/servlet/com.newfire.sl.SL"
- Upgraded to JavaMail 1.2
- Upgraded to JavaBeans Activation Framework JAF 1.0.1
- Upgraded to JRE1.4.0
- Upgraded to Tomcat 4.0.3
- Picker allows "&_SS=" for search string
setting which automatically populate the avalailable
list.
- Use %~attributeName% for display value for non string
attributes.
- Added HTML display type.
- Defect attribute: Subscribe to Updates no longer works
properly with com.newfire.bug.Subscribed because Modify
Value is changed to Fixed Value. Replaced by button
action. Same to Case.
- Class-Level Access Control now can specify condition as
well as security key.
- New data type: Double.
- Attribute now support display formatting. e.g. 12.9 >
$12.90
- Define Function class interface for user-define functions
to enter parameters. e.g. Email Function class.
- Smarter Import utility.
- Use cookie for session id is optional.
- Supports Java Server Page.
Bug Fixes:
- Using $user$ in the condition of an attribute rule causes
Internal Error.
- Import a bug cannot set its Seq ID
- If Defect has Change History, Defect View
cannot hide change history.
- Case.Defects as X-Attribute on chart has
no X-interval value.
- A view of the TXForm can create sub-level
objects. For example, defects of a case.
- In multi picker dialog, remove all items
from picked list and do a search, picked items show up
again.
- If more than one language is enabled, all
the other un-enabled (but installed) languages will still
be active as if they were enabled.
- On Server Monitor, cannot log off user on
Nescape 4.x
- Search form with ID field filled with #
when there is an attribute rule with condition like (ID =
...)
- admin Upgrade freeze if license expired.
- It takes a long time to send email on
HPUX, fixed by using JavaMail 1.2
- Sybase 7.0.3: ASA
Error -295: Cannot uniquely identify rows in cursor:
while loggin in to the system.
- java.util.MissingResourceException: Can't
find resource for bundle
java.util.PropertyResourceBundle, key
attention.bad.expression:
- Prevent recursive URL redirection from
Action String of Rule or Button Action. Timestamp of
redirection is prefixed by "R".
- Replicate an object: if we delete the
original or the replica, all sublevel objects will be
deleted because they are shared. Now replication an
object replicate objects on all levels.
Version 2.0 (Defect Tracker, Enterprise Support)
New Features:
- Concurrent modification warning: when a user is saving an
object which has just been modified by another user.
- Progressive search: adds more criteria to a quick search
- Form Tree to show sub-level structure of an object
- Import and Export utility in XML format
- Server Monitor monitors server load and status
- Minimized session history memory usage
- Series 2000 can handle large data set of more than 50,000
objects
- Upgrade to JRE 1.3.1 International
- Upgrade to Tomcat 4.0.1
Bug Fixes:
- If product heirarchy extends beyond the bottom of the
screen, the frame does not allow scrolling.
- java.io.InvalidClassException:
com.newfire.cc.PrecisionDate; Local class not compatible:
stream classdesc serialVersionUID=-4830276156576090568
local class serialVersionUID=-6194598055914508697.
- Attribute Rule's Assignment cannot select an attribute
from the dropdown list. Other dropdown list of objects
may also be affected. Cause: KlassOf... objects has
multiple instances. Fix: Synchronized FS.getObject().
- Attribute Rule's Assignment of changing DisplayName
attribute not working.
- When trying to attach a file bigger than .5 or more Meg,
it result in bad page, page timeout or tomcat ran out of
memory.
- Attached file size is 2 bytes more than it should be.
- Discontinuing form tabbing navigation.
- Unable to enter additional enclosure in Japanese locale.
Version 1.3 (New Fire Server and Defect Tracker)
New Features:
- User Profile
- White Board to read and post messages
- Multi-lingual support
- Japanese ready
- Object level access control
- Reset database connection if connection was dropped
- User is now a subset of Key
- Sub-classes search on Picker
- Wireless Markup Language Support
- Netscape 6.01 Support
- Upgraded internal web server to Tomcat 3.2.1
Bug Fixes:
- Memory leak on Object listeners
Patch 1.2.3 (New Fire Server)
Bug Fixes:
- ASA Error -143: Column 'N_First' not
found. Sybase only allows a column number after ORDER BY
in union-all-select statement.
Patch 1.2.2 (New Fire Server)
Bug Fixes:
- Internal Error when attempt to modify an attribute
with a modifying value. (1.2.1 bug)
- java.lang.NullPointerException: at
com.newfire.al.AL_Alarm.run(AL_Alarm.java:93): The
alarm's object appears to be null. Print out the alarm,
remove it and continue to process next alarm.
Patch 1.2.1 (New Fire Server)
New Features:
- Added an Auxiliary Class for free customization.
- Enabled to define dynamic attribute properties. Depending
on the value of other attribute(s), an attribute can
change it's default properties. For example, an attribute
can be hidden.
Bug Fixes:
- java.sql.SQLException: Invalid object name 'N_Contact'
error during logon. This happens after restarting the
server which has just been migrated to database. The
reason is that there is no Contact object and hence the
Contact table is not created during migration.
- Reload on change not working for these display types:
Text Field, Yes/No, Checkboxes.
Version 1.2 (Defect Tracker, Enterprise Support, Recruiter)
New Features:
- Support for Linux
- Implemented operation request with inline username and
password for authentication
- Specify where the log file is and from the log file what
is the code version
- Customize an Email Notification Rule
- Print object details from form
- Support product/component hierarchy
- Upgraded overwrite all previous version's customization.
Will not overwrite anymore
- Provide user customization environment
- Search result can be customized to display and order
columns
- Class can be customized to be replicatable
- Can configure to log database activities, system
activities and web requests
- Component based installation
- Added new charting function SUM
- Upgraded Java Servlet (with Jave Web Server) to Apache
Jakarta Tomcat 3
Bug Fixes:
- Sequence attribute increment randomly due to form
refresh/reload
- Cannot empty password field
- Putting quotes in text field cause javascript error
- Defect ID increment by itself when after entering
attachment
- First log file did not catch some of the starting log
because it starts a bit later
- Using search object as distribution list for mail does
not work because its title criterion is ignored
- Multiple lines of set: in rule action string does
not work
- Email notification url shortcut do not have a domain
address. Using IP now.
- Put menubar in all pop-up windows/dialogs for printing,
etc...
- Klass View security key requirements not functioning
- Error: 414 No detailed message. The form submitted is
possibly having too much data that the HTTP Get protocol
can handle
- Attribute Modify Value interfer with other sessions. No
setting modify values on cached objects
- Printing charts on I.E. has missing bars
- Action button security
- Datetime field type not working
- The history log did not trace creation/initial values
- Date field type not checked properly if mandatory
- No privilege messsage requires logout button for
email-notified users
- Change a field value and save. Then change the same field
back, the object is not saved due to a problem in
recording old values
- There is a inconsistency between the Contains and Not
Contain operation
Version 1.1 (Defect Tracker, Enterprise Support)
New Features:
- Stopped certifying Windows 95. Only certified on Windows
98 and NT 4.0
- Object can now inherit from other object
- Can create object view to shield information from
different type of users
- Support multi-series bar charting with legend and table
view
- Can save search specification
- Can save charting specification
- Bulk email support using user search specification
- Implemented new saving mechanism which saves temparary
objects in session cache until their parent is saved
- Enhanced object caching using object safe
- Delay loading for large attribute value, Text, List and
Binary
Bug Fixes:
- Picker Dialog can only pick the top 50 item
- INTERNAL ERROR on deleting new choice from new
"Integer type - Binary Check Boxes" attribute
- System cache out-of-memory defect
- java.lang.Exception: CD_Klass.getAttr: ? attribute not
found in ? klass
- Windows shortcut gives PATH DOES NOT EXIST OR IS NOT A
DIRECTORY error if Netscape is the default browser.
- If User.username is customized to be modifiable,
modifying an user gives error: Object exists with the
same Username
Version 1.0 (Defect Tracker)
- Can disable attribute but not deleted from Klass
- Enhanced object caching and memory usage using soft
reference
- Object attribute can be restricted to digits and/or
letters
- Implemented session cache for each session
- Allowed attribute deletion from Series 1000 but not
Series 2000, because columns in database cannot be
deleted
Version 1.0 Beta 2 (Defect Tracker)
- Enhanced customization user interface
- Added customer on-line interface
- Added Sequence data type for generating ID
- Added advanced search for complex search criteria
- Added configurable system properties for administrators
- Enforced licensing and concurrent users
- Added configurable user session timeout period
- Added optional object change history / audit trial
- Can create new security keys for object access control
- Can define rules which can be used for automatic routing
- Rules can also be used for escalation
- Enhanced date calendar user interface
- Added configurable logging for daily, weekly, ..
- Do not allow attribute deletion to ensure data
consistancy
© 2007 New Fire.