Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-02-2017
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 15
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Podes usar este truco: Ayudante para tipos enumerados

Código PHP:
var
  
sstring;
begin
  s 
:= Enum<EstadoTipo>.ValueName(result.Metadatos[i].Estado);
end

Última edición por AgustinOrtu fecha: 07-02-2017 a las 23:46:31.
Responder Con Cita
  #2  
Antiguo 07-02-2017
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Para versiones mas antiguas de Delphi, otra opcion es:
Código Delphi [-]
uses TypInfo;
...
function StateName( const Estado: EstadoTipo ): string;
begin
  Result := GetEnumName( TypeInfo( EstadoTipo ), Ord( Estado ) );
end;

Uso:
Código Delphi [-]
...
  Estado := StateName( result.Metadatos[i].Estado );

  // o de forma directa: 
  Estado := GetEnumName( TypeInfo( EstadoTipo ), Ord( result.Metadatos[i].Estado ) );

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 08-02-2017 a las 00:18:54. Razón: agregar opción
Responder Con Cita
  #3  
Antiguo 08-02-2017
Avatar de apicito
apicito apicito is offline
Miembro
 
Registrado: may 2003
Ubicación: Ourense
Posts: 341
Poder: 22
apicito Va por buen camino
Gracias [AgustinOrtu] y ecfisa.
Al final é optado por la solución de ecfisa:
Código:
uses TypInfo;
...
memo.Lines.Add('Estado '+GetEnumName( TypeInfo( EstadoTipo ), Ord( result.Metadatos[i].Estado )));
Responder Con Cita
  #4  
Antiguo 08-02-2017
Avatar de apicito
apicito apicito is offline
Miembro
 
Registrado: may 2003
Ubicación: Ourense
Posts: 341
Poder: 22
apicito Va por buen camino
Abusando de vuestra paciencia, aprovecho que ya está en el post #6 de este hilo la definición del TRemotable y el xml que se me devuelve para hacer otra pregunta.
Si el xml me devuelve el valor del TicketID en esta etiqueta:
Código:
	<tns:Metadatos tns:ticketID="148620">
		<tns:MensajeID>1485796663920-1-0</tns:MensajeID>
y está definido en el TRemotable como:
Código:
  MetadatosTipo = class(TRemotable)
  private
    FticketID: ticketID;
  ....
  published
    property ticketID:                ticketID                  Index (IS_ATTR) read FticketID write FticketID;
Como puedio obtener el valor del TicketID?.
Por que a pesar de que el IDE me lo sugiere como uno de los miembros de result.Metadatos[i], si hago:
Código:
memo.Lines.Add('ticketID '+result.Metadatos[i].ticketID);
me apareceen blanco.
Tengo que hacer algo distinto al estar declarado com IS_ATTR?.
Un saludo.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
constantes temporales Crandel Varios 11 17-01-2007 00:53:02
Constantes o uso de Dominios Abel Garcia Firebird e Interbase 1 10-10-2006 16:15:29
variables y constantes SaGuMa Varios 13 03-10-2006 16:18:03
Def. de constantes - Casting Mariana OOP 3 21-10-2005 19:24:23
constantes globales acrophet Varios 3 18-09-2003 13:51:45


La franja horaria es GMT +2. Ahora son las 04:37:29.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi