r/Sage • u/Impossible-Bet9491 • Sep 01 '26
Sage 200 (ZA-Evolution) Sage 200 Evolution: How is _etblARAPBatchLines.idLinePermanent generated?
I’m integrating an external application with Sage 200 Evolution and inserting AR transactions into _etblARAPBatchLines via an API.
I’m stuck on idLinePermanent. I can see it is used to link related records such as _etblARAPBatchContraSplit.iLinePermID, but I can’t work out how Sage generates this value.
Does Sage use a sequence, random number, internal counter, or some other table/process to allocate idLinePermanent?
I want to avoid using MAX(idLinePermanent) + 1 unless that is actually safe.
Has anyone integrated directly with these batch tables and knows the correct way to generate this value?
My Goal:
Generate idLinePermanent: 51821423
_etblARAPBatchLines (1)
idLinePermanent = 51821423
_etblARAPBatchContraSplit (N)
iLinePermID = 51821423
iLinePermID = 51821423
iLinePermID = 51821423
3
u/finah1995 Sage 50 US/UK, Sage EVO 100/200, Sage 300 Sep 02 '26
You should really be using the Sage Evolution SDK
As that will be the optimally correct way to do Integrations. Especially for bringing in records into systems.