[Isis-users] Internet Explorer y la ele geminada

spinaker spinaker at adinet.com.uy
Tue Oct 23 15:56:21 CEST 2012


Maribel

proc  = procedure
es una función del MX que puede usarte tanto como parámetro de la línea 
de comandos
*mx  base proc=   proc= ...*

como una función de formato: *pft=v10,x2,v888/proc(<formato>),... etc
*
Cuando proc se usa en la liinea del MX entonces se escribe con el _signo 
de igual_ = *  proc=*
si se usa dentro de un formato, entonces va con _paréntesis _y allí 
dentro se ponen las instrucciones
*proc('d9','<9>', ... )*

Es posible concatenar una serie de proc  donde la salida de un proc 
sirve como entrada al siguiente
Si los proc  borran campos, entonces deben ser las primeras 
instrucciones que se dan

En tu caso lo que debes hacer en tu formato,  es poner lo siguiente al 
COMIENZO del formato
-------------------
proc(  ( if p(v8000) then '<8000>',v680,'</8000>') fi )
proc('Gela,8000')
  ... a continuación siguen las instrucciones que tenias antes

Lo que hace este proc es
a) crear un campo virtual  v8000, que solo tiene existencia en el ámbito 
de ese formato para ese registro
b) a ese campo v8000 le aplica el gizmo=ela

ahora puedes usar el campo v8000 como cualquier otro campo
el gizmo se le aplica a ese campo "inventado" porque si se lo aplicaras 
al v680, entonces quedaría modificado para todo el resto del registros
si miras la sintaxis del MX, veras que los gizmos se ejecutan antes de 
los procs, y al final se ejecuta el PFT

Otra: es posible insertar en una cadena de comandos, gizmos, joins, 
procs, y todos los parámetros que se precisen, hasta un máximo de 1040 
parámetros, pero la ejecución se hará en el orden que se establece en la 
sintaxis

Saludos
Ernesto Spinak






El 23/10/2012 5:32, Maribel Cuadrado escribió:
>
> Ernesto,
>
> Entiendo el concepto pero no acabo de saber cómo llevarlo a cabo.
> He declarado en el bases.def mi gizmo.
> He intentado declararlo en el formato pero creo que no lo coloco 
> correctamente, me da un error de expresión demasiado larga.
> Lo que no acabo de entender es cómo se crea ese campo virtual 8000.
>
> Agradecería más ayuda al respecto.
>
> (if p(v650) then '<a 
> href="/cgi-bin/wxis.exe/iah/scripts/?IsisScript=iah.xis&lang=es&base=' 
> ,v5003[1],'&nextAction=lnk&exprSearch=',*s(mhu,v8000,mpl), 
> *'&indexSearch=MA_">',v650'</a>',if iocc<>nocc(v650) then ' ; ' fi 
> fi),'</td>'
>
>
> Maribel Cuadrado
>
> Universitat Autònoma de Barcelona
>
>
> Al 22/10/2012 15:43, En/na spinaker ha escrit:
>> Maribel
>>
>> Es posible usar un gizmo dentro de un formato con la instrucción    
>> proc(  G<gizmo_mf>[,<taglist>]  )
>>
>> para eso debes declarar en el <bases>.def el gizmo y activarlo en el 
>> formato
>> sucede que si aplicas el gizmo al campo 680, entonces va a 
>> modificarlo en todas las instancias que aparece
>> de modo que el truco sería procesar ese campo con otro nombre
>> por ejemplo, al comienzo del formato pondrias
>>
>> proc(  ( if p(v8000) then '<8000>',v680,'</8000>') fi )
>> proc('Gela,8000')
>>
>> entonces en la expresión
>> exprSearch=',s(mhu,8000,mpl), '&indexSearch=MA_">',v650'</a>',if iocc<>nocc(v650) then ' ; '
>> Más o menos esa es la idea que yo intentaría, aunque pueden haber 
>> soluciones más elegantes
>>
>> Saludos
>> Ernesto Spinak
>>

-- 
   .^.                                .^.
   ( )                                ( )
   ===                                ===
  =[=]================================[=]=
   | |  Ernesto Spinak                | |
   | |  spinaker at adinet.com.uy        | |
   | |  Montevideo, Uruguay           | |
   | |  tel/fax  (598) 2622-3352      | |
   | |  celular  (598) 99612238      | |
  =[=]================================[=]=
   ===                                ===
   ( )                                ( )
    V                                  V

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.iccisis.org/pipermail/isis-users/attachments/20121023/f9ee8303/attachment.html>


More information about the isis-users mailing list