Ver Mensaje Individual
  #6  
Antiguo 07-02-2017
Avatar de apicito
apicito apicito is offline
Miembro
 
Registrado: may 2003
Ubicación: Ourense
Posts: 341
Reputación: 22
apicito Va por buen camino
Este valor lo recibo como respuesta a una petición SOAP y se carga en una TRemotable con esta definición:
Código:
  MetadatosTipo = class(TRemotable)
  private
    FticketID: ticketID;
    FMensajeID: IDGlobalTipo;
    FEstado: EstadoTipo;
    FEmisor: TipoNIF;
    FNombreEmisor: NombreEmisorTipo;
    FNombreEmisor_Specified: boolean;
    FTitular: TipoNIF;
    FNotificado: TipoNIF;
    FTipoMensajeria: TipoMensajeTipo;
    FActoNotificado: ActoNotificadoTipo;
    FActoNotificado_Specified: boolean;
    FAsunto: AsuntoTipo;
    FCuerpo: CuerpoTipo;
    FCuerpo_Specified: boolean;
    FDetalles: DetallesMensajeTipo;
    FDetalles_Specified: boolean;
    FNombreFicheroAdjunto: NombreFicheroAdjuntoTipo;
    FNombreFicheroAdjunto_Specified: boolean;
    FFerchaPuestaDisposicion: TXSDateTime;
    FEventoRecogida: InformacionEventoTipo;
    FEventoRecogida_Specified: boolean;
    FDatosRecogida: DatosRecogidaTipo;
    FDatosRecogida_Specified: boolean;
    procedure SetNombreEmisor(Index: Integer; const ANombreEmisorTipo: NombreEmisorTipo);
    function  NombreEmisor_Specified(Index: Integer): boolean;
    procedure SetActoNotificado(Index: Integer; const AActoNotificadoTipo: ActoNotificadoTipo);
    function  ActoNotificado_Specified(Index: Integer): boolean;
    procedure SetCuerpo(Index: Integer; const ACuerpoTipo: CuerpoTipo);
    function  Cuerpo_Specified(Index: Integer): boolean;
    procedure SetDetalles(Index: Integer; const ADetallesMensajeTipo: DetallesMensajeTipo);
    function  Detalles_Specified(Index: Integer): boolean;
    procedure SetNombreFicheroAdjunto(Index: Integer; const ANombreFicheroAdjuntoTipo: NombreFicheroAdjuntoTipo);
    function  NombreFicheroAdjunto_Specified(Index: Integer): boolean;
    procedure SetEventoRecogida(Index: Integer; const AInformacionEventoTipo: InformacionEventoTipo);
    function  EventoRecogida_Specified(Index: Integer): boolean;
    procedure SetDatosRecogida(Index: Integer; const ADatosRecogidaTipo: DatosRecogidaTipo);
    function  DatosRecogida_Specified(Index: Integer): boolean;
  public
    destructor Destroy; override;
  published
    property ticketID:                ticketID                  Index (IS_ATTR) read FticketID write FticketID;
    property MensajeID:               IDGlobalTipo              read FMensajeID write FMensajeID;
    property Estado:                  EstadoTipo                read FEstado write FEstado;
    property Emisor:                  TipoNIF                   read FEmisor write FEmisor;
    property NombreEmisor:            NombreEmisorTipo          Index (IS_OPTN) read FNombreEmisor write SetNombreEmisor stored NombreEmisor_Specified;
    property Titular:                 TipoNIF                   read FTitular write FTitular;
    property Notificado:              TipoNIF                   read FNotificado write FNotificado;
    property TipoMensajeria:          TipoMensajeTipo           read FTipoMensajeria write FTipoMensajeria;
    property ActoNotificado:          ActoNotificadoTipo        Index (IS_OPTN) read FActoNotificado write SetActoNotificado stored ActoNotificado_Specified;
    property Asunto:                  AsuntoTipo                read FAsunto write FAsunto;
    property Cuerpo:                  CuerpoTipo                Index (IS_OPTN) read FCuerpo write SetCuerpo stored Cuerpo_Specified;
    property Detalles:                DetallesMensajeTipo       Index (IS_OPTN) read FDetalles write SetDetalles stored Detalles_Specified;
    property NombreFicheroAdjunto:    NombreFicheroAdjuntoTipo  Index (IS_OPTN) read FNombreFicheroAdjunto write SetNombreFicheroAdjunto stored NombreFicheroAdjunto_Specified;
    property FerchaPuestaDisposicion: TXSDateTime               read FFerchaPuestaDisposicion write FFerchaPuestaDisposicion;
    property EventoRecogida:          InformacionEventoTipo     Index (IS_OPTN) read FEventoRecogida write SetEventoRecogida stored EventoRecogida_Specified;
    property DatosRecogida:           DatosRecogidaTipo         Index (IS_OPTN) read FDatosRecogida write SetDatosRecogida stored DatosRecogida_Specified;
  end;
y EstadoTipo se define como:
Código:
  EstadoTipo = (NO_LEIDA, ACEPTADA, RECHAZADA, EXPIRADA);
Al intentar leer los datos de la respuesta en cuando no sé como acceder al valor que trae.

Como ves en la imagen del otro post me ofrece los posibles valores de EstadoTipo.

Y si intento
Código:
memo.Lines.Add('Estado '+result.Metadatos[i].Estado);
me da el error de compilación que puse en el otro post.

De hecho, si lo vuelco en un xml obtengo su valor:
Código:
<tns:RespuestaConsulta xmlns:ape="urn:correos.es:ape.sne.datos.1.0" 
                       xmlns:ds="http://www.w3.org/2000/09/xmldsig#" 
					   xmlns:tns="urn:correos.es:ape.sne.ws.accesobuzon.1.0">
	<tns:Paginacion>
		<tns:pagina>1</tns:pagina>
		<tns:totalPaginas>2</tns:totalPaginas>
		<tns:numeroElementos>30</tns:numeroElementos>
	</tns:Paginacion>
	<tns:Metadatos tns:ticketID="148620">
		<tns:MensajeID>1485796663920-1-0</tns:MensajeID>
		<tns:Estado>NO_LEIDA</tns:Estado>
		<tns:Emisor>28972577Y</tns:Emisor>
		<tns:NombreEmisor>Servicio de Notificaciones Electrónicas SNE</tns:NombreEmisor>
		<tns:Titular>P3208600A</tns:Titular>
		<tns:Notificado>P3208600A</tns:Notificado>
		<tns:TipoMensajeria>NOTIFICACION</tns:TipoMensajeria>
		<tns:ActoNotificado>PRUEBAS</tns:ActoNotificado>
		<tns:Asunto>Prueba Notificacion</tns:Asunto>
		<tns:Cuerpo>esto es una prueba de Notificacion WS</tns:Cuerpo>
		<tns:Detalles />
		<tns:FerchaPuestaDisposicion>2017-01-30T18:18:04+01:00</tns:FerchaPuestaDisposicion>
	</tns:Metadatos>
</tns:RespuestaConsulta>

Última edición por apicito fecha: 07-02-2017 a las 20:27:38.
Responder Con Cita