Hi, first you have to find out if the error SAP or Talend related (my wild guess would be that is rather SAP related because I never encountered it with Talend). For that, try only to extract the SAP data using the tSAPInput components involved without joining the data in tMap and if you get the error you'll know that is SAP related.
In generally your approach is the right way if the tSAPInput components used with 'RFC_READ_TABLE' (which I presume you are using) are fast enough to provide you with the requested data in the right time and thus is safe to do an external join with tMap (I've done this way a lot of reporting/syncing executed in batch mode 'off working hours' and it is working very well). However if you need more fast and/or (near) real-time integrations you can try looking on Taland Exchange a component - I'm missing it's name right now - more suitable for SAP side joining, but it is for money. Or if you want to get away for free (
) you can use tSAPInput with the 'RSAQ_REMOTE_QUERY_CALL' RFC which would allow you to call SAP Queryies and you could do the SAP-side joining in a SAP query. Or you could call any custom made RFC enabled BAPI in which there are embedded joins, but for this, of course, you'd need expertise on BAPI's - SAP Queries are much more easy to make.
Hope it helped.