Project

General

Profile

Anomalie #4308

Objet sans statut : problème avec objet_instituer()

Added by tcharlss (*´_ゝ`) 8 months ago. Updated 8 months ago.

Status:
Nouveau
Priority:
Normal
Assignee:
-
Category:
APIs
Target version:
Start date:
03/07/2019
Due date:
% Done:

0%

Resolution:
Navigateur:

Description

Le contexte

J'ai un objet éditorial sans statut, et avec une date.
La date est bien déclarée dans declarer_tables_objets_sql : 'date' => 'date'
Le formulaire d'édition permet de modifier directement la date, sans avoir à passer par #FORMULAIRE_DATER.

Problème

La date saisies par l'utilisateur n'est pas enregistrée, ça remet systématiquement la date actuelle.
À la toute fin des traitements, dans la fonction objet_editer_heritage(), on retrouve bien la date correcte dans le tableau des champs à modifier qui est transmis à sql_updateq().
Par contre il y également le champ 'statut', hors il n'a rien à faire là : ça provoque une erreur SQL.

Voici ce que renvoie var_dump($champs) :

array (size=2)
  'statut' => string '' (length=0)
  'date' => string '2019-01-22 00:00:00' (length=19)

C'est en amont dans objet_instituer() que le tabeau des champs à modifier est contruit.
Il semble qu'il y a des tests effectués pour vérifier la présence du champ de statut dans la table, pourtant même en son absence il se retrouve dans la liste.
Je n'arrive pas à mettre le doigt sur l'endroit exact où ça coince, RastaPopoulos me dit que ça doit se jouer vers la ligne 333

Solution

Pas vraiment une solution, mais ça montre bien que c'est l'absence de statut qui fait tout planter : quand je retire la clé 'statut' dans au moyen du pipeline pre_edition, ça marche.

History

#1 Updated by b b 8 months ago

  • Target version set to 3.3

#2 Updated by tcharlss (*´_ゝ`) 8 months ago

Autres tests : ça ne fonctionne pas non plus avec #FORMULAIRE_DATER
Donc le fait que la date soit changée directement dans le formulaire d'édition de l'objet n'a pas d'incidence.

Also available in: Atom PDF