PRB: SAVE SCREEN Not Creating Variable on CLEARed Screen (250495)



The information in this article applies to:

  • Microsoft Visual FoxPro for Windows 5.0
  • Microsoft Visual FoxPro for Windows 5.0a
  • Microsoft Visual FoxPro for Windows 6.0

This article was previously published under Q250495

SYMPTOMS

When using the SAVE SCREEN TO <memory variable> command, the memory variable might not be created. When using the RESTORE SCREEN FROM <memory variable> command, you receive the error:
Variable <memory variable> is not found.

CAUSE

If the screen has been CLEARed, Microsoft Visual FoxPro is not able to save anything to the memory variable, so it is not created. If the memory variable already exists, the information in it is not overwritten.

RESOLUTION

Output of some kind to the screen (Visual FoxPro Desktop) enables the SAVE SCREEN TO command to create the memory variable. The statement:
? SPACE(0)
				
right after the CLEAR command places a null string on the screen and does not affect screen appearance, but it causes the SAVE SCREEN TO command to create the memory variable.

MORE INFORMATION

This problem does not occur in Visual FoxPro 3.0b.

Steps to Reproduce Behavior

  1. Create a program in Visual FoxPro and add the following statements:
    CLEAR ALL
    CLEAR
    * ? SPACE(0) 
    SAVE SCREEN TO X
    ? VERSION()
    RESTORE SCREEN FROM X
    ? TYPE("X")
    					
  2. Run the code and note that the error mentioned in the "Symptoms" section appears.
  3. Remove the asterisk from the line:
    ? SPACE(0)
    						
    and execute the code again.

Modification Type:MajorLast Reviewed:1/19/2000
Keywords:kbDSupport kbprb kbXBase KB250495