Issue #64
text.tracking property is ignored when printing report
Issue #609
8.0.0.5 – C++ runtime error in Plus8
Issue #688
Toolbar onUpdate is not working properly
Issue #719
windowMenu property does not work in 8.1
Issue #729
ADO does not interpret line feed correctly in a memo field
Issue #730
ADO is returning a wrong size value for a memo field
Issue #745
Plusrun.exe left in memory when release() called externally to the form to be closed
Issue #754
Lisbox does not navigate to option if it is just under the bottom edge
Issue #755
ADO tab is missing on component palette in ‘other’ languages.
Issue #757
Calculations on multipliers and/or divisions are incorrect for set precision > 15
Issue #775
SpinBoxes do not work for numeric fields Connecting to My SQL or MS SQL
Issue #779
Get Error: Variable undefined: BEGINEDIT when trying to use this method on an ADO object
Issue #783
Adding ADO table via navigator is now choosing regular dBASE QUERY and DATABASE objects
Issue #784
Releasing query object in form (with a grid) onClose – then trying to initialize variable produces MAV
Issue #787
Pure virtual function call error in XP 32bit – and crash in XP64bit
Issue #791
Container paint issues with transparency and jpg as background.
Issue #792
Toolbar moves after closing and re-opening form
Issue #793
taskbarbutton = false does not work with modal form in dBASE 8
Issue #796
Inspector shows 2 hWnd properties for class toolbar
Issue #797
Toolbar imageSource is not working
Issue #799
ActiveX teechart Pro … addSeries works in 2.8 but, not in dBASE PLUS 8 .1.2.0
Issue #806
New menu issue – hope for 8.1.3 release – unable to release menu item
Issue #807
Type for SQL numeric fields comes out as F and is affecting the STR function retsults
Issue #816
Cannot Append an ADO Decimal field within a form – get expecting numeric error.
Issue #817
Cannot set null as value of an ADO field
Issue #820
Strange results in the status bar where reindex results were not showing properly
Issue #823
Entryfield picture setting is affecting calculation of value
Issue #830
All numbers over 16 digits are showing asterisks in a table.
Issue #343 & #721
Added requestLive property with default of True to ADOQuery class to enable ability to obtain live ADORowset. Upgraded ADORowset to enable ability to add a row within a Grid datalinked to the ADORowset object.
Issue #658
ADO fields not available in field palette
Issue #690
internal error after adding Session then DataModRef object to Report Designer
Issue #716
ADO fields not available in field palette
Issue #718
Editor colorNormal is not set correctly when editor has focus
Issue #720
MAV using form.close() method in menu
Issue #723
get MAV trying to change a query’s sql statement when using a grid
Issue #724
form with a spinbox appspeedbar and appformatbar settings are not working properly
Issue #725
ADO custom class gets messed up when setting it’s initial SQL is set to an empty string
Issue #736
form canClose is not evaluating correctly when using Pushbutton or Menu to close the form
Issue #740
Switching Report from Run to Design causes MAV crash
Issue #742
MAV running report containing a DataModRef after designing it
Issue #765
Spanish language files built for b2335 are using Personal Settings — Fixed 9/3/2013
Issue #715
Get MAV in app with grid and query results in zero records
Issue #711
Error on calculation using += operator
Issue #707
Cannot add data to ADO table in browser
Issue #706
slow reload of Debugger
Issue #705
dBASE PLUS 8.1 Cannot print reports in Windows 8
Issue #704
Some german translations need to be updated
Issue #703
“Time-Limited Application Expired (0x02)” errors
Issue #702
gif that was transparent in dBASE PLUS 8.0.0.5 is not in 8.1
Issue #701
using up or down arrow of spinbox value in inspector … changes value to boolean
Issue #697
Get ‘Error opening File’ trying to print to htm
Issue #696
Get Internal Error closing Project Explorer from maximized state using non-english languages
Issue #695
Web App builds and runs in 8.005 but NOT in 8.1
Issue #694
Report Designer’s Undo option only undoes field label for field dropped from field palette
Issue #691
Grid datalinked to child ADO Rowset displays new append row in wrong location
Issue #685
Made additional fix to add both field label and field text to Undo stack when dragging field onto report from Field Palette
Issue #679
Table with a numeric field (with no decimal places) and a value of 0 shows as **********
Issue #678
Trying to add a Container to the Report Designer causes ‘Internal Error’
Issue #675
Titles for objects in navigator need to be wrapped so all text shows
Issue #669
Empty returns false when it should be true (regardless of precision)
Issue #664
Linking value in the child table is NOT automatically set when beginAppend is called
Issue #663
LookupSQL Causes incorrect syntax in grid code if lookup field is not AutoInc in the lookup table
Issue #662
ActiveX – license cannot be set.
Issue #659
using Table | replace rows option when browsing produces ‘Data type mismatch ‘ error
Issue #655
Switching views drops dml order and filters on files
Issue #653 & #647
Get MAV clicking on Properties | Desktop Properties if plus.ini contains [DataEngine] DefaultEngine=NONE.
Issue #652
Customize Tool Windows dialog is not saving and restoring last used Tab
Issue #648
ActiveX – Get Unknown error: 8002:802B with new Microsoft ListView Control 6.0 (SP6)
Issue #644, #633 – #640, #617, #365
ActiveX/OLEAutoClient – Fixed many issues with Activex and OLEAutoClient objects not working in dBASE PLUS 8 (that used to work in 2.6x)
Issue #632
form opened Readmodal() will not be released when a form.close() is called from a PushButton_onClick() event
Issue #619
Get internal error using debugger – turning variables window on then off
Issue #615
Notebook has some drawing issues in the “blank space” next to the tabs
Issue #614
Form’s second value in Colornormal property is ignored
Issue #600
Round not working for value under .01 and test fails even if the rounded value seems correct
Issue #595
Get ActiveX image if component is not set up correctly. Instead add warning and allow object to render.
Issue #588
Plusrun.exe left in memory using function in form.onClose event.
Issue #584
Min / Max is only supporting Numeric value. Now supports logic, char and date values.
Issue #583
Container colornormal property does not work
Issue #582
Window menu does not show available windows
Issue #580
Form with custom Taskbartray does not release plusrun.exe when closed
Issue #579
Date object returns type ‘DT’ when it should return ‘O’
Issue #578
If precision is > 15 — for loop is bypassed when using calculated number for the end
Issue #577
Get mav setting adoTable to form.adodatabase1 object that has changed – rebuffering issue
Issue #554
Many crashes and MAV errors with application writen in XDML code.
Issue #549
Form code gen produces invalid activex event func names
Issue #547
Putting a datamodule in the designer removes the lookupsql settings for the rowset.
Issue #542
All child data for ADO database not rendering at all times
Issue #536
Bottom of some text characters not showing on unchecked tab of a notebook
Issue #469
Bad flicker and shapes not showing in Notebook in Form Designer
Issue #467
Notebook.buttons no longer works properly
Issue #465
Part of Notebook Border not visible with Shape object on page 2
Issue #464
Notebook tabs painted over when systemtheme = false
Issue #439
DMD grabs current database instead of the database defined in .sql file
Issue #401
Right click options missing from table viewer (browser) in dBASE Plus 8
Issue #386
Add mouse wheel support for Command Window’s Output Pane
Issue #381
Speedtips not showing in built .exe
Issue #331
OLE/ActiveX – Upgrade OLE/ActiveX support to convert numeric parameters to type specified in type library when calling ActiveX methods
Issue #276
Field Palette is missing support for creating Text Labels when dropping fields on a Form or Report
New …
integrate MSVCRuntime runtime components into .exe instead of including as a separate install
User Alias tab in Desktop Dialog
Issue #85 & #403
Restoring a memory variable from a mem file now works for numbers over 10 digits or Decimal points = 14-NumberOfDigits.
Upgraded SAVE and RESTORE commands to support variables containing High Precision values
Issue #408
Fixed issue when you close the last active form menu is no longer attached to _app.framewindow
Issue #409 & #414 & #447
Extra grid refresh no longer needed for child grid data to show properly
Issue #447
No longer need to re-write a grid component (with defined columns) when trying to change the query using ADO components
Issue #451
Fixed issue where menu enabled property doesn’t change when attaching it to frameWin
Issue #475
When setting container.enabled or notebook.enabled to false in Form Designer, enabled = false is not streamed to .wfm
Issue #480
Fixed issue where Top Level Menu (MDI) is disabled without children and events didn’t work
Issue #481
Fixed internal memory error related to maseterSource settings.
Issue #482
Decimal not displaying correctly
Fixed display and formatting of numeric value in Entryfield and Spinbox controls when control is NOT datalinked and has no settings in its picture or function properties.
If control’s value property is set to a value containing a decimal point, such as 0.00, than the control will display 0.00 at design time, right justified to a width of 13 digits (10 + decimal point + 2 for 00).
When form is run, value should also display correctly and when it receives focus it should continue to display correctly.
Data entry should work as in previous versions of dBASE Plus.
If control’s value property is set to an integer value, such as 0, than value should be displayed right justified up to the default width of 10 digits.
These fixes should not affect cases where control is datalinked or its picture or function properties contain settings except, perhaps when value is zero.
Issue #484
Form object enabled = false properties are not being streamed by designer
Issue #485
Fixed several Formattingissues with negative numbers and picture formats
Issue #488
Fixed issues with output of TAN(DTOR()) function
Issue #490
Fixed More decimalissues spinbox and entryfield
Issue #491
Fixed issue where when clicking on a wrench in a new event in the Inspector The Source Editor comes up but, doesn’t put the cursor inside the new method.
Issue #494
Fixed issue where Text objects mouse events didn’t work
all except for onMouseOut and onMouseOver
Issue #499
Fixed issue where number that used the full size of the field width showed asterisks instead of the values
Issue #503
Fixed issue where if number is using it’s full width of numbers and trying to use $ sign
$ shows up on right instead of the left
Issue #506
Fixed issue where
The inheritance from a custom rectangle without an explicit text property value overrides or ignores an explicit text property value in the instance of the rectangle object on a form.
Issue #511
Fixed severalissues with scientific notation display settings.
Issue #517
Fixed issue with ROUND()
if setting decimal value to 1, was not returning full number before the decimal
Issue #519
Fixed issue where palette positions were not being saved on the right dock of the IDE surface
Issue #520
Fixed MAV that occured when using Style parameter in print command
Issue #523
Fixed issues where some test Result of Math functions fail if SET DECIMALS SET PRECISION is higher than 14
Issue #526
Fixed issue where functions were returning a number with type() = ‘F’ instead of ‘N’ with a high precision setting
This could cause issues where the same functions previously just returned ‘n’
Issue #537
COS(0) no longer returns 0 instead of 1
Issue #546
Fixed MAV with ROUND on very small number
Issue #548
Fixed issue where browse with calculated field causes internal error
Issue #550
Fixed Edit menu options for entryfield on a subform
Issue #538
Fixed dBASE Lockup using formula ATAN(TAN(DTOR(90)))
Issue #541
Fixed comparisons that fail with SET PRECISION lower than 14
Issue #543
Fixed issue where release method does not work inside of a form onClose when using the top right X to exit the form
Issue #546
Fixed MAV on ROUND() with very small number.
Issue #556
Fixed issue where number class toString method ouput was affected by SET DECIMAL
Issue #559
Fixed MDITab bar no longer shows tabs for Command Window and Navigator after calling shell(false,true) when running mdi form
Issue #344
ADO with special field types (like BigInt and Image) no longer crash dBASE.
Issue #353
format toolbar no longer flickers wildly when you click on it’s handle and undock it or move it around.
Issue #368
Fixed issues where Transform was not returning the correct value (additional commas, periods etc… were being use in resulting string)
Issue #369
Fixed possible issues where MAV occurs setting variable to table field with filename.
Issue #377
Ability to use Parameters in ADOQuery has been implemented
Numbered Parameters will work for most ADO Databases
Example…
this.COMPANIES1 = new ADOQUERY(this)
with (this.COMPANIES1)
left = 14.7778
top = 5.72
databaseName = “SQLTEST”
sql = “SELECT * FROM Test.dbo.Companies where NAME = ? “
with (parameters[“NAME”])
value = “dBase, LLC.”
endwith
with (params[“NAME”])
value = “dBase, LLC.”
endwith
active = true
endwith
or
this.COMPANIES1 = new ADOQUERY(this)
with (this.COMPANIES1)
beforeConnect = {;this.parameters[‘NAME’].value = ‘dBase, LLC.’}
left = 17.1111
top = 10.56
databaseName = “SQLTEST”
sql = “SELECT * FROM Test.dbo.Companies where NAME = ? “
cursorLocation = 1 // Server (Allows for editable data in SQL Server)
active = true
endwith
or
this.COMPANIES1 = new ADOQUERY(this)
with (this.COMPANIES1)
left = 14.7778
top = 5.72
databaseName = “SQLTEST”
sql = “SELECT * FROM Test.dbo.Companies where NAME = ? “
endwith
function form_onOpen
with (this.COMPANIES1.parameters[‘NAME’])
value = ‘dBase, LLC.’
endwith
this.COMPANIES1.active = true
this.grid1.dataLink = this.COMPANIES1.rowset
return
Also see issue #437 for another possible parameter marker sample.
Issue #389
Fixed issues where scientific notation was not being handled correctly.
for example 1/0 now returns *******Inf.
?1/.34028234663852E+39 – now returns correct value
Issue #390
Fixed issue where ceiling() within replicate() did not work.
Issue #410
trying to append on a table with a -DBLOCK field no longer produces Error: Data type mismatch. Expecting: Undefined
Issue #417
resource images are now showing in resource dialog. (Resview added back into dBLCore)
Issue #419
No longer get variable undefined: AssocArray with ADOQuery rowset onNavigate (properties = AssocArray – no longer streamed out to code)
Issue #424
Fixed issue where could not set colornormal of notebook with or without systemTheme=true
Issue #428
Fixed issue where programmatically selecting tabbox is throwing Error: Value out of range.
Issue #429
Fixed Bad flicker and shapes not showing in Notebook in Form Designer
Issue #430 & Issue #442
Fixed Math issue – dividing a negative number in some cases produced a positive value.
Issue #432 & Issue #443
Fixed issue where entryfield with numeric value did not allow for decimals.
Issue #437
implemented masterSource for ADO objects
Resolved, with new feature for parameter markers, for example:
this.ADOQUERY1 = new ADOQUERY(this)
with (this.ADOQUERY1)
databaseName = “ADO_MSSQLSERVER”
sql = “select PersonType from Person.Person”
active = true
endwith
this.ADOQUERY2 = new ADOQUERY(this)
with (this.ADOQUERY2)
databaseName = “ADO_MSSQLSERVER”
sql = “select * from Person.Person where PersonType=:PersonType”
masterSource = form.adoquery1.rowset
active = true
endwith
Any record navigating with Rowset from ADOQUERY1 should automatically requery
SQL statement in ADOQUERY2 with the new parameter value from ADOQUERY1 field: ‘PersonType’
The named parameter with colon marker is replaced with a simple positional parameter marker
of question mark (?), and populate parameter collection.
Issue #438
Can now click and drag a .sql file (That connects to ADO Data) to a form without exception
Issue #440
using form.close() from a pushbutton onClick event (with form.mdi=false) no longer leaves plusrun.exe in memory. Same for Timer and popup events.
Issue #448
Fix for… Spinbox with picture “########.##”, entering full value causes decimal point to display in wrong location.
Issue #449
dBASE no longer locks up with multiple readModal forms
Issue #450
Entering negative value in custom spinbox is now accepted.
Issue #453
Corrected issues with calculation of negative values
Issue #454
Setting Notebook.enabled or Container.enabled to False in designer no longer causes enabled=false to be streamed for all contained components
Issue #460
Setting Navigator Tables Tab to a directory path now sets the current database to that path
Issue #462
Editor colorHighlight now has both Text and background properties.
Issue #469
Fixed issue where – when using Large precision (over 15) and setting field value always returned 0
Issue #470
ADOQuery longVarChar fields now show in Reports
Issue #457
Grid column control’s colorNormal and colorHighlight properties are now being streamed to Source Code
Issue #477
No longer get Internal error trying to set Query sql to use parameters in Form designer through inspector
Issue #476
Corrected results of most bit commands (BitAnd BitLShift BitOr BitSet and BitZRShift)
NOTE: BitNot still is not correctly producing results
Issue #478
Query Params are no longer removed by the form Designer.
Issue #382
fixed issue where images were not showing that used to show in dBASE PLUS 2.8
Issue #384
fixed issue where some large numbers were not evaluating correctly in dBASE PLUS 8
Issue #392
fixed MAV on CommandString for MySQL database
Issue #406
B2284
fixed issues with ActiveX that were broken in 2284 (8.0.0.1) that were previously working in 2280
It appears that the back out of some code may have broken other ActiveX controls that were working with the 2280 build.
Issue #411
Fixed issue where large number was not displaying correctly. number should be displayed in full no matter the value of SET PRECISION.
Example…
? 18921124483429384747367
Issue #418
fixed issue where string was not returning the value correctly
example…
?str(100000 * 100000,11,0)
Issue #423
fixed issue where retrieving value from a numeric field was broken – either returns incorrect value or crashes when trying to get results of a field name using ?.
example…
using SAMPLE database
use orderitems
? price
Issue #426
Fixed issue – Dividing 1 by a large number using scientific notation is not evaluating correctly example
?1/.34028234663852E+39
Issue #427
Fix 0/0 to always return *******Nan (Not a Number)
Project Explorer
Issue #24
fixed “TBAR variable not defined” error when closing PE without the standard toolbar.
Issues fixed in version 8.0.0.1
Issue #289
components in Palettes now display in multiple rows and columns if the height does not fit all of the objects.
Issue #290
fixed a regression found in the itoh() function.
Issue #335
plusrun.exe is now being released properly from Memory when closing an executable built from dBASE PLUS 8.
Issue #350
Format toolbar now shows after turning it off then back on without having to move off of Plus IDE all together then back on.
Issue #351
Format toolbar no longer re-opens on it’s own after user closes it.
Issue #363
No longer get an Error Evaluating Expression within a WITH…ENDWITH
Fixed the ability of dBASE to evaluate an expression used to assign a value to a property within a WITH…ENDWITH.
Especially when the expression includes a User Defined Function. Be sure to recompile any problem files.
Issue #367
_app Main Menu Lock option:
can now set MenuBar by default to not floating
Issue #371 and 383
No more MAV after doing some table editing via XDML Commands : LOCATE FOR, DELETE FOR, REPLACE FOR and other FOR option commands.
Issue #372
Fixed MAV’s that occur when using Data Modules created with previous versions of dBASE.
Issue #379
‘Window resource not released’ issue.
The following sample main form is now being released properly.
// check if another MainMenu form is running
if type(“FindWindow”) # “FP”
extern cHandle FindWindow(cString,cString) User32 from “FindWindowA”
endif
// check for the production version running
WindowName = “CIM”
if FindWindow(0,WindowName) > 0
msgbox(“The Production version is already running”)
return
endif
Issue #385
C++ Runtime Error occurs when pushbutton is pressed via Enter key and fires form.close()
This issue has been fixed.
Issue #395
with dBASE Plus 2.8 already installed – then installing dBASE Plus 8 – dQuery does was not come up in dBASE Plus 2.8
This has been fixed.
Issue #404
set database to fixed. After using set “data to” to close the current database.
The USE command can now find any tables in the current directory.
Issue #405
close database mydatabase now properly updates the Navigator.
Issue #024
fixed “TBAR variable not defined” error when closing PE without the standard toolbar.
Issue #064
text.tracking property is ignored when printing report
Issue #085 & #403
Restoring a memory variable from a mem file now works for numbers over 10 digits or Decimal points = 14-NumberOfDigits.
Upgraded SAVE and RESTORE commands to support variables containing High Precision values
Issue #276
Field Palette is missing support for creating Text Labels when dropping fields on a Form or Report
Issue #289
components in Palettes now display in multiple rows and columns if the height does not fit all of the objects.
Issue #290
fixed a regression found in the itoh() function.
Issue #331
OLE/ActiveX – Upgrade OLE/ActiveX support to convert numeric parameters to type specified in type library when calling ActiveX methods
Issue #335
plusrun.exe is now being released properly from Memory when closing an executable built from dBASE PLUS 8.
Issue #343 & #721
Added requestLive property with default of True to ADOQuery class to enable ability to obtain live ADORowset. Upgraded ADORowset to enable ability to add a row within a Grid datalinked to the ADORowset object.
Issue #344
ADO with special field types (like BigInt and Image) no longer crash dBASE.
Issue #350
Format toolbar now shows after turning it off then back on without having to move off of Plus IDE all together then back on.
Issue #351
Format toolbar no longer re-opens on it’s own after user closes it.
Issue #353
format toolbar no longer flickers wildly when you click on it’s handle and undock it or move it around.
Issue #363
No longer get an Error Evaluating Expression within a WITH…ENDWITH
Fixed the ability of dBASE to evaluate an expression used to assign a value to a property within a WITH…ENDWITH.
Especially when the expression includes a User Defined Function. Be sure to recompile any problem files.
Issue #367
_app Main Menu Lock option:
can now set MenuBar by default to not floating
Issue #368
Fixed issues where Transform was not returning the correct value (additional commas, periods etc… were being use in resulting string)
Issue #369
Fixed possible issues where MAV occurs setting variable to table field with filename.
Issue #371 and 383
No more MAV after doing some table editing via XDML Commands : LOCATE FOR, DELETE FOR, REPLACE FOR and other FOR option commands.
Issue #372
Fixed MAV’s that occur when using Data Modules created with previous versions of dBASE.
Issue #377
Ability to use Parameters in ADOQuery has been implemented
Numbered Parameters will work for most ADO Databases
Example…
this.COMPANIES1 = new ADOQUERY(this)
with (this.COMPANIES1)
left = 14.7778
top = 5.72
databaseName =”SQLTEST”
sql = “SELECT * FROM Test.dbo.Companies where NAME = ? “
with (parameters[“NAME”])
value = “dBase, LLC.”
endwith
with (params[“NAME”])
value = “dBase, LLC.”
endwith
active = true
endwith
or
this.COMPANIES1= new ADOQUERY(this)
with (this.COMPANIES1)
beforeConnect = {;this.parameters[‘NAME’].value = ‘dBase, LLC.’}
left = 17.1111
top = 10.56
databaseName = “SQLTEST”
sql = “SELECT * FROM Test.dbo.Companies where NAME = ? “
cursorLocation = 1 // Server (Allows for editable data in SQL Server)
active = true
endwith
or
this.COMPANIES1 = new ADOQUERY(this)
with (this.COMPANIES1)
left = 14.7778
top = 5.72
databaseName = “SQLTEST”
sql = “SELECT * FROM Test.dbo.Companies where NAME = ? “
endwith
function form_onOpen
with (this.COMPANIES1.parameters[‘NAME’])
value = ‘dBase, LLC.’
endwith
this.COMPANIES1.active = true
this.grid1.dataLink = this.COMPANIES1.rowset
return
Also see issue #437 for another possible parameter marker sample.
Issue #379
‘Window resource not released’ issue.
The following sample main form is now being released properly.
// check if another MainMenu form is running
if type(“FindWindow”) # “FP”
extern cHandle FindWindow(cString,cString) User32 from “FindWindowA”
endif
// check for the production version running
WindowName = “CIM”
if FindWindow(0,WindowName) > 0
msgbox(“The Production version is already running”)
return
endif
Issue #381
Speedtips not showing in built .exe
Issue #382
fixed issue where images were not showing that used to show in dBASE PLUS 2.8
Issue #384
fixed issue where some large numbers were not evaluating correctly in dBASE PLUS 8
Issue #385
C++ Runtime Error occurs when pushbutton is pressed via Enter key and fires form.close()
This issue has been fixed.
Issue #386
Add mouse wheel support for Command Window’s Output Pane
Issue #389
Fixed issues where scientific notation was not being handled correctly.
for example 1/0 now returns *******Inf.
?1/.34028234663852E+39 – now returns correct value
Issue #390
Fixed issue where ceiling() within replicate() did not work.
Issue #392
fixed MAV on CommandString for MySQL database
Issue #395
with dBASE Plus 2.8 already installed – then installing dBASE Plus 8 – dQuery does was not come up in dBASE Plus 2.8
This has been fixed.
Issue #401
Right click options missing from table viewer (browser) in dBASE Plus 8
Issue #404
set database to fixed. After using set “data to” to close the current database.
The USE command can now find any tables in the current directory.
Issue #405
close database mydatabase now properly updates the Navigator.
Issue #406
B2284
fixed issues with ActiveX that were broken in 2284 (8.0.0.1) that were previously working in 2280
It appears that the back out of some code may have broken other ActiveX controls that were working with the 2280 build.
Issue #408
Fixed issue when you close the last active form menu is no longer attached to _app.framewindow
Issue #409 & #414 & #447
Extra grid refresh no longer needed for child grid data to show properly
Issue #410
trying to append on a table with a -DBLOCK field no longer produces Error: Data type mismatch. Expecting: Undefined
Issue #411
Fixed issue where large number was not displaying correctly. number should be displayed in full no matter the value of SET PRECISION.
Example…
? 18921124483429384747367
Issue #417
resource images are now showing in resource dialog. (Resview added back into dBLCore)
Issue #418
fixed issue where string was not returning the value correctly
example…
?str(100000 * 100000,11,0)
Issue #419
No longer get variable undefined: AssocArray with ADOQuery rowset onNavigate (properties = AssocArray – no longer streamed out to code)
Issue #423
fixed issue where retrieving value from a numeric field was broken – either returns incorrect value or crashes when trying to get results of a field name using ?.
example…
using SAMPLE database
use orderitems
? price
Issue #424
Fixed issue where could not set colornormal of notebook with or without systemTheme=true
Issue #426
Fixed issue – Dividing 1 by a large number using scientific notation is not evaluating correctly example
?1/.34028234663852E+39
Issue #427
Fix 0/0 to always return *******Nan (Not a Number)
Project Explorer
Issue #428
Fixed issue where programmatically selecting tabbox is throwing Error: Value out of range.
Issue #429
Fixed Bad flicker and shapes not showing in Notebook in Form Designer
Issue #430 & Issue #442
Fixed Math issue – dividing a negative number in some cases produced a positive value.
Issue #432 & Issue #443
Fixed issue where entryfield with numeric value did not allow for decimals.
Issue #437
implemented masterSource for ADO objects
Resolved, with new feature for parameter markers, for example:
this.ADOQUERY1 = new ADOQUERY(this)
with (this.ADOQUERY1)
databaseName = “ADO_MSSQLSERVER”
sql = “select PersonType from Person.Person”
active = true
endwith
this.ADOQUERY2 = new ADOQUERY(this)
with (this.ADOQUERY2)
databaseName = “ADO_MSSQLSERVER”
sql = “select * from Person.Person where PersonType=:PersonType”
masterSource = form.adoquery1.rowset
active = true
endwith
Any record navigating with Rowset from ADOQUERY1 should automatically requery
SQL statement in ADOQUERY2 with the new parameter value from ADOQUERY1 field: ‘PersonType’
The named parameter with colon marker is replaced with a simple positional parameter marker
of question mark (?), and populate parameter collection.
Issue #438
Can now click and drag a .sql file (That connects to ADO Data) to a form without exception
Issue #439
DMD grabs current database instead of the database defined in .sql file
Issue #440
using form.close() from a pushbutton onClick event (with form.mdi=false) no longer leaves plusrun.exe in memory. Same for Timer and popup events.
Issue #447
No longer need to re-write a grid component (with defined columns) when trying to change the query using ADO components
Issue #448
Fix for… Spinbox with picture “########.##”, entering full value causes decimal point to display in wrong location.
Issue #449
dBASE no longer locks up with multiple readModal forms
Issue #450
Entering negative value in custom spinbox is now accepted.
Issue #451
Fixed issue where menu enabled property doesn’t change when attaching it to frameWin
Issue #453
Corrected issues with calculation of negative values
Issue #454
Setting Notebook.enabled or Container.enabled to False in designer no longer causes enabled=false to be streamed for all contained components
Issue #457
Grid column control’s colorNormal and colorHighlight properties are now being streamed to Source Code
Issue #460
Setting Navigator Tables Tab to a directory path now sets the current database to that path
Issue #462
Editor colorHighlight now has both Text and background properties.
Issue #464
Notebook tabs painted over when systemtheme = false
Issue #465
Part of Notebook Border not visible with Shape object on page 2
Issue #467
Notebook.buttons no longer works properly
Issue #469
Bad flicker and shapes not showing in Notebook in Form Designer
Issue #469
Fixed issue where – when using Large precision (over 15) and setting field value always returned 0
Issue #470
ADOQuery longVarChar fields now show in Reports
Issue #475
When setting container.enabled or notebook.enabled to false in Form Designer, enabled = false is not streamed to .wfm
Issue #476
Corrected results of most bit commands (BitAnd BitLShift BitOr BitSet and BitZRShift)
NOTE: BitNot still is not correctly producing results
Issue #477
No longer get Internal error trying to set Query sql to use parameters in Form designer through inspector
Issue #478
Query Params are no longer removed by the form Designer.
Issue #480
Fixed issue where Top Level Menu (MDI) is disabled without children and events didn’t work
Issue #481
Fixed internal memory error related to maseterSource settings.
Issue #482
Decimal not displaying correctly
Fixed display and formatting of numeric value in Entryfield and Spinbox controls when control is NOT datalinked and has no settings in its picture or function properties.
If control’s value property is set to a value containing a decimal point, such as 0.00, than the control will display 0.00 at design time, right justified to a width of 13 digits (10 + decimal point + 2 for 00).
When form is run, value should also display correctly and when it receives focus it should continue to display correctly.
Data entry should work as in previous versions of dBASE Plus.
If control’s value property is set to an integer value, such as 0, than value should be displayed right justified up to the default width of 10 digits.
These fixes should not affect cases where control is datalinked or its picture or function properties contain settings except, perhaps when value is zero.
Issue #484
Form object enabled = false properties are not being streamed by designer
Issue #485
Fixed several Formattingissues with negative numbers and picture formats
Issue #488
Fixed issues with output of TAN(DTOR()) function
Issue #490
Fixed More decimalissues spinbox and entryfield
Issue #491
Fixed issue where when clicking on a wrench in a new event in the Inspector The Source Editor comes up but, doesn’t put the cursor inside the new method.
Issue #494
Fixed issue where Text objects mouse events didn’t work
all except for onMouseOut and onMouseOver
Issue #499
Fixed issue where number that used the full size of the field width showed asterisks instead of the values
Issue #503
Fixed issue where if number is using it’s full width of numbers and trying to use $ sign
$ shows up on right instead of the left
Issue #506
Fixed issue where
The inheritance from a custom rectangle without an explicit text property value overrides or ignores an explicit text property value in the instance of the rectangle object on a form.
Issue #511
Fixed severalissues with scientific notation display settings.
Issue #517
Fixed issue with ROUND()
if setting decimal value to 1, was not returning full number before the decimal
Issue #519
Fixed issue where palette positions were not being saved on the right dock of the IDE surface
Issue #520
Fixed MAV that occured when using Style parameter in print command
Issue #523
Fixed issues where some test Result of Math functions fail if SET DECIMALS SET PRECISION is higher than 14
Issue #526
Fixed issue where functions were returning a number with type() = ‘F’ instead of ‘N’ with a high precision setting
This could cause issues where the same functions previously just returned ‘n’
Issue #536
Bottom of some text characters not showing on unchecked tab of a notebook
Issue #537
COS(0) no longer returns 0 instead of 1
Issue #538
Fixed dBASE Lockup using formula ATAN(TAN(DTOR(90)))
Issue #541
Fixed comparisons that fail with SET PRECISION lower than 14
Issue #542
All child data for ADO database not rendering at all times
Issue #543
Fixed issue where release method does not work inside of a form onClose when using the top right X to exit the form
Issue #546
Fixed MAV on ROUND() with very small number.
Issue #546
Fixed MAV with ROUND on very small number
Issue #547
Putting a datamodule in the designer removes the lookupsql settings for the rowset.
Issue #548
Fixed issue where browse with calculated field causes internal error
Issue #549
Form code gen produces invalid activex event func names
Issue #550
Fixed Edit menu options for entryfield on a subform
Issue #554
Many crashes and MAV errors with application writen in XDML code.
Issue #556
Fixed issue where number class toString method ouput was affected by SET DECIMAL
Issue #559
Fixed MDITab bar no longer shows tabs for Command Window and Navigator after calling shell(false,true) when running mdi form
Issue #577
Get mav setting adoTable to form.adodatabase1 object that has changed – rebuffering issue
Issue #578
If precision is > 15 — for loop is bypassed when using calculated number for the end
Issue #579
Date object returns type ‘DT’ when it should return ‘O’
Issue #580
Form with custom Taskbartray does not release plusrun.exe when closed
Issue #582
Window menu does not show available windows
Issue #583
Container colornormal property does not work
Issue #584
Min / Max is only supporting Numeric value. Now supports logic, char and date values.
Issue #588
Plusrun.exe left in memory using function in form.onClose event.
Issue #595
Get ActiveX image if component is not set up correctly. Instead add warning and allow object to render.
Issue #600
Round not working for value under .01 and test fails even if the rounded value seems correct
Issue #609
8.0.0.5 – C++ runtime error in Plus8
Issue #614
Form’s second value in Colornormal property is ignored
Issue #615
Notebook has some drawing issues in the “blank space” next to the tabs
Issue #619
Get internal error using debugger – turning variables window on then off
Issue #632
form opened Readmodal() will not be released when a form.close() is called from a PushButton_onClick() event
Issue #644, #633 – #640, #617, #365
ActiveX/OLEAutoClient – Fixed many issues with Activex and OLEAutoClient objects not working in dBASE PLUS 8 (that used to work in 2.6x)
Issue #648
ActiveX – Get Unknown error: 8002:802B with new Microsoft ListView Control 6.0 (SP6)
Issue #652
Customize Tool Windows dialog is not saving and restoring last used Tab
Issue #653 & #647
Get MAV clicking on Properties | Desktop Properties if plus.ini contains [DataEngine] DefaultEngine=NONE.
Issue #655
Switching views drops dml order and filters on files
Issue #658
ADO fields not available in field palette
Issue #659
using Table | replace rows option when browsing produces ‘Data type mismatch ‘ error
Issue #662
ActiveX – license cannot be set.
Issue #663
LookupSQL Causes incorrect syntax in grid code if lookup field is not AutoInc in the lookup table
Issue #664
Linking value in the child table is NOT automatically set when beginAppend is called
Issue #669
Empty returns false when it should be true (regardless of precision)
Issue #675
Titles for objects in navigator need to be wrapped so all text shows
Issue #678
Trying to add a Container to the Report Designer causes ‘Internal Error’
Issue #679
Table with a numeric field (with no decimal places) and a value of 0 shows as **********
Issue #685
Made additional fix to add both field label and field text to Undo stack when dragging field onto report from Field Palette
Issue #688
Toolbar onUpdate is not working properly
Issue #690
internal error after adding Session then DataModRef object to Report Designer
Issue #691
Grid datalinked to child ADO Rowset displays new append row in wrong location
Issue #694
Report Designer’s Undo option only undoes field label for field dropped from field palette
Issue #695
Web App builds and runs in 8.005 but NOT in 8.1
Issue #696
Get Internal Error closing Project Explorer from maximized state using non-english languages
Issue #697
Get ‘Error opening File’ trying to print to htm
Issue #701
using up or down arrow of spinbox value in inspector … changes value to boolean
Issue #702
gif that was transparent in dBASE PLUS 8.0.0.5 is not in 8.1
Issue #703
“Time-Limited Application Expired (0x02)” errors
Issue #704
Some german translations need to be updated
Issue #705
dBASE PLUS 8.1 Cannot print reports in Windows 8
Issue #706
slow reload of Debugger
Issue #707
Cannot add data to ADO table in browser
Issue #711
Error on calculation using += operator
Issue #715
Get MAV in app with grid and query results in zero records
Issue #716
ADO fields not available in field palette
Issue #718
Editor colorNormal is not set correctly when editor has focus
Issue #719
windowMenu property does not work in 8.1
Issue #720
MAV using form.close() method in menu
Issue #723
get MAV trying to change a query’s sql statement when using a grid
Issue #724
form with a spinbox appspeedbar and appformatbar settings are not working properly
Issue #725
ADO custom class gets messed up when setting it’s initial SQL is set to an empty string
Issue #729
ADO does not interpret line feed correctly in a memo field
Issue #730
ADO is returning a wrong size value for a memo field
Issue #736
form canClose is not evaluating correctly when using Pushbutton or Menu to close the form
Issue #740
Switching Report from Run to Design causes MAV crash
Issue #742
MAV running report containing a DataModRef after designing it
Issue #745
Plusrun.exe left in memory when release() called externally to the form to be closed
Issue #754
Lisbox does not navigate to option if it is just under the bottom edge
Issue #755
ADO tab is missing on component palette in ‘other’ languages.
Issue #757
Calculations on multipliers and/or divisions are incorrect for set precision > 15
Issue #765
Spanish language files built for b2335 are using Personal Settings — Fixed 9/3/2013
Issue #775
SpinBoxes do not work for numeric fields Connecting to My SQL or MS SQL
Issue #779
Get Error: Variable undefined: BEGINEDIT when trying to use this method on an ADO object
Issue #783
Adding ADO table via navigator is now choosing regular dBASE QUERY and DATABASE objects
Issue #784
Releasing query object in form (with a grid) onClose – then trying to initialize variable produces MAV
Issue #787
Pure virtual function call error in XP 32bit – and crash in XP64bit
Issue #791
Container paint issues with transparency and jpg as background.
Issue #792
Toolbar moves after closing and re-opening form
Issue #793
taskbarbutton = false does not work with modal form in dBASE 8
Issue #796
Inspector shows 2 hWnd properties for class toolbar
Issue #797
Toolbar imageSource is not working
Issue #799
ActiveX teechart Pro … addSeries works in 2.8 but, not in dBASE PLUS 8 .1.2.0
Issue #806
New menu issue – hope for 8.1.3 release – unable to release menu item
Issue #807
Type for SQL numeric fields comes out as F and is affecting the STR function retsults
Issue #816
Cannot Append an ADO Decimal field within a form – get expecting numeric error.
Issue #817
Cannot set null as value of an ADO field
Issue #820
Strange results in the status bar where reindex results were not showing properly
Issue #823
Entryfield picture setting is affecting calculation of value
Issue #830
All numbers over 16 digits are showing asterisks in a table.
YES, projects developed in dBASE PLUS FULL 2.8 should compile with little to no changes.
dBASE PLUS 8 does not support full backward compatibility. This is due to many underlying technical issues, including but not limited to:
This is required! [/toggle] [toggle title=”Some objects, methods, events, and components have been changed in dBASE PLUS 8.”]
This means that behavior is NOT guaranteed from prior releases of dBASE. Users of dBASE should recompile and test code as some components have updated event paths and sequences, methods have changes, and events have been modified.
[/toggle] [toggle title=”Some but not all objects that could be effected by the new underlying MFC (Microsoft Foundation Class) usage.”]
This could cause a break in existing MDI code as it may be assigned to a different form.
In the dQuery source code, there is code such as:
t = new toolbar()
t.parent = this // Developer could have assigned it before on an MDI form
dBASE: and potential code breaking situation…”
_app.frameWin contains an object reference for the Frame Window, this parentage looks to be automatic in the new Toolbar Class.
This should allow dBASE PLUS 8 users to better handle the higher quality graphic formats.
[/toggle] [toggle title=”In order to enable the large version of the standard toolbar in the application frame window, the following should be added to the application’s .ini file:”]
[Tools]
LargeButtons=1
ShowTooltips=1
There is a set of new ActiveX components that have been added to dBASE PLUS 8. These components are based on the open source JEDI component package. The JEDI component package is compiled using either Embarcadero’s Delphi or C++Builder.
[/toggle] [toggle title=”Upgrading from dBASE PLUS 2.6x and lower – reusing your idapi.cfg file”]If the idapi.cfg was in c:\program files ….\common files\borland\bde
Which would be the case with 2.6x…
You should still have the idapi.cfg in c:\program files ….\common files\borland\bde after installing dBASE PLUS 8.
The installer will create a new idapi.cfg in c:\programdata\common files\borland\bde but you should still have the one in c:\Program files\common files\borland\bde
And should be able to copy that over to c:\programdata\common files\borland\bde and use it.
There are a couple of ways to use Parameters with ADOQuery in 8.0.0.3.
Most DBMS connections will be able to use positional parameter markers indicated by a question mark (?).
Here are some examples of some connections to SQL Server using positional parmeters…
Example 1 – in Form.onOpen event.
this.COMPANIES1 = new ADOQUERY(this)
with (this.COMPANIES1)
left = 14.7778
top = 5.72
databaseName = “SQLTEST”
sql = “SELECT * FROM KathyTest.dbo.Companies where NAME = ? “
endwith
this.GRID1 = new GRID(this)
with (this.GRID1)
height = 12.32
left = 3.8889
top = 2.2
width = 31.1111
endwith
this.rowset = this.companies1.rowset
function form_onOpen
with (this.COMPANIES1.parameters[‘NAME’])
value = ‘dBase, LLC.’
endwith
this.COMPANIES1.active = true
this.grid1.dataLink = this.COMPANIES1.rowset
return
Example 2 – in constructor code.
this.COMPANIES1 = new ADOQUERY(this)
with (this.COMPANIES1)
left = 14.7778
top = 5.72
databaseName = “SQLTEST”
sql = “SELECT * FROM Test.dbo.Companies where NAME = ? “
with (params[“NAME”])
value = “dBase, LLC.”
endwith
active = true
endwith
Example 3 – using ADOQuery.beforeConnect event.
this.COMPANIES1 = new ADOQUERY(this)
with (this.COMPANIES1)
beforeConnect = {;this.parameters[‘NAME’].value = ‘dBase, LLC.’}
left = 17.1111
top = 10.56
databaseName = “SQLTEST”
sql = “SELECT * FROM Test.dbo.Companies where NAME = ? “
cursorLocation = 1 // Server
active = true
endwith
You can use the named parameters in most circumstances as well.
This Example also sets up a Parent/Child relationship on SQL Server data using ADOQueries and named parameters and the masterSource property.
this.ORDERS1 = new ADOQUERY(this)
with (this.ORDERS1)
left = 89
top = 178
databaseName = “MYSQLTEST_CA”
sql = “SELECT * FROM orders”
active = true
endwith
this.ORDERDETAILS1 = new ADOQUERY(this)
with (this.ORDERDETAILS1)
left = 367
top = 195
databaseName = “MYSQLTEST_CA”
sql = “SELECT * FROM orderdetails where orderNumber=:orderNumber”
masterSource = form.orders1.rowset
active = true
endwith
If your DBMS ADO/ODBC driver has the ability to set the cursorLocation to ‘Server’ you may be able to make your ADOQuery.rowset editable and not just readable.
For example the following connects to SQL Server and will make the Companies table editable in an ADOQuery object.
this.COMPANIES1 = new ADOQUERY(this)
with (this.COMPANIES1)
left = 17.1111
top = 10.56
databaseName = “SQLTEST”
sql = “SELECT * FROM Test.dbo.Companies”
cursorLocation = 1 // Server
active = true
endwith
If you are unable to use cursorLocation = 1 //Server — then you can use ADOTable objects (which connect directly to table – NOT using sql) to edit your data on a form.
You will know if the cursorLocation is settable or not by simply trying it. If it does not hold after setting the object active=true, then it is not available.
This Example sets up a Parent/Child relationship on SQL Server data using ADOQueries and named parameters and the masterSource property.
this.ORDERS1 = new ADOQUERY(this)
with (this.ORDERS1)
left = 89
top = 178
databaseName = “MYSQLTEST_CA”
sql = “SELECT * FROM orders”
active = true
endwith
this.ORDERDETAILS1 = new ADOQUERY(this)
with (this.ORDERDETAILS1)
left = 367
top = 195
databaseName = “MYSQLTEST_CA”
sql = “SELECT * FROM orderdetails where orderNumber=:orderNumber”
masterSource = form.orders1.rowset
active = true
endwith
How do I execute sql commands in ADODatabase object.
You would use the syntax for the particular DBMS and Driver you are connecting to.
You can usually find the proper syntax by doing a Google search or looking up the driver info.
Here is an example of using the executeSQL command on an ADODatabase object with a MySQL connection using the 5.x MySQL driver.
this.ADODATABASE1 = new ADODATABASE(this)
with (this.ADODATABASE1)
onOpen = class::ADODATABASE1_ONOPEN
onExecute = class::ADODATABASE1_ONEXECUTE
left = 6.1111
top = 4.08
databaseName = “MYSQLTEST_CA”
active = true
endwith
function ADODATABASE1_onExecute(cmd)
?”Completed “+cmd
return true
function ADODATABASE1_onOpen
?”about to : CREATE TABLE aLongVarChar (ALongText LongText);”
this.executeSQL(“CREATE TABLE aLongVarChar (ALongText LongText);”)
return
Component Palette: Sometimes the Component palette will be unable to show all of the objects on it.
Workaround: Just resize the Component Palette is in and it will re-set the list of objects.
[/toggle] [toggle title=”ACTIVEX”]ActiveX: Silverlight ActiveX does NOT work with dBASE PLUS 8. This ActiveX will cause a major program error.
Workaround: It is recommended that all developers avoid this ActiveX with dBASE PLUS 8.
[/toggle] [toggle title=”Only English support – Fixed 8.1.1.0″]dBASE Plus 8 initial offering (B2280) is only available in English at this time. We are hoping to release these in short order.
[/toggle] [toggle title=”COMPONENTS”]Some components have additional Properties, Events, and Methods and not all of them allow for modification. dBase is in the process of removed the exposed items to eliminate confusion.
[/toggle] [toggle title=”Windows 8″]It has been reported that in certain instances dBASE PLUS 8 will allow “bleed-through” on form using the Notebook component. This has not been confirmed by the time of release. If this occurs please let dBase know.
[/toggle] [toggle title=”Windows 8″]It has been reported that editor functional (CTRL-F) find in the editor does not work, this has not been validated. It has also been reported that (CTRL – ->) Next Word does not work, this has not been validated.
[/toggle] [toggle title=”Assembler code”]Running Assembler code in dBASE PLUS 8 can have side effects with the new dBASE PLUS 8 product. It is recommended that alternatives to calling Assembler are preferred, however, if Assembler is used, please test and verify correct operation.
[/toggle] [/accordion]The initial idea was that most queries in other databases are only for data display unless of course you use specialized queries like UPDATE and CREATE statements. We are emulating that behavior here.
In the meantime try using the ADOTable object. it has direct access to the table data rather than using a query and should allow for connections to the data but, also make the data editable on a form.
Fixed as of version 8.1.2.0 by setting ADOQuery’s new requestLive property to True before activating the query.
[/toggle] [toggle title=”Why the difference in Version representation?”]
You will notice that when you go to Help | About dBASE Plus …
You will see a representation of the current version to be something like …
8.0.0.1
However, when doing the VERSION command or using the __version__ preprocessor the representation will show as a numeric version …
8.001 (assuming that SET DECIMAL is at least 3)
So, when checking the VERSION keep this in mind.
48 | Clients in system | |
32 | Sessions per client (3.5 and earlier 16 Bit, 32 Bit) | |
256 | Session per client (4.0 32 Bit) | |
32 | Open databases per session (3.5 and earlier 16 Bit, 32 Bit) | |
2048 | Open databases per session (4.0 32 Bit) | |
32 | Loaded drivers | |
64 | Sessions in system (3.5 and earlier 16 Bit, 32 Bit) | |
12288 | Sessions in system (4.0 32 Bit) | |
4000 | Cursors per session | |
16 | Entries in error stack | |
8 | Table types per driver | |
16 | Field types per driver | |
8 | Index types per driver | |
48K | Size of configuration (IDAPI.CFG) file | |
64K | Size of SQL statement (RequestLive=False) | |
4K | Size of SQL statement (RequestLive=True) | |
6K | Size of SQL statement (RequestLive=True) (4.01, 32 Bit) | |
16K | Record buffer size (SQL or ODBC) | |
31 | Table and field name size in characters | |
64 | Stored procedure name size in characters | |
16 | Fields in a key | |
3 | File extension size in characters | |
260 | Table name length in characters | |
260 | Path and file name length in characters | |
15 | Significant Digits |
127 | Tables open per system (4.0 and earlier 16 Bit32 Bit) | |
254 | Tables open per system (4.01 32 Bit) | |
64 | Record locks on one table (16Bit) per session | |
255 | Record locks on one table (32Bit) per session | |
255 | Records in transactions on a table (32 Bit) | |
512 | Open physical files (4.0 and earlier 16 Bit32 Bit) (DB, PX,MB, X??, Y??, VAL,TV) | |
1024 | Open physical files (4.01 32 Bit) (DB, PX,MB, X??, Y??, VAL,TV) | |
300 | Users in one PDOXUSRS.NET file | |
255 | Number of fields per table | |
255 | Size of character fields | |
2 | Billion records in a table | |
2 | Billion bytes in .DB (Table) file | |
10800 | Bytes per record for indexed tables | |
32750 | Bytes per record for non-indexed tables | |
127 | Number of secondary indexes per table | |
16 | Number of fields in an index | |
255 | Concurrent users per table | |
256 | Megabytes of data per BLOB field | |
100 | Passwords per session | |
15 | Password length | |
63 | Passwords per table | |
159 | Fields with validity checks (32 Bit) | |
63 | Fields with validity checks (16 Bit) | |
53 | Fields with Validity checks added at onetime | |
63 | Number of Sessions with Tables open on1 System |
256 | Open dBASE® tables per system (16 Bit) | |
350 | Open dBASE® tables per system (BDE™ 3.0 – 4.0,32 Bit) | |
512 | Open dBASE® tables per system (BDE™ 4.01, 32 Bit) | |
100 | Record locks on one dBASE® table (16 and 32 Bit) | |
100 | Records in transactions on a dBASE® table (32 Bit) | |
1 | Billion records in a table | |
2 | Billion bytes in .DBF (Table) file | |
4000 | Size in bytes per record (dBASE® 4) | |
32767 | Size in bytes per record (dBASE® for Windows®) | |
255 | Number of fields per table (dBASE® 4) | |
1024 | Number of fields per table (dBASE® for Windows®) | |
47 | Number of index tags per .MDX file | |
254 | Size of character fields | |
10 | Open master indexes (.MDX) per table | |
220 | Key expression length in characters |
This usually happens when your application cannot find the runtime files. Or if the .exe was built with a version that is not compatible with your current runtime files
When running an .exe that you built with dBASE this is how the runtime files are searched:
1 – the .exe looks in the current directory
2 – if there are no Runtime files in the same directory as the .exe. Then during startup the .exe looks for a registry entry
Check your registry entry for the runtime :
HKLM\Software\Wow6432node\dBASE\Plus\series1 “RuntimePath” if in 64bit machine
HKLM\Software\dBASE\Plus\series1 “RuntimePath” if in 32bit machine
You can create individual User Database Aliases in dBASE 2.8 when using the user’s UAC Paths in Vista or Windows 7.
In the User’s Plus.ini (or the applications
(For example c:\users\
Here is information from the dBASE Plus 2.8 help file. Topic: ‘INI’
USERBDEALIASES Is a setting which allows a standard user to create a User Alias that gets saved to the user’s ini file.
A standard user will NOT be able to add a regular BDE Alias that gets stored in the BDE config file (idapi.cfg), unless the user is given administrator privileges OR is put in a custom user group that has full access to the BDE’s registry keys and the folder containing IDAPI.cfg.
The alternative is to deploy your app with one of the following:
– an .ini file containing User BDE Alias settings that the runtime will auto load when starting your application.
– a custom routine that your program runs to create on-the-fly any User BDE Aliases needed while your program is running.
To use the .ini file option, add lines similar to the following:
[UserBDEAliases]
0=SomeAlias
1=SomeODBCAlias
[SomeAlias]
Driver=DBASE
Options=PATH:C:\SomeAliasFolder
[SomeODBCAlias]
Driver=
Options=
Yes, in the DUFLP (Dbase Users Function Library Program) there are many examples and useful tools written in dBL.
Two specifically are ‘ImportData.wfm’ and ‘ExportData.wfm’ which imports and exports to many other data types.
You can go here to get the link (and more information) to the DUFLP (under Code Library)
https://www.dbase.com/support/knowledgebase/ under ‘dBASE Code Examples’.
When you download the DUFLP make sure to create a SourceAlias that points to the DUFLP root dir..