Insert from URL and global fields

FM19 and FM18

I have noticed in the use of the function Insert from URL that if you put in the Target parameter a global field the function doesn't work and returns an error message 102, missing parameter . On the other hand you can put a global variable in the URL parameter.

This is not specified in the documentation.

FM19 et FM18

J'ai constaté dans l'utilisation de la fonction Insert from URL que si l'on mettait dans le paramètre Target une rubrique globale la fonction ne fonctionne pas et renvoie un message d'erreur 102, paramètre absent. Par contre on peut mettre une variable globale dans le paramètre URL.

Ce n'est pas précisé dans la documentation.

Is the global field included on the layout? Fields used in Insert From URL must be present on the layout to work.

1 Like

No, its a global field from an other table.

They don't speak of this contraint in documentation, except only when you don't use "Select" parameter.

The docs say the field must be on the layout. This has bitten me before too. I'll often set a variable and then use Set Field [ GLOBAL ; ... ] instead since that doesn't require a field on the layout.

https://help.claris.com/en/pro-help/#page/FMP_Help%2Finsert-from-url.html

You must specify a target variable, specify a target field on the current layout, click in a field, or use the Go to Field script step before performing this script step. If Target is not specified, the data is placed in the active field. Otherwise, this script step returns an error code that can be captured with the Get(LastError) function.

2 Likes

I've read ten or twenty time the help for this function before making some tests.
It's not forbidden to work on the layout showing the record of the table where all global fields used in the application are gathered.
Working as, the field used is on the current layout.

This is not the case, the layout show a table and the field comes from the global fields table and the message is missing parameter which is not appropriate.

I think it's a bug, the message must be more explicit or the documentation must be modified.

Now, I know that limit and it's not a bad thing to notice this for others readers.

1 Like

You can always use a plugin and skip the field requirement.

I haven't read the french documentation but I do read the english documentation very, very carefully.

The documentation should be written in a much simpler style and requirements, like the requirement that the target field has to be on the layout, should be identified in a clear and easily recognised manner. They could use icons or break-out text boxes or any number of other methods for signalling that we should pay attention.

Malcolm

2 Likes

Would using a global variable instead (if you need to use it outside the script) and doing a SET FIELD instead to your global field work?

1 Like

All of the "insert..." commands are quite simply replicating the user behavior. All of them were designed to use layout objects. Any such command interacting with your schema will expect the field to be on the layout in order to work.

Inserting into a variable was later introduced. Because variables are different from fields, there is no requirement for them to be on the layout.

3 Likes