ASK crea campos de entrada de datos a partir de tokens que colocas en una plantilla de la aplicación. La plantilla más común es la Ruta, donde los valores de ASK se convierten en partes de carpetas de destino y nombres de archivos. Los tokens de ASK también pueden aparecer en plantillas de Metadatos del Cuerpo para campos como Nombre del Artista, Derechos de Autor y Comentario del Usuario.

ASK es útil cuando cada captura, trabajo, espécimen, producto, cliente o ubicación necesita algunos valores cambiantes. En lugar de editar la Ruta completa cada vez, diseñas la Ruta una vez y luego solo completas los valores que cambian.

Por ejemplo, esta Ruta:

c:\images\@ASK1#Client#\@ASK2#Project#\@GCT4

crea dos campos ASK llamados Cliente y Proyecto. Si ingresas Northwind y Catalog, la próxima imagen guardada puede ir bajo:

c:\images\Northwind\Catalog\0001.jpg

Los campos ASK pueden mostrarse en la vista de navegación principal, en un encabezado o pie de página, o en una ventana separada. Eso hace que ASK sea útil para trabajos de captura repetidos donde la página de Ruta debería mantenerse fuera del camino.

¿Por qué usar ASK?

ASK ayuda cuando la ubicación del archivo o el nombre del archivo dependen de información conocida en el momento de la captura. Los usos comunes incluyen:

  • Números de cliente, trabajo, proyecto u orden.
  • Nombres de país, provincia, ciudad, sitio o sala.
  • Números de espécimen, muestra, artículo, producto o serie.
  • Valores de código de barras de un escáner de serie.
  • Un campo final que puede enviar la acción ASK configurada de la aplicación después de que la entrada esté completa.

ASK mantiene pequeña la parte repetitiva del flujo de trabajo. La plantilla decide dónde van los valores. El formulario ASK permite al operador ingresar o escanear solo esos valores.

Dónde aparece ASK

Cuando los campos de ASK están disponibles, la aplicación puede mostrar ASK en la vista de navegación principal. En un diseño de navegación a la izquierda o compacto, ASK aparece como un elemento de navegación con los campos dentro de él. En un diseño de navegación superior, ASK aparece como un botón de ASK que abre los campos en un popup.

ASK también se puede seleccionar como un encabezado de vista, pie de vista o ventana separada dentro de la aplicación. Cuando ASK se muestra en una de esas ubicaciones, el elemento de ASK en la vista de navegación está oculto. Esto mantiene la superficie activa de entrada de datos clara y evita mostrar los mismos campos de ASK en dos lugares al mismo tiempo.

Utiliza la ubicación de la vista de navegación cuando desees acceso rápido sin dedicar un encabezado, pie o ventana. Utiliza un encabezado, pie o ventana dentro de la aplicación cuando ASK deba permanecer visible mientras trabajas en otra página.

Idea básica

Un token ASK tiene tres partes visibles:

@ASK1#Client#

  1. @ASK significa crear un campo ASK normal escrito.
  2. 1 es el número del campo.
  3. Client es el título del campo que se muestra en el formulario ASK.

Los caracteres # marcan el inicio y el final de la descripción del campo. El título del campo va entre ellos.

Los tokens ASK capaces de escáner utilizan @SCASK:

@SCASK1#Serial#

SCASK significa que es capaz de escáner. No significa que sea solo para escáner. Aún puedes escribir manualmente en un campo SCASK.

ASK y SCASK

Utiliza @ASK cuando el valor se escribe normalmente. Utiliza @SCASK cuando el valor suele ser proporcionado por un escáner de códigos de barras.

Ejemplos:

  • @ASK1#Client# crea un campo de Cliente escrito.
  • @ASK2#Project# crea un campo de Proyecto escrito.
  • @SCASK1#Serial# crea un campo de Serie capaz de escáner.
  • @SCASK2#Item# crea un campo de Artículo capaz de escáner.

El número después de ASK o SCASK identifica el valor. Por ejemplo, cada token @ASK1#...# se refiere al mismo valor ASK1. Cada token @SCASK1#...# se refiere al mismo valor SCASK1.

Utiliza un número diferente para cada valor separado. Por ejemplo, utiliza @ASK1#Client# y @ASK2#Project#, no dos campos @ASK1 no relacionados con títulos diferentes.

