FILE - Specify type of file to load

Buen día estimada comunidad.

Estoy trabajando con una pregunta tipo “file” pero quiero especificar un tipo de archivo en especifico, por ejemplo, que solo se pueda cargar pdf o docx.

Agradezco su amable ayuda.

@Yimi, we are looking at this and will get back to you soon.

Hi @Yimi, if you are using the form-builder, have you tried using the Accepted Files option in the question settings?

If you are using an XLSForm, you can try adding a column header of body::accept and then the file types you want to accept for the file-type question.

type name label required body::accept
file upload_a_file Upload a file false .pdf,.csv
2 Likes

Muchas gracias, he intentado hacer lo que me ha recomendado, pero de igual manera me deja subir archivos diferentes extensiones.

That is strange… I’m able to restrict the upload file types on my end doing this. Would you mind please sharing the xlsform so that I can test it?

1 Like

Claro que si, apenas estamos comenzando a construir el formulario, la pregunta 1, solicita la autorización de datos personales, si la respuesta es “Si”, entonces me solicita una confirmación en audio y el documento de identidad en formato PDF.AAF_Caracterizacion.xlsx (12.8 KB)

Gracias nuevamente,

Hi @Yimi, thanks for sending that through. I’ve just tested it on my end and it does restrict the file type for me…

upload|50%

I tried with Google Chrome, Safari and Firefox. Have you tried with any other browsers? Are you using the Enketo webform or the Collect Android app?

1 Like

El procedimiento que realizo es, desde enketo, se abre el explorador de archivos, en tipo de archivos selecciono “Todos los archivos”, me muestra cualquier tipo de archivo que tenga en el computador y me deja seleccionarlo y enviarlo.

En este ejemplo a pesar de solo requiero archivos tipo PDF, al seleccionar en el explorador de archivos “Todos los archivos” me permite ver y cargar archivos CSV.

1 Like

Ah, the selection of All files in the finder is what I was missing. It seems like Enketo is just filtering the selection rather than restricting the accepted file-type.

1 Like

Hola buenos días, se me ocurría algo y no se si pueda realizarlo para hacer la validación para determinar el tipo de archivo en especifico, pensaba, al cargar el archivo se genera la cadena de caracteres con el nombre del archivo, ejemplo: “archivo_prueba.pdf” yo podría extraer en un “calculate” de ese nombre los últimos 4 caracteres, es decir la extensión, y con ese valor crear una restricción donde solo permita cargar esos archivos si coinciden con el valor establecido, en este caso la extensión “.pdf”, esto sería posible??.

Gracias,