I have tried to translate this query: select A.id, A.surname, A.firstname, A.name, A.birthdate, A.race, A.gender, A.address, C.title as Journal, C.subject from akb_authors A left join akb_authors_article_link B on (B.author = A.uuid) left join akb_articles D on (D.uuid = B.article) left join akb_journal C on (C.uuid = D.journal)
where A.id in (507182, 788825) to DAL: query = db.akb_authors.id.belongs(ids) left = (db.akb_authors_article_link.on(db.akb_authors.uuid == db.akb_authors_article_link.author), db.akb_articles.on(db.akb_articles.uuid == db.akb_authors_article_link.article), db.akb_journal.on(db.akb_journal.uuid == db.akb_articles.journal)) fields = [db.akb_authors.id, db.akb_authors.surname, db.akb_authors.firstname, db.akb_authors.name, db.akb_authors.birthdate, db.akb_authors.gender, db.akb_authors.race, db.akb_authors.address, db.akb_journal.title, db.akb_journal.subject ] headers = {'akb_journal.title': 'Journal'} form = SQLFORM.grid(query, fields=fields, maxtextlength = 100, deletable = False, editable = False, details = False, create = False, headers = headers, left = left, selectable = lambda ids: hanteer_verfyning(ids.id), orderby = db.akb_authors.id) but it ignores all the fields that are not in the first table and prints 'unsupported query' on the screen: SELECT akb_authors.id, akb_authors.surname, akb_authors.firstname, akb_authors.name, akb_authors.birthdate, akb_authors.gender, akb_authors.race, akb_authors.address FROM akb_authors LEFT JOIN akb_authors_article_link ON (akb_authors.uuid = akb_authors_article_link.author) LEFT JOIN akb_articles ON (akb_articles.uuid = akb_authors_article_link.article) LEFT JOIN akb_journal ON (akb_journal.uuid = akb_articles.journal) WHERE (akb_authors.id IN (507182,788825)) ORDER BY akb_authors.id; So how do I get the grid to show the two fields in akb_journal for me? Regards Johann -- Because experiencing your loyal love is better than life itself, my lips will praise you. (Psalm 63:3)