Radicore Forum
Fast Uncompromising Discussions. FUDforum will get your users talking.

Home » RADICORE development » Transaction Patterns » PopUp - Link1 table
Re: PopUp - Link1 table [message #7415 is a reply to message #7414] Sun, 15 March 2020 15:16 Go to previous messageGo to previous message
htManager is currently offline  htManager
Messages: 434
Registered: May 2014
Senior Member
It looks like you have two tables called TEAM and TEAM_MEMBER which are in a one-to-many relationship with TEAM as the 'one' and TEAM_MEMBER as the 'many'. Your POPUP1 screen should therefore refer toTEAM on its own while the POPUP2 should refer to TEAM as the 'outer' entity and TEAM_MEMBER as the 'inner'. That is right.

You do not say which pattern you are using to call the POPUP2 screen. It cannot be an ADD4 as it does not have a visible screen. The popup2 will be called as described in FAQ79. I thought that it would be possible to insert the selected items with the add4 pattern.

FAQ79 states that you would normally call a POPUP2 screen by passing in $where the identity of a single row in the 'outer' entity, in which case it will display that selected row in the outer zone and populate the inner zone will all associated rows from the inner entity. However, if the $where string is empty you will need code in the _cm_initialise() of the inner entity to pause the execution of the POPUP2 screen and call a POPUP1 screen in order to prove a non-empty value for the $where string. I think that the problem with $where is because I have a navigation button in the list2 pattern of the team_member table. I thought that it would be possible to choose the 'new' team in the team_member table and then add the team members of the last saison team. This is why the §where isn't empty. $where has the key values of the 'new' team member primary key.

You say that your first problem is that in the _cm_initialise() method of the TEAM table you have to clear the contents of the $where string so that it will retrieve all possible entries. The value which appears in the $where string for a popup form is set in the _cm_popupCall() method which calls that popup, so if you want an empty $where string then you must set $where to NULL (or an empty string) in that _cm_popupCall() method. I tried this but maybe I made mistakes and I didn't succeed.

It is only when you call a POPUP2 screen that the $where string may point to a row on the 'outer' entity. If a non-blank value is supplied the POPUP2 form will perform a lookup on the 'outer' entity using this value then populate the 'inner' with rows which belong to that 'outer' row. If the $where string you pass to a POPUP2 form is empty then it will fail unless you follow FAQ79. I get the correct team members shown in the popup2 form of the choosen team. But I don't get them in the _cm_popupReturn() method.

You say that you cannot change $settings['select_one'] = true for the POPUP2 form when activated from the _cm_initialise() method in the TEAM_MEMBER table, but this is not correct. If you look at the arguments for the scriptNext() function (see https://www.tonymarston.net/php-mysql/functions-and-variable s.html#func.scriptnext) you will see that the 4th argument is an array of task details. You can provide this argument with a value such as $array['settings'] = 'select_one=TRUE' in order to provide the desired effect. If you want multiple settings you must separate them with an '&' such as as in 'select_one=TRUE&choose_single_row=TRUE' I can change the settings of the popup2 form. But not of the popup1 form to show the possible teams.

When you say that the 'Choose Null' button is not displayed in the POPUP2 form this is because $settings['select_one'] has been set to true for that popup. That is right. I can see it now if I change the setting from False to true.

I hope that you have more information to understand my problem.

[Updated on: Sun, 15 March 2020 15:22]

Report message to a moderator

 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Filepicker - choose Null button
Next Topic: List view (List3)
Goto Forum:
  


Current Time: Sun Nov 24 19:39:24 EST 2024

Total time taken to generate the page: 0.01354 seconds