Diferencia entre revisiones de «API del Web Service STE»

De Egeasy
Saltar a: navegación, buscar
Línea 10: Línea 10:
 
  TGWSIdentifier = String;
 
  TGWSIdentifier = String;
  
  TGSignature = TByteDynArray;
+
  TGSignature = TByteDynArray;  
 +
 
     Array de bytes usado para enviar datos binarios (ficheros, firmas, etc.).
 
     Array de bytes usado para enviar datos binarios (ficheros, firmas, etc.).
  
Línea 26: Línea 27:
 
     property ErrorCode: TGWSErrorCode;
 
     property ErrorCode: TGWSErrorCode;
 
     property ErrorMessage: String;
 
     property ErrorMessage: String;
 +
   
 
     Error general.
 
     Error general.
  
 
  TGWSErrorValidateTask = class(TGWSError)
 
  TGWSErrorValidateTask = class(TGWSError)
 
     property FieldErrors: TGWSArrayFieldError;
 
     property FieldErrors: TGWSArrayFieldError;
 +
   
 
     Error en la validación o envío de una tarea. Detalla los errores de los campos.
 
     Error en la validación o envío de una tarea. Detalla los errores de los campos.
  
 
==Procedimentos (definiciones)==
 
==Procedimentos (definiciones)==
 
  TGWSFieldType = (ftDummy, ftBoolean, ftInteger, ftReal, ftString, ftMemo, ftDatetime, ftCurrency, ftTable);
 
  TGWSFieldType = (ftDummy, ftBoolean, ftInteger, ftReal, ftString, ftMemo, ftDatetime, ftCurrency, ftTable);
 +
   
 
     Tipos de campo.
 
     Tipos de campo.
  
Línea 45: Línea 49:
 
     property Required: Boolean;
 
     property Required: Boolean;
 
     property FieldDefinitions: TGWSListFieldDefinition;
 
     property FieldDefinitions: TGWSListFieldDefinition;
 +
   
 
     Definición de campo. Si es un campo tabla, incluye las definiciones de las columnas.
 
     Definición de campo. Si es un campo tabla, incluye las definiciones de las columnas.
  
Línea 53: Línea 58:
  
 
  TGWSTaskType = (ttStart, ttSendDocumentation, ttRequirement, ttNotification, ttResponse);
 
  TGWSTaskType = (ttStart, ttSendDocumentation, ttRequirement, ttNotification, ttResponse);
 +
   
 
     Tipos de tarea.  
 
     Tipos de tarea.  
 
     Todo proceso ha de tener al menos una tarea de inicio (ttStart).  
 
     Todo proceso ha de tener al menos una tarea de inicio (ttStart).  
Línea 66: Línea 72:
 
     property TaskType: TGWSTaskType;
 
     property TaskType: TGWSTaskType;
 
     property FieldDefinitions: TGWSListFieldDefinition;
 
     property FieldDefinitions: TGWSListFieldDefinition;
 +
   
 
     Definición de tarea. Incluye las definiciones de campo.
 
     Definición de tarea. Incluye las definiciones de campo.
  
Línea 75: Línea 82:
 
     property Description: String;
 
     property Description: String;
 
     property Group: String;
 
     property Group: String;
 +
   
 
     Descripción abreviada del procedimento, que se usa obtener los datos fundamentales de un procedimento al cargar listados.
 
     Descripción abreviada del procedimento, que se usa obtener los datos fundamentales de un procedimento al cargar listados.
  
Línea 84: Línea 92:
 
  TGWSProcedure = class(TGWSRefProcedure)
 
  TGWSProcedure = class(TGWSRefProcedure)
 
     property TaskDefinitions: TGWSArrayTaskDefinition;
 
     property TaskDefinitions: TGWSArrayTaskDefinition;
 +
   
 
     Descripción completa del procedimiento.
 
     Descripción completa del procedimiento.
  
 
==Trámites==
 
==Trámites==
 
  TGWSProcessStatus = (psCreated, psStarted, psFinished, psArchived, psDeleted, psAll);
 
  TGWSProcessStatus = (psCreated, psStarted, psFinished, psArchived, psDeleted, psAll);
 +
   
 
     Estados en los que se puede encontrar un trámite.
 
     Estados en los que se puede encontrar un trámite.
  
