Autor Tema: Validacion campos obligatorios formulario Acrobat setFocus print JavaScript  (Leído 4664 veces)

Oldwest

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 8
    • Ver Perfil
La cuestion es que tengo un formulario creado en Acrobat y unos campos activados como obligatorios de rellenar y un boton de imprimir formulario.

Me gustaria que me pusiera un aviso y no se pueda imprimir, si algun campo obligatorio no esta relleno, o bien, que al pasar de un campo a otro sino esta relleno el obligatorio, que me ponga el aviso.

Soy muy novel en programación, de ahi que use Acrobat.

Muchas gracias de antemano
« Última modificación: 21 de Octubre 2020, 14:21 por Alex Rodríguez »

javi in the sky

  • Avanzado
  • ****
  • Mensajes: 379
    • Ver Perfil
Re:Validacion campos obligatorios en un formulario en Acrobat
« Respuesta #1 en: 17 de Septiembre 2019, 19:05 »
Hola. Supongo que depende de la herramienta que uses para montar el formulario ya que hay varias y quizás hay alguna herramienta que lo haga más sencillo. Si usas Adobe Acrobat Professional / Live Cycle puedes probar lo siguiente: abre el formulario pdf. Haz click con el botón derecho en el campo del formulario que quieres establecer como obligatorio y elige Properties (Propiedades), pestaña "General". Elije "Required" (requerido). Pulsa en Actions (acciones) y en Under Select Trigger (evento selección), seleccionar on Blur (al perder el foco), y elegir Ejecutar script JavaScript (Run a JavaScript) como acción seleccionada (select action). Ahí tendrías que escribir un código como este:

Código: [Seleccionar]
f = getField(event.target.name)
if (f.value.length == 0)
    {
    f.setFocus()
    //Si quieres mostrar un mensaje puedes hacerlo incluyendo la siguiente línea, si no quieres borrarlo
    app.alert("Este campo es obligatorio. Por favor introduzca un valor.")
    }

Tras esto aceptar y cerrar.

El problema puede estar en la herramienta que estés usando para montar el formulario, no todas las herramientas permiten opciones avanzadas.

Oldwest

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 8
    • Ver Perfil
Re:Validacion campos obligatorios en un formulario en Acrobat
« Respuesta #2 en: 17 de Septiembre 2019, 21:34 »
Mil gracias por tu pronta respuesta y a la vez efectiva. Pero tengo un problemilla, uso Adobe Acrobat Pro DC y en Propiedadades en capo de texto en acciones solo me sale:
Seleccionar desencadenador:
RATON PULSADO, SOLTADO, DENTRO, FUERA Y CAMPO ACTIVADO Y DESACTIVADO, por lo que esta pitando constantemente.

Que opcion tengo que coger?

Gracias de nuevo javi in the sky


javi in the sky

  • Avanzado
  • ****
  • Mensajes: 379
    • Ver Perfil
Re:Validacion campos obligatorios en un formulario en Acrobat
« Respuesta #3 en: 17 de Septiembre 2019, 22:02 »
Hola yo creo que la pérdida de foco debe corresponder con "CAMPO DESACTIVADO" ó quizás con "FUERA" aunque no tengo claro si fuera se refiere a que una vez adquirido el foco lo pierde, o a que el ratón pasa por encima del campo y sale.

Oldwest

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 8
    • Ver Perfil
