Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Método 'getDraftWithOrganism'
Anchor
getDraftWithOrganism
getDraftWithOrganism


Obtiene los metadatos (sin los datos físicos del documento de notificación) de una solicitud de notificación dada de alta en el sistema.

En el borrador obtenido, se obtiene la lista de organismos de visibilidad (organismVisibilityList) con el organismo productor y los organismos gestores.

Expand
titleMás detalles

Signatura

ResultGetDraftWithOrganism getDraftWithOrganism(String applicationId, ParamGetDraft paramGetDraft) throws RemoteException, InternalCoreException;

Parámetros de invocación

NombreTipoObligatorioDescripción

applicationId

String

Aplicación que ejecuta el método

ParamGetDraftObjeto de obtención de borrador

draftId

String

Identificador de la solicitud a obtener

Parámetros de respuesta


NombreTipoDescripción

ResultGetDraftWithOrganism

Objeto que contiene el borrador

draft

Draft

Ejemplo de invocación


Code Block
languagejava
firstline1
titleEjemplo de invocación
collapsetrue
//Objetos del servicio
ParamGetDraft paramGetDraft = new ParamGetDraft();
		
//Se indica el Draft a obtener
paramGetDraft.setDraftId(new Long(1));

//Se hace la invocación
try {
	ResultGetDraftWithOrganism resultGetDraft = draftClient.getDraftWithOrganism(paramGetDraft);
	if(resultGetDraft!=null && resultGetDraft.getDraft()!=null){
		System.out.println("Se ha obtenido el borrador");
	}else{
		System.out.println("No se ha encontrado el borrador");
	}
			
} catch (SNTException e) {
	System.out.println("Error:"+e.getCode()+" Mensaje:"+e.getExtraInfo());
}



Método 'getDraftList' @deprecated
Anchor
getDraftList
getDraftList


Obtiene una lista de solicitudes de notificación dadas de alta en el sistema, según un criterio de búsqueda.

Método deprecado, es recomendable usar el servicio → getDraftListWithOrganism() para obtener visibilidad de las notificaciones.


Expand
titleMás detalles

Signatura

ResultGetDraftList getDraftList(String applicationId, ParamGetDraftList paramGetDraftList) throws RemoteException, InternalCoreException;

Parámetros de invocación

NombreTipoObligatorioDescripción

applicationId

String

Aplicación que ejecuta el método

ParamGetDraftListObjeto de obtención de borradores

draftSearch

DraftSearch

Objeto de búsqueda de la solicitud

Parámetros de respuesta


NombreTipoDescripción

ResultGetDraftList

ResultGetDraftList

Objeto sin parámetros

draftList

Draft[]

Lista de objetos solicitud

Size

Integer

Número de elementos coincidentes con la búsqueda que se encuentran en la base de datos. Este parámetro se devuelve ya que con los parámetros de paginación se pueden solicitar que devuelva un máximo de objetos independientemente de cuántos haya en la base de datos.

Ejemplo de invocación


Code Block
languagejava
firstline1
titleEjemplo de invocación
collapsetrue
//Objetos del servicio
ParamGetDraftList paramGetDraftList = new ParamGetDraftList();
DraftSearch objDraft = new DraftSearch();
	 
// parametros por los que filtrar
objDraft.setCreatorId("00000000T");
		 
// buscamos por procedimiento y organismos
objDraft.setProcedure("1");
		 
// Lista de organismos gestores a buscar
String[] orgListVisibility = new String[2];
orgListVisibility[0] = "ORG14668"; // organismo gestor
orgListVisibility[1] = "ORG12358"; // organismo gestor
		 
objDraft.setOrgListVisibility(orgListVisibility);
		 
paramGetDraftList.setDraftSearch(objDraft);
		 
// Se hace la invocación
try {
	ResultGetDraftList resultGetDraftList = draftClient.getDraftList(paramGetDraftList);
	if(resultGetDraftList!=null){
		System.out.println("Numero de resultados: "+resultGetDraftList.getSize());
	}else{
		System.out.println("No se han encontrado resultados");
	}
			
} catch (SNTException e) {
	System.out.println("Error:"+e.getCode()+" Mensaje:"+e.getExtraInfo());
}


Método 'getDraftListWithOrganism'
Anchor
getDraftListWithOrganism
getDraftListWithOrganism


Obtiene una lista de solicitudes de notificación dadas de alta en el sistema, según un criterio de búsqueda.

En los borradores obtenidos, se obtiene la lista de organismos de visibilidad (organismVisibilityList) con el organismo productor y los organismos gestores.

Expand
titleMás detalles

Signatura

ResultGetDraftListWithOrganism getDraftListWithOrganism(String applicationId, ParamGetDraftList paramGetDraftList) throws RemoteException, InternalCoreException;

Parámetros de invocación

NombreTipoObligatorioDescripción

applicationId

String

Aplicación que ejecuta el método

ParamGetDraftListObjeto de obtención de borradores

draftSearch

DraftSearch

Objeto de búsqueda de la solicitud

Parámetros de respuesta


NombreTipoDescripción

ResultGetDraftListWithOrganism

ResultGetDraftListWithOrganism


draftList

DraftWithOrganism[]

Lista de objetos solicitud

Size

Integer

Número de elementos coincidentes con la búsqueda que se encuentran en la base de datos. Este parámetro se devuelve ya que con los parámetros de paginación se pueden solicitar que devuelva un máximo de objetos independientemente de cuántos haya en la base de datos.

Ejemplo de invocación


Code Block
languagejava
firstline1
titleEjemplo de invocación
collapsetrue
//Objetos del servicio
ParamGetDraftList paramGetDraftList = new ParamGetDraftList();
	
DraftSearch objDraft = new DraftSearch();
 
//parametros por los que filtrar
objDraft.setCreatorId("00000000T");
		 
// buscamos por procedimiento y organismos
objDraft.setProcedure("1");
	
