今来たばかりで問題がなんなのか全然わかってないんだけど
変数をパラメータに入れて渡したいなら

save.bat str=%a,savelocation="c:\\test",filename="test.csv",init=1
みたいにやって、
set args=%*
set %args:,=&set %

これじゃいかんの?
区切りはカンマじゃ問題あるかもしれんから使いそうに無い別文字でも