Fernando, me interesa lo del memcpy, los datos que tu dices que se requieren, 
los tengo, por otra api de propiedad de la empresa. Lo referente a que funciona 
por el fromfile es igual al input, es correcto, el ovrdbf se realiza para otras 
necesidades del programa, pero lo que deseo realmente el asignar los valores a 
la ds de una forma dinámica.

  ----- Original Message ----- 
  From: Fernando Pérez 
  To: forum.help400 
  Sent: Tuesday, October 07, 2008 2:11 AM
  Subject: Re: Asignar un valor a una ds


  Si te funciona debe ser porque el fichero input tiene la misma estructura que 
el fichero Fromfile, ¿Verdad? De no ser así, no creo que funcionara.

  Creo que no hay una forma fácil de hacer lo que comentas. Una manera 
(bastante costosa) de conseguirlo que se me ocurre sería usar un dspffd del 
fichero para tener su lista de campos (que también serán los de la DS). 
Aprovechando la información de dspffd, que también incluye la longitud del 
campo en bytes y su posición inicial, podrías realizar una copia de la memoria 
del parámetro a la memoria donde se guarda el campo de la DS (con la función C 
memcpy. Es fácil de usar. Solo hay que definir el prototipo de la función, que 
te puedo pasar si lo necesitas).

  Como ya te digo, es una solución factible pero algo rebuscada. Quizá si 
dieras más detalles de lo que quieres hacer podríamos encontrar una solución 
más adecuada.


  Saludos.

  Fernando Pérez  

  Cerámica Saloni. Dpto. Auditoría y Organización



  Jaime Villa Torres escribió: 
    Dentro de las tantas necesidades que se nos presenta a diario, pongo a su 
consideración el siguiente problema.

    Tengo un programa de la siguiente manera
    Le ingresan los parametros.
    FromFile         10
    FromLib          10

    Dsxxxxxxxx     e Ds                  Extname(input) inz

    CmdW = 'OVRDBF FILE(INPUT) TOFILE(' +
              %trim(FromLib)                             +
              '/'                                                 +
              %trim(FromFile)                           +
              ')'                                
    Callp     Cmd(CmdW:%len(%trim(CmdW)))        

    CFBANK =  1 
    CFBRCH =  0 , estos dos campos pertenecen a la prueba del archivo que estoy 
probando.

    Como se encuentran dentro del programa, toman el valor que se les está 
asignado y funciona perfecto.

    El caso que deseo resolver es el siguiente: 

    Poder entrar como parametros el nombre de estas variables y sus valores y 
asignarselas a la ds.

    Espero haberme hecho entender, y si es asi, recibir de ustedes una posible 
solución.

    Gracias de antemano

----------------------------------------------------------------------------
__________________________________________________
Forum.HELP400 es un servicio más de NEWS/400.
© 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

------------------------------------------------------------------------------


  __________________________________________________
  Forum.HELP400 es un servicio más de NEWS/400.
  © 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
__________________________________________________
Forum.HELP400 es un servicio más de NEWS/400.
© 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

Responder a