// Lista de organismos gestores a buscar 
String[] orgListVisibility = new String[2];
orgListVisibility[0] = "ORG14668"; // organismo gestor
orgListVisibility[1] = "ORG12358"; // organismo gestor
		 
objDraft.setOrgListVisibility(orgListVisibility);
	 
paramGetDraftList.setDraftSearch(objDraft);
		 
//Se hace la invocación
try {
	ResultGetDraftList resultGetDraftList = draftClient.getDraftList(paramGetDraftList);
	if(resultGetDraftList!=null){
		System.out.println("Numero de resultados: "+resultGetDraftList.getSize());
	}else{
		System.out.println("No se han encontrado resultados");
	}
} catch (SNTException e) {
	System.out.println("Error:"+e.getCode()+" Mensaje:"+e.getExtraInfo());
}


Método 'getDraftDocument'


Obtiene los datos físicos del documento principal de una solicitud de notificación dada de alta en el sistema.

Expand
titleMás detalles

Signatura

ResultGetDraftDocument getDraftDocument(String applicationId, ParamGetDraftDocument paramGetDraftDocument) throws RemoteException, InternalCoreException;

Parámetros de invocación

NombreTipoObligatorioDescripción

applicationId

String

Aplicación que ejecuta el método

ParamGetDraftDocumentObjeto de obtención de borradores

draftId

Long

Identificador de la solicitud

invokingId

String

No

Identificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona autenticada en el mismo.

Parámetros de respuesta


NombreTipoDescripción

ResultGetDraftDocument

ResultGetDraftDocument


draftDocument

DataHandler

Fichero documento principal de la solicitud

Ejemplo de invocación


Code Block
languagejava
firstline1
titleEjemplo de invocación
collapsetrue
		// Objectos del servicio
		ParamGetDraftDocument paramGetDraftDocument = new ParamGetDraftDocument ();
		 
		// Se indica el idDraft del documento que queremos recuperar
		paramGetDraftDocument.setDraftId(8735L);
		paramGetDraftDocument.setInvokingId("00000000T");
		 
		// Se hace la invocación
		try {
			ResultGetDraftDocument resultGetDraftDocument = draftClient.getDraftDocument(paramGetDraftDocument);
			if(resultGetDraftDocument!=null){
				System.out.println("Documento encontrado: " + resultGetDraftDocument.getDraftDocument().getName() );
			} else{
				System.out.println("No se ha encontrado el documento");
			}
		} catch (SNTException e) {
			System.out.println("Error:"+e.getCode()+" Mensaje:"+e.getExtraInfo());
		}


Método 'addAttachment'


Añade un documento adjunto a una solicitud de notificación dada de alta en el sistema. Este documento puede o no ir firmado.

Expand
titleMás detalles

Signatura

ResultAddAttachment addAttachment(String applicationId, ParamAddAttachment paramAddAttachment, DataHandler document) throws RemoteException, InternalCoreException;

Parámetros de invocación

NombreTipoObligatorioDescripción

applicationId

String

Aplicación que ejecuta el método

DataHandler

Datos físicos del documento adjunto sin parámetros

ParamAddAttachmentObjeto de obtención de borradores

attachmentDocument

AttachmentDocument

Metadatos del documento adjunto

invokingId

String

No

Identificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona autenticada en el mismo.

Parámetros de respuesta


NombreTipoDescripción

ResultAddAttachment

Objeto de resultado

documentId

Long

Identificador del documento adjunto a la solicitud

Ejemplo de invocación


Code Block
languagejava
firstline1
titleEjemplo de invocación
collapsetrue
		ParamAddAttachment paramAddAttachment = new ParamAddAttachment();
		DocumentAttachment documentAttachment = new DocumentAttachment();
		paramAddAttachment.setAttachmentDocument(documentAttachment);
		paramAddAttachment.setInvokingId("00000000T");
		
		byte[] documentBytes = new byte[1024]; // Datos del dataHandler recibido
		String mimeType = "";

		// Se va a obtener de CCSV el contenido de un documento almacenado
		try {
			// INICIO integracion CCSV
			ParamGetDocument paramGetDocument = new ParamGetDocument();
			paramGetDocument.setCsv("CSVNB5FBO976F1F00SNT");
			// No queremos recuperar las firmas, unicamente el documento principal
			paramGetDocument.setAddSignatures(false);
			paramGetDocument.setApplicationId("APP");
			paramGetDocument.setAddContent(true);
			paramGetDocument.setNif("00000000T");
			
			ResultGetDocument resultGetDocument = ccsvClient.getDocument(paramGetDocument); // Obtenemos el fichero(byte[]) de Notificacion de documentum
			
			if (ReturnCode.OK.equals(resultGetDocument.getReturnCode())) {
				InputStream is = resultGetDocument.getDocument().getContent().getInputStream();
				
				ByteArrayOutputStream output = new ByteArrayOutputStream();
				int size = 0;
				while ((size=is.read(documentBytes,0,1024)) > 0) {
					output.write(documentBytes,0,size);
				}
				
				documentBytes = output.toByteArray(); // Se almacena el contenido del documento
				mimeType = resultGetDocument.getDocument().getType(); // Se obtiene el mimetype
				output.close();
			} else {
				System.out.println("CCSV_DOCUMENT_BY_CSV_ERROR "  + "CSVNB5FBO976F1F00SNT" + " ERROR " + resultGetDocument.getErrorMessage());
				throw new com.tbsolutions.snt.client.exception.InternalCoreException(SNTClientConstants.DOCUMENTUM_CCSV_ERROR, resultGetDocument.getErrorMessage());
			}
			
		} catch (Throwable e) {
			System.out.println("Ha ocurrido un error al obtener de Documentum el fichero de Notificacion con CSV");
			throw new com.tbsolutions.snt.client.exception.InternalCoreException(SNTClientConstants.DOCUMENTUM_CCSV_ERROR, e.getMessage());
		}
		// FIN integracion CCSV
		 
		byte[] arrayByte = documentBytes;
		DataSource dataSource = new ByteArrayDataSource(arrayByte, mimeType);
		DataHandler dataHandler = new DataHandler(dataSource);
		
		ResultAddAttachment resultAddAttachment;
		try {
			resultAddAttachment = draftClient.addAttachment(paramAddAttachment,dataHandler);
			if(resultAddAttachment!=null && resultAddAttachment.getDocumentId()!=null){
				System.out.println("El documentId es: "+resultAddAttachment.getDocumentId());
			}
		} catch (SNTException e) {
			System.out.println("Error:"+e.getCode()+" Mensaje:"+e.getExtraInfo());
		}


