<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
    <title></title>
  </head>
  <body text="#000000" bgcolor="#ffffff">
    Hola Alejandro.<br>
    <br>
    <br>
    El 01/02/11 11:07, Alejandro Lorenzo (Genea Consultores) escribi&oacute;:
    <blockquote cite="mid:4D47DB61.3070108@geneaconsultores.com"
      type="cite">
      <meta http-equiv="content-type" content="text/html;
        charset=ISO-8859-1">
      Hola,<br>
      <br>
      Estoy comenzando con gvSIG, concretamente con la calculadora de
      campos. <br>
      <br>
      Me encuentro en que la forma de trabajar con expresiones
      avanzadas, es en Phyton, y no conozco este lenguaje. <br>
      <br>
      Intent&eacute; convertir mis expresiones de vb a Phyton. En la p&aacute;gina <a
        moz-do-not-send="true" class="moz-txt-link-freetext"
        href="http://vb2py.sourceforge.net/index.html">http://vb2py.sourceforge.net/index.html</a>,
      existe un convertidor de c&oacute;digo de vb a Phyton y este es el
      resultado:<br>
      <br>
      <blockquote><small>prueba = str()</small><br>
        <br>
        <small>if [EMPRESA_CO] == 'XXX' and [Ejecutado] == 'SI':</small><br>
        <small>&nbsp; </small><br>
        <small>&nbsp;[prueba] = 'Correcto'</small><br>
        <small>&nbsp;</small><br>
        <small>elif&nbsp; [EMPRESA_CO] == 'XXX' and [Ejecutado] == 'NO':</small><br>
        <small>&nbsp;&nbsp;&nbsp; </small><br>
        <small>[prueba] = 'Inorrecto'</small><br>
        <small>&nbsp;</small><br>
        <small>else:</small><br>
        <small>&nbsp;&nbsp;&nbsp; </small><br>
        <small>prueba = '_'</small><br>
      </blockquote>
      Genero el fichero .py, pero no funciona.<br>
    </blockquote>
    Me da la impresi&oacute;n que lo que te est&aacute;s equivocando es en la forma de
    aplicar la expresi&oacute;n.<br>
    <br>
    Prueba con esto:<br>
    <br>
    def miPrueba(EMPRESA_CO,Ejecutado):<br>
    &nbsp; prueba = '_'<br>
    &nbsp; if EMPRESA_CO == 'XXX' and Ejecutado == 'SI':<br>
    &nbsp;&nbsp;&nbsp; prueba = 'Correcto'<br>
    &nbsp; elif EMPRESA_CO == 'XXX' and Ejecutado == 'NO':<br>
    &nbsp;&nbsp;&nbsp; prueba = 'Inorrecto'<br>
    &nbsp; return prueba<br>
    &nbsp;<br>
    miPrueba([EMPRESA_CO],[Ejecutado])<br>
    <br>
    <br>
    Nota: MUUUCHO OJO con los sangrados, en python (bueno, realmente es
    jython ya que es el port de pyhton a java) sirven apara delimitar la
    expresiones (no hay "end if" ni llaves "{}")<br>
    <br>
    Como ves, he definido una funci&oacute;n "insitu" que me ha ayudado.
    Tambi&eacute;n puedes definir varias funciones y meterlas en un fichero
    ".py" y cargarlas desde la pesta&ntilde;a "avanzado" de la calculadora.<br>
    <br>
    Siempre tienes que tener en cuenta que, la expresi&oacute;n de la
    calculadora, espera que el resultado sea un valor.<br>
    <br>
    Si quieres saber m&aacute;s, mira la documentaci&oacute;n de python de la versi&oacute;n
    de gvSIG (creo que es la 2.4.2) que la puedes encontrar aqu&iacute;:<br>
    <br>
    <a class="moz-txt-link-freetext" href="http://docs.python.org/release/2.4.2/">http://docs.python.org/release/2.4.2/</a><br>
    <br>
    <br>
    <blockquote cite="mid:4D47DB61.3070108@geneaconsultores.com"
      type="cite"> <br>
      Lo que me gustar&iacute;a ser&iacute;a conseguir una expresi&oacute;n condicional que
      evaluase dos, o m&aacute;s campos, y en funci&oacute;n del valor de los
      registros, rellenar un nuevo campo con los valores asignados a
      cada una de las combinaciones anteriores.<br>
      <br>
      Muchas gracias <br>
      <br>
      Alejandro
      <pre wrap="">
<fieldset class="mimeAttachmentHeader"></fieldset>
_______________________________________________
gvSIG_usuarios mailing list
<a class="moz-txt-link-abbreviated" href="mailto:gvSIG_usuarios@listserv.gva.es">gvSIG_usuarios@listserv.gva.es</a>

Para ver hist&oacute;rico de mensajes, editar sus preferencias de usuario o darse de baja en esta lista, acuda a la siguiente direcci&oacute;n:

<a class="moz-txt-link-freetext" href="http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_usuarios">http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_usuarios</a>
</pre>
    </blockquote>
    <br>
    Espero que te sea de ayuda.<br>
    <br>
    Un Saludo.<br>
    Chema.<br>
    <br>
    <pre class="moz-signature" cols="72">-- 
Jose Manuel Viv&oacute; Arnal
DiSiD Technologies S.L. (<a class="moz-txt-link-freetext" href="http://www.disid.com">http://www.disid.com</a>)
</pre>
  </body>
</html>