PrimeBase REALbasic Plug-in: --------------------------- Release: 1.12 Date: June 4 2007 Bug Fixes: ---------- - This build uses version 4321 of the PBAPI lib which contains a bug fix for a memory leak when getting cursor IDs. (For carbon applications built with the RB plug-in the PBAPI.bundle must be updated to version 4.3.21 or later.) Release: 1.11 Date: April 26 2007 Features: --------- - REALbasic 2006 release 4 supported. - Mac OS X Intel supported. --------------------------- Release: 1.9 Date: December 16 2005 As of this release PrimeBase libraries will no longer be packaged with the PrimeBase REALbasic Plug-in. Bug Fixes: ---------- - Large blobs, greater than 2 MEG, where not being returned correctly resulting in the blob being reported as having a size of zero. This bug has been fixed in this version. - References to old depracated methods and classes have been removed from the examples and documentation. Features: --------- - A new method added to display version information for the plug-in: PrimeBaseInfo() AS String In the future this method will also return version information about the various PrimeBase libraries loaded by the plug-in and where they were loaded from. - A new class has been added PrimeBaseDSN. This class allows you to add and edit entries in the PrimeBase "connect.def" file. You can also connect via a connection definition using the new method: ConnectDSN(dsn As PrimeBaseDSN, user As String, passwd As String) as boolean - The plug-in now supports Linux and Mac OSX Mach builds. - Applications targetting Mac OSX Carbon now use the PrimeBase libs libpbvm.so and libpbds.so via the PBAPI.bundle library. - Mac classic builds are no longer supported. - The PrimeBase REALbasic plug-in documentation, as well as this ReadMe, is now available through the REALbasic application's 'Help' menu. - The PBDatabase class has been extended to include a custom connect method along with custom properties: Server: The name of the database server, "PrimeServer" for example. Protocol: The communication protocol to use, one of ("TCP", "ADSP", "MEM", "RT") where "RT" will result in a runtime server connection. ConnectionInfo: The communication protocol specific connection information: TCP: The host IP address. ADSP: The AppleTalk zone. MEM: ConnectionInfo is ignored. RT: The database root path. NOTE: PrimeBase uses the "ConnectionInfo" property and ignores the standard property "host". The prefered method of connecting to a PrimeBase database source is now through the use of the PBDatabase class properties and the "connect" method. The old methods: XOpenPrimeBaseDatabase() OpenPrimeBaseDatabase() OpenRTPrimeBaseDatabase() XOpenRTPrimeBaseDatabase() XOpenATPrimeBaseDatabase() OpenATPrimeBaseDatabase() will continue to be supported but will no longer be documented. - New method added for debugging was added that will generate a PrimeBase API trace file. PrimeBaseDebugMode(activate As Boolean) AS Boolean This method only has an effect if it is called before any connections are opened. The return value is the logging mode in effect before the method was called. --------------------------- Release: 1.6 Date: January 7 2003 Bug Fixes: ---------- - Tinyint data types where not being converted properly. Features: --------- - The plug-in will now handle select statements terminated with a ';' rather then reporting an error. - The demo application (PBClient) now contains a "Help" dialog for runtime connection setup. - Two new connection methods have been added to allow users to make connections using the ADSP protocol. They are identical to the connection functions using TCP except for the method names and that you pass in the zone name instead of the IP address. They are: OpenATPrimeBaseDatabase(servername As String, zone As String, database As String, username As String, password As String) As Database XOpenATPrimeBaseDatabase(servername As String, zone As String, database As String, username As String, password As String) As PBDatabase --------------------------- Release: 1.3 Date: October 3 2002 Bug Fixes: ---------- - Updates or inserts of REALbasic date/time data failed when converted to strings with an error about incorrrect format. - The PBClient demo project was corrupted and couldn't be opened. - In the demo project there was a bug where the row IDs of the data in the table browser wasn't being reset to 0 when a new table was loaded. --------------------------- Release: 1.2 Date: September 9 2002 Bug Fixes: ---------- - A bug that resulted in not being able to make a runtime database connection has been fixed. - The PrimeBase data types "Time", "Date", and "TimeStamp" are now being returned from the plug-in as the REALbasic equivalent date/time types. Previously they had been converted to strings and returned. - The documentation has been updated to give a more complete description of what is required to make a RunTime connection and how to do it. Features: --------- - The following new methods have been added to the PrimeBase plug-in API, please refer to the documentation for a complete description. New PBDatabase methods: ----------------------- SQLExecuteReturning(str As String) As PBDatabaseCursor RowsAffected() As integer New PBDatabaseCursor methods: ----------------------------- NumRows() as Integer ColumnType(column As Integer) as Integer ColumnSize(column As Integer) as Integer ColumnScale(column As Integer) as Integer - Starting with this version the required Libraries will be made part of the REALbasic plug-in package. The libraries shipped with the plug-in are not guarenteed to be the most current version. Before replacing any library you have installed check that the version with the plug-in is newer. --------------------------- Release: 1.1 (Final) Date: May 7 2002 Bug Fixes: ---------- - A bug that resulted in small blobs not being inserted into the database correctly has been fixed. - A bug that resulted in incorrect data being returned from decimal/money columns has been fixed. - PrimeBase procedures executed by ProcedureCall() now ensures that the current row of the cursor returned is positioned to the first row in the cursor. --------------------------- Release: 1.0 Beta3 Date: April 11 2002 Bug Fixes: ---------- - A bug that resulted in crashes when NULL date,time, or datetime fields were returned has been fixed. - Blob data is now handled properly. - Applications no longer crash if they are started and the correct PrimeBase VM library can not be found. - There was a problem with applications that were built for Windows that date,time, or datetime fields were not displayed properly. This has been worked around by returning all date,time, or datetime fields as strings. New Features: ------------- - If a connection attempt fails because a required PrimeBase library could not be found an error will be reported which will include the name of the missing library. - It is now possible to connect to a PrimeBase runtime database server using the OpenRTPrimeBaseDatabase() or XOpenRTPrimeBaseDatabase() methods. - The REALbasic class "Database" has been extended to include the custom methods SQLSelectRW(), SQLSelectRO(), BeginTansaction(), and ProcedureCall(). The name of the extended class is "PBDatabase". - Two new connection methods have been added XOpenPrimeBaseDatabase() and XOpenRTPrimeBaseDatabase() that return the new extended database class "PBDatabase". - The REALbasic class "DatabaseCursor" has been extended to include the custom methods Position(), Name(), and ColumnName(). The name of the extended class is "PBDatabaseCursor". - The demonstration REALbasic project "PBClient.rb" has been extend to make use of the new features. The following has been added: - The "File" menu now contains an item to open a runtime connection. - The "Update" and "Delete" buttons in the "SQL" panel now function and can be used to update, delete or insert a row in the displayed table. - A "Blob Test" panel has been added which enables you to view and insert blobs in a test blob table. A button is provided to create the table if it doesn't already exist and blobs can jpeg images can be insert into it by dragging then into the display window and pressing the "Insert" button. - A "Procedures" panel has been added that demonstrates the use of the ProcedureCall() method. - All unused panels have been removed. Known Bugs and/or REALbasic quirks: ----------------------------------- REALbasic version: 4.0.1 PPC The following are a list of irregularities seen in the demonstration REALbasic project "PBClient.rb" on different platforms, the cause of them is unknown and may be due to bugs in REALbasic or bugs in the project. To the best of our knowledge they are not related to bugs in the plug-in. All features in the demonstration project work correctly when the application is run in the REALbasic debugger. We welcome any input or bug fixes for the demonstration project or explanations for the following behavior from more experienced REALbasic programmers. Windows: -------- - Update and Delete buttons in the "SQL" panel have no effect. - In the "Blob test" panel nothing works. Blobs in an existing database can not be displayed and the application fails to recognize jpeg images dragged into the display window, this may be due to a bug in the demonstration project.