Jump to content
Server Maintenance This Week. ×

External Datasource not always available. Best practice?


This topic is 3812 days old. Please don't post here. Open a new topic instead.

Recommended Posts

Hello

 

I have a relation on a file located on a FMServer, which is or is not in the network.

 

If it's not, I have a long delay on startup. There is no field from the related database on the start layout. The external data source is defined in File -> Manage -> External Data Source as fmnet:/ip.add.re.ss/filename.fmp12.

 

What would be the best practice to solve that problem?

 

Best regards and thank you for your advice

Link to comment
Share on other sites

There is no field from the related database on the start layout. The external data source is defined in File -> Manage -> External Data Source as fmnet:/ip.add.re.ss/filename.fmp12.

 

Hi Ralph,

 

The path you are using would work best and be faster if you just use name only as:  filename.fmp12.  In this way, FM will not go off searching for the file if it cannot find it locally.  It is recommended normally to just use the file name.

 

Also, it has been my experience that, even though you have no fields, there must be SOME reference to that file on your Start layout or it wouldn't be fetched.  It could be a field from the current file which references something in the other file; it could be conditional formatting calc ... there are many ways a reference can be defined (like 20 at least).

 

I would also suggest then that you do this - I do this in all solutions:

 

Create a table called NULL.  No fields, no records.  Use it for your Start layout (be on this layout when you save the file so it will always be the first layout which opens and set it as OnFirstWindowOpen as well).  Then from this layout, you can check if the other file is available FIRST by running a script which looks for any GLOBAL value from the other file (put error capture on first) and trap for an error and do what you wish if error is produced.

 

A NULL layout also allows the fastest startup possible which is critical in the world of WAN and mobile.

 

Added word GLOBAL for clarity.  Without relationships you need to look for a global in the other file.

  • Like 1
Link to comment
Share on other sites

Hi LaRetta,

 

Thank you for your hints!

 

...

 

The path you are using would work best and be faster if you just use name only as:  filename.fmp12.  In this way, FM will not go off searching for the file if it cannot find it locally.  It is recommended normally to just use the file name.

 

...

 

if I make it that way, I cannot use the Database when the VPN is open - though it makes a normal start time of the database true.

 

 

...

 

Also, it has been my experience that, even though you have no fields, there must be SOME reference to that file on your Start layout or it wouldn't be fetched.  It could be a field from the current file which references something in the other file; it could be conditional formatting calc ... there are many ways a reference can be defined (like 20 at least).

 

...

 

there is a reference in the current file - I cannot get rid of it (at least not without big changes)

 

 

...

 

Create a table called NULL.  No fields, no records.  Use it for your Start layout (be on this layout when you save the file so it will always be the first layout which opens and set it as OnFirstWindowOpen as well).  Then from this layout, you can check if the other file is available FIRST by running a script which looks for any GLOBAL value from the other file (put error capture on first) and trap for an error and do what you wish if error is produced.

 

A NULL layout also allows the fastest startup possible which is critical in the world of WAN and mobile.

 

Added word GLOBAL for clarity.  Without relationships you need to look for a global in the other file.

 

...

 

I made this - but how can I take the value of a GLOBAL (saved in the external database as $$SAMPLEGLOBAL) over to the other file?

 

Thank you so much for your much valued help


Hi Rick Whitelaw,

 

Hmmm . . . seems to me the external file is on the network or it isn't. If it isn't, you won't connect at all . . . ever.

 

You are right, if I open the VPN it is, if not it's... not. You don't think I can open it on the fly when I'm ready to fetch data?

Link to comment
Share on other sites

The external data source is defined in File -> Manage -> External Data Source as fmnet:/ip.add.re.ss/filename.fmp12.

 

UNTESTED:

 

Try defining the data source as:

 

fmnet:/ip.add.re.ss/filename.fmp12

file:default.fmp12

 

and place a file named "default.fmp12" next to your local solution file.

 

 

The theory behind this is that when the served file is unavailable, the local file will be used instead. The remaining question is how long will it take until that decision is made.

 

 

Make sure the local file has what it needs to "fill in" temporarily for the remote one.

  • Like 1
Link to comment
Share on other sites

This topic is 3812 days old. Please don't post here. Open a new topic instead.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.