Método 'getAttachment'


Añade un documento adjunto a una solicitud de notificación dada de alta en el sistema. Este documento puede o no ir firmado.

Expand
titleMás detalles

Signatura

ResultGetAttachment getAttachment(String applicationId, ParamGetAttachment paramGetAttachment) throws RemoteException, InternalCoreException;

Parámetros de invocación

NombreTipoObligatorioDescripción

applicationId

String

Aplicación que ejecuta el método

ParamGetAttachment

Objeto de obtención del documento

draftId

Long

No

Identificador del documento adjunto a la solicitud para versiones anteriores a la v3

invokingId

String

No

Identificador del documento adjunto a la solicitud 

documentId

String

Identificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona autenticada en el mismo.

Parámetros de respuesta


NombreTipoDescripción

ResultGetAttachment

Objeto de resultado

documentAttachment

DocumentAttachment

Metadatos del documento adjunto.

Ejemplo de invocación


Code Block
languagejava
firstline1
titleEjemplo de invocación
collapsetrue
		ParamGetAttachment paramGetAttachment = new ParamGetAttachment();
		paramGetAttachment.setDraftId(new Long(5991));
		paramGetAttachment.setDocumentId("CSVX64OLQY16R1201PFI");
		paramGetAttachment.setInvokingId("00000000T");
		ResultGetAttachment resultGetAttachment;
		try {
			resultGetAttachment = draftClient.getAttachment(paramGetAttachment);
			DocumentAttachment documentAttachment = resultGetAttachment.getDocumentAttachment();
			if(documentAttachment!=null){
				System.out.println(documentAttachment.getCsv());
			}else{
				System.out.println("No se ha obtenido ningún resultado");
			}
		} catch (SNTException e) {
			System.out.println("Error:"+e.getCode()+" Mensaje:"+e.getExtraInfo());
		}


Método 'getAttachmentDocument'


Añade un documento adjunto a una solicitud de notificación dada de alta en el sistema. Este documento puede o no ir firmado.

Expand
titleMás detalles

Signatura

ResultGetAttachmentDocument getAttachmentDocument(String applicationId, ParamGetAttachmentDocument paramGetAttachmentDocument) throws RemoteException, InternalCoreException;

Parámetros de invocación

NombreTipoObligatorioDescripción

applicationId

String

Aplicación que ejecuta el método

ParamGetAttachmentDocument

Objeto de obtención del documento

draftId

Long

No

Identificador del documento adjunto a la solicitud para versiones anteriores a la v3

documentId

String

Si

Identificador del documento adjunto a la solicitud 

invokingId

String

No

Identificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona autenticada en el mismo.

Parámetros de respuesta


NombreTipoDescripción

ResultGetAttachmentDocument

Objeto de resultado

document

DataHandler

Fichero documento adjunto.

Ejemplo de invocación


Code Block
languagejava
firstline1
titleEjemplo de invocación
collapsetrue
		ParamGetAttachmentDocument paramGetAttachmentDocument = new ParamGetAttachmentDocument();
		paramGetAttachmentDocument.setDraftId(new Long(5991));
		paramGetAttachmentDocument.setDocumentId("CSVX64OLQY16R1201PFI");
		paramGetAttachmentDocument.setInvokingId("00000000T");
		 
		try {
			ResultGetAttachmentDocument resultGetAttachmentDocument = draftClient.getAttachmentDocument(paramGetAttachmentDocument);
			if(resultGetAttachmentDocument!=null){
				System.out.println(resultGetAttachmentDocument.getDocument().getName());
			}else{
				System.out.println("No se ha obtenido ningún resultado");
			}
		} catch (SNTException e) {
			System.out.println("Error:"+e.getCode()+" Mensaje:"+e.getExtraInfo());
		}


Método 'getAttachmentList'


Obtiene una lista de los metadatos de documentos adjuntos relacionados con una solicitud de notificación.

Expand
titleMás detalles

Signatura

ResultGetAttachmentList getAttachmentList(String applicationId, ParamGetAttachmentList paramGetAttachmentList) throws RemoteException, InternalCoreException;

Parámetros de invocación

NombreTipoObligatorioDescripción

applicationId

String

Aplicación que ejecuta el método

ParamGetAttachmentList

Objeto de obtención del documento

documentAttachmentSearch

DocumentAttachmentSearch

Parámetros de búsqueda de los documentos.

invokingId

String

No

Identificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona autenticada en el mismo.

Parámetros de respuesta


NombreTipoDescripción

ResultGetAttachmentList

Objeto de resultado

documentAttachmentList

DocumentAttachment[]

Lista de documentos adjuntos a la solicitud

Size

Integer

Número de elementos totales que existe en la base de datos coincidentes con la búsqueda. Este parámetro se devuelve ya que al poder listar con parámetros de paginación se puede pedir al servicio que te devuelva un número máximo de documentos.

Ejemplo de invocación


