Hi,
>> You can even create a simple macro:
>>
>> #xtranslate FIELDGETBYNAME( <name> ) => FIELDGET( FIELDPOS( <name> ) )
>>
>> and use:
>>
>> RETURN FIELDGETBYNAME( name )
>
> Compare the ease of writing and understanding:
>
> 1. ALIAS1->&("NAME1") + = ALIAS2->&("NAME2") + something
> 2. ALIAS1->(FIELDPUTBYNAME( "NAME1", FIELDGETBYNAME("NAME1") +
> ALIAS2->(FIELDGETBYNAME( "NAME2")) + something ))
>
> IMO first version is still better
Aside from subjective matters: First version is less
efficient. If you don't mind it, it's fine.
Though in your first example you cited a quite
different situation (and that was the actual point
of your question), so I'm not sure what you really
want to achieve.
> The issue arose from the fact that it works in the PRG, but in the
> macro and the HRB does not work (although the HRB compile as usual
> PRG)
Okay, so there is another disadvantage of macro
expansion.
Me personally never use macro expansion except
very few selected places (indexes and custom
filter assembly).
Anyway as someone pointed, what you want is not
Clipper compatible. I'm almost sure the double
macro expansion + codeblock creation and
evaluation is unnecessary, so IMO you just have
to clean it and it will work.
Brgds,
Viktor
_______________________________________________
Harbour mailing list (attachment size limit: 40KB)
[email protected]
http://lists.harbour-project.org/mailman/listinfo/harbour