|
Creo que no se puede hacer lookup con arrays de estructuras de datos. En su lugar puedes utilizar la función C bsearch, que realiza la búsqueda comparando los elementos con una función que tu defines: * * Necesito qc2le por las funciones C que utiliza el programa * H bnddir('QC2LE') D bsearch PR * extproc('bsearch') D Buscar * value D base * value D numElem 10U 0 value D tamElem 10U 0 value D fnComparar * procptr value
P B export D PI 10I 0 D elemento1 10U 0 const D elemento2 10U 0 const /free select ; when elemento1 < elemento2 ; return -1 ; when elemento1 > elemento2 ; return 1 ; other ; return 0 ; endsl ; /end-free P listaDin_compararUns... En tu caso, elemento1 y elemento2 serán DS's (likeds(Arrayestruc) o likeds(Dades2)) Por último, para que la búsqueda funcione, Arrayestruc ha de estar ordenada según los criterios de la función de comparar que crees. Si inicialmente no es así puedes usar la función C qsort para ordenarla: D qsort PR extproc('qsort') D base * value D numElem 10U 0 value D tamElem 10U 0 value D fnComparar * procptr value Todo esto funciona en V5R2 y posteriores. Puede que también en versiones anteriores, pero no lo he probado. Espero que te sirva.
Saludos.
Fernando Pérez Cerámica Saloni. Dpto. Auditoría y Organización [EMAIL PROTECTED] escribió:
|
begin:vcard fn;quoted-printable:Fernando P=C3=A9rez n;quoted-printable:P=C3=A9rez;Fernando org;quoted-printable:;Auditor=C3=ADa y Organizaci=C3=B3n email;internet:[EMAIL PROTECTED] tel;work:Ext. 627 x-mozilla-html:TRUE version:2.1 end:vcard
__________________________________________________ Forum.HELP400 es un servicio m&#225;s de NEWS/400. &#169; Publicaciones Help400, S.L. - Todos los derechos reservados http://www.help400.es _____________________________________________________ Para darte de baja visita la siguente URL: http://listas.combios.es/mailman/listinfo/forum.help400

