FreeFlow class library
Welcome to the FreeFlow class library. This library exposes
workflow functionality for .NET client and server applications.
FreeFlow.Client namespace
This namespace can be used to create custom clients or to interact with the
engine. The Connection class
provides the base functionality for connecting to the engine and sending and
receiving XML messages. It supports user authentication and raising flags. The
AlertsList class provides access to a user's alerts. The
BlankFormsList class provides access to a user's blank forms list. The
ActionPage class allows programmatic initiation of blank forms. The
FolderPage class allows programmatic access to folders.
FreeFlow.Administration namespace
This namespace can be used to programmatically interact with the engine's
database without writing a single line of SQL. The
Server class provides the main entry point to the class hierarchy. A
valid connection string is all that is required to access the database. Only
SQL Server is currently supported.
FreeFlow.Rss namespace
This namespace can be used to generate RSS feeds for user alerts, the event log
and the Designer log table
Further information can be found at the
FreeFlow website.
Change Log
Build 124
FreeFlow.Administration namespace
The Role class now supports the IRefreshable interface.
Scripts stored in the database can be accessed from
maps and procedures
Build 123
Build 122
Build 119
FreeFlow.Administration namespace
The User class now has a public
constructor for quick and more efficent access to a user.
The User class now provides access to
user attributes.
Build 118
Build 117
FreeFlow.Administration namespace
Tables in the database can now be accessed via the
Server.Tables collection.
Build 116
FreeFlow.Administration namespace
The Version class has a Size
property that returns the size of the procedure/library.
The DesignerLogEntry class has
Property,
DetectedByClass and
DetectedByMethod properties.
The Folder class has a
DeletionList property which returns the deletion alerts for the folder.
Access to authentication scripts is available via the
Server.AuthenticationScripts property, although full control such as
re-ordering of scripts is not yet supported.
FreeFlow.Client namespace
Client scripts whose language has been specified using unusual casing are now
handled correctly.
Breaking change - The constructors for the Field class and derived classes are
no longer public as it doesn't make sense to create instances of these classes.
Build 115
FreeFlow.Administration namespace
There is a new RegistrySettings
class that provides access to the engine registry settings.
The DesignerLogEntry class now overrides
ToString method and will return the details of the designer log entry.
Version 7.5 databases are now recognised.
The Server class now has a property to access the event handler function call
for external delegation of events to .NET assemblies.
The Map class now has properties for external delegation of events to .NET
assemblies.
FreeFlow.Client namespace
The Connection.SAP property
can be used to specify which SAP should be used when logging in.
The FolderPage class has MapName
and StageName properties.
The deprecated Connection.Login and Connection.LoginForm methods have been
removed.
Build 114
FreeFlow.Administration namespace
The AlertCollection class now has methods for
adding and removing
alerts.
Rules stages are now handled correctly.
Build 113
Build 112
FreeFlow.Client namespace
International characters may not be handled correctly if connecting by HTTP.
Connecting via DCOM is suggested if this a problem.
Build 111
FreeFlow.Client namespace
The ActionPage.Submit
method now does nothing if it is called from a non-confirm action, since
starting the action will also submit it.
Connection.LoginForm is
now deprecated. Use the new Connection.LogOnForm
method instead.
FreeFlow.Administration namespace
The collection retruned via the
Server.DesignerLog property now does not include authentication failures,
which are returned via the
Server.AuthenticationFailures property. The full designer log can still
be retrieved by creating an instance of the
DesignerLog class. A new constructor for the
class takes a parameter to filter the returned list.
Performance of the FolderCollection
class has been improved.
Build 110
FreeFlow.Administration namespace
This build fixes a bug with Version 5 procedures causing an exception when
version information was read.
Build 109
FreeFlow.Administration namespace
Most collection classes now implement the IBindingList interface, meaning the
columns can be sorted when bound to a DataGrid control.
Attachments can now be deleted.
Maps can now bew renamed.
Rename a map in the database before republishing the procedure.
Build 108
FreeFlow.Administration namespace
Partial support for Oracle.
Breaking change - Server.DatabaseType is now an enumerated type.
The AlertCollection class has a
ContainsUser method.
The FolderCollection
class has a contructor for passing a SQL where clause that will be used to
build the collection
Forms defined in a map segment are now included in the
FormCollection for a map using the map segment
Build 107
Build 106
Build 105
Build 104
Breaking change - The Usage enumerated type has been renamed
FieldUsage and has been moved to the FreeFlow namespace.
Breaking change - The ActionType enumerated type has been renamed
UserActionType and has been moved to the FreeFlow namespace.
FreeFlow.Administration namespace
The Action class now provides
access to the field usage and user action type(form, confirm etc).
You can now access a folder's
alert message.
You can now unlock a
folder.
You can now access a field's
dataset.
You can update a Folder's Name,
Priority, Subject and Category.
Build 103
Many of the classes in the
FreeFlow.Administration namespace can now access their members by name as
well as by index. It is possible to access a user's To Do and Watch list
through the AlertCollection
class.
Build 102
Build 101
Build 100
Breaking change - The FreeFlow assemblies are now strong-named.
This means the assemblies can be added to the GAC if required, but will require
rebuilding of any applications using them.
Build 98
Connection.RaiseFlag now accepts an array of objects for flag
data.
Build 93
Alert lists now allow retrieval of deletion alerts. This is
useful when alerts are being cached on a client machine and an application
needs to know when alerts have been removed from a To Do or Watch list.
Build 91
Build 89
Flags can now be raised using the engine's DCOM interface
as well as via its XML interface. The
Connection.RaiseFlagBy property controls this.
Build 88
The Connection class has two new
LogOn methods, which should be used in preference to Login (now
deprecated) as these new methods use exceptions like the rest of FreeFlow.
Build 83
The Connection class has a new UserName property. A bug has
been fixed that occurred when fields were referred to using different cases by
the engine.
Build 82
The Connection class has a new constructor that allows an
existing session ID to be passed in.
Build 81
The FreeFlow.Rss assembly has been added to the library. This
can be used to generate RSS feeds for users and administrators.
Build 77
The two assemblies FreeFlow and FreeFlow.Client have been
merged into one assembly, FreeFlow.Client.
Build 71
SSO now works with HTTP. Configure SSO for Win32 clients as
described in the documentation then ensure the escripts folder is configured
for Windows Authentication and SSO should work as expected. If an ASP.Net
application is being used to connect to the engine, ensure <identity
impersonate= "true"/> is set in web.config
Build 64
You can now connect to the engine via DCOM with the
Connection.ConnectionType property. SSO can also be used if the class
library is being used in a client-side application when connecting via DCOM.
Build 54
The Connection.Engine property was being ignored. It is now
used correctly.
Build 47
Added some Visual Basic sample code.
Build 25
Fixed a bug with actions containing XML characters such as <
and >
Build 24
Breaking change - StatusField.Url has changed from
System.String to System.Uri. Use Uri.ToString() to get the URL as a
string.
Improved client script support, almost complete.
Build 23
Added the introduction to the documentation.
Build 22
Improved client script support, although not complete yet.
Build 21
Added VB.NET syntax to documentation.
Added this file to the documentation.