Source available doesn't mean that you can't do anything with the code, it usually means that there are limitations (e.g. sharing it) with what you can do with it.
There are a lot of cases where "source available" expects you to modify the code and even share patches with others. A popular example nowadays would be Unreal Engine 4, but it isn't anything new - Borland's OWL was distributed as source code and you need a license to use it (it is part of C++ compilers so any of their compilers would provide a license), but over the decades there have been improvements made by its users in the form of OWLNext that is meant to be installed "on top" of OWL (ie. wont work by itself).
OK, so the reason you are interested in this is for the ability to write, share and use patches that can be used by those who pay for a license to the code, to be able to add features without having to rely/wait for the vendor to do so?
Yes, while it is certainly worse than full Free Software from a community perspective, it is still much better than closed source commercial software since you are at least in control - even if the developer shuts down or abandons the project, you are still able to fix bugs and improve the program (you or anyone else who decides to distribute patches - assuming the license doesn't explicitly forbid that, but it'd be pointless to do that IMO, not that some didn't try it). And if you ever decide to move somewhere else, you can still get your data out of the program (modify it to dump to another format or just use the code to make your own converter) so you're not locked in either.
There are a lot of cases where "source available" expects you to modify the code and even share patches with others. A popular example nowadays would be Unreal Engine 4, but it isn't anything new - Borland's OWL was distributed as source code and you need a license to use it (it is part of C++ compilers so any of their compilers would provide a license), but over the decades there have been improvements made by its users in the form of OWLNext that is meant to be installed "on top" of OWL (ie. wont work by itself).