Article: Q319277
Product(s): Microsoft FoxPro
Version(s): 7.0
Operating System(s):
Keyword(s): kbvfp kbGrpDSFox kbDSupport kbCodeSnippet kbvfp700 _IK283 kbVFP700sp1fix
Last Modified: 03-MAY-2002
-------------------------------------------------------------------------------
The information in this article applies to:
- Microsoft Visual FoxPro for Windows, version 7.0
-------------------------------------------------------------------------------
SYMPTOMS
========
When you use the IMPORT command with a Microsoft Excel spreadsheet in Visual
FoxPro 7.0, the Browse window that displays the imported data may be blank, or
you may receive one of the following error messages:
Data type mismatch
or
Fatal Error: Exception code: C0000005
CAUSE
=====
The errors occur because the IMPORT process has filled the Visual FoxPro 7.0
internal name table.
RESOLUTION
==========
To resolve this problem, obtain the latest service pack for Visual FoxPro for
Windows 7.0. For additional information, please see the following article in the
Microsoft Knowledge Base:
Q316964 How to Obtain the Latest Visual FoxPro for Windows 7.0 Service Pack
STATUS
======
Microsoft has confirmed this to be a problem in Microsoft Visual FoxPro for
Windows, version 7.0.
This problem was first corrected in Visual FoxPro for Windows 7.0 Service Pack 1.
MORE INFORMATION
================
Steps to Reproduce the Behavior
-------------------------------
NOTE: The following code assumes that you have installed the sample data that
ships with Visual FoxPro, and that the Visual FoxPro environmental variable
_SAMPLES points to the sample data correctly.
1. Create a Config.fpw file in a text editor such as Notepad. Add the line
"MVCOUNT=50500" (without the quotation marks) to the file, and then save the
file in your Visual FoxPro home directory. If you already use a Config.fpw
file, add this line to the current file.
2. Paste the following code in a program (.prg) file named Test.prg, and then
run the program from the Command window:
LOCAL liCnt AS INTEGER, ;
lcMemVar AS STRING, ;
lcXLFile AS STRING, ;
laDBFArray[1]
CD JUSTPATH(SYS(16))
CLOSE ALL
CLEAR ALL
ERASE Q319277*.*
FOR liCnt = 1 TO 50000
lcMemVar = "MVar" + TRANSFORM(liCnt)
PUBLIC (lcMemVar)
NEXT
USE (_SAMPLES) + "\DATA\CUSTOMER"
AFIELDS(laDBFArray)
USE IN SELECT("CUSTOMER")
CREATE CURSOR "XLS_SOURCE" FROM ARRAY laDBFArray
SELECT "XLS_SOURCE"
WAIT WINDOW "Building XLS file..." NOWAIT NOCLEAR
FOR liCnt = 1 TO 500
APPEND FROM (_SAMPLES) + "\DATA\CUSTOMER"
ENDFOR
COPY TO Q319277_XLS.XLS TYPE XLS
USE IN SELECT("XLS_SOURCE")
WAIT WINDOW "Complete!" TIMEOUT 1
CREATE DATABASE Q319277
SET DATABASE TO Q319277
IMPORT FROM Q319277_XLS.XLS TYPE XLS DATABASE "Q319277" NAME ;
"Some_Long_Table_Name"
USE "Some_Long_Table_Name"
BROWSE
LIST ALL
CLOSE ALL
SET SAFETY OFF
DELETE DATABASE Q319277 DELETETABLES
3. Save this file, and then run the program.
Additional query words:
======================================================================
Keywords : kbvfp kbGrpDSFox kbDSupport kbCodeSnippet kbvfp700 _IK283 kbVFP700sp1fix
Technology : kbVFPsearch kbAudDeveloper kbVFP700
Version : :7.0
Issue type : kbbug
Solution Type : kbfix
=============================================================================