NO_PK message on repeated group with form without list

lcollong

FabriKant d'applications web
Hi,

Sometimes I use form without database recording (ie without list/table) only as a commodity to capture data before processing some complex and/or multi table related actions (onAfterProcess). Easy and efficient.

On this one I've added a repeat group to capture some repeating actions (dispatching incoming merchandises for stock entries in several "warehouse"). On group creation it has created a table named "___160_repeat" where 160 is the id of the group.

Once everything setup, I decided to delete the unused "ghost" table. Sometime after that a message started to raise : "COM_FABRIK_LIST_JOIN_NO_PK" on form load (maybe after some open/Save on elements, groups or forms....)

It does not disturb the process nor generate any other errors or message but it's disturbing for the user.

So I'm wondering if it could be possible to let the repeat group working without PK when the main form is set to no record in database ? At least, having an option to not enqueue the error message in case of a non mySQL related form ?

Thanks,
 
I didn't manage to get this error.
But you also can't edit your repeat group setup without this repeat table.

I assume the easiest way is to recreate this dummy table
_160_repeat (my DB is showing only one leading _ )
with columns id (PK, autoincrement) and parent_id, both int(11)
 
Thanks for looking.
I created back the table following your guidance but message still there.
Actually it seems to be related to the fact that I created another form without table recording for a similar purpose (also with repeat group).
Looking at the fabrik debug, it seems fetching all "strange" joins in the first tab. Unpublishing the relevant form/group does not change.
 
From what I understand and from what I see in my repeat group tables, the table structure should be:
id - PK, AI, int(11)
content_id - int(11) - note: not "parent_id"
and then one column each per element in the group - type/collation/attributes/etc as per element type

No DB backup from before table deletion, eh? :oops:
 
Hmm, definitively parent_id on my site.
But anyway -
even with 2 forms with repeat groups without DB and renamed _xxx_repeat tables I can't get this error.
Looking at the fabrik debug, it seems fetching all "strange" joins in the first tab
What do you get there? Which joins?
Did you change an existing form "Record in database" from yes to no? (So is there still an existing list?) Maybe something in trash?
 
I also get this front-end message "COM_FABRIK_LIST_JOIN_NO_PK". In the backend it says "A join or a list has been added which has no Primary Key. Most likely cause is you are creating a new list on a MySQL view, or a join element joining to one. Views don't have PKs, and we couldn't find an 'id' element to use. If you are creating a list, you will need to manually designate the PK in the list settings now, in the 'Data' tab. If you are creating a join element, make sure that a Fabrik list has been created on that view, and the PK designated. Once that is done, Fabri will know what field to use as the PK when you create a join to it."
I got the message in a list with where I joined a table with no Primary Key intentionally.
I do not mind getting this message in the backend, but I do mind getting it in the frontend.
How can I disable it?
I have disabled all error messages in Joomla. It still shows....
 
How can I disable it?
As usual if you don't want to see a message which has a language constant: create a Joomla language override for the constant COM_FABRIK_LIST_JOIN_NO_PK in your "Site" language(s) and leave the value (= "Text" field) empty.
 
We are in need of some funding.
More details.

Thank you.

Members online

No members online now.
Back
Top