Code Block
languagejava
firstline1
titleEjemplo de invocación
collapsetrue
		// Objetos del Agente de Acceso
		ParamGetAttachmentList paramGetAttachmentList = new ParamGetAttachmentList();
		
		DocumentAttachmentSearch documentAttachmentSearch = new DocumentAttachmentSearch();
		documentAttachmentSearch.setParentId(new Long(7992)); // ID del borrador
		paramGetAttachmentList.setDocumentAttachmentSearch(documentAttachmentSearch);
		
		paramGetAttachmentList.setInvokingId("11111111H");
		
		ResultGetAttachmentList resultGetAttachmentList;
		try {
			resultGetAttachmentList = draftClient.getAttachmentList(paramGetAttachmentList);
			if(resultGetAttachmentList!=null && resultGetAttachmentList.getDocumentAttachmentList()!=null){
				DocumentAttachment[] documentAttachmentArray = resultGetAttachmentList.getDocumentAttachmentList();
				
				ArrayList arrayDocumentAttachment = new ArrayList();
				if(documentAttachmentArray!=null && documentAttachmentArray.length>0){
					for(int k=0;k<documentAttachmentArray.length;k++){
						if(documentAttachmentArray[k]!=null){
							arrayDocumentAttachment.add(documentAttachmentArray[k]);
							System.out.println("Se ha encontrado el documento: " + documentAttachmentArray[k].getAttId() );
						}
					}
				}
				
			} else{
				System.out.println("No se han encontrado adjuntos");
			}
			
		} catch (SNTException e) {
			System.out.println("Error:"+e.getCode()+" Mensaje:"+e.getExtraInfo());
		}


Método 'updateAttachment'


Actualiza un documento adjunto relacionado con una solicitud de notificación dada de alta en el sistema. Se actualizarán sus metadatos y en caso de que se le envíe un DataHandler también se actualizarán sus datos físicos.

Expand
titleMás detalles

Signatura

Result updateAttachment(String applicationId, ParamUpdateAttachment paramUpdateAttachment, DataHandler document) throws RemoteException, InternalCoreException;

Parámetros de invocación

NombreTipoObligatorioDescripción

applicationId

String

Aplicación que ejecuta el método

DataHandler
No

Fichero documento adjunto a la solicitud

ParamGetAttachmentList

Objeto de obtención del documento

draftId

Long

Identificador del documento adjunto a la solicitud

attId

String

Identificador del documento adjunto a la solicitud

Description

String

Descripción del adjunto

invokingId

String

No

Identificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona autenticada en el mismo.

Parámetros de respuesta


NombreTipoDescripción

Result

Objeto devuelto sin ningún parámetro

Ejemplo de invocación


Code Block
languagejava
firstline1
titleEjemplo de invocación
collapsetrue
		// Objetos del agente de acceso
		ParamUpdateAttachment paramUpdateAttachment = new ParamUpdateAttachment();
		
		paramUpdateAttachment.setDraftId(new Long(4001));
		paramUpdateAttachment.setDescription("Descripción modificada");
		paramUpdateAttachment.setAttId("CSV0U8PD0C0461V00SNT");
		paramUpdateAttachment.setInvokingId("00000000T");
		
		// Se hace la invocación
		try {
			Result resultUpdateAttachment = draftClient.updateAttachment(paramUpdateAttachment);
		} catch (SNTException e) {
			System.out.println("Error:"+e.getCode()+" Mensaje:"+e.getExtraInfo());
		}


Método 'deleteAttachment'


Elimina un documento adjunto relacionado con una solicitud de notificación dada de alta en el sistema.

Expand
titleMás detalles

Signatura

Result deleteAttachment(String applicationId, ParamDeleteAttachment paramDeleteAttachment) throws RemoteException, InternalCoreException;

Parámetros de invocación

NombreTipoObligatorioDescripción

applicationId

String

Aplicación que ejecuta el método

ParamDeleteAttachment

Objeto de eliminación del documento

draftId

Long

No

Identificador del documento adjunto a la solicitud para versiones anteriores a la v3

attId

String

Identificador del documento adjunto a la solicitud

invokingId

String

No

Identificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona autenticada en el mismo.

Parámetros de respuesta


NombreTipoDescripción
ResultDeleteAttachmentResultDeleteAttachment

Result

Objeto devuelto sin ningún parámetro

Ejemplo de invocación


Code Block
languagejava
firstline1
titleEjemplo de invocación
collapsetrue
		// Objetos del Agente de Acceso
		ParamDeleteAttachment paramDeleteAttachment = new ParamDeleteAttachment();
		paramDeleteAttachment.setAttId("CSV0U8PD0C0461V00SNT");
		paramDeleteAttachment.setDraftId(new Long(4001));
		paramDeleteAttachment.setInvokingId("00000000T");
		 
		try {
			ResultDeleteAttachment result = draftClient.deleteAttachment(paramDeleteAttachment);
			System.out.println(result.getMessage());
		} catch (SNTException e) {
			System.out.println("Error:"+e.getCode()+" Mensaje:"+e.getExtraInfo());
		}


Método 'issueNotification'


Emite una solicitud de notificación, pasando esta a ser una notificación propiamente dicha.

Con la invocación de este servicio se genera un recibo de emisión que se asocia a la nueva notificación y se genera y consume un evento de tipo emisión. Por defecto, este evento envía un correo electrónico al receptor y a la lista de comunicación que tenga el borrador. Además, se genera y guarda y sello de tiempo con la fecha de emisión.

Info
titleInformación

Se ha modificado la lógica del servicio para que el usuario pueda emitir notificaciones en organismos en los que no tengan rol directamente pero estén en su rama.
Se podrá emitir en organismos de la misma rama en orden descendente, es decir, podrá emitir el el organismo padre del organismo que tenga roles.


Expand
titleMás detalles

Signatura

ResultIssueNotification issueNotification(String applicationId, ParamIssueNotification paramIssueNotification) throws RemoteException, InternalCoreException;

Parámetros de invocación

NombreTipoObligatorioDescripción

applicationId

String

Aplicación que ejecuta el método

ParamIssueNotification

Objeto de eliminación del documento

draftId

Long

Identificador de la solicitud

invokingId

String

No

Identificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona autenticada en el mismo.

Parámetros de respuesta


NombreTipoDescripción
ResultIssueNotification ResultIssueNotification

notificationId

Long

Identificador de la notificación

