Documentos de Académico
Documentos de Profesional
Documentos de Cultura
ADVERTENCIA: este documento está protegido por las leyes de propiedad intelectual e
industrial y por tratados internacionales. Solo se permite el uso de esta documentación en
relación con las Soluciones Meta4, y todo uso no autorizado de la misma será perseguido
con arreglo a la legislación vigente. Se prohíbe su reproducción, modificación o distribución
sin permiso del titular.
ÍNDICE
ÍNDICE ........................................................................................................... 3
1 INTRODUCCIÓN ....................................................................................... 4
1.1 DESCRIPCIÓN GENERAL ................................................................................ 4
1.1.1 ¿Qué es la firma digital? ..................................................................... 4
1.1.2 ¿Qué se necesita para firmar un documento oficial? ............................... 4
1.2 GESTIÓN DOCUMENTAL Y FIRMA DIGITAL EN PEOPLENET .......................................... 5
1.3 SISTEMAS EXTERNOS: SERVICIOS DE FIRMA Y PORTAFIRMAS ...................................... 5
1.4 ARQUITECTURA .......................................................................................... 6
2 VISUALIZACIÓN DE INFORMACIÓN DE FIRMA DE DOCUMENTOS ..................... 8
3 CONFIGURACIÓN DE PORTAFIRMAS ............................................................ 9
3.1 IMPLEMENTAR META4OBJECT DE PORTAFIRMAS ..................................................... 9
3.2 ACTIVAR EL PORTAFIRMAS EXTERNO EN PEOPLENET .............................................. 12
4 PROCESO DE FIRMA EN PEOPLENET .......................................................... 14
4.1 DESDE UN PROCESO DE NEGOCIO (WORKFLOW) .................................................. 14
4.1.1 Proceso de firma ............................................................................. 15
4.2 DESDE UN META4OBJECT ............................................................................ 18
4.2.1 Solicitar la firma de un documento..................................................... 18
4.2.2 Generación del XML de información de firmantes
(SRTC_DMS_SIGNERS_INFO) ....................................................................... 20
4.2.3 Ejemplo de uso ............................................................................... 23
4.2.4 Recibir la notificación de firma de un documento.................................. 24
4.2.5 Cancelar un proceso de firma ............................................................ 24
4.2.6 Reiniciar un proceso de firma ............................................................ 25
4.2.7 Borrar un proceso de firma ............................................................... 26
4.2.8 Obtener el estado de firma de un documento ...................................... 27
4.2.9 Establecer la referencia externa de un documento................................ 27
4.2.10 Grabar el documento firmado ............................................................ 28
1 INTRODUCCIÓN
1.1 DESCRIPCIÓN GENERAL
La importancia de la firma digital viene dada por el hecho de que permite pasar de los
documentos en papel a documentos electrónicos de una forma sencilla y legalmente
reconocida. Esto, en procedimientos administrativos, se considera un aspecto fundamental
para agilizar los trámites y ahorrar costes. Permitirá automatizar procesos y facilitar el
acceso a los documentos a todos los interlocutores del mismo.
Para llevar a cabo la firma de documentos, los firmantes suelen conectarse a través de
Internet a una interfaz Web y firmar los documentos en formato digital, con el único
requisito de disponer de un certificado digital que acredite su identidad, garantizando la
autenticidad de sus actos y la confidencialidad de las comunicaciones.
Los servicios de firma suelen proveer un API estándar para facilitar a los desarrolladores la
integración de los diferentes aplicativos. Se suelen Integrar con los sistemas de
información mediante servicios Web y XML (SOAP) y representan las operaciones básicas
de firma de documentos o comprobación de firma.
Los sistemas Portafirmas suelen interactuar con los servicios de firma para realizar las
operaciones básicas, pero además se ocupan de la gestión de la firma de documentos.
Esta función consiste en ofrecer una interfaz Web que representará el “escritorio de firma”.
Las responsabilidades de estos sistemas serían:
1.4 ARQUITECTURA
En este apartado se describe la arquitectura general del proceso de firma en PeopleNet.
Puede encontrar más detalles sobre la información mostrada en la pantalla Otros Datos
en la ayuda en línea de PeopleNet.
3 CONFIGURACIÓN DE PORTAFIRMAS
Para integrar PeopleNet con un sistema de portafirmas de terceros, es necesario realizar
ciertos desarrollos que permitan la comunicación (envío de documentos para su firma,
recepción de la firma, etc.) con dicho portafirmas.
A continuación se describen las acciones necesarias para llevar a cabo dicha integración.
Una vez creado el Meta4Object de herencia, se tendrán una serie de métodos para enviar
documentos a firmar y recibir notificaciones del portafirmas.
Argumento Descripción
Argumento Descripción
Este método debe implementar la lógica necesaria para solicitar la firma del documento
indicado en los parámetros al Portafirmas de terceros con el que se trabaje.
Argumento Descripción
Argumento Descripción
Argumento Descripción
A partir de la referencia externa del documento habrá que cargar la información de firma
del documento, modificar la información de firma, grabar el documento firmando si
corresponde, y notificar el fin de firma si procede.
Argumento Descripción
Argumento Descripción
ARG_STATE Estado
Para dar de alta y activar un nuevo portafirmas haga clic en la opción de menú
Configuración Portafirmas del Gestor documental.
Para ello seleccione la opción Nuevo e introduzca los datos solicitados para indicar a
PeopleNet cómo comunicarse con el Portafirmas de terceros. Los datos necesarios son los
siguientes:
Parámetro Descripción
Argumentos para sacar las personas a firmar. Hay que rellenar obligatoriamente los
roles o la regla.
Argumentos adicionales
Modo de firma:
Importancia:
RELEVANCE
1 Alta, 2 Media, 3 Baja
Parámetro Descripción
Ejemplo:
4. Generar tres transiciones que salgan del estado para gestionar los casos de firma
correcta, firma rechazada y firma con error. Cada transición deberá tener asociado
uno de los siguientes eventos:
ID
Even Nombre Evento Descripción
to
5. Para gestionar los distintos resultados del proceso de firma hay que crear las
variables de proceso de negocio que se describen a continuación.
Estas variables habrá que vaciarlas en algún estado previo a la firma en caso de
que se den bucles de procesos de firma.
• Si hay error
Para solicitar la firma de un documento desde un Meta4Object, hay que llamar al método
de enviar un documento a firmar
(DMS_DOC_MANAGEMENT!DMS_DOC_MANAGEMENT_API.API_REQUEST_SIGNATURE_EXT).
SRTC_DMS_SIGNATURES_EXT_SYSTEM!SRTC_DMS_SIGNATURES_EXT_API.REQUEST_SIGNATURE
Este método recibe una serie de argumentos para identificar el documento a firmar, los
firmantes, el modo de firma, etc., que se describen a continuación, y devuelve como
resultado el error o éxito de la operación en función de si se ha lanzado o no el proceso de
firma.
Argumentos
REQUEST_SIGNATURE.
Argumento Descripción
Argumentos de firma
Argumento Descripción
El método devuelve:
Los firmantes de un documento deben especificarse mediante una cadena XML que se
generará utilizando el Meta4Object SRTC_DMS_SIGNERS_INFO.
• Método ADD_SIGNER_DATA_V2
Argumento Descripción
ARG_SIGNER_EXTERNAL_REF
Identificador del firmante en el sistema externo
(Cadena)
Argumento Descripción
• Método GET_SIGNERS_INFO_STRING
Método para serializar la información del firmante. Devuelve una cadena con la
serialización de los firmantes en formato XML.
Ejemplo:
<SIGNER_LIST>
<SIGNER> -- Firmante tipo usuario de aplicación, tipo firma email
<ID_SIGNER_TYPE>1</ID_SIGNER_TYPE>
<ID_SIGNER>ISABELH</ID_SIGNER>
<SIGN_ORDER>1</SIGN_ORDER>
<ID_APP_USER>ISABELH</ID_APP_USER>
<SIGN_EMAIL>isabelh@meta4.com</SIGN_EMAIL>
<SIGN_PHONE_NUMBER>666777888</SIGN_PHONE_NUMBER>
<ID_LANGUAGE>3</ID_LANGUAGE>
<SIGNATURE_TYPE>1</SIGNATURE_TYPE>
<SIGNATURE_POSITION>1,20</SIGNATURE_POSITION>
<SIGNER_EXTERNAL_REF>ExtRefDavidDoc</SIGNER_EXTERNAL_REF>
<BUFFER1>Buffer1</BUFFER1>
<BUFFER2>Buffer12</BUFFER2>
</SIGNER>
<SIGNER> -- Firmante tipo persona. Firma tipo BIO
<ID_SIGNER_TYPE>2</ID_SIGNER_TYPE>
<ID_SIGNER>M10326</ID_SIGNER>
<SIGN_ORDER>2</SIGN_ORDER>
<ID_LANGUAGE>2</ID_LANGUAGE>
<SIGN_EMAIL>Aston@meta4.com</SIGN_EMAIL>
<SIGNATURE_TYPE>1</SIGNATURE_TYPE>
<DEVICE>IPAD_1</DEVICE>
<SIGN_PHONE_NUMBER>555666777</SIGN_PHONE_NUMBER>
</SIGNER>
<SIGNER> -- Firmante tipo sello de empresa. Firma tipo sello de empresa.
<ID_SIGNER_TYPE>3</ID_SIGNER_TYPE>
<ID_SIGNER>STAMP_RRHHH</ID_SIGNER>
<SIGN_ORDER>3</SIGN_ORDER>
<ID_LANGUAGE>2</ID_LANGUAGE>
<SIGNATURE_TYPE>3</SIGNATURE_TYPE>
</SIGNER>
</SIGNER_LIST>
arg_id_doc= 1014
arg_id_doc_ver= 1
arg_role =""
arg_sign_mode = 2 '1:Paralelo 2: Serie
arg_relevance = 1
arg_dt_deadline =TodayNowGMT() + 1
arg_m4o_notification = "TEST_FIRMA_DIGITAL"
arg_node_notification = "TEST_FIRMA_DIGITAL_RECEIVE"
arg_item_notification ="RECEIVE_SIGN_NOTIFICATION"
arg_param_notification=arg_id_doc
arg_signers_info = SRTC_DMS_SIGNERS_INFO!SRTC_DMS_SIGNERS_INFO.GET_SIGNERS_INFO_STRING()
arg_additionaldata =""
sIdOrg = GetProperty("ID_ORGANIZATION")
bDeleteOnError = M4_FALSE
sDescErr =""
iRet = SRTC_DMS_SIGNATURES_EXT_SYSTEM!SRTC_DMS_SIGNATURES_API.REQUEST_SIGNATURE(arg_id_doc,
arg_id_doc_ver, arg_sign_mode,arg_dt_deadline,arg_signers_info,sIdOrg,sIdOrg,arg_additionaldata,arg_m4o_notification,
arg_node_notification, arg_item_notification, arg_param_notification,bDeleteOnError,sDescErr)
Argumento Descripción
1: Firma rechazada
Dato funcional que permite identificar el proceso de firma. Es
el valor que se pasa en la petición de firma bajo el argumento
Parámetro funcional.
ARG_PARAM_NOTIFICATION. Por ejemplo, si estuviéramos
Cadena
en un proceso de negocio, sería el WORKITEM para identificar
el proceso funcional donde se solicitó la firma.
Para cancelar un proceso de firma y notificar al sistema externo la cancelación hay que
llamar al método:
SRTC_DMS_SIGNATURES_EXT_SYSTEM!SRTC_DMS_SIGNATURES_EXT_API.CANCEL_SIGNATURE
Argumentos
Argumento Descripción
ARGO_CANCEL_ERROR_DESC
Mensaje de error de cancelación
(Cadena) (OUT)
El método devuelve:
SRTC_DMS_SIGNATURES_EXT_SYSTEM!SRTC_DMS_SIGNATURES_EXT_API.
RELAUNCH_REQUEST_SIGNATURE
Argumentos
Argumento Descripción
El método devuelve:
Argumentos
Argumento Descripción
ARGO_DELETE_ERROR_DESC
Texto con el error
(Cadena)
El método devuelve:
Argumentos
Argumento Descripción
ARGO_SIGN_PROCESS_STATE
Estado del documento
(Número) (OUT)
El método devuelve:
SRTC_DMS_SIGNATURES_EXT_SYSTEM!SRTC_DMS_SIGNATURES_EXT_API.ET_EXTERNAL_REFERENCE
Argumentos
Argumento Descripción
ARG_EXTERNAL_REFERENCE
Referencia externa
(Cadena)
El método devuelve:
Para guardar un documento firmado sobre la versión existente, hay que llamar al método
de API en el gestor documental
(DMS_DOC_MANAGEMENT!DMS_DOC_MANAGEMENT_API.API_SAVE_SIGNED_DOCUMENT).
Argumentos
Argumento Descripción