Línea 105: Línea 115:
 
     property LastTaskDate: TGWSSerializedDateTime;
 
     property LastTaskDate: TGWSSerializedDateTime;
 
     property HasPendingTasks: Boolean read;
 
     property HasPendingTasks: Boolean read;
 +
   
 
     Descripción abreviada de un trámite, usada para obtener los datos fundamentales de un trámite en listados.
 
     Descripción abreviada de un trámite, usada para obtener los datos fundamentales de un trámite en listados.
  
Línea 114: Línea 125:
 
  TGWSProcess = class(TGWSRefProcess)
 
  TGWSProcess = class(TGWSRefProcess)
 
     property Tasks: TGWSArrayTasks read FTasks write FTasks;
 
     property Tasks: TGWSArrayTasks read FTasks write FTasks;
 +
   
 
     Datos completos del trámite, incluyendo las tareas que forman parte del mismo.
 
     Datos completos del trámite, incluyendo las tareas que forman parte del mismo.
  
Línea 119: Línea 131:
 
     property Status: TGWSArrayProcessStatus;
 
     property Status: TGWSArrayProcessStatus;
 
     property Condition: String;
 
     property Condition: String;
 +
   
 
     Parámetros de búsqueda usados para indicar los criterios de búsqueda de trámites.
 
     Parámetros de búsqueda usados para indicar los criterios de búsqueda de trámites.
  
 
==Tareas==
 
==Tareas==
 
  TGWSTaskStatus = (wsTaskCreated, wsTaskSended, wsTaskReceived, wsTaskResponsed);
 
  TGWSTaskStatus = (wsTaskCreated, wsTaskSended, wsTaskReceived, wsTaskResponsed);
 +
   
 
     Estados en los que se puede encontrar una tarea.
 
     Estados en los que se puede encontrar una tarea.
  
Línea 135: Línea 149:
 
     property FieldAllowedValues: TGWSListFieldAllowedValues;
 
     property FieldAllowedValues: TGWSListFieldAllowedValues;
 
     property Signature: TGSignature;
 
     property Signature: TGSignature;
 +
   
 
     Datos de una tarea. Incluye la información de los campos y los archivos adjuntos, así como la firma digital de la tarea.
 
     Datos de una tarea. Incluye la información de los campos y los archivos adjuntos, así como la firma digital de la tarea.
  
Línea 145: Línea 160:
 
     property DefinitionId: TGWSIdentifier;
 
     property DefinitionId: TGWSIdentifier;
 
     property AllowedValues: TGWSArrayValues;
 
     property AllowedValues: TGWSArrayValues;
 +
   
 
     Listado de valores permitidos para un campo.
 
     Listado de valores permitidos para un campo.
  
Línea 158: Línea 174:
 
     property RowsAllowedValues: TGWSListFieldAllowedValues;  
 
     property RowsAllowedValues: TGWSListFieldAllowedValues;  
 
     property Rows: TGWSArrayRows;
 
     property Rows: TGWSArrayRows;
 +
   
 
     Campo. Para facilitar la operación con este tipo, se ha añadido el atributo “tipo”, que también está disponible en la definición de campo. Si el campo es de tipo tabla, incluye la información de las filas de la tabla.
 
     Campo. Para facilitar la operación con este tipo, se ha añadido el atributo “tipo”, que también está disponible en la definición de campo. Si el campo es de tipo tabla, incluye la información de las filas de la tabla.
  
Línea 164: Línea 181:
 
  TGWSRow = class
 
  TGWSRow = class
 
     property FieldValues: TGWSArrayFieldValue;
 
     property FieldValues: TGWSArrayFieldValue;
 +
   
 
     Fila de campos tabla.
 
     Fila de campos tabla.
  
Línea 173: Línea 191:
 
     property NameFile: String;
 
     property NameFile: String;
 
     property AttachDate: TGWSSerializedDateTime;
 
     property AttachDate: TGWSSerializedDateTime;
 +
   
 
     Datos de un fichero adjunto a una tarea.
 
     Datos de un fichero adjunto a una tarea.
  
Línea 179: Línea 198:
 
  TGWSFile = class(TGWSRefFile)
 
  TGWSFile = class(TGWSRefFile)
 
     property Content: TByteDynArray;
 
     property Content: TByteDynArray;
 +
   
 
     Contenido completo de un fichero adjunto a una tarea.
 
     Contenido completo de un fichero adjunto a una tarea.
  
