Page 1 of 1

DBT ->FPT

Posted: Sat Nov 27, 2021 9:21 am
by Silvio.Falconi
I'm converting a oldesta prg ( from clipper) and I have Dbf and Dbt, now I use Cdx and fpt
How I can change dbt on Fpt ?

Re: DBT ->FPT

Posted: Sat Nov 27, 2021 10:00 am
by Marc Venken
I did it like this...

Comix will become "DBFCDX" now

Code: Select all | Expand


FUNCTION dbffpt()
   //use emaillog
   //copy to c:\marc\fpt\emaillog.dbf via "COMIX"
   //close all
   //*
    LOCAL aFiles[ADIR("c:\marc\*.dbf")]
    cursorwait()
    ADIR("c:\marc\*.dbf", aFiles)
    asort(afiles)
    for i = 1 to len(aFiles)
       cFile = alltrim(aFiles[i])
       use &cfile
       cTarget = "c:\marc\fpt\" + cfile
       copy to &cTarget via "
COMIX"
       close all
    next
    */
   msginfo("
Done")
RETURN


Re: DBT ->FPT

Posted: Sat Nov 27, 2021 10:06 am
by Silvio.Falconi
Marc Venken wrote:I did it like this...

Comix will become "DBFCDX" now

Code: Select all | Expand


FUNCTION dbffpt()
   //use emaillog
   //copy to c:\marc\fpt\emaillog.dbf via "COMIX"
   //close all
   //*
    LOCAL aFiles[ADIR("c:\marc\*.dbf")]
    cursorwait()
    ADIR("c:\marc\*.dbf", aFiles)
    asort(afiles)
    for i = 1 to len(aFiles)
       cFile = alltrim(aFiles[i])
       use &cfile
       cTarget = "c:\marc\fpt\" + cfile
       copy to &cTarget via "
COMIX"
       close all
    next
    */
   msginfo("
Done")
RETURN




I made

Code: Select all | Expand



#include "fivewin.ch"

REQUEST DBFCDX
REQUEST DBFFPT
EXTERNAL ORDKEYNO,ORDKEYCOUNT,ORDCREATE,ORDKEYGOTO


FUNCTION dbffpt()
   //use emaillog
   //copy to c:\marc\fpt\emaillog.dbf via "COMIX"
   //close all
   //*
    LOCAL aFiles[ADIR("*.dbf")]
    cursorwait()
    ADIR("*.dbf", aFiles)
    asort(afiles)
    for i = 1 to len(aFiles)
       cFile = alltrim(aFiles[i])
       use &cfile
       cTarget = ".\fpt\" + cfile
       copy to &cTarget via "
DBFCDX"
       close all
    next
   
   msginfo("
Done")
RETURN


make me error
Error occurred at: 11/27/21, 11:05:02
Error description: Error DBFNTX/1001 Open error: Agenti

Stack Calls
===========
Called from: => DBUSEAREA( 0 )
Called from: test.prg => DBFFPT( 20 )

System

Re: DBT ->FPT

Posted: Sat Nov 27, 2021 10:14 am
by Marc Venken
Silvio..

You may have to set

RDDSetDefault( "DBFNTX" )
or
RDDSetDefault( "DBFCDX" )
or
use database via "DBFNTX"

Re: DBT ->FPT

Posted: Sat Nov 27, 2021 10:27 am
by Marc Venken
This is working :

Code: Select all | Expand


#include "fivewin.ch"

REQUEST DBFCDX
REQUEST DBFNTX
REQUEST DBFDBT
REQUEST DBFFPT
EXTERNAL ORDKEYNO,ORDKEYCOUNT,ORDCREATE,ORDKEYGOTO


FUNCTION dbffpt()
   //use emaillog
   //copy to c:\marc\fpt\emaillog.dbf via "COMIX"
   //close all
   //*
    LOCAL aFiles[ADIR("*.dbf")]
    cursorwait()
    ADIR("*.dbf", aFiles)
    asort(afiles)
    for i = 1 to len(aFiles)
       cFile = alltrim(aFiles[i])
       use &cfile via "DBFNTX"
       cTarget = ".\fpt\" + cfile
       copy to &cTarget via "
DBFCDX"
       close all
       if I = 10  // for testing
          exit
       endif
    next

   msginfo("
Done")
RETURN



Re: DBT ->FPT

Posted: Sat Nov 27, 2021 11:52 am
by Silvio.Falconi
thanks Great