Títulos de campo

El título es el texto entre los caracteres #. Debe ser corto y claro porque aparece en el formulario ASK.

Títulos buenos:

  • Client
  • Project
  • ID
  • Serial
  • City

Evita poner instrucciones largas en el título. Usa los ejemplos de ruta y esta página de ayuda para las instrucciones, y mantén el formulario de entrada de datos en vivo rápido de escanear.

Campos obligatorios

Coloca * al inicio de la descripción para hacer que un campo sea obligatorio:

@ASK1#*Client#

El título del campo sigue siendo Cliente. El * significa que la acción de envío de ASK no puede ejecutarse mientras el campo esté vacío o sea inválido.

Los campos obligatorios son útiles cuando la falta de datos podría crear una carpeta incorrecta, un nombre de archivo incompleto o un flujo de trabajo de captura incompleto.

Ejemplo:

c:\images\@SCASK1#*ID#\@GCT4

Esto crea un campo de ID capaz de escanear que es obligatorio. El envío de ASK está bloqueado hasta que ID tenga un valor.

Campos opcionales

Los campos son opcionales por defecto. Si un campo opcional está vacío, Path normalmente elimina el valor vacío.

Ejemplo:

c:\images\@ASK1#Client#\@ASK2#Project#\@GCT4

Si el Proyecto está vacío, Path resuelve y elimina ese segmento vacío en lugar de dejar barras invertidas duplicadas.

Utiliza campos opcionales cuando el valor es útil pero no siempre está disponible.

Campos de marcador de posición

Coloca & al inicio de la descripción cuando quieras que un valor opcional vacío permanezca visible como un marcador de posición:

@ASK1#&Client#

Si el Cliente está vacío, la Ruta muestra un marcador de posición subrayado como:

ask1

Para valores capaces de escáner, el marcador de posición utiliza la identidad del escáner:

@SCASK1#&Serial# se convierte en scask1 mientras esté vacío.

Usa & cuando quieras que la vista previa o la ruta guardada muestren que un valor fue intencionalmente dejado en blanco. No uses & cuando quieras que las carpetas opcionales vacías desaparezcan limpiamente.

Orden de campos

Coloca un número y dos puntos antes del título para controlar el orden de los campos en el formulario ASK:

@ASK1#1:Client#

El 1: significa mostrar este campo primero. El título sigue siendo Cliente.

El orden de campos es útil cuando el orden de la Ruta no es el mismo que el orden de entrada del operador.

Ejemplo:

c:\images\@ASK3#3:City#\@ASK1#1:Client#\@ASK2#2:Project#\@GCT4

Las carpetas son Ciudad, Cliente, Proyecto en la Ruta. El formulario ASK muestra Cliente, Proyecto, Ciudad porque los marcadores de orden son 1, 2 y 3.

Campos de envío

Coloca ! al final de la descripción cuando completar ese campo deba enviar la acción ASK configurada de la aplicación:

@ASK1#City!#

El título del campo es Ciudad. El ! significa que completar Ciudad intenta ejecutar la acción de envío ASK configurada.

En un flujo de trabajo de cámara, esa acción es comúnmente Disparar. Esto permite que un flujo de trabajo de entrada repetida termine con el valor final y solicite inmediatamente la captura.

Completar un campo de envío puede ocurrir al presionar Enter, presionar Tab, o escanear en un campo de envío compatible con escáner. Los campos obligatorios deben ser válidos primero. Si un campo obligatorio está vacío o es inválido, el envío se bloquea y el enfoque se mueve al primer campo que necesita atención. Después de que se acepta el envío, el enfoque regresa al primer campo ASK para que se pueda ingresar inmediatamente los datos de la siguiente captura.

Combinando marcadores

Los marcadores se pueden combinar dentro de la misma descripción. Léelos de izquierda a derecha:

@SCASK1#*1:ID!#

Esto significa:

  1. @SCASK crea un campo capaz de escanear.
  2. 1 después de SCASK identifica el valor como SCASK1.
  3. * hace que el campo sea obligatorio.
  4. 1: lo coloca primero en el formulario ASK.
  5. ID es el título mostrado al usuario.
  6. ! envía la acción ASK configurada cuando se completa el campo.

Otro ejemplo:

@ASK2#&3:Province#