Ejemplo de invocación


Code Block
languagejava
firstline1
titleEjemplo de invocación
collapsetrue
		// Objetos del servicio
		ParamIssueNotification paramIssueNotification = new ParamIssueNotification();
		
		// Se indica el Id de la solicitud a actualizar (debe estar en estado 3=Pendiente de emisión)
		paramIssueNotification.setDraftId(new Long(3389));
		paramIssueNotification.setInvokingId("00000000T");
		 
		// Se hace la invocación
		try {
			ResultIssueNotification resultIssueNotification = draftClient.issueNotification(paramIssueNotification);
			System.out.println("Emitida notificación: "+resultIssueNotification.getNotificationId());
		} catch (SNTException e) {
			System.out.println("Error:"+e.getCode()+" Mensaje:"+e.getExtraInfo());
		}


Método 'createIssueRegisterNotification' @deprecated
Anchor
createIssueRegisterNotification
createIssueRegisterNotification


Crea una notificación, la emite y la registra en un mismo paso.

A la hora de crear la notificación tenemos que tener en cuenta la visibilidad. Las notificaciones serán creadas con visibilidad compartida y con organismo gestor el indicado en el parámetro organism

Método deprecado, es recomendable usar el servicio createIssueRegisterNotificationWithOrganism() para gestionar de manera específica la visibilidad de las notificaciones.

Info
titleInformación

Se ha modificado la lógica del servicio para que el usuario pueda emitir notificaciones en organismos en los que no tengan rol directamente pero estén en su rama.
Se podrá emitir en organismos de la misma rama en orden descendente, es decir, podrá emitir el el organismo padre del organismo que tenga roles.


Expand
titleMás detalles

Signatura

ResultCreateIssueRegisterNotification createIssueRegisterNotification(ParamCreateIssueRegisterNotification paramCreateIssueRegisterNotification) throws RemoteException, InternalCoreException;

Parámetros de invocación

NombreTipoObligatorioDescripción

applicationId

String

Aplicación que ejecuta el método

ParamCreateIssueRegisterNotification

Objeto de eliminación del documento

draft

DraftCreateIssue

Id

Long

Identificador interno de la solicitud

creatorId

String

Identificador del funcionario creador de la solicitud

issuerId

String

Identificador del funcionario emisor de la solicitud

draftReceiversList

DraftReceiver[]

Lista de destinatarios de la solicitud

dossier

String

No

Número de Expediente de la solicitud

description

String

Asunto de la solicitud (Tamaño máximo de 250 caracteres)

expireTime

Integer

Tiempo que tardará en caducar la solicitud

organism

Organism

Objeto organismo

specificDataList

Data[]

Lista de datos específicos. (se detallan en Datos específicos)

procedure

String

Procedimiento por el cual se ha realizado la notificación.

Parámetros de respuesta


NombreTipoDescripción
ResultCreateIssueRegisterNotification ResultCreateIssueRegisterNotification

notificationId

String

Identificador de la notificación

Ejemplo de invocación


Code Block
languagejava
firstline1
titleEjemplo de invocación
collapsetrue
		//objetos del servicio
		ParamCreateIssueRegisterNotification paramCreateIssueRegisterNotification = new ParamCreateIssueRegisterNotification();
		 
		//Se crea un receiver
		DraftReceiver draftReceiver = new DraftReceiver();
		draftReceiver.setReceiverId("00000000T");
		draftReceiver.setName("name");
		draftReceiver.setSurname1("surname1");
		draftReceiver.setSurname2("surname2");
		draftReceiver.setAddress("address");
		draftReceiver.setEmail("correo@mail.com");
		 
		//Se crea la lista de Receivers
		DraftReceiver[] draftReceivers = new DraftReceiver[1];
		draftReceivers[0] = draftReceiver;
		 
		//Se crea la lista de datos específicos
		Data[] specificDataList=new Data[3];
		specificDataList[0] = new Data("CSV_Notification","CSVRU4GYTJ46R1V01PFI");
		specificDataList[1] = new Data("CSV_Attached_1","CSVOB13DWL45O1R01PFI");
		specificDataList[2] = new Data("CSV_Attached_2","CSVZR3JG9C56Y1601PFI");
		 
		//Se crea el organismo asociado
		Organism organism = new Organism();
		organism.setCode("ORG14668");
		organism.setName("Departamento de Economía y Hacienda");
		 
		//Se rellena el objeto Draft
		DraftCreateIssue draft = new DraftCreateIssue();
		draft.setDossier("20110224-01");
		draft.setIssuerId ("00000000T");
		draft.setCreatorId("00000000T");
		draft.setDescription("20110224-01");
		draft.setOrganism(organism);
		draft.setSpecificDataList(specificDataList);
		draft.setDraftReceiversList(draftReceivers);
		draft.setExpireTime(new Integer(10));
		draft.setProcedure("1");
		 
		//Se rellena el objeto ParamCreateIssueNotification
		paramCreateIssueRegisterNotification.setDraft(draft);
		 
		//Se hace la invocación
		try {
			ResultCreateIssueRegisterNotification resultCreateIssueRegisterNotification = draftClient.createIssueRegisterNotification(paramCreateIssueRegisterNotification);
			System.out.println("Emitida notificacion con ID: "+resultCreateIssueRegisterNotification.getNotificationId());
			
		} catch (SNTException e) {
			System.out.println("Error:"+e.getCode()+" Mensaje:"+e.getExtraInfo());
		}
		 


Datos específicos

Se pueden añadir datos específicos para el envío a Notific@, adjuntos o el documento de notificación. Los valores serán los siguientes:

  • Notifica_envio_programado: Fecha para realizar un envío programado
  • CSV_Notification (Obligatorio): csv del documento de Notificación. Debe tener el estado Original o Copia Simple/Autentica.

  • CSV_Attached_x: para añadir documentos adjuntos. Donde la X será el número del adjunto (CSV_Attached_1, CSV_Attached_2....etc)


