Jump to content
Claris Engage 2025 - March 25-26 Austin Texas ×

5.5 downward compatible?


mf

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

Recommended Posts

I have recently purchased Developer 5.5

All our users are using 5.0 (and I did develop the whole application with 5.0)

I just discovered a simple problem that only happens in 5.5. The code was written with 5.0 and is still working if I use 5.0

(the problem is in a simple if-condition statement)

Was I just lucky all this time or are there know differences in 5.5 that are not downward compatible?

At this point I still think that I was the one who made a mistake ("I was just lucky it worked before") but my boss is concerned that their might be other differences that we might not catch right away... and it would mean either dropping 5.5 or upgrading everyone to 5.5 (which is not an option yet).

Any thoughts?

(My problem: in a calculated text field I use a "If" statement: if the field being tested is empty, e.g. If(zv.field1="","abc", "xyz"), I get inconsistent results. If the field is not empty, it uses "xyz"; if zv.field1 is empty it does not use "abc": it remains empty. In some other data fields I use the exact same condition with no problems. I also tested if instead of a text string ("abc") I assign another data field, it works...)

[ November 21, 2001: Message edited by: mf ]

[ November 21, 2001: Message edited by: mf ]

Link to comment
Share on other sites

FM 5.0 and 5.5 are compatible at the file level. You can host a file on Server 5.0 or 5.5 and access hosted files with FM 5.0 or 5.5 clients. If you have not implemented a bunch of 5.5 features, you shouldn't see much of a difference. Take a look at the Read Me file inside your FM 5.5 folder.

The problem you are encountering is due to a different default setting for when a calculation field is evaluated ("do not evaluate if all fields are empty"). Going to Define Fields, selecting the calculated field and changing this setting so that the field is always evaluated should clear up the problem. It isn't so much a bug, as a different default selection.

-bd

Link to comment
Share on other sites

Thanks for the reply,

What troubles me is the inconsistency. The if-condition does "behave" correctly (as expected) with some fields but not in others (and it does work fine if I use FM 5.0). I have gone and replaced empty fields with a value wherever possible or changed the test to IsEmpty. But I am not totally confident I am out of the woods yet (it is a pretty significant change and I need to do a lot of testing).

I tried your suggestion to change the setting (do not evaluate when empty) in another test database but the results are still wrong.

I would really like to push further with 5.5 (ODBC and runtime) but I have to make it work at least as well as it did with 5.0 first... and understand why it is behaving differently.

Link to comment
Share on other sites

OK, there are a couple of issues here.

First, as someone noted, there is a change in FileMaker Pro 5.5 from earlier versions as to default options related to evaluation if fields are empty.

Second, the correct syntax in the calculation box in ScriptMaker to check for an empty field is NOT

if "field_a" = ""

The correct syntax is

If IsEmpty (field_a)

HTH

Old Advance Man

Link to comment
Share on other sites

quote:

Originally posted by Anatoli:

I like that:

Old Advance Man

Junior Member

That is nice!

Thank you for the reminder about proper functions.

Sure. The logical functions go way back. And the IsEmpty function is there especially for that reason.

OAM

Link to comment
Share on other sites

This topic is 8350 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.