Esto significa:

  1. @ASK crea un campo tipado.
  2. 2 identifica el valor como ASK2.
  3. & mantiene un marcador visible cuando está vacío.
  4. 3: lo coloca tercero en el formulario ASK.
  5. Province es el título.
  6. No hay !, por lo que completar Provincia no envía la acción.

Ejemplos del mundo real

Estos ejemplos están listos para ser pegados en una plantilla de Path y ajustados para tus carpetas. Algunos utilizan @SCASK para escáneres de código de barras en serie. Algunos colocan ! en el campo final para que completar ese campo envíe la acción ASK configurada de la aplicación. Las mismas plantillas están disponibles en la lista de ejemplos de la página de Path.

1. Fotografía de productos para clientes y SKU

c:\images\product\@ASK1#1:Client#\@SCASK1#*2:SKU!#\@GCT4

Utiliza esto cuando cada toma de producto pertenezca a un cliente y a un SKU de producto escaneado. El SKU es obligatorio y completarlo puede enviar la acción de captura.

2. Conjunto de color y ángulo para comercio electrónico

c:\images\ecommerce\@ASK1#1:Brand#\@SCASK1#*2:Style#\@ASK2#3:Color#\@ASK3#4:Angle!#\@GCT4

Utiliza esto para conjuntos de catálogo donde se puede escanear el código de estilo, y el operador escribe el color y el ángulo antes de disparar.

3. Cobertura de habitaciones en bienes raíces

c:\images\real-estate\@ASK1#1:Property#\@ASK2#2:Room#\@ASK3#3:View#\@GCT4

Utiliza esto cuando las imágenes están agrupadas por propiedad, habitación y dirección de vista.

4. Fotografía de objetos de museo

c:\images\museum\@SCASK1#*1:Accession#\@ASK1#2:Object#\@ASK2#3:Side!#\@GCT4

Utiliza esto cuando un código de barras de colección o acceso identifica el objeto, y cada lado o vista se captura por separado.

5. Recepción de muestras de laboratorio

c:\images\lab\@SCASK1#*1:Sample#\@ASK1#2:Test#\@ASK2#3:Stage!#\@GCT4

Utiliza esto cuando cada imagen debe estar vinculada a un id de muestra escaneado, un nombre de prueba escrito y una etapa de procesamiento.

6. Imágenes de placas y pocillos de laboratorio

c:\images\lab\plates\@SCASK1#*1:Plate#\@ASK1#2:Well#\@ASK2#3:Channel!#\@GCT4

Utiliza esto cuando se escanea un código de barras de placa y se ingresan el pocillo y el canal de imagen antes de la captura.

7. Documentación de bandejas de especímenes

c:\images\specimens\@ASK1#1:Project#\@SCASK1#*2:Specimen#\@ASK2#3:Tray#\@ASK3#4:Position!#\@GCT4

Utiliza esto cuando cada espécimen tiene un id escaneado y se ingresan la bandeja y la posición durante una sesión de captura repetida.

8. Recepción de evidencia forense

c:\images\forensics\@SCASK1#*1:Case#\@SCASK2#*2:Evidence#\@ASK1#3:View!#\@GCT4

Utiliza esto cuando se escanean los identificadores de caso y evidencia y el operador escribe la vista antes de la captura.

9. Ubicación de escena forense

c:\images\forensics\@ASK1#*1:Case#\@ASK2#2:Scene#\@ASK3#3:Room#\@ASK4#4:Detail!#\@GCT4

Utiliza esto cuando se escriben los identificadores y el campo de detalle final puede enviar la acción de captura.

10. Fotos de artículos de cadena de custodia

c:\images\custody\@SCASK1#*1:Case#\@SCASK2#*2:Bag#\@SCASK3#*3:Item!#\@GCT4

Utiliza esto cuando cada captura es impulsada por códigos de barras escaneados de caso, bolsa y artículo.

11. Retratos de estudiantes escolares

c:\images\school\@ASK1#1:School#\@ASK2#2:Grade#\@SCASK1#*3:Student!#\@GCT4

Utiliza esto para sesiones de retratos escolares donde se escanea el id del estudiante después de establecer la escuela y el grado.

12. Documentación de proyectos en el aula

c:\images\school-projects\@ASK1#1:School#\@ASK2#2:Class#\@ASK3#3:Project#\@SCASK1#4:Student#\@GCT4

