Saturday, May 19, 2012   
 Search   
 

http://www.foxfirereporting.com
Register  Login  
Forums  
      
 Forums    
SearchForum Home
  Support  Foxfire! 8+ Support  Errors when cal...
 Errors when calling FF80 from my app
 
 3/6/2009 2:37:55 PM
Rodes
5 posts


Errors when calling FF80 from my app

If I execute FoxFire8 by clicking on FFStart9 it runs without errors.

But if I call it from my application (MassTwo) I get these errors
after selecting the Developers option.

 Please specify a valid object name for FFActiveX.cObjectName
 FFActiveX.cLibrary (ffdeftvwRegMgrlcons.prg) cannot be found
 Please specify a valid library name for FFActiveX.cLibrary

And others...

These are the pertinent paths in FFPREFER:

    PF_Name:    MassTwo Reports    
    PF_RqstFl:  DBFS\MAS2RQST.DBF
    PF_DItemFl: DBFS\MAS2ITEM.DBF
    PF_JoinFl:  DBFS\MAS2JOIN.DBF
    PF_StylFl:  dbfs\FFSTYLEF.DBF
    PF_FrxDir:  REPORTS\
    PF_OutDir:  OUT\
    PF_SetPath: DBFS; ..\Data; ..\MetaData; ..\Programs;
    PF_InstDbf: FFQLOG.DBF
    PF_GroupFl: DBFS\MAS2GRPS.DBF

Please let me know if I missed any path setup.

I've posted my calling routine below.

TIA

Peter

 


***********************************************************************
**PROCEDURE     CALLFF.PRG
***********************************************************************
**Purpose.....: Call and return from FoxFire
**Parameters..: tcFFPath
**Notes.......: Using the minimum complexity in calling FF now.
**Created.....: 1998.10.19
**History.....:
&&  1999.06.01  New parameter: tcFFPath
&&  1999.08.23  Hide MassTwo toolbar during FF execution.
&&RS 2009.03.01 PRR2 Turn off our error trapping during call to FF
&&RS 2009.03.04 PRR2 Restore screen dimensions after return
**********************************************************************
lparameter  tcFFPath

local   lcOldDef
local   lcError
local   lcFFStart

if not type("tcFFPath") == "C"
    tcFFPath = alltrim(goAPPTAB.cFFPath)
endif

lcFFStart  = tcFFPath + alltrim(goAPPTAB.cFFStart)

if not file(lcFFStart)
    Msg_RS("<Can't locate FoxFire application>:" +chr(13)+chr(10)  ;
     + lcFFStart,"MD")
    return .f.
endif

goApp.oFrmStatus.oToolbar.visible = .f.     &&  1999.08.23
&&RS 2009.03.06 PRR2 TODO: findout why toolbar is still visable

lcOldDef = sys(5) + curd()

set default to (tcFFPath)

**do ("FOXFIRE") with "REQUESTS", "PRR", "TESTING", "F1CONFIG"

lcOnError = on("ERROR")
on error *

**WAIT WINDOW "_screen.width=" + tran(_screen.width) + "  _screen.height=" + tran(_screen.height)

do (lcFFStart)
set default to &lcOldDef
clear

_screen.width  = hnScreen_Width
_screen.height = hnScreen_Height
_screen.windowstate  = 0    && _SCREEN assumes dimensions

**WAIT WINDOW "_screen.width=" + tran(_screen.width) + "  _screen.height=" + tran(_screen.height)

if type("goApp.oFrmStatus.oToolbar.name") == "C"
 goApp.oFrmStatus.oToolbar.visible = .t.     &&  1999.08.23
    on error &lcOnError
endif

return

 

 3/18/2009 1:50:23 PM
AndrewM
149 posts
www.aksel.com
5th


Re: Errors when calling FF80 from my app

The line said " lcFFStart = tcFFPath + alltrim(goAPPTAB.cFFStart)"

What is the actual value in cFFStart??

Andrew
 3/19/2009 4:33:05 PM
Rodes
5 posts


Re: Errors when calling FF80 from my app

I'm only testing with my development machine at this time. I have made a simpler calling program which you can see below.

I made a copy of the FF80 directory and placed in beneath the startup directory for my app (MassTwo).  If I double-click on the FFStart9.exe file in the FF80 directory, FoxFire starts up normally.

But if I call it with the program below I get this error:

'Please specify a valid object name for FFActiveX.cObjectName'

The paths before the call look like this:

CallFF: Current Directory = \DEVWORK\VFP90\MASSTWO\FF80

Procedure = C:\DEVWORK\VFP90\MASSTWO\LIBS\MASS_LIB.FXP, C:\DEVWORK\VFP90\MASSTWO\LIBS\UTILITY.FXP

Path = C:\DEVWORK\VFP90\MASSTWO\; C:\DEVWORK\VFP90\MASSTWO\DATA\; C:\DEVWORK\VFP90\MASSTWO\PROGRAMS\; C:\DEVWORK\VFP90\MASSTWO\LIBS\; C:\DEVWORK\VFP90\MASSTWO\REPORTS\; C:\DEVWORK\VFP90\MASSTWO\FOXFIRE\; C:\DEVWORK\VFP90\MASSTWO\GENERATORS\; C:\DEVWORK\VFP90\MASSTWO\GRAPHICS\; C:\DEVWORK\VFP90\MASSTWO\IMPORT\; C:\DEVWORK\VFP90\MASSTWO\INCLUDE\; C:\DEVWORK\VFP90\MASSTWO\METADATA\; C:\DEVWORK\VFP90\MASSTWO\FIX\; C:\DEVWORK\VFP90\; C:\DEVWORK\VFP90\RODES\LIBS\; C:\DEVWORK\VFP90\RODES\PROGRAMS; C:\DEVWORK\VFP90\RODES\LAYOUT\; C:\DEVWORK\VFP90\3RDPARTY\; C:\DEVWORK\VFP90\3RDPARTY\COMPDBC\; C:\DEVWORK\CONVERTW\PROGRAMS\; C:\DEVWORK\TOOLS\; C:\MASS2LOC\; C:\DEVWORK\BRANCH\;

