Unable to deploy survey form

@Kal_Lam Could you please assist in getting my XLS form deployed, as I keep on having Server error (500) for the upload. Please let me know if to send to you.
Thanks in advance

Welcome to the community, @olasteven! Have you validated your xlsform through this online validator? It should help you identify the syntax errors that are present within your xlsform. Kindly please reach us back if you are still not able to solve your issue.

Oh great, thanks so much…will do that and revert. Best

1 Like

@Kal_Lam I just completed the validation of my XLS form but only left with one saying “Error: Unknown question type ‘begin_kobomatrix’.” I have looked through it, cannot find the error to be fixed… appreciate if you can help me out. Thanks

OK, no worries about this error message as it’s a feature specific for KoBoToolbox, which the online validator should not capture. Now, try uploading and deploying them through your KoBoToolbox user account. You should be able to upload and deploy. Reach us back if any issue.

Oh my… Server error (500) still display… plz…your help.

Would you mind sharing your xlsform with the community? Maybe the community should be able to help you solve your issue.

Note: Please feel free to share your xlsform privately if you feel your xlsform should be treated confidentially.

I just forwarded the file to you privately. thanx

Quickly scanning your xlsform, I could see syntax issues in your xlsform, which are as follows:

  • Spaces are not allowed in choices name:
    Correction required: select_one planned_activities

  • Full stop (period) not allowed in choices name:
    Correction required: select_one affected_pop

  • Spaces not allowed in list_name:
    Correction required: planned_activities

Note: So these are the syntax issues. Try cleaning as outlined and advised and you should be able to upload your xlsform without any issue.

Waoo… that was careless on me… will clean up the rest and revert. Your prompt feedback is highly appreciated.

1 Like

Thank you so much @Kal_Lam .
I have cleaned the file, but still can’t upload…same error message…but have forwarded the XLS form to you privately kindly check it.


@olasteven, seems like you have still missed out two fixes (under the relevant column) based on the changes you made previously:


It’s currently as follows:

selected(${monitoring conducted},'10')
selected(${compliant mechanism},'5')

It should be as follows:


@Kal_Lam many thanks, I have fixed the two issues, but still having same server error. Please I just forwarded the updated XLS form for review.

As a quick check make sure that all the choice name that you have used under the survey sheet is also present under the choices sheet.

I have done that, but I still don’t see any differences in the choice names. … because its strange. Thanks…

OK, will take a stab at it and let you know if I see any issues in it.

Super thanks

Hi @olasteven
When I look at your form, I notice that there are general mistakes which would not allow you to use your form. I strongly suggest that you should take a very thorough look at your form to ensure that you correct each error ; this will avoid the back and forth where support is looking at each instance of error and pointing it for you. I will thus generalize the following issues on your form.

  1. A name must conform to the following parameters
  • Each variable name must be unique; duplication is not allowed.
  • Variable names can be up to 64 bytes long, and the first character must be a letter or one of the characters @, #, or $. Subsequent characters can be any combination of letters, numbers, nonpunctuation characters. From experience avoid the hyphen -
    • Variable names cannot contain spaces.
  • A # character in the first position of a variable name defines a scratch variable. You can only create scratch variables with command syntax. You cannot specify a # as the first character of a variable in dialogs that create new variables.
  • A $ sign in the first position indicates that the variable is a system variable. The $ sign is not allowed as the initial character of a user-defined variable.
  • The period, the underscore, and the characters $, #, and @ can be used within variable names. For example, A._$@#1 is a valid variable name.
  • Variable names cannot begin or end with a period. Names that begin with a period are invalid; names the end with a period may be interpreted as a command terminator. You cannot create variables that begin or end with a period in dialogs that create new variables.
  • Variable names ending in underscores should be avoided, since such names may conflict with names of variables automatically created by commands and procedures.
  • Reserved keywords cannot be used as variable names. Reserved keywords are ALL, AND, BY, EQ, GE, GT, LE, LT, NE, NOT, OR, TO, and WITH.
  • Variable names can be defined with any mixture of uppercase and lowercase characters, and case is preserved for display purposes.
  • When long variable names need to wrap onto multiple lines in output, lines are broken at underscores, periods, and points where content changes from lower case to upper case.

The above also applies to the list names.


1 Like

@stephanealoo Thank u so much, will go through each procedures as emphasised, and revert. Great work indeed.

1 Like

@olasteven, maybe these observations could help you fix your issue. It seems like you made changes as advised previously, but there are still some places that require consistency based on the previously change.

Under the relevant column of your survey tab

In r69
issue: selected(${delays},‘8’)
change with: selected(${rdelay},‘8’)

In r82
issue: selected(${monitoring_conducted},‘10’)
change with: selected(${monitoring_verified},‘10’)

In r105
issue: selected(${compliant_mechanism},‘5’)
change with: selected(${complaint_monit},‘5’)

In r107
issue: selected(${procedures},‘7’)
change with: selected(${beneficiary_feedback},‘7’)

In r146
issue: ${Project_type} = ‘1’,‘2’
change with: ${Project_type} = ‘1’ or ${Project_type} = ‘2’

As advised by @stephanealoo, there are multiple survey elements named PC. You will need to make them unique by renaming it as PC1, PC2


Maybe you should be able to upload your xlsform if you fix these up.

1 Like