koolreport/mongodb

Allow KoolReport to work with MongoDB

1.3.0 2024-03-27 09:29 UTC

This package is auto-updated.

Last update: 2024-03-28 08:50:27 UTC


README

This package allows you to connect and get data from MongoDB.

Installation

By downloading .zip file

  1. Download
  2. Unzip the zip file
  3. Copy the folder mongodb into koolreport folder so that look like below
koolreport
├── core
├── mongodb

By composer

composer require koolreport/mongodb

Documentation

Settings

Name type default description
class string Must set to '\koolreport\mongodb\MongoDataSource'
connectionString string Define connection string to MongoDB. If you use connectionString, you do not need to use properties host, username and password.
host string MongoDB host
username string Username
password string Password
database string The name of database you want to connect

Example


<?php
class MyReport extends \koolreport\KoolReport
{
    public function settings()
    {
        return array(
            "dataSources"=>array(
                "mongo_purchase"=>array(
                    "class"=>'\koolreport\mongodb\MongoDataSource',
                    "connectionString"=>"mongo://johndoe:secret_password@localhost:65432",
                    "database"=>"dbpurchase"
                ),
            )
        );
    }
    public function setup()
    {
        $this->src('mongo_purchase')
        ->query(array(
            'collection' => 'cPurchases',
            'find' => ['age' => ['$gte' => '40']],
            'options' => [
                'skip' => 0,
                'limit' => 5,
                'projection' => [
                    '_id' => 0,
                    'name' => 1,
                    'age' => 1,
                ],    
            ],
        ))
        ->pipe(..)
        ->pipe(...)
        ...
        ->pipe($this->dataStore('mongo_purchases'));
    }
}

Support

Please use our forum if you need support, by this way other people can benefit as well. If the support request need privacy, you may send email to us at support@koolreport.com.