Sri Lankan has a funny system. It will accept miles if you travel on SQ, UAL, but not the other way round.
So if you travel on Sri Lankan you can only get miles on Sri Lankan or Emirates (I think).
But if you travel on any others such as SQ,UA, etc you can get miles on Sri Lankan.
Sri Lankan is kind of like a step childof emirates - you get some benefits but not all :-)
The frequent flyer program (skywards) I believe belongs to Emirates actually and Sri Lankan is given the privilege of its passengers using the same program.