Re:Validacion campos obligatorios en un formulario en Acrobat
« Respuesta #4 en: 17 de Septiembre 2019, 22:10 »
No hay manera, no me permite escribir, me sale el mensaje constantemente, activando la opcion que sea. :-[

Gracias de nuevo y buenas noches

Oldwest

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 8
    • Ver Perfil
Re:Validacion campos obligatorios en un formulario en Acrobat
« Respuesta #5 en: 17 de Septiembre 2019, 22:27 »
Seria mucho pedir que me dijeras el script para poner en acciones en el boton de impresion.

Por ejemplo, que si en los campos de texto llamados 1, 2 y 3 no hay nada escrito o en alguno de ellos que apareciera la alerta y no me dejara imprimir.

Muchas gracias

javi in the sky

  • Avanzado
  • ****
  • Mensajes: 379
    • Ver Perfil
Re:Validacion campos obligatorios en un formulario en Acrobat
« Respuesta #6 en: 19 de Septiembre 2019, 18:32 »
No lo sé, lo que se me ocurre es que si puedes conocer el nombre de los campos que tienes obligatorios, en el botón imprimir añadas el código usando el nombre de estos campos, por ejemplo si los campos se llaman telefono y email

Código: [Seleccionar]
f = getField("telefono")
if (f.value.length == 0)
    {
    f.setFocus()
    //Si quieres mostrar un mensaje puedes hacerlo incluyendo la siguiente línea, si no quieres borrarlo
    app.alert("Este campo es obligatorio. Por favor introduzca un valor.")
    }

f = getField("email")
if (f.value.length == 0)
    {
    f.setFocus()
    //Si quieres mostrar un mensaje puedes hacerlo incluyendo la siguiente línea, si no quieres borrarlo
    app.alert("Este campo es obligatorio. Por favor introduzca un valor.")
    }

Oldwest

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 8
    • Ver Perfil
Re:Validacion campos obligatorios en un formulario en Acrobat
« Respuesta #7 en: 19 de Septiembre 2019, 19:46 »
Muchas gracias funciona perfectamente, lo unico que tiene que parar la impresion, es decir aparecen los mensajes de alerta y tienes que poner un stop para salir del boton de imprimir y poder escribir en el campo, porque sino solo avisa pero imprime.

Gracias

Oldwest

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 8
    • Ver Perfil
Re:Validacion campos obligatorios en un formulario en Acrobat
« Respuesta #8 en: 22 de Septiembre 2019, 10:03 »
Si quieres puedo adjuntar el PDF para que veas a que me refiero y si puedes meterle mano.

Muchas gracias
« Última modificación: 21 de Octubre 2020, 14:20 por Alex Rodríguez »

javi in the sky

  • Avanzado
  • ****
  • Mensajes: 379
    • Ver Perfil
Re:Validacion campos obligatorios en un formulario en Acrobat
« Respuesta #9 en: 22 de Septiembre 2019, 21:50 »
No estoy seguro de si te funcionará pero puedes probar app.alert("Este campo es obligatorio. Por favor introduzca un valor.", 0, 0)

ó app.alert("Este campo es obligatorio. Por favor introduzca un valor.", 0)

para intentar que se detenga la ejecución.

Oldwest

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 8
    • Ver Perfil
Re:Validacion campos obligatorios en un formulario en Acrobat
« Respuesta #10 en: 22 de Septiembre 2019, 22:01 »
Al final lo solucione asi, para y si hay escrito imprime.

f = getField("telefono")
if (f.value.length == 0)
    {
    f.setFocus()
       app.alert("Tiene que rellenar el campo E-mail, es obligatorio")
 e.stopPropagation();
 }

javascript:Filesaveus()

¿como podria hacer lo mismo pero que guardara en vez de imprimir?
¿Que codigo le tendria que añadir al final.

Gracias

Oldwest

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 8
    • Ver Perfil
Re:Validacion campos obligatorios en un formulario en Acrobat
« Respuesta #11 en: 22 de Septiembre 2019, 22:02 »
Perdon eso es lo que quiero poner para guardar pero no guarda, para imprimir he puesto esto y si imprime

javascript:print()

ojedam

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 2
    • Ver Perfil
Hola, estoy buscando ayuda sobre este tema y es el único lugar donde pude encontrar comentarios útiles. Consulta, tengo un campo de selección SI/NO y no puedo hacer que sea obligatorio para que una opción esté marcada para que se permita guardar el documento PDF. Les agradecería mucho si me pueden ayudar. Uso Adobe DC Pro y no tengo conocimientos de programación. Saludos y gracias a todos los que me puedan ayudar.

javi in the sky

  • Avanzado
  • ****
  • Mensajes: 379
    • Ver Perfil
Hola, los checkboxes se supone que están dentro de un subform que supongamos se llama xselector_Subform y supongamos que tienes 4 checkbox que se llaman "Sicheck", "Nocheck", "Nosecheck", "Medaigualcheck"

Para cada uno de los checkboxes ante un evento change (por ejemplo form1.xselector_Subform.Sicheck::change) habría que lanzar un script similar a esto:

Código: [Seleccionar]
if (xselector_Subform.Page1.Sicheck.rawValue == "0" && xselector_Subform.Page1.Nocheck.rawValue == "0" && xselector_Subform.Page1.Nosecheck.rawValue == "0" && xselector_Subform.Page1.Medaigualcheck.rawValue == "0")

{xfa.host.messageBox("Debes seleccionar al menos un checkbox para poder continuar."); xfa.event.cancelAction = 1;}


ojedam

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 2
    • Ver Perfil
Javi, muchas gracias por tu respuesta y el tiempo que te tomaste para ayudarme. Lo voy a probar con las instrucciones que me pasaste. Que tengas un excelente día. Saludos.

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".