[ei-exstudents] RE: [ei-exstudents] Ayuda con un método de programación

  • From: Angel Manuel Martínez Domingo <amu_zafrilla@xxxxxxxxxxx>
  • To: <ei-exstudents@xxxxxxxxxxxxx>
  • Date: Wed, 16 Jan 2008 13:43:05 +0100

Hola Javi :)

Un algoritmo como tal no se me ocurre, pero dependiendo del lenguaje de 
programación que estés usando, podrías usar la introspección y/o reflexión. 
Seguro que sabes a lo que me refiero: 
java, Javascript, Flex, ActionScript... todos tienen un api para invocar o 
acceder dinánicamente a métodos y/o variables de un objeto no tipado.

No recuerdo cómo era en Java, pero si tu lenguaje la implementa (en google 
estará, supongo), puedes hacer algo así como...

Boolean existeVar = (ActiveDocument.Variables["nombreVariable"] != null);

igual lanza Exception si no encuentra la variable en el objeto, pero 
encapsulando en un try-catch ya tendrías un apaño

Así a bote pronto no se me ocurre nada más óptimo :S

suerte!

Date: Wed, 16 Jan 2008 13:35:24 +0100
From: paxet83@xxxxxxxxx
To: ei-exstudents@xxxxxxxxxxxxx
Subject: [ei-exstudents] Ayuda con un método de programación

Tengo un método tal que así:

Private Function comprobarExisteVar(nombreVariable As String) As Boolean

    For Each aVar In ActiveDocument.Variables
        If aVar.Name = nombreVariable Then
            iNum = 
aVar.Index
            Exit For
        End If
    Next aVar
    If iNum = 0 Then
        comprobarExisteVar = False
    Else
        comprobarExisteVar = True
    End If
    
End Function





Lo que hace es comprobar si la variable con nombreVariable se encuentra en el 
vector ActiveDocument.Variables, pero este método lo hace comprobando de una en 
una y por supuesto que eso es muy muy poco eficiente (o nada más bien).


¿Qué tipo de búsqueda podría hacer y cómo?

Es lo único que nunca se me dio bien de EDA XD

¡Ta lue!


_________________________________________________________________
Tecnología, moda, motor, viajes,…suscríbete a nuestros boletines para estar 
siempre a la última
http://newsletters.msn.com/hm/maintenanceeses.asp?L=ES&C=ES&P=WCMaintenance&Brand=WL&RU=http%3a%2f%2fmail.live.com

Other related posts: