hello,
I have a grid that allows me to click a checkbox (type =acheck) to updte directly my table in my database.
It works fine but as soon as I add a “left join” in my sql query, it seems that my principal ID is not recognized. I hope there is a solution for that.
Find below :
- My Grid code
- My connector code
- my sql query code
I think the problem is on this line in my sql query left join phs_visite_forfait_realise_mt_rem p2 on p1.id_visite =p2.visite_forfait_realise
As there is a join on id_visite that is my id used in the grid, it seems that the grid couldn’t find the good primary key.
If I let all the sql query but if I don’t write the p2.montant_visite_forfait_realise_rem(mt_realise_rem) in the grid (and in the connector), so the checkbox is updated…
$gridConn->render_sql($sql_grid_10,“p1.id_visite(id_visite_1)”,“session_paiement_pec,p10.code(etude_code),p10.nom(etude_nom),p11.libelle(statut_visite),p13.libelle(type_visite),p12.libelle(origine_visite),p1.date_realisee(date_real),p2.montant_visite_forfait_realise_rem(mt_realise_rem)”);
$sql_grid_10=“SELECT
p1.id_visite as id_visite_1,p1.session_paiement,p1.session_paiement_pec,p1. visite_forfait_scenario,
p10.id as id_etude,p10.code as etude_code,p10.nom as etude_nom, p11.libelle as statut_visite, p13.libelle as type_visite, p12.libelle as origine_visite, p1.date_realisee as date_real,
COALESCE(p2.montant_visite_forfait_realise_rem,0) as mt_realise_rem,
COALESCE(p4.montant_visite_forfait_realise_sur,0) as mt_realise_sur,
COALESCE(p6.montant_visite_forfait_realise_frf,0) as mt_realise_frf,
COALESCE(p3.montant_visite_forfait_scenario_rem,0) as mt_scenario_rem,
COALESCE(p5.montant_visite_forfait_scenario_sur,0) as mt_scenario_sur,
COALESCE(p7.montant_visite_forfait_scenario_frf,0) as mt_scenario_frf,
(COALESCE(p2.montant_visite_forfait_realise_rem,0)+COALESCE(p4.montant_visite_forfait_realise_sur,0)+ COALESCE(p6.montant_visite_forfait_realise_frf,0))-(COALESCE(p3.montant_visite_forfait_scenario_rem,0)+COALESCE(p5.montant_visite_forfait_scenario_sur,0)+COALESCE(p7.montant_visite_forfait_scenario_frf,0)) as mt_difference,
p14.nb_erreur as nb_erreur2,
p14.username
FROM phs_visite_forfait_realise
p1
left join phs_visite_forfait_realise_mt_rem p2 on p1.id_visite =p2.visite_forfait_realise left join phs_visite_forfait_scenario_mt_rem p3 on p1.visite_forfait_scenario=p3.visite_forfait_scenario
left join phs_visite_forfait_realise_mt_sur p4 on p1.id_visite =p4.visite_forfait_realise left join phs_visite_forfait_scenario_mt_sur p5 on p1.visite_forfait_scenario=p5.visite_forfait_scenario
left join phs_visite_forfait_realise_mt_frf p6 on p1.id_visite =p6.visite_forfait_realise left join phs_visite_forfait_scenario_mt_frf p7 on p1.visite_forfait_scenario=p7.visite_forfait_scenario
join phs_previsionnel p8 on p1.previsionnel=p8.id
join phs_participation p9 on p8.participation=p9.id
join phs_etude p10 on p9.etude=p10.id
join phs_statut_visite_forfait p11 on p1.statut_visite_forfait=p11.code
join phs_origine_visite_forfait p12 on p1.origine_visite_forfait=p12.code
join phs_type_visite_forfait p13 on p1.type_visite_forfait=p13.code
left join phs_session_paiement_erreur p14 on p1.id_visite =p14.visite_forfait_realise
WHERE (p1.statut_visite_forfait = ‘REA’ OR p1.statut_visite_forfait = ‘ERR’) and p10.id=”.$_SESSION[‘id_etude’];