Peter

 

***********************************************************************
**PROCEDURE     TestFF.PRG
***********************************************************************
**Purpose.....: Simplified stub for testing call and return from FoxFire
**Parameters..: none
**Created.....: &&RS 2009.03.19 PRR2
**History.....: Adapted from CallFF.prg
**********************************************************************
local   tcFFPath

local   lcError
local   lcFFStart
local   lcOldDef

tcFFPath   = "FF80\"
lcFFStart  = "FF80\FFStart9.exe"

if not file(lcFFStart)
    Msg_RS("<Can't locate FoxFire application>:" +chr(13)+chr(10)  ;
     + lcFFStart,"MD")
    return .f.
endif

lcOldDef = sys(5) + curd()
set default to (tcFFPath)

lcOnError = on("ERROR")
on error *

messagebox("CallFF: "  ;
    + "Current Directory = "+sys(2003) + chr(13)+chr(10)  ;
 + "Procedure = " + set("procedure") + chr(13)+chr(10)  ;
 + "Path = " + set("path"))
strtofile("CallFF: "  ;
    + "Current Directory = "+sys(2003) + chr(13)+chr(10)  ;
 + "Procedure = " + set("procedure") + chr(13)+chr(10)  ;
 + "Path = " + set("path"), "CallFF.txt")

do (lcFFStart)

messagebox("CallFF: "  ;
    + "Current Directory = "+sys(2003) + chr(13)+chr(10)  ;
 + "Procedure = " + set("procedure") + chr(13)+chr(10)  ;
 + "Path = " + set("path"))

set default to &lcOldDef
clear

return

 

 3/20/2009 12:17:20 PM
AndrewM
149 posts
www.aksel.com
5th


Re: Errors when calling FF80 from my app
OK - instead of calling FFSTART9, try calling

DO ("FOXFIRE.APP") WITH "REQUESTS","SYSTEM","","FFCONFIG.PRG"


Now the error you are getting suggests that there may be some conflict between one of the methods in the system and the calling system.

Is the error message a standard Foxfire! one or one from your application?

Can you see how far you get into Foxfire! before the message appears?
 3/22/2009 2:17:21 PM
Rodes
5 posts


Re: Errors when calling FF80 from my app

OK, new calling program. Eliminated my paths and procedure.  See below.

It skipped the form with the 'Administrators/Developers' button, but I got the
same error. I picked 'DEBUG' this time and got this:


lparameters tlNoLoad
if not tlNoLoad
    return This.LoadActiveX()
endif not tlNoLoad

...

assert not empty(.cNewObjectName) and type('.cNewObjectName') = 'C' and ;
    type('This.Parent.' + .cNewObjectName + '.Top') = 'U' ;
    message 'Please specify a valid object name for ' + ;
    'FFActiveX.cNewObjectName'


The error message I am seeing is coming from this ASSERT.

I don't have any object named FFActiveX.

Peter

 

***********************************************************************
**PROCEDURE     TestFF2.PRG
***********************************************************************
**Purpose.....: Extremely simple stub for testing call and return from FoxFire
**Parameters..: none
**Created.....: &&RS 2009.03.19 PRR2
**History.....: Adapted from CallFF.prg
**********************************************************************
local   tcFFPath

local   lcError
local   lcFFStart
local   lcOldDef

tcFFPath   = "FF80\"
lcFFStart  = "FF80\FFStart9.exe"

if not file(lcFFStart)
    Msg_RS("<Can't locate FoxFire application>:" +chr(13)+chr(10)  ;
     + lcFFStart,"MD")
    return .f.
endif

lcOldDef = sys(5) + curd()
set default to (tcFFPath)

lcOnError = on("ERROR")
on error *

set path to
set procedure to

messagebox("CallFF: "  ;
    + "Current Directory = "+sys(2003) + chr(13)+chr(10)  ;
 + "Procedure = " + set("procedure") + chr(13)+chr(10)  ;
 + "Path = " + set("path"))
set safety off
strtofile("CallFF: "  ;
    + "Current Directory = "+sys(2003) + chr(13)+chr(10)  ;
 + "Procedure = " + set("procedure") + chr(13)+chr(10)  ;
 + "Path = " + set("path"), "CallFF.txt")
set safety on

do ("FOXFIRE.APP") WITH "REQUESTS", "SYSTEM", "", "FFCONFIG.PRG"

messagebox("CallFF: "  ;
    + "Current Directory = "+sys(2003) + chr(13)+chr(10)  ;
 + "Procedure = " + set("procedure") + chr(13)+chr(10)  ;
 + "Path = " + set("path"))

set default to &lcOldDef
clear

return

 

  Support  Foxfire! 8+ Support  Errors when cal...
   
SearchSearch  Forum HomeForum Home     
 Links    
   
  
Downloaded from DNNSkins.com