Versions Compared

Key

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

Table of Contents
maxLevel3



Info
El dato específico CSV_Access ya no se devuelve


Servicios DraftService

Servicios de gestión de notificaciones en estado borrador


Método 'createDraft@deprecated
Anchor
createDraft
createDraft


Inicia el proceso de alta de una notificación creando para ello un borrador en el sistema con los metadatos asociados a la notificación.

A la hora de crear un borrador tenemos que tener en cuenta la visibilidad. Todos los borradores creados con este método se crearán con visibilidad compartida y el organismo gestor será el indicado en el campo organismo.

Método deprecado, es recomendable usar el servicio → createDraftWithOrganism() 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

ResultCreateDraft createDraft (String applicationId, ParamCreateDraft paramCreateDraft) throws RemoteException, InternalCoreException

Parámetros de invocación

NombreTipoObligatorioDescripción
applicationIdStringAplicación que ejecuta el método
ParamCreateDraftObjeto de creación de borrador
draftDraftObjeto solicitud

Parámetros de respuesta


NombreTipoDescripción
ResultCreateDraftObjeto de resultado de creación de borrador

draftId

String

Identificador del borrador creado

Ejemplo de invocación


Code Block
languagejava
firstline1
titleEjemplo de invocación
collapsetrue
//objetos del servicio
ParamCreateDraft paramCreateDraft = new ParamCreateDraft();
ResultCreateDraft resultCreateDraft;

