× This forum has been locked. Please submit new Feature Requests on GitHub: github.com/Jensen-Technologies/component-creator-issues/issues

Subform \ repeating rows from other tables

10 år 5 månader sedan #99 av Neil
It would be a nice feature to be able to use subforms in your main form from other tables when entering \ veiwing data as in the attached image. 

As a simple example lets say you have a main table of authors and another table of books.  From the Authors form you would add as many books as necessary as additional rows.
Bilagor:
Följande användare sa tack: RIP Graphics

Be Logga in eller Skapa ett konto ansluta till konversationen.

10 år 4 månader sedan - 10 år 4 månader sedan #154 av Andres Maeso
Svar från Andres Maeso i ämnet Subform \ repeating rows from other tables
Hello Neil

We know this is a very difficult and tedious task, but it's a very specific and hard to develop feature that I am not sure we could add to the Component Creator. Maybe if it get more votes we can give it a second thought.

Best regards,

Andrés.

Andrés Maeso
Customer relations manager at Joomla Component Creator.

Den här e-postadressen skyddas mot spambots. Du måste tillåta JavaScript för att se den.
Last edit: 10 år 4 månader sedan by Andres Maeso.

Be Logga in eller Skapa ett konto ansluta till konversationen.

10 år 3 månader sedan #201 av RIP Graphics
Svar från RIP Graphics i ämnet Subform \ repeating rows from other tables
Yes adding this feature would make this product even more helpful... Please give this a second thought

Thank you

Be Logga in eller Skapa ett konto ansluta till konversationen.

10 år 3 månader sedan #222 av Adam Clark
Svar från Adam Clark i ämnet Subform \ repeating rows from other tables
Would be a great feature... most things have 1 to many relationship... I think that there is massive scope for 2 things that this triggers... 

1) a drag and drop View Creator.
2) a configuration option so that all ADMIN and all SITE functions/classes are completely separate and not using some Admin function in the Site... 

Be Logga in eller Skapa ett konto ansluta till konversationen.

10 år 2 veckor sedan #464 av Nick Gardei
Svar från Nick Gardei i ämnet Subform \ repeating rows from other tables
Being a developer, I understand why this request would be difficult to fulfill. There just isn't a 'boilerplate' that works for all of these situations, and a working knowledge of how your data is interconnected is a must.

However, I think a bit of information goes a long way. The basic way this works is that the data is grabbed from the database in the MODEL and stored in an ARRAY. The VIEW then displays the data using a 'FOR EACH' loop to move through the ARRAY. So to get 'sub-data' for an item the easiest way is to write the data to a 'sub-array' using another 'FOR EACH' loop.

Here's some of my code from a model that lists Board Meeting 'Committees', and the Members that are assigned to them. Board Members, Committee, and Committee Assignments each have their own table;

MODEL;
public function getItems()
    {
        $items = parent::getItems();
      
         //Retrieve the committee member assignments, assign to array.
            foreach ($items as $item){ 
               $db2 = $this->getDbo();
               $query2 = $db2->getQuery(true);
               $query2->select($db2->quoteName(array('a.member_id', 'a.title', 'b.fname', 'b.lname', 'b.image')));
               $query2->from($db2->quoteName('#__boardmgmt_commassign', 'a'));
               $query2->join('INNER', $db2->quoteName('#__boardmgmt_members', 'b') . ' ON (' . $db2->quoteName('a.member_id') . ' = ' . $db2->quoteName('b.id') . ')');
               $query2->where($db2->quoteName('a.comm_id').' = '.$item->id. ' AND '. $db2->quoteName('a.state').' = 1'. ' AND '. $db2->quoteName('b.state').' = 1');
               $query2->order($db2->quoteName('a.ordering') . ' ASC');
               $db2->setQuery($query2);
               $item->members = $db2->loadObjectList();
            }
        return $items;
    }
VIEW;
// no direct access
defined('_JEXEC') or die;
$document = JFactory::getDocument();
$document->addStyleSheet(JURI::base(). "components/com_boardmgmt/assets/css/views.css");
?>
    <?php foreach ($this->items as $item) : ?>       
        <div class="comm_box">
            <h2 class="comm_title"><?php echo $this->escape($item->title_en); ?></h2>
            <?php echo $item->desc_en; ?>         
            <div>
            <?php foreach ($item->members as $member) : ?>
               <div class="comm_member">
               <?php if ($member->image != ''): ?>
               <img src="<?php echo JRoute::_(JUri::base() . 'administrator' . DIRECTORY_SEPARATOR .'components' . DIRECTORY_SEPARATOR . 'com_boardmgmt' . DIRECTORY_SEPARATOR . 'bmimages' .DIRECTORY_SEPARATOR . $member->image, false);?>">
               <?php endif; ?>
               <a href="<?php echo JRoute::_('index.php?option=com_boardmgmt&view=detail&id='.(int) $member->member_id); ?>"> <?php echo $member->fname . ' ' . $member->lname; ?></a><br />
               <?php echo $member->title; ?>
               </div>
            <?php endforeach; ?>
            </div>
      </div>   
    <?php endforeach; ?>
Följande användare sa tack: Neil, Andres Maeso

Be Logga in eller Skapa ett konto ansluta till konversationen.

10 år 2 veckor sedan #465 av Andres Maeso
Svar från Andres Maeso i ämnet Subform \ repeating rows from other tables
Hi Nick!

Thanks for those snippets, let's see if it covers the need our guys have. We can still think about how to implement it seeing it's getting a bit popular.

Andrés Maeso
Customer relations manager at Joomla Component Creator.

Den här e-postadressen skyddas mot spambots. Du måste tillåta JavaScript för att se den.
Följande användare sa tack: Neil

Be Logga in eller Skapa ett konto ansluta till konversationen.

Sidan laddades på: 0.063 sekunder
Powered by Kunena Forum

We use cookies so that you can place orders and we can provide a better service. You can control the use of cookies at the individual browser level. If you reject cookies, you may still use our website, but your ability to use some features or areas of our website may be limited.