I would understand if you do not want to cim into SO maintenance but have you considered doing CIM into sosoal.p (7.1.6)?
Allocations affect a lot of tables, among them ld_det, lad_det, mrp_det, sod_det, in_mstr. You can check what tables are being hit using your system cross reference 36.18.2. You will need to know the execution tree of programs that sosoal (or subprograms) may end-up calling.
Also, not only quantities are affected. An example would be the flag that tracks whether a given item/site combination has had changes that would require at least a selective MRP (in_mrp).
I assume you are not refering to the standard QAD CIM (e.g. 36.15 menu) and that you know how to redirect input for a program.
In my opinion a program that creates a CIM-IN file, wraps sosoal.p and redirects the input/output will be good and fast enough as to avoid trying direct updates.
My 2 cent.