Método 'createIssueRegisterNotificationWithOrganism'
Anchor
createIssueRegisterNotificationWithOrganism
createIssueRegisterNotificationWithOrganism


Crea una notificación, la emite y la registra en un mismo paso.

A la hora de crear la notificación tenemos que tener en cuenta la visibilidad. Si se quiere crear una notificación con visibilidad compartida tenemos que asignarle la lista de organismos (organismVisibilityList). Si no asignamos la lista de organismos, la notificación se creará con visibilidad limitada.

En la lista de visibilidad de organismos solamente hay que pasar los organismos gestores ya que el organismo productor se obtiene automáticamente por código.


Info
titleInformación

Se ha modificado la lógica del servicio para que el usuario pueda emitir notificaciones en organismos en los que no tengan rol directamente pero estén en su rama.
Se podrá emitir en organismos de la misma rama en orden descendente, es decir, podrá emitir el el organismo padre del organismo que tenga roles.


Expand
titleMás detalles

Signatura

ResultCreateIssueRegisterNotification createIssueRegisterNotification(ParamCreateIssueRegisterNotificationWithOrganism paramCreateIssueRegisterNotification) throws RemoteException, InternalCoreException;

Parámetros de invocación

NombreTipoObligatorioDescripción

applicationId

String

Aplicación que ejecuta el método

ParamCreateIssueRegisterNotificationWithOrganism 

Objeto de eliminación del documento

draft

DraftCreateIssue

Id

Long

Identificador interno de la solicitud

creatorId

String

Identificador del funcionario creador de la solicitud

issuerId

String

Identificador del funcionario emisor de la solicitud

draftReceiversList


Lista de destinatarios de la solicitud

dossier

String

No

Número de Expediente de la solicitud

description

String

Asunto de la solicitud (Tamaño máximo de 250 caracteres)

expireTime

Integer

Tiempo que tardará en caducar la solicitud

organism

Organism

Objeto organismo

specificDataList

Data[]

Lista de datos específicos. (se detallan en Datos específicos)

procedure

String

Procedimiento por el cual se ha realizado la notificación.

organismVisibilityList

OrganismVisibility[]

No

Listado de organismos utilizados en la visibilidad compartida.

Parámetros de respuesta


NombreTipoDescripción
ResultCreateIssueRegisterNotification ResultCreateIssueRegisterNotification

notificationId

String

Identificador de la notificación

Ejemplo de invocación


Code Block
languagejava
firstline1
titleEjemplo de invocación
collapsetrue
		//objetos del servicio
		ParamCreateIssueRegisterNotificationWithOrganism paramCreateIssueRegisterNotification = new ParamCreateIssueRegisterNotificationWithOrganism();
		 
		//Se crea un receiver
		DraftReceiver draftReceiver = new DraftReceiver();
		draftReceiver.setReceiverId("11111111H");
		draftReceiver.setName("name");
		draftReceiver.setSurname1("surname1");
		draftReceiver.setSurname2("surname2");
		draftReceiver.setAddress("address");
		draftReceiver.setEmail("correo@mail.com");
		 
		//Se crea la lista de Receivers
		DraftReceiver[] draftReceivers = new DraftReceiver[1];
		draftReceivers[0] = draftReceiver;
		 
		//Se crea la lista de datos específicos
		Data[] specificDataList=new Data[3];
		specificDataList[0] = new Data("CSV_Notification","CSVRU4GYTJ46R1V01PFI");
		specificDataList[1] = new Data("CSV_Attached_1","CSVOB13DWL45O1R01PFI");
		specificDataList[2] = new Data("CSV_Attached_2","CSVZR3JG9C56Y1601PFI");
		 
		//Se crea el organismo asociado
		Organism organism = new Organism();
		organism.setCode("ORG14668");
		organism.setName("Departamento de Economía y Hacienda");
		 
		//Se rellena el objeto Draft
		DraftCreateIssueWithOrganism draft = new DraftCreateIssueWithOrganism();
		draft.setDossier("20110224-01");
		draft.setIssuerId ("11111111H");
		draft.setCreatorId("11111111H");
		draft.setDescription("20110224-01");
		draft.setOrganism(organism);
		draft.setSpecificDataList(specificDataList);
		draft.setDraftReceiversList(draftReceivers);
		draft.setExpireTime(new Integer(10));
		draft.setProcedure("1");
		 
		//lista de organismos gestores para la visibilidad compartida (si no se asigna la lista se creará con visibilidad limitada)
		OrganismVisibility[] organismVisibilities = new OrganismVisibility[2];
		 
		OrganismVisibility organismVisibility = new OrganismVisibility();
		organismVisibility.setOrganismCode("ORG14668");
		organismVisibility.setTipoRelacion(SNTClientConstants.ORG_GESTOR);
		 
		organismVisibilities[0] = organismVisibility;
		 
		organismVisibility = new OrganismVisibility();
		organismVisibility.setOrganismCode("ORG12358");
		organismVisibility.setTipoRelacion(SNTClientConstants.ORG_GESTOR);
		 
		organismVisibilities[1] = organismVisibility;
		 
		draft.setOrganismVisibilityList(organismVisibilities);
		 
		//Se rellena el objeto ParamCreateIssueNotification
		paramCreateIssueRegisterNotification.setDraft(draft);
		 
		//Se hace la invocación
		try {
			ResultCreateIssueRegisterNotification resultCreateIssueRegisterNotification = draftClient.createIssueRegisterNotificationWithOrganism(paramCreateIssueRegisterNotification);
			if(resultCreateIssueRegisterNotification!=null){
				System.out.println("ID de la notificación: "+ resultCreateIssueRegisterNotification.getNotificationId());
			}
		} catch (SNTException e) {
			System.out.println("Error:"+e.getCode()+" Mensaje:"+e.getExtraInfo());
		}


Datos específicos