//Se crea un receiver
DraftReceiver draftReceiver = new DraftReceiver();
draftReceiver.setReceiverId("11111111H"); // receptor de la notificacion
draftReceiver.setName("name");
draftReceiver.setSurname1("surname1");
draftReceiver.setSurname2("surname2");
draftReceiver.setAddress("address");
draftReceiver.setEmail("email@email.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("keyA1","valueA1");
specificDataList[1] = new Data("keyA2","valueA2");
specificDataList[2] = new Data("keyA3","valueA3");

//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
Draft draftCreate = new Draft();
draftCreate.setDossier("20110224-01"); // expediente
draftCreate.setCreatorId("11111111H");
draftCreate.setDescription("20110224-01");
draftCreate.setOrganism(organism);
draftCreate.setSpecificDataList(specificDataList);
draftCreate.setDraftReceiversList(draftReceivers);
draftCreate.setExpireTime(new Integer(10));
draftCreate.setContent("20110224-01");
draftCreate.setProcedure("1");

//Se rellena el objeto ParamCreateDraft               
paramCreateDraft.setDraft(draftCreate);

//Se hace la invocación
try {
	resultCreateDraft = draftClient.createDraft(paramCreateDraft);
	System.out.println(resultCreateDraft.getDraftId());
} catch (SNTException e) {
	System.out.println("Error:"+e.getCode()+" Mensaje:"+e.getExtraInfo());
}
		




Método 'createDraftWithOrganism'
Anchor
createDraftWithOrganism
createDraftWithOrganism


Inicia el proceso de alta de una notificación creando para ello un borrador en el sistema con los metadatos asociados a la notificación

A la hora de crear un borrador tenemos que tener en cuenta la visibilidad. Si se quiere crear un borrador con visibilidad compartida tenemos que asignarle la lista de organismos (organismVisibilityList). Si no asignamos la lista de organismos, el borrador 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

ResultCreateDraft createDraftWithOrganism (String applicationId ParamCreateDraftWithOrganism paramCreateDraft) throws RemoteException, InternalCoreException

Parámetros de invocación

NombreTipoObligatorioDescripción
applicationIdStringAplicación que ejecuta el método
paramUpdateDraftObjeto de creación de borrador
draftWithOrganismDraftWithOrganismObjeto solicitud

Parámetros de respuesta


NombreTipoDescripción
ResultCreateDraftObjeto de resultado de creación de borrador

draftId

String

Identificador del borrador creado

Ejemplo de invocación

En este ejemplo vamos a crear una notificación con visibilidad compartida, ya que vamos a indicar una lista de organismos gestores.

Code Block
languagejava
firstline1
titleEjemplo de invocación
collapsetrue
//objetos del servicio
ParamCreateDraftWithOrganism paramCreateDraft = new ParamCreateDraftWithOrganism();
ResultCreateDraft resultCreateDraft;

//Se crea un receiver
DraftReceiver draftReceiver = new DraftReceiver();
draftReceiver.setReceiverId("11111111H"); // receptor de la notificacion
draftReceiver.setName("name");
draftReceiver.setSurname1("surname1");
draftReceiver.setSurname2("surname2");
draftReceiver.setAddress("address");
draftReceiver.setEmail("email@email.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("keyA1","valueA1");
specificDataList[1] = new Data("keyA2","valueA2");
specificDataList[2] = new Data("keyA3","valueA3");

//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
DraftWithOrganism draftCreate = new DraftWithOrganism();
draftCreate.setDossier("20110224-01"); // expediente
draftCreate.setCreatorId("11111111H"); // creador de la notificación
draftCreate.setDescription("20110224-01");
draftCreate.setOrganism(organism);
draftCreate.setSpecificDataList(specificDataList);
draftCreate.setDraftReceiversList(draftReceivers);
draftCreate.setExpireTime(new Integer(10));
draftCreate.setContent("20110224-01");
draftCreate.setProcedure("1"); // procedimiento de la notificación
	
//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;

draftCreate.setOrganismVisibilityList(organismVisibilities);

//Se rellena el objeto ParamCreateDraft               
paramCreateDraft.setDraft(draftCreate);

//Se hace la invocación
try {
	resultCreateDraft = draftClient.createDraftWithOrganism(paramCreateDraft);
	System.out.println(resultCreateDraft.getDraftId());
} catch (SNTException e) {
	System.out.println("Error:"+e.getCode()+" Mensaje:"+e.getExtraInfo());
}
		


En este ejemplo vamos a crear una notificación con visibilidad limitada, ya que vamos a indicar una lista vacía de organismos gestores.

Code Block
languagejava
firstline1
titleEjemplo de invocación
collapsetrue
//objetos del servicio
ParamCreateDraftWithOrganism paramCreateDraft = new ParamCreateDraftWithOrganism();
ResultCreateDraft resultCreateDraft;

//Se crea un receiver
DraftReceiver draftReceiver = new DraftReceiver();
draftReceiver.setReceiverId("11111111H"); // receptor de la notificacion
draftReceiver.setName("name");
draftReceiver.setSurname1("surname1");
draftReceiver.setSurname2("surname2");
draftReceiver.setAddress("address");
draftReceiver.setEmail("email@email.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("keyA1","valueA1");
specificDataList[1] = new Data("keyA2","valueA2");
specificDataList[2] = new Data("keyA3","valueA3");

//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
DraftWithOrganism draftCreate = new DraftWithOrganism();
draftCreate.setDossier("20110224-01"); // expediente
draftCreate.setCreatorId("11111111H"); // creador de la notificación
draftCreate.setDescription("20110224-01");
draftCreate.setOrganism(organism);
draftCreate.setSpecificDataList(specificDataList);
draftCreate.setDraftReceiversList(draftReceivers);
draftCreate.setExpireTime(new Integer(10));
draftCreate.setContent("20110224-01");
draftCreate.setProcedure("1"); // procedimiento de la notificación

draftCreate.setOrganismVisibilityList(null); // lista vacia de organismos gestores

//Se rellena el objeto ParamCreateDraft               
paramCreateDraft.setDraft(draftCreate);

//Se hace la invocación
try {
	resultCreateDraft = draftClient.createDraftWithOrganism(paramCreateDraft);
	System.out.println(resultCreateDraft.getDraftId());
} catch (SNTException e) {
	System.out.println("Error:"+e.getCode()+" Mensaje:"+e.getExtraInfo());
}
		




Método 'updateDraft' @deprecated
Anchor
updateDraft
updateDraft


Actualiza una solicitud de notificación dada de alta en el sistema. En el caso de enviar el documento la notificación (draftDocument) se actualizaría o añadiría y se actualizarían los metadados del draft. Si solo se enviase el parámetro draft, solamente se actualizarían los metadatos de éste.

A la hora de actualizar un borrador tenemos que tener en cuenta la visibilidad. Todos los borradores actualizados con este método se actualizarán con visibilidad compartida y el organismo gestor será el indicado en el campo organismo

Método deprecado, es recomendable usar el servicio → updateDraftWithOrganism() 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

Result updateDraft(String applicationId, ParamUpdateDraft paramUpdateDraft, DataHandler draftDocument) throws RemoteException, InternalCoreException;

Parámetros de invocación

NombreTipoObligatorioDescripción

applicationId

String

Aplicación que ejecuta el método

draftDocumentDataHandlerNo

Documento de principal de la notificación.

ParamUpdateDraftObjeto de actualización de borrador
draft

Draft

Objeto 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

ResultUpdateDraft

ResultUpdateDraft

Objeto que se devuelve como resultado sin ningún parámetro.

Ejemplo de invocación


Code Block
languagejava
firstline1
titleEjemplo de invocación
collapsetrue
ParamGetDraft paramGetDraft = new ParamGetDraft();
paramGetDraft.setDraftId(result.getDraftId());
ResultGetDraft resultGetDraft = draftClient.getDraft(paramGetDraft);

Draft draft = resultGetDraft.getDraft();

// Le añadimos los metadatos del documento de notificación
draft.setFormatSignature(new Long(SNTClientConstants.SIGN_TYPE_PDF));
draft.setMimeType("application/pdf");
draft.setFileName("NOTIFICATION_ATTACHED_PDF.pdf");
draft.setSignDate(Calendar.getInstance());

ParamUpdateDraft paramUpdateDraft = new ParamUpdateDraft();
paramUpdateDraft.setDraft(draft);
paramUpdateDraft.setInvokingId("1111111H");

// Cargamos el fichero de notificación
FileDataSource dataSourceNotification = new FileDataSource(new File("src/test/docs/NOTIFICATION.pdf"));
DataHandler draftDocument = new DataHandler(dataSourceNotification);

// Invocamos al servicio
draftClient.updateDraft(paramUpdateDraft, draftDocument);



Método 'updateDraftWithOrganism'
Anchor
updateDraftWithOrganism
updateDraftWithOrganism


Actualiza una solicitud de notificación dada de alta en el sistema. En el caso de enviar el documento la notificación (draftDocument) se actualizaría o añadiría y se actualizarían los metadados del draft. Si solo se enviase el parámetro draft, solamente se actualizarían los metadatos de éste.

A la hora de actualizar un borrador tenemos que tener en cuenta la visibilidad. En la obtención del borrador obtendremos también los organismos gestores e irá incluido en la lista el organismo aportador, por lo que tenemos que quitarlo de la lista si queremos gestionarlos en nuestra aplicación.

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

Result updateDraft(String applicationId, ParamUpdateDraftWithOrganism paramUpdateDraftWithOrganism, DataHandler draftDocument) throws RemoteException, InternalCoreException;

Parámetros de invocación

NombreTipoObligatorioDescripción

applicationId

String

Aplicación que ejecuta el método

draftDocumentDataHandlerNo

Documento de principal de la notificación.

ParamUpdateDraftWithOrganismObjeto de actualización de borrador
draftWithOrganism

DraftWithOrganism

Objeto 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

ResultUpdateDraft

ResultUpdateDraft

Objeto que se devuelve como resultado sin ningún parámetro.

Ejemplo de invocación


Code Block
languagejava
firstline1
titleEjemplo de invocación
collapsetrue
ParamGetDraft paramGetDraft = new ParamGetDraft();
paramGetDraft.setDraftId(10940L);
ResultGetDraftWithOrganism resultGetDraft = draftClient.getDraftWithOrganism(paramGetDraft);

DraftWithOrganism draft = resultGetDraft.getDraft();

// Le añadimos los metadatos del documento de notificación
draft.setFormatSignature(new Long(SNTClientConstants.SIGN_TYPE_PDF));
draft.setMimeType("application/pdf");
draft.setFileName("NOTIFICATION_ATTACHED_PDF.pdf");
draft.setSignDate(Calendar.getInstance());

ParamUpdateDraftWithOrganism paramUpdateDraft = new ParamUpdateDraftWithOrganism();
paramUpdateDraft.setDraft(draft);
paramUpdateDraft.setInvokingId("1111111H");

// Cargamos el fichero de notificación
FileDataSource dataSourceNotification = new FileDataSource(new File("src/test/docs/NOTIFICATION.pdf"));
DataHandler draftDocument = new DataHandler(dataSourceNotification);

// Invocamos al servicio
draftClient.updateDraftWithOrganism(paramUpdateDraft, draftDocument);



...