Línea 185: Línea 205:
 
     property Identifier: String read FIdentifier write FIdentifier;
 
     property Identifier: String read FIdentifier write FIdentifier;
 
     property Name: String read FName write FName;
 
     property Name: String read FName write FName;
 +
   
 
     Notificación pendiente en un trámite. Incluye el identificador de la tarea de notificación que está pendiente de acusar recibo y un nombre descriptivo para mostrar al usuario.
 
     Notificación pendiente en un trámite. Incluye el identificador de la tarea de notificación que está pendiente de acusar recibo y un nombre descriptivo para mostrar al usuario.
  
Línea 197: Línea 218:
 
     property FieldValues: TGWSArrayFieldValue;
 
     property FieldValues: TGWSArrayFieldValue;
 
     property FieldAllowedValues: TGWSListFieldAllowedValues;
 
     property FieldAllowedValues: TGWSListFieldAllowedValues;
 +
   
 
     Formulario de registro de un usuario. Incluye solo los campos adicionales. Los campos obligatorios (nombre, nombre completo, nif, correo electrónico), no están incluidos en el formulario. La definición de los campos de registro se describe en un fichero XML.
 
     Formulario de registro de un usuario. Incluye solo los campos adicionales. Los campos obligatorios (nombre, nombre completo, nif, correo electrónico), no están incluidos en el formulario. La definición de los campos de registro se describe en un fichero XML.
  
Línea 206: Línea 228:
 
     property EMail: String;
 
     property EMail: String;
 
     property IdOrganization;
 
     property IdOrganization;
 +
   
 
     Datos básicos de un usuario, se usa para listados de usuario.
 
     Datos básicos de un usuario, se usa para listados de usuario.
  
Línea 215: Línea 238:
 
  TGWSUser = class(TGWSRefUser)
 
  TGWSUser = class(TGWSRefUser)
 
     property RegistrationForm: TGWSRegistrationForm;
 
     property RegistrationForm: TGWSRegistrationForm;
 +
   
 
     Datos completos de un usuario, incluyendo los datos del formulario de registro.
 
     Datos completos de un usuario, incluyendo los datos del formulario de registro.
  
Línea 224: Línea 248:
 
     property Identifier: TGWSIdentifier;
 
     property Identifier: TGWSIdentifier;
 
     property Name: String read;
 
     property Name: String read;
  Datos de una organización. La organización permite agrupar los usuarios, de forma que los todos los usuarios individuales que pertenezcan a una organización tienen acceso a todos los trámites que haya iniciado cualquier miembro de la organización.
+
   
 +
    Datos de una organización. La organización permite agrupar los usuarios, de forma que los todos los usuarios individuales que pertenezcan a una organización tienen acceso a todos los trámites que haya iniciado cualquier miembro de la organización.
  
 
  TGWSArrayOrganizations = array of TGWSOrganization;
 
  TGWSArrayOrganizations = array of TGWSOrganization;
Línea 231: Línea 256:
 
     property Organizations: TGWSArrayOrganizations;
 
     property Organizations: TGWSArrayOrganizations;
 
   
 
   
=API de usuario=
+
=API de usuario=
  
 
=Api de administración=
 
=Api de administración=
  
 
=Códigos de error=
 
=Códigos de error=

Revisión del 08:11 6 abr 2010

Tipos

Basicos

TGArrayInteger = array of integer;
TGWSSerializedDateTime = String;
TGWSIdentifier = String;
TGSignature = TByteDynArray; 

   Array de bytes usado para enviar datos binarios (ficheros, firmas, etc.).

Errores

TGWSErrorCode = Integer;
TGWSFieldError = class
   property FieldDefinitionPath: String;
   property ErrorMessage: String;
   Descripción de error en un campo. Indica el campo afectado y el error correspondiente.
TGWSArrayFieldError = array of TGWSFieldError;
TGWSError = class
   property ErrorCode: TGWSErrorCode;
   property ErrorMessage: String;
   
   Error general.
TGWSErrorValidateTask = class(TGWSError)
   property FieldErrors: TGWSArrayFieldError;
   
   Error en la validación o envío de una tarea. Detalla los errores de los campos.

Procedimentos (definiciones)

