Notifications
Announcements
No record found.
I want to insert data into a table from two other tables. But after having inserted the first set of data I only want to add data from the second table if one of the field does not already have that value. i.e. I want to keep that field unique. I have managed to do this using while select, but since the tables are big this takes quite some time. Is there a way to do this using insert_recordset isntead? Or another way to speed it up?
while select * from tableB { select * from rTable where rTable.Voucher == tableB.Voucher; if(rTable.Voucher == ""){ rTable.VendAccount = tableB.DisplayValue; rTable.Voucher = tableB.Voucher; rTable.Date = tableB.Due; rTable.Credit = tableB.AmountCurCredit; rTable.InvoiceId = tableB.Invoice; rTable.insert(); } }
If you want to select data from one table that don't have a related record in another table, use 'not exists join'.
You should have done with your while select as well, because your current code is very inefficient. If table B contains a thousand records, you'll make 1001 selects, instead of just one.
Hi Dushatar,
If both the tables have relation, then you can join both tables(from your code it seems both table are related using "Voucher" field) in while select itself instead of adding one more select statement inside the while select.
Thanks,
Girish S.
Under review
Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.
As AI tools become more common, we’re introducing a Responsible AI Use…
We are honored to recognize Neeraj Kumar as our Community Spotlight honoree for…
These are the community rock stars!
Stay up to date on forum activity by subscribing.
Martin Dráb 611 Most Valuable Professional
André Arnaud de Cal... 529 Super User 2025 Season 2
Sohaib Cheema 285 User Group Leader