Se pueden añadir datos específicos para el envío a Notific@, adjuntos o el documento de notificación. Los valores serán los siguientes:

  • Notifica_envio_programado: Fecha para realizar un envío programado
  • CSV_Notification (Obligatorio): csv del documento de Notificación. Debe tener el estado Original o Copia Simple/Autentica.

  • CSV_Attached_x: para añadir documentos adjuntos. Donde la X será el número del adjunto (CSV_Attached_1, CSV_Attached_2....etc)


Método 'verifySignedDocument'


Verifica la firma de un documento asociado a un borrador que esté firmado.

Expand
titleMás detalles

Signatura

ResultVerifySignedDocument verifySignedDocument(String applicationId, ParamVerifySignedDocument paramVerifySignedDocument) throws RemoteException, InternalCoreException;

Parámetros de invocación

NombreTipoObligatorioDescripción

applicationId

String

Aplicación que ejecuta el método

ParamVerifySignedDocument

Objeto de verificación del documento

documentId

Long

Identificador del documento que se desee verificar.

invokingId

String

No

Identificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona autenticada en el mismo.

Parámetros de respuesta


NombreTipoDescripción
ResultVerifySignedDocument ResultVerifySignedDocument

certList

Cert[]

Lista de los certificados que han firmado el documento.

Ejemplo de invocación


Code Block
languagejava
firstline1
titleEjemplo de invocación
collapsetrue
		// Objetos del servicio
		ParamVerifySignedDocument paramVerifySignedDocument = new ParamVerifySignedDocument ();
		paramVerifySignedDocument.setDocumentId("CSVRU4GYTJ46R1V01PFI");
		paramVerifySignedDocument.setInvokingId("00000000T");
		 
		//Se consume el servicio
		try {
			ResultVerifySignedDocument resultVerifySignedDocument = draftClient.verifySignedDocument(paramVerifySignedDocument);
			if(resultVerifySignedDocument!=null && resultVerifySignedDocument.getCertList()!=null && resultVerifySignedDocument.getCertList().length>0 ){
				for (Cert cert : resultVerifySignedDocument.getCertList()) {
					System.out.println(cert.getStatus());
				}
			}else{
				System.out.println("No se han obtenido datos");
			}
		} catch (SNTException e) {
			System.out.println("Error: "+e.getCode()+" Mensaje:"+e.getExtraInfo());
		}


Método 'issueRegisterNotification'


Emite una solicitud de notificación, pasando esta a ser una notificación propiamente dicha.

Con la invocación de este servicio se genera un recibo de emisión que se asocia a la nueva notificación y se genera y consume un evento de tipo emisión. Por defecto, este evento envía un correo electrónico al receptor y a la lista de comunicación que tenga el borrador. Además, se genera y guarda y sello de tiempo con la fecha de emisión. Internamente se conecta con el sistema de registro telemático para generar el asiento registral salida de la notificación a emitir.

Info
titleInformación

Se ha modificado la lógica del servicio para que el usuario pueda emitir notificaciones en organismos en los que no tengan rol directamente pero estén en su rama.
Se podrá emitir en organismos de la misma rama en orden descendente, es decir, podrá emitir el el organismo padre del organismo que tenga roles.


Expand
titleMás detalles

Signatura

ResultIssueRegisterNotification issueRegisterNotification(String applicationId, ParamIssueRegisterNotification paramIssueRegisterNotification) throws RemoteException, InternalCoreException;

Parámetros de invocación

NombreTipoObligatorioDescripción

applicationId

String

Aplicación que ejecuta el método

ParamIssueRegisterNotification

Objeto de solicitud

draftId

Long

Identificador de la solicitud de notificación creada anteriormente

organismRegister

String

Código de organismo en cuyo libro registral de salida se realizará el asiento de la notificación a emitir

issuerId

String

Identificador (NIF) del empleado público que realiza la emisión de la notificación y que será el representante del organismo emisor en el asiento registral correspondiente

invokingId

String

No

Identificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona autenticada en el mismo.

Parámetros de respuesta


NombreTipoDescripción
ResultIssueRegisterNotification ResultIssueRegisterNotification

notificationId

Long

Identificador de la notificación

Ejemplo de invocación


Code Block
languagejava
firstline1
titleEjemplo de invocación
collapsetrue
		// Objetos del servicio
		ParamIssueRegisterNotification paramIssueRegisterNotification = new ParamIssueRegisterNotification();
		 		 
		// Se indica el Id de la solicitud a actualizar
		paramIssueRegisterNotification.setDraftId(new Long(4693));
		 
		paramIssueRegisterNotification.setOrganismRegister("ORG14668");
		paramIssueRegisterNotification.setIssuerId("00000000T");
		paramIssueRegisterNotification.setInvokingId("00000000T");
		 
		// Se hace la invocación
		try {
			ResultIssueRegisterNotification resultIssueRegisterNotification = draftClient.issueRegisterNotification(paramIssueRegisterNotification);
			if(resultIssueRegisterNotification != null){
				System.out.println("ID de la notificación: "+ resultIssueRegisterNotification.getNotificationId());
			}
		} catch (SNTException e) {
			System.out.println("Error:"+e.getCode()+" Mensaje:"+e.getExtraInfo());
		}


Método 'createDraftSpreadSheet' @deprecated


Inicia el proceso de alta desde un documento Excel, de una o varias notificaciones, creando para ello borrador/es en el sistema con los metadatos asociados a la notificación.

Para la creación del borrador solamente se envían los metadatos de la notificación, aún no su documento. Se pueden asociar documentos adjuntos a los borradores mediante CSV.

Método deprecado, es recomendable usar el servicio → createDraftSpreadsheetAdvanced()

Expand
titleMás detalles

Signatura

ResultCreateDraftSpreadsheet createDraftSpreadsheet(String applicationId, ParamCreateDraftSpreadsheet paramCreateDraftSpreadsheet) throws RemoteException, InternalCoreException;

Parámetros de invocación

NombreTipoObligatorioDescripción

applicationId

String

Aplicación que ejecuta el método

ParamCreateDraftSpreadsheet