TGWSFieldType = (ftDummy, ftBoolean, ftInteger, ftReal, ftString, ftMemo, ftDatetime, ftCurrency, ftTable);
   
   Tipos de campo.
TGWSFieldDefinition = class
   property Identifier: TGWSIdentifier;
   property LabelField: String;
   property FieldType: TGWSFieldType;
   property Section: String;
   property Visible: Boolean;
   property Editable: Boolean;
   property Required: Boolean;
   property FieldDefinitions: TGWSListFieldDefinition;
   
   Definición de campo. Si es un campo tabla, incluye las definiciones de las columnas.
TGWSArrayFieldDefinition = array of TGWSFieldDefinition;
TGWSListFieldDefinition = class
   property FieldDefinitions: TGWSArrayFieldDefinition; 
TGWSTaskType = (ttStart, ttSendDocumentation, ttRequirement, ttNotification, ttResponse);
   
   Tipos de tarea. 
   Todo proceso ha de tener al menos una tarea de inicio (ttStart). 
   Las tareas de envío de documentación (ttSendDocumentation) permiten añadir documentación a un trámite en cualquier momento.
   Las tareas de requerimiento se usan para solicitar la participación del interesado en algún momento del trámite, requiriendole para que aporte más documentación a un trámite, por medio de una tarea de respuesta (ttResponse).
   Las tareas de notificación sirven para informar al interesado de cualquier incidencia en el trámite. Se debe acusar recibo de este tipo de tareas para poder consultar el trámite.
TGWSTaskDefinition = class
   property Identifier: TGWSIdentifier;
   property NameTask: String;
   property LabelTask: String;
   property Description: String;
   property TaskType: TGWSTaskType;
   property FieldDefinitions: TGWSListFieldDefinition;
   
   Definición de tarea. Incluye las definiciones de campo.
TGWSArrayTaskDefinition = array of TGWSTaskDefinition;
TGWSRefProcedure = class
   property Identifier: TGWSIdentifier
   property NameProcedure: String
   property Description: String;
   property Group: String;
   
   Descripción abreviada del procedimento, que se usa obtener los datos fundamentales de un procedimento al cargar listados.
TGWSArrayRefProcedure = array of TGWSRefProcedure;
TGWSListRefProcedure = class
   property RefProcedures: TGWSArrayRefProcedure;
TGWSProcedure = class(TGWSRefProcedure)
   property TaskDefinitions: TGWSArrayTaskDefinition;
   
   Descripción completa del procedimiento.

Trámites

TGWSProcessStatus = (psCreated, psStarted, psFinished, psArchived, psDeleted, psAll);
   
   Estados en los que se puede encontrar un trámite.
TGWSArrayProcessStatus = array of TGWSProcessStatus;
TGWSRefProcess = class
   property Identifier: TGWSIdentifier;
   property RefProcedure: TGWSRefProcedure;
   property LabelProcess: String;
   property Status: TGWSProcessStatus;
   property CreateDate: TGWSSerializedDateTime;
   property StartDate: TGWSSerializedDateTime;
   property EndDate: TGWSSerializedDateTime;
   property TramitationStatus: String; 
   property TaskCount: Integer;
   property LastTaskName: String;
   property LastTaskDate: TGWSSerializedDateTime;
   property HasPendingTasks: Boolean read;
   
   Descripción abreviada de un trámite, usada para obtener los datos fundamentales de un trámite en listados.
TGWSArrayRefProcess = array of TGWSRefProcess;
TGWSListRefProcess = class
   property RefProcesses: TGWSArrayRefProcess;
TGWSProcess = class(TGWSRefProcess)
   property Tasks: TGWSArrayTasks read FTasks write FTasks;
   
   Datos completos del trámite, incluyendo las tareas que forman parte del mismo.
TGWSSearchProcessArg = class
   property Status: TGWSArrayProcessStatus;
   property Condition: String;
   
   Parámetros de búsqueda usados para indicar los criterios de búsqueda de trámites.

Tareas

TGWSTaskStatus = (wsTaskCreated, wsTaskSended, wsTaskReceived, wsTaskResponsed);
   
   Estados en los que se puede encontrar una tarea.
