Hi,
At work, we have several SAS environments for development, testing...
They are all SAS 9.4 that are hosted on similar virtual machines on the same
physical unit (AIX P8).
We have a code snippet that shows a different behaviour on the testing environment.
It seems that the findw function produces different results from one environment to the other.
%let indice=%sysfunc(findw(H B N F FU FZ FE,&taxe®.,' ',E));
Testing with a usecase where taxe=B and reg is void works fine in dev, but when run on the test env, the following error occurs
(it's in french, sorry - "est résolue" mean "is resolved") :
SYMBOLGEN: La macro-variable TAXE est résolue en B SYMBOLGEN: La macro-variable REG est résolue en MLOGIC(FDL_APP_MAC_IHM_TAB_IFP) : %LET (le nom de la variable est REGINT) SYMBOLGEN: La macro-variable INDICE est résolue en . ERROR: A character operand was found in the %EVAL function or %IF condition where a numeric operand is required. The condition was: . ERROR: Argument 2 to macro function %SCAN is not a number. ERROR: The macro FDL_APP_MAC_IHM_TAB_IFP will stop executing.
Does the behaviour of the findw function depend on some settings that could have been altered ?
Thanks in advance for your help.
After a restart, the problem is solved.
After a restart, the problem is solved.
Catch the best of SAS Innovate 2025 — anytime, anywhere. Stream powerful keynotes, real-world demos, and game-changing insights from the world’s leading data and AI minds.
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.