Utiliza esto cuando los ids de los estudiantes son opcionales pero útiles, y el agrupamiento principal es por escuela, clase y proyecto.

13. Orden de cliente para escaneo de fotos antiguas

c:\images\scan-service\@ASK1#1:Client#\@SCASK1#*2:Order#\@ASK2#3:Album#\@GCT4

Utiliza esto para servicios de escaneo donde se escanea el número de orden y las imágenes se agrupan por cliente y álbum.

14. Escaneo de diapositivas por caja y ranura

c:\images\slides\@SCASK1#*1:Order#\@ASK1#2:Box#\@ASK2#3:Slot!#\@GCT4

Utiliza esto cuando se escanea un pedido de cliente y cada diapositiva se identifica por caja y ranura antes de escanear.

15. Restauración de archivos familiares

c:\images\archive\@ASK1#1:Family#\@ASK2#&2:Year#\@ASK3#3:Event#\@ASK4#4:Person!#\@GCT4

Utiliza esto cuando algunos detalles históricos son desconocidos. El campo Year mantiene un marcador visible mientras está vacío, y completar Person puede enviar la acción de captura.

Flujo de trabajo del escáner

Para un comportamiento de escaneo a campo confiable, utiliza un escáner de código de barras en serie. Los escáneres de tipo teclado escriben en el control que tiene el foco del teclado, lo que es más fácil de desviar durante el trabajo de producción.

Flujo de trabajo del escáner en serie:

  1. Crea uno o más campos @SCASK.
  2. Configura el escáner en la página del escáner.
  3. Pon el escáner en modo serie.
  4. Programa el escáner para enviar el envoltorio de escaneo requerido.
  5. Escanea valores en el formulario ASK.

Cuando ningún campo capaz de escanear tiene el foco del teclado, las exploraciones van al objetivo actual del escáner y luego avanzan al siguiente campo capaz de escanear. Cuando un campo capaz de escanear tiene el foco, las exploraciones van a ese campo.

El envoltorio de configuración del escáner, como !12345@, es separado del marcador de envío del descriptor ASK !. El envoltorio indica a la página del escáner dónde comienza y termina un escaneo. El descriptor ASK ! le dice a ASK que completar ese campo debe enviar la acción configurada.

Introducir y Tab

Al presionar Enter en un campo ASK, actúa como Tab. Valida el campo actual y se mueve al siguiente campo.

Si el campo actual tiene el marcador !, Enter o Tab también intenta enviar ASK. El envío se bloquea si un campo requerido está vacío o es inválido. Después de que se acepta el envío, el enfoque regresa al primer campo ASK.

Esto mantiene la entrada repetida rápida:

  1. Escribe o escanea el primer valor.
  2. Presiona Enter o Tab.
  3. Continúa a través de los campos.
  4. Completa el último campo ! para enviar.
  5. Comienza la siguiente entrada desde el primer campo.

Rutas de vista previa y guardadas

Los valores de ASK se utilizan en cualquier lugar donde la plantilla contenga el token ASK correspondiente. La vista previa de la ruta se actualiza después de que se completa un campo ASK, se sale del campo o se recibe un valor de escáner. Esto mantiene los datos de vista previa y de ruta guardada en sincronía con los valores de entrada de datos completados en lugar de cada pulsación de tecla parcial.

Para valores vacíos:

  • Los campos obligatorios muestran un marcador de posición subrayado hasta que se llenen.
  • Los campos opcionales con & muestran un marcador de posición subrayado hasta que se llenen.
  • Los campos opcionales sin & se colapsan a vacío.

Si un valor opcional sin & es el segmento completo de la carpeta, la ruta elimina ese segmento vacío. Esto evita barras invertidas duplicadas en la ruta resuelta.

Plantillas de metadatos del cuerpo

Los campos de metadatos del cuerpo pueden usar tokens ASK cuando un valor de metadatos debe provenir de datos escritos o escaneados. Los campos de metadatos compatibles son:

  • Nombre del Artista
  • Derechos de Autor
  • Comentario del Usuario

Por ejemplo, el Nombre del Artista podría contener @ASK1#Photographer#, o el Comentario del Usuario podría contener Item @SCASK1#*1:Item#. Esos tokens crean campos ASK de la misma manera que lo hacen los tokens de Ruta.

