Parse and Trim in One Calculation

Recommended Posts

I currently have a field that takes the first line from an address field (could be a law firm or an attorney's name):

GetValue ( Customer ; 1 )

(for example, John Smith, Esq.)

I also have a second field which takes the data from the above field and, if that address line is an attorney's name, removes the trailing ", Esq." leaving only the attorney's name:

Case ( Right ( PDF_BillTo ; 6) = ", Esq." ; Left  ( PDF_BillTo; Length ( PDF_BillTo ) - 6) ; PDF_BillTo  )

(for example, John Smith)

Is there a way to consolidate both calculations into one field so it's more efficient?  I can't seem to wrap my head around this and it's driving me nuts.

Thanks,

Kevin

Share on other sites

The Let() function is very convenient in situations like this, as it allows you to work step by step, without having to nest your statements until they become an unreadable mess.

```Let (
name =  GetValue ( Customer ; 1 )
;
Case ( Right ( name ; 6 ) = ", Esq." ; Left  ( name ; Length ( name ) - 6 ) ; name  )
)```

This does the same thing as:

`Case ( Right ( GetValue ( Customer ; 1 )  ; 6 ) = ", Esq." ; Left  ( GetValue ( Customer ; 1 ) ; Length ( GetValue ( Customer ; 1 )  ) - 6 ) ; GetValue ( Customer ; 1 )   )`

which is not only less readable, but also less efficient, as it has to evaluate the expression GetValue ( Customer ; 1 ) 4 times.

Edited by comment

Share on other sites

Thanks so much.  As you can see, I'm no Filemaker expert and sometimes I hit a wall and need a shove in the right direction.

Thanks again, and have a great day.

Kevin

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

×   Pasted as rich text.   Paste as plain text instead

Only 75 emoji are allowed.

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×

×
×
• Create New...