Welcome To The Home Of The Visual FoxPro Experts  
home. signup. forum. archives. search. google. articles. downloads. faq. members. weblogs. sponsors. rss.
 From: Brad Schulz
  Where is Brad Schulz?
 San Carlos
 California - United States
 Brad Schulz
 To: bryan wetton
  Where is bryan wetton?
 Morphett Vale
 Australia
 bryan wetton
 Tags
Subject: RE: opening multiple tables in one routine
Thread ID: 209088 Message ID: 209090 # Views: 59 # Ratings: 1
Version: Visual FoxPro 9 Category: General VFP Topics
Date: Wednesday, December 24, 2008 8:09:38 AM         
   


> I have developed an application which uses over 17 tables from another application.
>
> I want to make a copy of each table with a new name in a folder and open each one.
>
> At present I am using the following code each time
>
> eg for TEMP_C
>
>
> 
> SELECT TEMP_C
> 
> myorigfilename ="TEMP_C"+'.dbf'
> 
> mycopyfilename = "TEMP_CC"+'.dbf'
> 
> CopyFile (myorigfilename , mycopyfilename, 0)
> 
> myorigfilename ="TEMP_C"+'.fpt'
> 
> mycopyfilename = "TEMP_CC"+'.fpt'
> 
> CopyFile (myorigfilename , mycopyfilename, 0)
> 
> *!*	COPY to TEMP_CC - replaced by API call
> 
> USE
> 
> IF !used('TEMP_CC')
> 	USE TEMP_CC in 0
> ENDIF
> 
> 

>
> Can a clever more experienced coder than me put all this in a FOR NEXT form that I can use instead?
>
> I will manually create an array of the old TEMP filenames and corresponding new TEMP filenames as they will never change.
>
> I already have many prgs using the new filenames.
>
> I am doing this so that the tables form the original application are not changed by my app.
>
> Many thanks
>
> -Bryan


*
* Assuming that laTableInfo[] is a 2-dimensional array
* that contains the Original Table Name and the Name of the Copy...
*
* So, for example...
*   laTableInfo[1,1]="TEMP_C"
*   laTableInfo[1,2]="TEMP_CC"
*
for xx=1 to alen(laTableInfo,1)
  for lnExt=1 to 3
    lcExt=icase(lnExt=1,".DBF",lnExt=2,".FPT",".CDX")
    if file(laTableInfo[xx,1]+lcExt)
      CopyFile(laTableInfo[xx,1]+lcExt,laTableInfo[xx,2]+lcExt,0)
    endif
  endfor
  if not used(laTableInfo[xx,2])
    use (laTableInfo[xx,2]) in 0
  endif
endfor


--Brad



COMPLETE THREAD
opening multiple tables in one routine Posted by bryan wetton @ 12/24/2008 6:58:11 AM
RE: opening multiple tables in one routine Posted by Brad Schulz @ 12/24/2008 8:09:38 AM
RE: opening multiple tables in one routine Posted by bryan wetton @ 12/25/2008 8:29:48 AM
RE: opening multiple tables in one routine Posted by Brad Schulz @ 12/27/2008 6:59:58 PM
RE: opening multiple tables in one routine Posted by bryan wetton @ 12/28/2008 2:48:51 AM
RE: opening multiple tables in one routine Posted by Stefan Wuebbe @ 12/28/2008 10:26:40 AM
RE: opening multiple tables in one routine Posted by bryan wetton @ 12/29/2008 12:37:26 PM
RE: opening multiple tables in one routine Posted by Brad Schulz @ 12/29/2008 7:26:41 PM
RE: opening multiple tables in one routine Posted by Stefan Wuebbe @ 12/29/2008 7:40:52 PM
RE: opening multiple tables in one routine Posted by bryan wetton @ 12/30/2008 7:59:40 AM
RE: opening multiple tables in one routine Posted by bryan wetton @ 12/30/2008 7:53:24 AM
RE: opening multiple tables in one routine Posted by Stefan Wuebbe @ 12/29/2008 7:38:40 PM
RE: opening multiple tables in one routine Posted by Jyothish KV @ 12/24/2008 8:49:56 AM
RE: opening multiple tables in one routine Posted by Andy Kramek @ 12/24/2008 12:20:17 PM