Skip to main content Help Control Panel

 

support «   Besoin d'aide «  

L'overlay de type "facture"

PreviousNextIndex

Comment réaliser ce "cas d'école" cité dans la documentation

OwnerJmarc
Progress0%
WorkflowSupport request
StatusProblem has been recorded
  • Submission on Feb. 3 2010 by Jmarc

Bonjour aux cadors de l'overlay plus particulièrement...

J'ai besoin de réaliser un overlay "complexe" dans le genre de celui mentionné dans Les overlays :

"

un overlay lié à plusieurs tables en même temps, ou à plusieurs enregistrements d'une même table. Une facture avec ses lignes de détail, typiquement...

  "

Pour la partie stockage des données dans 2 tables liées (les entêtes de facture et les lignes de détails) je vois ce qu'il faut faire.

Par contre, pour l'interface de saisie, comment faites vous pour afficher sur une page, une zone de saisie des lignes de détail où le surfeur peut en ajouter un nombre indéfini ?

J'ai pensé à une première option qui consiste à saisir l'entête sur une page et chaque ligne de détail dans une page séparée (une page pour éditer une seule ligne de détail). Pas top au niveau ergonomie (beaucoup de clic).

J'ai aussi imaginé avoir une page de saisie avec l'entête et un certains nombre de "lignes de détail" vides en dessous mais quid lorsque l'on atteint le nombre de ligne maxi et qu'il faut encore en ajouter...

Quelqu'un a-t-il une url où l'on peut voir un exemple de formulaire de saisie "à deux tables" dont l'une est une liste d'enregistrements (les lignes de détail) liés à un enregistrement de la première table (l'entete) ?

Merci pour vos tuyaux


Jmarc
on Feb. 6 2010

Ok Alain, j'ai jeté un oeil. Il s'agit d'un comportant comparable à ce que j'imaginais "classiquement".  Il faut enregistrer "la première ligne de la facture" pour pouvoir obtenir les champs de saisi de la seconde.

c'est moins sympa que de pouvoir ajouter et remplir autant de lignes que l'on souhaite sans sortir ni enregistrer la facture en cours d'édition... mais cela reste tout à fait acceptable comme mode de fonctionnement.

je vais m'en contenter pour l'instant, je verrais ultérieurement si cela peut être amélioré.


Alain Lesage
on Feb. 5 2010

J'ai retrouvé ! Il s'agit de agents/configure.php et son comportement est légèrement différent de ce que je te décrivais. En fait, Yacs affiche toujours des champs pour "Ajouter un compte", ce qui correspondrait à ta "Nouvelle ligne". Aussitôt que ce groupe de champs est rempli, il prend sa place dans la page et un nouveau groupe de champs apparaît sous "Ajouter un compte".

Bonne continuation.

-----
On a si peu d'idée de ce qui est possible...

Jmarc
on Feb. 5 2010

Merci Alain pour cette piste. Je n'ai pas trouvé la section dont tu parles dans le panneau de controle de Yacs 10.1.15 mais je suis tombé sur le générateur de formulaire qui permet également d'ajouter des champs "à la volée".

je vais y jeter un oeil pour comprendre comment c'est foutu...

Sinon, j'ai aussi la solution de faire un layout qui m'affiche la facture (en consultation) avec des icones pour ajouter/modifier ou supprimer une ligne.

ces icones m'amènent ensuite sur une page PHP qui gère le formulaire d'édition d'une ligne. c'est moins conformatble pour l'utilisateur qui sort de la facture pour modifier une ligne mais c'est probablement plus facile à coder.


Alain Lesage
on Feb. 5 2010


Il y a quelque part dans le panneau de contrôle (je ne me souviens plus où exactement), la possibilité d'ajouter des serveurs (ou est-ce des adresses de courrier électroniques) à une liste. Quand on accède à cet onglet pour la première fois, il n'y a de cases que pour un seul item, mais quand on a complété le ou les champs, on a un lien pour "ajouter une autre..." qui fait apparaître de nouveaux champs à compléter pour un deuxième serveur (ou adresse).

Je regarderais comment c'est fait et il y a peut-être possibilité de t'inspirer de ce code pour rajouter tes lignes à volonté.

Désolé de ne pas être plus précis. Je ne suis certes pas un spécialiste des overlays, mais pour les avoir tripatouillés à quelques reprises, je sympathise avec ton souci et ton effort. Et comme personne d'autre ne semblait avoir de sggestion pour toi...

Bon succès !

PreviousNextIndex