Objeto de solicitud

spreadSheetDocument

Datahandler

Documento Excel a leer

organismRegister

String

Organismo del usuario logueado

organismVisibilityList

OrganismVisibility[]NOListado de organismos utilizados en la visibilidad compartida/limitada

invokingId

String

No

Identificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona autenticada en el mismo.

Parámetros de respuesta


NombreTipoDescripción
ResultCreateDraftSpreadsheet ResultCreateDraftSpreadsheet

draftIdList

Long[]

Lista de identificadores de las notificaciones

Ejemplo de invocación


Code Block
languagejava
firstline1
titleEjemplo de invocación
collapsetrue
// Objetos del servicio
ParamCreateDraftSpreadsheet paramCreateDraftSpreadsheet = 
new ParamCreateDraftSpreadsheet();
ResultCreateDraftSpreadsheet resultCreateDraftSpreadsheet;

// Se indica el Id de la solicitud a actualizar
paramCreateDraftSpreadsheet.setDocument(dataHandler);
paramCreateDraftSpreadsheet.setFiscalAnagram(userLogin.getFiscalAnagram());
paramCreateDraftSpreadsheet.setNif(userLogin.getNif());
paramCreateDraftSpreadsheet.setOrganismCode(userLogin.getOrganismCode());
paramCreateDraftSpreadsheet.setInvokingId("1111111H");

// Se hace la invocación
resultCreateDraftSpreadsheet =
draftClient.createDraftSpreadsheet(paramCreateDraftSpreadsheet);


Método 'createDraftSpreadSheetAdvanced'


Inicia el proceso de alta desde un documento Excel, de una o varias notificaciones, creando para ello borrador/es en el sistema con los metadatos asociados a la notificación.

Para la creación del borrador solamente se envían los metadatos de la notificación, aún no su documento. Se pueden asociar documentos adjuntos a los borradores mediante CSV.

Expand
titleMás detalles

Signatura

ResultCreateDraftSpreadSheetAdvanced createDraftSpreadsheetAdvanced(String applicationId, ParamCreateDraftSpreadSheetAdvanced paramCreateDraftSpreadSheetAdvanced) throws RemoteException, InternalCoreException;

Parámetros de invocación

NombreTipoObligatorioDescripción

applicationId

String

Aplicación que ejecuta el método

ParamCreateDraftSpreadSheetAdvanced

Objeto de solicitud

spreadSheetDocument

Datahandler

Documento Excel a leer

organismRegister

String

Organismo del usuario logueado

invokingId

String

No

Identificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona autenticada en el mismo.

procedureId

String

Código de procedimiento.

organismVisibilityList

OrganismVisibility[]NOListado de organismos utilizados en la visibilidad compartida/limitada

Parámetros de respuesta


NombreTipoDescripción
ResultCreateDraftSpreadSheetAdvanced ResultCreateDraftSpreadSheetAdvanced

draftIdList

Long[]

Lista de identificadores de las notificaciones

Ejemplo de invocación


Code Block
languagejava
firstline1
titleEjemplo de invocación
collapsetrue
// Objetos del servicio
ParamCreateDraftSpreadsheetAdvanced paramCreateDraftSpreadsheetAdvanced = new ParamCreateDraftSpreadsheetAdvanced();
ResultCreateDraftSpreadsheetAdvanced result;

// Se indica el Id de la solicitud a actualizar
paramCreateDraftSpreadsheetAdvanced.setDocument(dataHandler);
paramCreateDraftSpreadsheetAdvanced.
setFiscalAnagram(userLogin.getFiscalAnagram());
paramCreateDraftSpreadsheetAdvanced.setNif(userLogin.getNif());
paramCreateDraftSpreadsheetAdvanced.
setOrganismCode(userLogin.getOrganismCode());
paramCreateDraftSpreadsheetAdvanced.setInvokingId("1111111H");

// Se hace la invocación
result = draftClient.createDraftSpreadsheetAdvanced(paramCreateDraftSpreadsheetAdvanced);


Método 'addAttachmentByCSV'


Añade un documento adjunto a una solicitud de notificación dada de alta en el sistema pasándole uno o varios csv's.

Expand
titleMás detalles

Signatura

Result addAttachmentByCSV(String applicationId, ParamAddAttachmentByCSV paramAddAttachmentByCSV) throws RemoteException, InternalCoreException;

Parámetros de invocación

NombreTipoObligatorioDescripción

applicationId

String

Aplicación que ejecuta el método

ParamAddAttachmentByCSV

Objeto de solicitud

draftId

Long

Identificador del borrador

attIdList

String

Lista de csv's a adjuntar al borrador

invokingId

String

No

Identificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona autenticada en el mismo.

Parámetros de respuesta


NombreTipoDescripción
Result Objeto sin parámetros

Ejemplo de invocación


Code Block
languagejava
firstline1
titleEjemplo de invocación
collapsetrue
			
	// Objetos del servicio
	ParamAddAttachmentByCSV paramAddAttachmentByCSV = new ParamAddAttachmentByCSV();
	
	// Se indica el Id de la solicitud a asociar el adjunto
	paramAddAttachmentByCSV.setDraftId(5000L);
	
	// Se añade la lista de csv's a adjuntar a la solicitud
	String[] csvAdjuntos = new String[3];
	csvAdjuntos[0] = "CSVPH06BYR54Y1601PFI";
	csvAdjuntos[1] = "CSVLV44LFX26O1601PFI";
	csvAdjuntos[2] = "CSV266CLIX05F1U01PFI";
	paramAddAttachmentByCSV.setAttIdList(csvAdjuntos);
	
	paramAddAttachmentByCSV.setInvokingId("00000000T");
	 
	// Se hace la invocación
	try {
		draftClient.addAttachmentByCSV(paramAddAttachmentByCSV);
	} catch (SNTException e) {
		System.out.println("Error:"+e.getCode()+" Mensaje:"+e.getExtraInfo());
	}



...