Las plantillas de tokens de metadatos se guardan en perfiles. Los valores literales de metadatos del cuerpo son datos del cuerpo propiedad de la cámara y no se guardan en perfiles. El soporte de metadatos del cuerpo depende del cuerpo conectado y del modo activo del SDK de Nikon. Si el modo actual del SDK no expone el Nombre del Artista, Derechos de Autor, Comentario del Usuario, o sus interruptores de adjunto, las plantillas de metadatos ASK aún pueden guardarse en el perfil pero no pueden escribirse en el cuerpo para esa conexión. Cuando el modo v2 no expone estos campos en los cuerpos probados, los controles de Metadatos del Cuerpo están ocultos y las plantillas guardadas se preservan para el modo SDK Legacy.

Las escrituras de metadatos de captura tokenizados se implementan como metadatos del cuerpo transitorios. Las plantillas de metadatos ASK crean campos ASK y se guardan con el perfil. Inmediatamente antes de la captura, la aplicación resuelve las plantillas de metadatos tokenizados y escribe los valores resueltos en el cuerpo de la cámara cuando ese campo es elegible para el adjunto en el momento de la captura. El Nombre del Artista y los Derechos de Autor son controlados por la tarjeta de Derechos de Autor de Metadatos del Cuerpo. El interruptor Adjuntar o Ignorar de esa tarjeta controla el bloque de metadatos de derechos de autor de Nikon, que incluye el Nombre del Artista en cuerpos confirmados como el Z50 y el D800. El Comentario del Usuario tiene su propio interruptor de Adjuntar o Ignorar. Los metadatos de derechos de autor y los metadatos del Comentario del Usuario se escriben solo cuando el interruptor de Metadatos del Cuerpo correspondiente está configurado en Adjuntar. Después de completar la captura, la aplicación borra cualquier campo de metadatos del cuerpo tokenizados que escribió para esa captura como mejor esfuerzo. Si un valor de metadatos resuelto es demasiado largo o contiene caracteres no soportados, la captura es rechazada antes de que el valor transitorio se escriba en el cuerpo.

Los valores de metadatos ASK y SCASK pueden ser sensibles. Pueden contener nombres, números de orden, identificadores de evidencia, ids de especímenes, ids de estudiantes o cargas de escáner. El registro de ASK utiliza detalles seguros para la privacidad y no registra los valores ASK ingresados, las cargas de escáner o las cargas de metadatos resueltas.

Resolución de problemas

Si los campos de ASK no aparecen:

  • Confirma que el token comienza con @ASK o @SCASK.
  • Confirma que el número es del 1 al 9.
  • Confirma que ambos caracteres # están presentes.
  • Confirma que el título está entre los caracteres #.
  • Confirma que la plantilla está guardada o activa en la página que la posee.

Si los campos aparecen en el orden incorrecto:

  • Añade marcadores de orden como 1:, 2: y 3:.
  • Verifica que cada marcador de orden esté dentro de los caracteres #.
  • Mantén cada marcador antes del título.

Si el envío no se ejecuta:

  • Confirma que el campo tiene ! al final de la descripción.
  • Confirma que los campos requeridos están llenos.
  • Confirma que el valor no contiene caracteres inválidos para la fuente de la plantilla.
  • Confirma que la aplicación tiene una acción de envío de ASK configurada.

Si el valor incorrecto aparece en la ruta:

  • Verifica si dos tokens diferentes utilizan el mismo número de ASK.
  • Usa números separados para valores separados.
  • Recuerda que @ASK1#Client# y @ASK1#Project# se refieren a ASK1.

Si los datos del escáner van al campo incorrecto:

  • Usa @SCASK para los campos que deben recibir valores del escáner.
  • Haz clic en el campo capaz de escanear antes de escanear.
  • Revisa los marcadores de orden de los campos.
  • Verifica la configuración de la página del escáner y el envoltorio de escaneo.

Configuración relacionada

Utiliza Ruta para colocar los valores de ASK en carpetas y nombres de archivos de destino. Utiliza Metadatos del Cuerpo cuando el Nombre del Artista, los Derechos de Autor o el Comentario del Usuario deban prepararse a partir de los valores de ASK. Utiliza Escáner cuando los valores de código de barras deban llenar los campos @SCASK. Utiliza Perfiles para guardar y recargar plantillas que contengan tokens de ASK.