TGWSTask = class
   property Identifier: TGWSIdentifier;
   property DefinitionId: TGWSIdentifier;
   property Status: TGWSTaskStatus;
   property CreateOrReceiveDate: TGWSSerializedDateTime;
   property SendOrResponseDate: TGWSSerializedDateTime;
   property Files: TGWSArrayRefFiles;
   property FieldValues: TGWSArrayFieldValue;
   property FieldAllowedValues: TGWSListFieldAllowedValues;
   property Signature: TGSignature;
   
   Datos de una tarea. Incluye la información de los campos y los archivos adjuntos, así como la firma digital de la tarea.
TGWSArrayTasks = array of TGWSTask;

Campos

TGWSArrayValues = array of String;
TGWSFieldAllowedValues = class
   property DefinitionId: TGWSIdentifier;
   property AllowedValues: TGWSArrayValues;
   
   Listado de valores permitidos para un campo.
TGWSArrayFieldAllowedValues = array of TGWSFieldAllowedValues;
TGWSListFieldAllowedValues = class
   property FieldAllowedValues: TGWSArrayFieldAllowedValues;
TGWSFieldValue = class
   property DefinitionId: TGWSIdentifier;
   property FieldType: TGWSFieldType;
   property Value: String read FValue write FValue;
   property RowsAllowedValues: TGWSListFieldAllowedValues; 
   property Rows: TGWSArrayRows;
   
   Campo. Para facilitar la operación con este tipo, se ha añadido el atributo “tipo”, que también está disponible en la definición de campo. Si el campo es de tipo tabla, incluye la información de las filas de la tabla.
TGWSArrayFieldValue = array of TGWSFieldValue;
TGWSRow = class
   property FieldValues: TGWSArrayFieldValue;
   
   Fila de campos tabla.
TGWSArrayRows = array of TGWSRow;

Ficheros

TGWSRefFile = class
   property Identifier: TGWSIdentifier;
   property NameFile: String;
   property AttachDate: TGWSSerializedDateTime;
   
   Datos de un fichero adjunto a una tarea.
TGWSArrayRefFiles = array of TGWSRefFile;
TGWSFile = class(TGWSRefFile)
   property Content: TByteDynArray;
   
   Contenido completo de un fichero adjunto a una tarea.

Notificaciones

TGWSNotification = class
   property Identifier: String read FIdentifier write FIdentifier;
   property Name: String read FName write FName;
   
   Notificación pendiente en un trámite. Incluye el identificador de la tarea de notificación que está pendiente de acusar recibo y un nombre descriptivo para mostrar al usuario.
TGWSArrayNotifications = array of TGWSNotification;
TGWSListNotifications = class(TRemotable)
   property Notifications: TGWSArrayNotifications read FNotifications write FNotifications;

Usuarios

TGWSRegistrationForm = class
   property FieldDefinitions: TGWSArrayFieldDefinition;
   property FieldValues: TGWSArrayFieldValue;
   property FieldAllowedValues: TGWSListFieldAllowedValues;
   
   Formulario de registro de un usuario. Incluye solo los campos adicionales. Los campos obligatorios (nombre, nombre completo, nif, correo electrónico), no están incluidos en el formulario. La definición de los campos de registro se describe en un fichero XML.
TGWSRefUser = class
   property Identifier: TGWSIdentifier;
   property UserName: String;
   property FullName: String;
   property Nif: String;
   property EMail: String;
   property IdOrganization;
   
   Datos básicos de un usuario, se usa para listados de usuario.
TGWSArrayRefUsers = array of TGWSRefUser;
TGWSListRefUsers = class
   property RefUsers: TGWSArrayRefUsers;
TGWSUser = class(TGWSRefUser)
   property RegistrationForm: TGWSRegistrationForm;
   
   Datos completos de un usuario, incluyendo los datos del formulario de registro.

TGWSSearchUsersArg = class

   property Condition: STring;

Organizaciones

TGWSOrganization = class
   property Identifier: TGWSIdentifier;
   property Name: String read;
   
   Datos de una organización. La organización permite agrupar los usuarios, de forma que los todos los usuarios individuales que pertenezcan a una organización tienen acceso a todos los trámites que haya iniciado cualquier miembro de la organización.
TGWSArrayOrganizations = array of TGWSOrganization;
TGWSListOrganizations = class
   property Organizations: TGWSArrayOrganizations;

API de usuario

Api de administración

Códigos de error