Joomladay francophone 2018 à Paris 18 et 19 mai

Community builder et impression de liste.

Réduire
X
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [Problème] Community builder et impression de liste.

    bonjour,

    J'essaye de trouver une solution pour pouvoir exporter (en frontage par des utilisateurs avec un certain accès) soit en imprimant la liste ou vers un fichier csv, pdf mes 3 listes que j'ai créé sous community builder. CB ne prenant pas en charge nativement cette fonction.

    Par exemple, j'ai une liste avec nom, prénom, courriel (cb_courriel) , gsm (cb_gsm), ...

    J'avais pensé de créer un module avec contenu personnalisé avec du code php, exportant ces différentes données mais comme pour mon précédent problème (id et langue), la gestion des bases de données n'est pas mon fort. Croyiez-vous que c'est possible ?

    Encore un très grand merci.

  • #2
    Re : Community builder et impression de liste.

    Bonjour,

    Personnellement, j'utilise reportico pour générer toutes les vues exportables, avec ou sans fichier CSV, avec ou sans conversion de graphes en PDF.

    Ce n'est pas directement CB, mais tellement générique qu'on peut l'utiliser pour à peu près tout ce qu'on veut. Pour les listes CB, la requête se fera sur la table #__comprofiler
    Pas de demande de support par MP.
    S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

    Commentaire


    • #3
      Re : Community builder et impression de liste.

      Ok merci pour ta réponse, je vais aller voir cette extension.

      Et comme tu utilises cette extension, peux-tu m'en dire un peu plus sur son fonctionnement. Doit-on aller à la main pour coder les requêtes sql ? Ou a-t-il une "aide" ?

      Merci

      Je viens d'acheter cette extension, il me semble à première vue, qu'il faut aller à la main pour travailler sur les tables. J'espère que je me trompe car mes connaissances sur les requêtes sql sont très réduites.

      Comment peut-on extraire des champs de cb tels que: cb_gsm, cb_ville par exemple ? Avez-vous quelques pistes (requêtes) afin d'éclairer ma lanterne ?


      Et je ne parviens pas à mettre l'interface en français, seul l'anglais est proposé. Est-ce normale ?

      Un très grand merci d'avance.
      Dernière édition par carabao à 12/04/2015, 10h26

      Commentaire


      • #4
        Re : Community builder et impression de liste.

        Bonjour,

        Le pack Joomla! ne sert qu'en tant qu'intégration du gigantesque projet Reportico dans Joomla!
        Lors de l'installation du composant, il y a dans /components/com_reportico/language/packs un répertoire fr_fr.
        Copier ce répertoire dans /components/com_reportico/language/

        Pui sdepuis l'admin Joomla!, accéder à Reportico.

        Là le système commence par te demander de créer ton mot de passe d'accès Reportico, puis de choisir la langue (le français sera alors proposé).

        Ensuite, commences par configurer les tutos et lis la documentation avant d'utiliser Créer un nouveau projet.

        La documentation en français est en cours d eréalisatrion (et quelque peu gigantesque).

        En mode conception de projet, il te faut remplir le formulaire, puis en administration du projet, choiri le stables et champs désirés, définir le style de rapport, etc... et ensuite générer le projet, puis finalement insérer le lien créé dans un article Joomla! ou une entrée de menu.
        Pas de demande de support par MP.
        S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

        Commentaire


        • #5
          Re : Community builder et impression de liste.

          Encore merci pour ton aide.

          Je me suis connecté sans problème à ma base de donnée et activé le français.

          Qu'attends-tu par là:
          - commences par configurer les tutos
          - puis en administration du projet, choisir les tables et champs désirés. Car, chez moi, aucunes tables n'apparaît.


          Merci

          Commentaire


          • #6
            Re : Community builder et impression de liste.

            Reportico intègre directement une liste de tutoriels et d'exemples, qu'il faut examiner pour en comprendre le fonctionnement
            Pas de demande de support par MP.
            S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

            Commentaire


            • #7
              Re : Community builder et impression de liste.

              ok, je vais changer de lunette alors , merci

              Commentaire


              • #8
                Re : Community builder et impression de liste.

                Exemples installés, mais complètement largué sur ce coup là. Je ne sais par où commencer ! Et comme la docu est en anglais deuxième difficulté pour ma part. C'est dommage, car j'ai l'impression que ce composant peut sortir des superbes tableaux.

                Il faut que je comprenne car j'ai besoin de sortir une version papier ou fichier (pdf et tableur) de ma liste de membres (community builder) pour la gestion de l’association .
                Dernière édition par carabao à 12/04/2015, 17h37

                Commentaire


                • #9
                  Re : Community builder et impression de liste.

                  Là, si tu veux exemples et doc en français, il te faudra patienter un peu, La doc est en cours de traduction, et pour les exemples, un pack français suivra.
                  Pas de demande de support par MP.
                  S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

                  Commentaire


                  • #10
                    Re : Community builder et impression de liste.

                    Je me doute que traduire cette montagne de documentation ne doit pas être facile et en tout cas merci d'avance pour ton travail . Mais je dois avancer dans mon projet, donc ne connais-tu pas une autre source de documentation (même un livre en librairie) pour que je puisse continuer.

                    En tout cas, merci pour ton aide passée, présente et sûrement future.

                    Cordialement.

                    Commentaire


                    • #11
                      Re : Community builder et impression de liste.

                      En anglais, oui, en français non d'où la traduction en cours.
                      Pas de demande de support par MP.
                      S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

                      Commentaire


                      • #12
                        Re : Community builder et impression de liste.

                        ok, bon je vais essayer de m'y mettre

                        Pour que je comprenne bien, pour exporter des données venant de community builder, je dois passer des requêtes sql

                        $db = JFactory::getDBO();$query = $db->getQuery(true)
                        ->select('title')
                        ->from('#__usergroups')
                        ->where('id in (' . implode(',', $user->groups) . ')')
                        ->where('id <> 1');
                        $db->setQuery($query);

                        .... (exemple qui m'a été donné par un autre membre de ce forum en réponse à une de mes questions)

                        Y-a-t-il une documentation sur ces commandes pour extraire des données cb ?

                        Merci

                        Commentaire


                        • #13
                          Re : Community builder et impression de liste.

                          Pour CB, la table est #__comprofiler, et les champs sont en général ceux que tu as créés, donc à toi de les trouver dans ta liste de champs CB
                          Le principe reste le même que dans cet exemple.
                          Pas de demande de support par MP.
                          S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

                          Commentaire


                          • #14
                            Re : Community builder et impression de liste.

                            Pour le moment, l'utilisation de cette extension dépasse largement mes compétences. Je me console en me disant que j'ai fais un don au développeur. Je vais essayer de glaner ci et là des infos sur la manipulation des bases de données.

                            Encore merci pour ton aide.

                            Commentaire


                            • #15
                              Re : Community builder et impression de liste.

                              Pourrais-je abuser d'un peu, beaucoup de ton temps pour me donner les requêtes sql nécessaires pour extraire les champs cd. Pour les champs user (de joomla) j'ai ceci:

                              define( '_JEXEC', 1 );
                              define( 'JPATH_BASE', realpath(dirname(__FILE__) )); // print this out or observe errors to see which directory you should be in (this is two subfolders in)
                              define( 'DS', '/' );

                              require_once ( JPATH_BASE .DS.'includes'.DS.'defines.php' );
                              require_once ( JPATH_BASE .DS.'includes'.DS.'framework.php' );
                              require_once ( JPATH_CONFIGURATION .DS.'configuration.php' );
                              require_once ( JPATH_LIBRARIES .DS.'joomla'.DS.'database'.DS.'database.php' );
                              require_once ( JPATH_LIBRARIES .DS.'joomla'.DS.'access'.DS.'access.php' );
                              require_once ( JPATH_LIBRARIES .DS.'import.php' );

                              // DB Connection
                              $Config = new JConfig();
                              $db_driver = $Config->dbtype; // Database driver name
                              $db_host = $Config->host; // Database host name
                              $db_user = $Config->user; // User for database authentication
                              $db_pass = $Config->password; // Password for database authentication
                              $db_name = $Config->db; // Database name
                              $db_prefix = $Config->dbprefix; // Database prefix (may be empty)

                              // Database prefix (if empty then remove prefixing double underscore)
                              $db_prefix = (trim($db_prefix)=='') ? '':$db_prefix;

                              // Connect to the database
                              $db_link = mysqli_connect($db_host,$db_user,$db_pass,$db_name ) or die('Error connecting to the database' . mysqli_error($db_link));

                              // Create a query
                              $list_this_many = 100;
                              $userlist_query = 'SELECT `id` FROM `'.$db_prefix.'users` ORDER BY `registerDate` LIMIT 0, '.$list_this_many;

                              $output = '<html>
                              <head>
                              <title>Joes Joomla Users script</title>
                              <style>
                              body{font-family:Verdana;font-size:75%;}
                              table{width:100%;}
                              th{text-align:left;padding:2px;font-size:75%;}
                              td{white-space:nowrap;padding:2px;font-size:75%;}
                              div{font-weight:700;}
                              .even{background-color:#eee;}
                              </style>
                              </head><body>';
                              $output .= '<h1>Users in `'.$db_prefix.'users`</h1><table>';
                              $output .= '<tr><th>Name</th><th>Username</th><th>E-mail</th><th>GSM</th><th>Code postal</th> <th>Created</th></tr>';

                              $user_count = 0;

                              // Execute the query
                              if ($userlist_result = mysqli_query($db_link, $userlist_query)){

                              // Return results
                              while($user_row = mysqli_fetch_array($userlist_result)) {

                              // single this user out
                              $this_user_id = $user_row['id'] * 1;

                              // change background for alternating rows
                              $bg_class=($bg_class=='')?' class="even"':'';

                              // use Joomla library to get user details
                              $selected_user = JFactory::getUser($this_user_id);
                              $selected_usercb = JFactory::getUser(

                              // split the joomla password to recover the MD5
                              $password_salt = explode(':', $selected_user->password);
                              $pass = $password_salt[0];
                              $salt = $password_salt[1];

                              // add the record to our output
                              $output .=
                              '<tr'.$bg_class.'><td>'.
                              $selected_user->name.'</td><td>'.
                              $selected_user->username.'</td><td>'.
                              $selected_user->email.'</td><td>'.
                              $selected_cbuser->cb_gsm_service.'</td><td>'.
                              $selected_cbuser->cd_codepostal.'</td><td>'.
                              $selected_user->registerDate.'</td>'.
                              '</tr>';

                              // for auditing purposes (displays at bottom of page)
                              $user_count++;
                              }
                              }

                              // close off output
                              $output .= '</table><br />';
                              $output .= '<div>Total User(s): '.$user_count.'</div>';
                              $output .= '</body></html>';

                              // print out output
                              echo $output;

                              // free up results
                              mysqli_free_result($userlist_result);

                              ?>

                              Cela m'affiche bien nom, courriel, date de création.

                              J'ai effacé la colonne password, car j'en ai pas besoin.

                              Comment puis je faire pour ajouter les champs cb ? (par exemple cb_gsm_sevice, cb_codepostal). Tu me dis de partir de l'exemple que je cite:

                              $db = JFactory::getDBO();$query = $db->getQuery(true)
                              ->select('title')
                              ->from('#__usergroups')
                              ->where('id in (' . implode(',', $user->groups) . ')')
                              ->where('id <> 1');
                              $db->setQuery($query);

                              Là, je ne vois pas comment insérer la table: ici je suppose, ->from('#__comprofiler') . Mais après ?


                              Merci d'avance pour ton aide.

                              Commentaire

                              Annonce

                              Réduire
                              1 sur 2 < >

                              C'est [Réglé] et on n'en parle plus ?

                              A quoi ça sert ?
                              La mention [Réglé] permet aux visiteurs d'identifier rapidement les messages qui ont trouvé une solution.

                              Merci donc d'utiliser cette fonctionnalité afin de faciliter la navigation et la recherche d'informations de tous sur le forum.

                              Si vous deviez oublier de porter cette mention, nous nous permettrons de le faire à votre place... mais seulement une fois
                              Comment ajouter la mention [Réglé] à votre discussion ?
                              1 - Aller sur votre discussion et éditer votre premier message :


                              2 - Cliquer sur la liste déroulante Préfixe.

                              3 - Choisir le préfixe [Réglé].


                              4 - Et voilà… votre discussion est désormais identifiée comme réglée.

                              2 sur 2 < >

                              Assistance au forum - Outil de publication d'infos de votre site

                              Compatibilité: PHP 4.1,PHP4, 5, 6DEV MySQL 3.2 - 5.5 MySQLi from 4.1 ( @ >=PHP 4.4.9)

                              Support Version de Joomla! : | J!3.0 | J!2.5.xx | J!1.7.xx | J!1.6.xx | J1.5.xx | J!1.0.xx |

                              Version française (FR) D'autres versions sont disponibles depuis la version originale de FPA

                              UTILISER À VOS PROPRES RISQUES :
                              L'exactitude et l'exhaustivité de ce script ainsi que la documentation ne sont pas garanties et aucune responsabilité ne sera acceptée pour tout dommage, questions ou confusion provoquée par l'utilisation de ce script.

                              Problèmes connus :
                              FPA n'est actuellement pas compatible avec des sites Joomla qui ont eu leur fichier configuration.php déplacé en dehors du répertoire public_html.

                              Installation :

                              1. Téléchargez l'archive souhaitée : http://afuj.github.io/FPA/

                              Archive zip : https://github.com/AFUJ/FPA/zipball/master

                              2. Décompressez le fichier de package téléchargé sur votre propre ordinateur (à l'aide de WinZip ou d'un outil de décompression natif).

                              3. Lisez le fichier LISEZMOI inclus pour toutes les notes de versions spécifiques.

                              4. LIRE le fichier de documentation inclus pour obtenir des instructions d'utilisation détaillées.

                              5. Téléchargez le script fpa-fr.php à la racine de votre site Joomla!. C'est l'endroit que vous avez installé Joomla et ce n'est pas la racine principale de votre serveur. Voir les exemples ci-dessous.

                              6. Exécutez le script via votre navigateur en tapant: http:// www. votresite .com/ fpa-fr.php
                              et remplacer www. votresite .com par votre nom de domaine


                              Exemples:
                              Joomla! est installé dans votre répertoire web et vous avez installé la version française du fichier FPA:
                              Télécharger le script fpa-fr.php dans: /public_html/
                              Pour executer le script: http://www..com/fpa-fr.php

                              Joomla! est installé dans un sous-répertoire nommé "cms" et vous avez installé la version française du fichier FPA:
                              Télécharger le script fpa-fr.php dans: /public_html/cms/
                              Pour executer le script: http://www..com/cms/fpa-fr.php

                              En raison de la nature très sensible de l'information affichée par le script FPA, il doit être retiré immédiatement du serveur après son utilisation.

                              Pour supprimer le script de votre site, utilisez le lien de script de suppression fourni en haut de la page du script. Si le lien de suppression échoue pour supprimer le script, utilisez votre programme FTP pour le supprimer manuellement ou changer le nom une fois que le script a généré les données du site et le message publié sur le forum. Si le script est toujours présent sur le site, il peut être utilisé pour recueillir suffisamment d'informations pour pirater votre site. Le retrait du script empêche des étrangers de l'utiliser pour jeter un oeil à la façon dont votre site est structuré et de détecter les défauts qui peuvent être utilisé à vos dépends.
                              Voir plus
                              Voir moins
                              Travaille ...
                              X