home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / World_Of_Computer_Software-02-387-Vol-3of3.iso / a / ac-notes.zip / ACCBUG.TXT next >
Text File  |  1993-02-19  |  22KB  |  509 lines

  1. The following list identifies problems that may occur when using
  2. Microsoft Access.  This list contains all significant, reproducible
  3. problems that we have found since releasing the product.  The list
  4. will be updated on a regular basis as new problems are identified and
  5. validated.  If you have recently reported a bug which is not on this
  6. list, then it is most likely in the process of being researched and
  7. validated.  A detailed description of each problem and the suggested work
  8. around is also provided below.  (2/19/93)
  9.  
  10. 1.  Incorrect Windows For Workgroups driver can cause file truncation
  11.     (correct driver included with Microsoft Access)
  12. 2.  Incorrect LAN Manager driver can cause file truncation (correct
  13.     driver included with Microsoft Access)
  14. 3.  Microsoft Access SETUP may have problems with DOS APPEND statement
  15.     in Autoexec.bat
  16. 4.  ATI Ultra video driver not compatible with Microsoft Access
  17. 5.  Microsoft Access SETUP may leave temporary directory and files on
  18.     disk
  19. 6.  Problem importing .DBF files where record length exceeds dBASE
  20.     maximum
  21. 7.  Microsoft Access cannot use Btrieve data with indexes across column
  22.     boundaries
  23. 8.  Fixed Width import does not correctly translate extended characters
  24. 9.  Cannot hide modal/popup forms with the OpenForm action
  25. 10. Form dynaset references do not always work when using form variables
  26. 11. Problem using Running Sum property with control that evaluates to
  27.     #ERROR
  28. 12. Beta versions of ODBC drivers will not work with Microsoft Access
  29. 13. STACKER 3.0 incorrectly reports that database files are corrupted
  30. 14. Cannot use the CVDate and IsDate functions with empty string argument
  31. 15. Cannot declare new form object variable during break mode
  32. 16. Cannot attach to foreign database in multi-user environment
  33. 17. Using LIKE with trailing spaces and wild cards will not work properly
  34. 18. Query with descending sort on indexed duplicate data can return
  35.     incorrect results
  36. 19. Cannot add counter columns to existing tables with large amounts of
  37.     data
  38. 20. Fixed Width Import does not work with variable length records
  39. 21. Searching on Paradox data with multi-column indexes that contain
  40.     NULLS
  41. 22. Update Queries do not work with "Restrict Available Fields" Option
  42.     disabled
  43. 23. Using the BTRIEVE NLM may give an undefined error alert
  44. 24. Duplicate values may be returned on "Unique Values Only" queries
  45.     (DISTINCT)
  46. 25. Microsoft Access may have problems when multiple instances of 
  47.     extremely large query definitions are used
  48.  
  49.  
  50.  
  51. 1. Incorrect Windows For Workgroups driver can cause file truncation
  52. (correct driver included with Microsoft Access)
  53.  
  54. NOTE:  This problem was discovered before Microsoft Access was released
  55. and all copies of Microsoft Access include the updated Windows for
  56. Workgroups driver and installation instructions.
  57.  
  58. DESCRIPTION:  If you have an early version of the Windows for Workgroups
  59. WFWNET.DRV file (before 11-02-92), using the Network button in Access
  60. dialog boxes to connect to password-protected servers may cause any
  61. database files that you open on that server to become truncated.
  62.  
  63. WORK AROUND:  Update the WFWNET.DRV driver file using the driver update
  64. program included with Microsoft Access.  Complete instructions are
  65. contained in the flier included in your copy of Microsoft Access.
  66.  
  67.  
  68. 2. Incorrect LAN Manager driver can cause file truncation (correct driver
  69. included with Microsoft Access)
  70.  
  71. NOTE:  This problem was discovered before Microsoft Access was released
  72. and all copies of Microsoft Access include the updated LAN Manager driver
  73. and installation instructions.
  74.  
  75. DESCRIPTION:  Using Microsoft Access on a Microsoft LAN Manager
  76. workstation (prior to version 2.2) can cause files to become truncated.
  77. Products that may be affected include: Microsoft LAN Manager prior to
  78. version 2.2; DEC Pathworks for DOS version 4.1; NCR StarGroup LAN Manager 
  79. version 3.6; Olivetti Olinet LAN Manager version 2.1; Ungermann-Bass 
  80. LAN Manager version 2.1.
  81.  
  82. Database truncation is most likely to occur when a user workstation
  83. operates faster than the file server on which the database file is stored.
  84. (Note that the CPU speed alone does not determine the operation speed of
  85. the server. Heavy network traffic can make the server operate more slowly
  86. than a user workstation(s).)
  87.  
  88. WORK AROUND:  If you have LAN Manager 2.1 or 2.1a, install the LAN Manager
  89. Hotfix included with Microsoft Access appropriate to your version of LAN
  90. Manager.  If you have LAN Manager 2.0, include the appropriate line in your 
  91. LANMAN.INI file for LAN Manager versions prior to 2.1.  Refer to the 
  92. instructions included in the README.TXT file in your Microsoft Access 
  93. package for complete details.
  94.  
  95.  
  96. 3. Microsoft Access SETUP may have problems with DOS APPEND statement in
  97. Autoexec.bat
  98.  
  99. DESCRIPTION:  If you have an APPEND statement in your AUTOEXEC.BAT file
  100. and that APPEND statement defines a path where other README.TXT files
  101. exist, Microsoft Access SETUP may abort when installing the README.TXT
  102. file.
  103.  
  104. WORK AROUND:  Remove or remark out the APPEND statement in your
  105. AUTOEXEC.BAT file and reboot your computer before trying to setup
  106. Microsoft Access.
  107.  
  108.  
  109. 4. ATI Ultra video driver not compatible with Microsoft Access
  110.  
  111. DESCRIPTION:  Using ATI-supplied drivers included with the ATI Ultra video
  112. card can cause any of the following problems in Microsoft Access: 1)
  113. General Protection Fault on disabled cascading menus (most common case is
  114. Layout menu with Align command disabled in form or report design); 2)
  115. disabled buttons not visible; and 3) text alignment problems.
  116.  
  117. WORK AROUND:  The suggested work around for these problems is to use the
  118. 8514 video drivers included with Windows 3.1 and not the video drivers
  119. supplied with the ATI Ultra video card.  NOTE: Microsoft is working with
  120. ATI on this problem.  We will post more information on this forum as it 
  121. becomes available.
  122.  
  123.  
  124. 5. Microsoft Access SETUP may leave temporary directory and files on disk
  125.  
  126. DESCRIPTION:  If you request SETUP to install SHARE and then choose the
  127. option to reboot your machine at the end of the installation process,
  128. SETUP will not properly clean up temporary files on your hard disk.  This
  129. leftover directory will have the name MS-SETUP.T and will contain data
  130. files totaling approximately 600K.  Besides taking up hard disk space,
  131. these files will have no affect on Microsoft Access or any other
  132. applications.
  133.  
  134. WORK AROUND:  Do not choose to reboot your machine at the end of the
  135. installation process or simply delete the files and directory after the
  136. reboot process.
  137.  
  138.  
  139. 6. Problem importing .DBF files where record length exceeds dBASE maximum
  140.  
  141. DESCRIPTION:  CodeBase ++ v1.07 allows you to create .DBF files where the
  142. record length exceeds the dBASE IV maximum.  Microsoft Access may hang
  143. when trying to import these type of .DBF files.
  144.  
  145. WORK AROUND:  Export the CodeBase++ .DBF file to delimited text, then
  146. import the ASCII file into Microsoft Access.
  147.  
  148.  
  149. 7. Microsoft Access cannot use Btrieve data with indexes across column
  150. boundaries
  151.  
  152. DESCRIPTION:  Microsoft Access will display the error message: "File is
  153. corrupt or isn't an Access file" when attempting to attach or import a
  154. BTRIEVE file which has an index defined across a column boundary."
  155.  
  156. Access does not support BTRIEVE indexes which have keys defined on a
  157. partial column or across column boundaries.  Indexes which have a segment
  158. of the key which is defined to cross a column boundary are not supported
  159. by the Xtrieve data dictionary format.  Xtrieve may ignore these indexes
  160. and import the file correctly but Microsoft Access does not.
  161.  
  162. WORK AROUND:  You must remove the indexes or recreate them so that they
  163. align on column boundaries.
  164.  
  165.  
  166. 8. Fixed Width import does not correctly translate extended characters
  167.  
  168. DESCRIPTION:  When importing a Fixed Width ASCII file, Microsoft Access
  169. does not properly translate extended characters from OEM to ANSI
  170. representation.  The first 4K of data is imported and translated
  171. correctly, but all data after the initial 4K will not translate correctly.
  172.  
  173. WORK AROUND:  Convert the ASCII file from OEM to ANSI using another
  174. Windows application, such as Windows Write.  Using Windows Write, simply
  175. open the file, responding 'Yes' to the convert alert, then save the file.
  176.  
  177.  
  178. 9. Cannot hide modal/popup forms with the OpenForm action
  179.  
  180. DESCRIPTION:  Using the OpenForm action to hide a modal/popup form may
  181. cause a General Protection Fault.
  182.  
  183. WORK AROUND:  Hide a modal/popup form by using the SetValue action to set
  184. the forms .Visible property to False.
  185.  
  186.  
  187. 10. Form dynaset references do not always work when using form variables
  188.  
  189. DESCRIPTION:  If you reference a form dynaset with variables, you may
  190. receive a General Protection Fault.
  191.  
  192. WORK AROUND:  Always refer to a form dynaset with explicit references
  193. through the form.  The first code fragment below shows how to references a
  194. form dynaset safely and the second code fragments shows what will most
  195. likely cause the problem.
  196.  
  197. A)     SAFE:
  198.        forms!testform.dynaset!col1="foo"
  199.  
  200. B)     MAY CAUSE PROBLEMS:
  201.        dim f as form
  202.        set f = form!testform
  203.        f.dynaset!col1 = "foo"
  204.  
  205.  
  206. 11. Problem using Running Sum property with control that evaluates to
  207. #ERROR
  208.  
  209. DESCRIPTION:  If a report contains a control where the Running Sum
  210. property is set to 'Over Group' or 'Over All' and the control evaluates to
  211. #ERROR, Microsoft Access will cause a General Protection Fault.
  212.  
  213. WORK AROUND:  Correct the expression in the control source property so
  214. that it evaluates correctly.
  215.  
  216.  
  217. 12. Beta versions of ODBC drivers will not work with Microsoft Access
  218.  
  219. DESCRIPTION:  When using Beta versions of the ODBC drivers, Microsoft
  220. Access may experience General Protection Faults in ODBC.DLL.  The problem
  221. is that when Microsoft Access initiates an ODBC connection, ODBC does not
  222. properly check the version of the ODBC driver.
  223.  
  224. WORK AROUND:  Rename or delete the beta version of ODBC.DLL and run the
  225. ODBC setup program from the setup disks that come with Microsoft Access.
  226. This will install a current ODBC.DLL file.
  227.  
  228.  
  229. 13. STACKER 3.0 incorrectly reports that database files are corrupted
  230.  
  231. DESCRIPTION:  Running Stacker's "check /=D /F" command will often report
  232. that some Access .mdb files are corrupt and should be deleted.  The
  233. problem is that the "/=D /F" flags are for development and debugging
  234. purposes and will report things which are really not problems.  If for
  235. some reason you run CHECK.EXE with the /=D switch and it asks if you want
  236. to delete a file, answer NO!  The file is fine.  These are superfluous
  237. error messages.
  238.  
  239. WORK AROUND:  Do not run CHECK.EXE with the /=D switch.  If you do run
  240. CHECK /=D, answer NO when prompted to delete files.  Stac Electronics has
  241. written a document explaining the "Lost Sector Groups" reported by CHECK
  242. /=D.  The document is referenced as TEC042.DOC on CompuServe or the Stac
  243. BBS and as document #3003 on STAC FAX, Stac Electronics' automated FAX
  244. response service.
  245.  
  246.  
  247. 14. Cannot use the CVDate and IsDate functions with empty string argument
  248.  
  249. DESCRIPTION:  The CVDate function is used to convert a string or numeric
  250. expression to a variant of type date.  If this function is called with the
  251. empty string as the expression (i.e. CVDate("")) then you will get a
  252. general protection fault.  The IsDate function has the same problem.
  253.  
  254. WORK AROUND:  Verify that you are passing valid date strings in the
  255. argument to CVDate.
  256.  
  257.  
  258. 15. Cannot declare new form object variable during break mode
  259.  
  260. DESCRIPTION:  The General Protection Fault occurs when declaring an object
  261. variable (form, table, etc.) during break mode (when debugging Access
  262. Basic code) and then trying to recompile the code. The following are
  263. examples of object variable declarations:
  264.  
  265.   Dim F as Form
  266.   Dim T as Table
  267.  
  268. WORK AROUND:  Don't add these type of variables while in break mode.
  269.  
  270.  
  271. 16. Cannot attach to foreign database in multi-user environment
  272.  
  273. DESCRIPTION:  Attaching/importing will only work if you can open the
  274. foreign database file (dBASE, Paradox, BTRIEVE, etc) exclusively.  If you
  275. attempt to attach to these types of files while others are using them you
  276. will get an error message stating that the table or file is already in
  277. use.  This problem is isolated to attach and import.  Once you have
  278. successfully attached to a file of this type you can then edit or browse
  279. this file in a multi-user environment.
  280.  
  281. WORK AROUND:  Must obtain exclusive access to foreign database file in
  282. order to import or attach.
  283.  
  284.  
  285. 17. Using LIKE with trailing spaces and wild cards will not work properly
  286.  
  287. DESCRIPTION:  When using the LIKE operator with trailing spaces and
  288. trailing wild cards (i.e. LIKE "The *") you will not always get back the
  289. proper results.  Access ends up trimming the trailing spaces in this case
  290. and actually performs LIKE "The*".  This is only a problem when you have
  291. both trailing spaces and the trailing wild card character.
  292.  
  293. WORK AROUND:  A sample work around for the LIKE "The *" example would be
  294. as follows:
  295.  
  296.      (LIKE "The*" AND (mid$([Field],4,1) = " "))
  297.  
  298.  
  299. 18. Query with descending sort on indexed duplicate data can return
  300. incorrect results
  301.  
  302. DESCRIPTION:  When sorting data in descending order on a column that is
  303. indexed and contains over 506 duplicate entries, Access can return
  304. incorrect results to the user (wrong number of rows).  This can occur when
  305. the Index property for a column is set to Yes (No Duplicates) or Yes
  306. (Duplicates OK), but not when there is a primary key on the column.
  307. Non-primary key indexes can have multiple NULL entries.
  308.  
  309. WORK AROUND:  Remove the index from the column that is being sorted.  This
  310. will cause the query to execute more slowly but will give you the correct
  311. results.
  312.  
  313.  
  314. 19. Cannot add counter columns to existing tables with large amounts of
  315. data
  316.  
  317. DESCRIPTION:  You cannot add counter columns to an existing table that
  318. contains large amounts of data (roughly anything greater than 4 MB of
  319. data).  This problem occurs because of a current limitation in the Access
  320. transaction model (transaction size limited to 4 MB).  This problem
  321. manifests itself with counter columns because the table data for this
  322. column is updated as the column is added.  This update will take place
  323. within a transaction and on large tables it will encounter the Access
  324. transaction size limit.  The transaction will then rollback and the
  325. counter column will not be successfully added.
  326.  
  327. WORK AROUND:  Follow these steps to add a counter column to a large
  328. table:
  329.  
  330.   1) Copy/Paste the table structure (not the data) to a new table
  331.   2) Add a counter column to this new table
  332.   3) Create an append query that transfers data from the
  333.      old table into the new table
  334.   4) Verify new table has correct data
  335.   5) Delete the old table
  336.   6) Rename the new table to the name of the old table
  337.  
  338.  
  339. 20. Fixed Width Import does not work with variable length records
  340.  
  341. DESCRIPTION:  The fixed width import utility currently expects all records
  342. in your text file to be the same length.  This most commonly presents
  343. itself as a problem when the right most column of your text file has
  344. strings of different lengths and they are not padded with spaces.  In this
  345. case, Access will not import the data as you might expect (Access will
  346. look to the next line for more characters if the right most column is not
  347. properly padded).
  348.  
  349. WORK AROUND:  When importing ASCII Fixed Width files you must ensure that
  350. all record (lines of text) are the same length.  In some cases this may
  351. require that you manually or programmatically pad some lines with the
  352. correct amount of spaces.  The following piece of code below is an example
  353. of how one might programatically pad the lines of a text file so that all
  354. lines (records) of the file are fixed length.
  355.  
  356. '----------------------------------------------------------------
  357. 'InFile$  - name of Fixed Width Ascii data file
  358. 'OutFile$ - name of new file to create with proper padding
  359. 'RecLen%  - Fixed length of each record in the padded file
  360. '----------------------------------------------------------------
  361. Sub PadFixedWidthFile (InFile$, OutFile$, RecLen%)
  362.  
  363.   fh1% = FreeFile
  364.   Open InFile$ For Input As #fh1%
  365.  
  366.   fh2% = FreeFile
  367.   Open OutFile$ For Output As #fh2%
  368.  
  369.   'Pad data and place in new file
  370.   While Not EOF(fh1%)
  371.     Line Input #fh1%, Ln$
  372.     If (Len(Ln$) < RecLen%) Then
  373.       Ln$ = Ln$ + String$(RecLen% - Len(Ln$), " ")
  374.     Else
  375.       MsgBox "Padding process aborted! - Data exceeds record length "
  376.       MsgBox Ln$
  377.       GoTo ExitPadFixedWidthFile
  378.     End If
  379.     Print #fh2%, Ln$
  380.   Wend
  381.  
  382. ExitPadFixedWidthFile:
  383.   Close #fh1%
  384.   Close #fh2%
  385.  
  386. End Sub
  387.  
  388.  
  389. 21. Searching on Paradox data with multi-column indexes that contain NULLS
  390.  
  391. DESCRIPTION:  Using the Edit Find dialog to search Paradox fields for
  392. specific values will not work properly if the field being searched is part
  393. of a multi-column index, the field contains NULLS, and the "Search Fields
  394. As Formatted" option is disabled in the EditFind dialog.
  395.  
  396. WORK AROUND:  The workaround is to check the 'Search Fields as Formatted'
  397. option so that the index is not used in the search.  Similarly, when
  398. querying on Paradox fields that are part of a multi-column index and
  399. contain NULLS you should use the LIKE operator in places where you might
  400. normally use the equivalence operator.
  401.  
  402. AVOID:
  403.    SELECT *
  404.    FROM TestTable
  405.    WHERE ((FieldX=23));
  406.  
  407. WORK AROUND:
  408.    SELECT *
  409.    FROM TestTable
  410.    WHERE ((FieldX Like 23));
  411.  
  412.  
  413. 22. Update Queries do not work with "Restrict Available Fields" Option
  414. disabled
  415.  
  416. DESCRIPTION:  If you use the View Options dialog to set the Query Design
  417. option "Restrict Available Fields" to NO (the default is YES) then UPDATE
  418. queries will not work correctly.  In the most common case Access will
  419. cause a General Protection Fault, but there have been isolated cases where
  420. the query actually executed to completion and incorrectly altered the data
  421. in your table (the wrong columns get updated).
  422.  
  423. WORK AROUND:  Use the Query Properties dialog to set the "Restrict
  424. Available Fields" option to No on a query by query basis when this
  425. functionality is desired. Do not use the View Options dialog to set 
  426. this option on a global basis.
  427.  
  428.  
  429. 23. Using the BTRIEVE NLM may give an undefined error alert
  430.  
  431. DESCRIPTION:  Users who do not have all of the correct versions of
  432. BREQUEST.EXE, WBTRCALL.DLL, and WBTRVRES.DLL may receive an "Internal
  433. Database Error (-5001)" alert when using the BTRIEVE NLM.
  434.  
  435. WORK AROUND:  In order to get the BTRIEVE NLM to function properly, we
  436. recommend that the NLM requester (client) uses the 6.0 versions of
  437. BREQUEST.EXE, WBTRCALL.DLL,  WBTRVRES.DLL and the 5.15 version of
  438. BTRIEVE.NLM. Follow these steps:
  439.  
  440.   1) Sign on to CompuServe
  441.   2) Go NOVLIB
  442.   3) Go into the BTRIEVE/XQL library section
  443.   4) Download the BT515.ZIP file
  444.   5) Use PKUNZIP.EXE to unpack the file
  445.   6) Unpack the BTRREQ.ZIP file that gets unpacked from step 5
  446.   7) Obtain the following files:
  447.       WBTRCALL.DLL
  448.       WBTRVRES.DLL
  449.       BREQUEST.EXE
  450.   8) Follow the readme notes to properly install and execute these files
  451.   9) The readme should also explain how to apply patches 1-65 to the
  452.      BTRIEVE.NLM file on the server
  453.  
  454. The WIN.INI file should also be modified with the following lines:
  455.  
  456. [BREQUESTDPMI]
  457. datalength=4096
  458. tasks=10
  459. local=no
  460. chkparms=no
  461.  
  462.  
  463. 24. Duplicate values may be returned on "Unique Values Only" queries
  464. (DISTINCT)
  465.  
  466. DESCRIPTION:  DISTINCT queries may return a few duplicate values at the
  467. beginning of the result set if the data set is very large.  This happens
  468. only if the result set of the query is greater than 64K (counting the
  469. duplicate values).  Record position of the duplicate values in the result
  470. set is a contributing factor.
  471.  
  472. The conditions that must be met are as follows:
  473.  
  474. a) The underlying table(s) contains a large number of records (the result
  475.    set must be >64K).
  476. b) The data values that sort to the beginning of the output must have
  477.    many duplicate values scattered throughout the input.
  478.  
  479. This can manifest itself in a Select query with the Unique Values Only
  480. property turned on (DISTINCT).  It can also show up in a Crosstab query as
  481. duplicated columns with names like "Field0", "Field1", etc.
  482.  
  483. This problem only occurs with Select DISTINCT queries, and not with the
  484. much more common Select DISTINCTROW queries.
  485.  
  486. WORK AROUND:  For Select queries, use Totals with GROUP BYs instead of
  487. using the Unique Values Only property.
  488.  
  489. For Crosstab queries, use Fixed Column Heading to prevent the problem.
  490.  
  491.  
  492. 25. Microsoft Access may have problems when multiple instances of 
  493. extremely large query definitions are used
  494.  
  495. DESCRIPTION:  Trying to open more than one instance of a query may cause a
  496. General Protection Fault in Microsoft Access when the query definition is
  497. extremely large.  For example, if you have a form based on a query with a
  498. query definition size of >32K and you then attempt to create a SnapShot
  499. from the same query, Microsoft Access may cause a General Protection
  500. Fault.  This happens because multiple versions of the query definition
  501. must be saved, and the saved query definitions do not fit within the
  502. query's segment space (the space allocated to each query).
  503.  
  504. Note: The number of records in the result set is NOT a contributing factor.
  505.  
  506. WORK AROUND:  Create a second query based on the first query and use one
  507. of the queries for the form, and the other query for the SnapShot.
  508.  
  509.