davidjhomer
Posts: 60
Joined: Wed Jun 08, 2016 3:58 pm
Contact: Website Facebook Skype Twitter

SQL Scripts: Your input has been filtered because it contains invalid input for this field.

Looks like a new bug has been introduced in the last few versions.

We use schema versions for our database updates which apply incrementally - however we're no longer able to use a number for the script name - for example 2048.sql this shows the error "Your input has been filtered because it contains invalid input for this field."

Image
CENTREL Solutions Ltd
Server audit and documentation tools.
http://www.centrel-solutions.com
davidjhomer
Posts: 60
Joined: Wed Jun 08, 2016 3:58 pm
Contact: Website Facebook Skype Twitter

Re: SQL Scripts: Your input has been filtered because it contains invalid input for this field.

FYI hacking the .aip file with Notepad and setting the name manually seems fine so looks like a user interface bug.
CENTREL Solutions Ltd
Server audit and documentation tools.
http://www.centrel-solutions.com
Catalin
Posts: 7492
Joined: Wed Jun 13, 2018 7:49 am

Re: SQL Scripts: Your input has been filtered because it contains invalid input for this field.

Hello David,

I have tested this and can confirm the behavior.

I will forward this to our dev team so it can be fixed in a future version of Advanced Installer - thank you for bringing this to our attention!

Until then, please use your workaround.

Best regards,
Catalin
Catalin Gheorghe - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
Catalin
Posts: 7492
Joined: Wed Jun 13, 2018 7:49 am

Re: SQL Scripts: Your input has been filtered because it contains invalid input for this field.

Hello David,

Upon further investigations, it looks like this has been added some time ago (I think ~2 years) to avoid validation errors.

The script name is an MSI Identifier and, as per Microsoft documentation, this can not start with a numeric character.
The Identifier data type is a text string. Identifiers may contain the ASCII characters A-Z (a-z), digits, underscores (_), or periods (.). However, every identifier must begin with either a letter or an underscore.
The validation we have specifically for the name is to help customers use only characters that are valid (as we've seen some wild characters used in the name).

Although the little hack works (as we are not able to validate that), I would advise against using it.

The best approach here would be to add the underscore character at the start of every script name.

Hope this helps!

Best regards,
Catalin
Catalin Gheorghe - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube

Return to “Common Problems”