Hi @xizidememeda,
As mentioned by KurtBremser, two runs of the same program on the same input datasets and raw data files can give different results because (1) certain functions or procedures do so or because of (2) changes in the environment:
Less obvious than date/time-dependent or random functions are changes of the observation order. In particular, PROC SQL can possibly deliver results in different orders if not otherwise specified. Among other things, observation order can have an impact on rounding errors in calculations (e.g., by PROC MEANS), which in turn can change the results of comparisons ("if a>b ...").
The environment includes (in)format and function definitions, macros called, global macro variables, system options (e.g. SORTEQUALS), environment variables (e.g. SASAUTOS), external files, the SAS software itself (e.g. updates or hot fixes), other software involved, the operating system and programs running in parallel.
If I had to investigate this and no changes in the environment were known, my first step would be a thorough comparison of the log files. Needless to say, there must be no errors etc. Has the documented number of observations or variables changed anywhere? If not, I would pick one particular value which has changed significantly and trace it back meticulously all the way to the input data.
... View more