Menampilkan datatabel codeigniter

Selamat pagi, saya sedang membuat sebuah project dengan mnggunakn CI. nah, memiliki kendala untuk rekap data per bulannya. contoh datatable yang akan di tampilkan seperti ini :

sdh berhasil di tampilkan seperti ini :

Yang menjadi pertanyaan bagaimana cara menampilkan kolom target transaksi jan, kolom total jan, kolom s.d Feb (total jan+total feb), kolom selisih (total jan+total feb - target transaksi jan - target transaksi feb )

*jika ini bulan maret jadi yang akan di buat di kolom target transaksi jan adalah target transaksi jan + target transaksi feb. *di kolom total jan adalah total jan+total feb *di kolom s.d feb adalah total jan+total feb+total maret *di kolom selisih adalah kolom s.d - target transaksi jan - target transaksi feb - target transaksi maret.

berikut modelnya :

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class ModelLihatPerBulan extends CI_Model{

	public function lihatdataperbulan($tanggal_awal, $tanggal_akhir)
	{

		$sql = 'SELECT *, sum(a.jumlah_pegawai) as jumlah_pegawai, sum(a.target_transaksi) as target_transaksi, sum(a.p_kreasi) as p_kreasi, sum(a.p_krasida) as p_krasida, sum(a.p_mulia) as p_mulia, sum(a.p_amanah) as p_amanah, sum(a.p_tabungan_emas) as p_tabungan_emas, sum(a.p_top_up_TE) as p_top_up_TE, sum(a.p_arrum_haji) as p_arrum_haji, sum(a.p_rahn_tasjili) as p_rahn_tasjili, sum(a.p_pds) as p_pds, sum(a.p_jumlah) as p_jumlah, sum(p_selisih) as p_selisih
				FROM tabel_hasilperhari a
				RIGHT JOIN tabel_cabang b
					ON a.id_cabang = b.id_cabang
				RIGHT JOIN tabel_unit c
					ON a.id_unit = c.id_unit
				RIGHT JOIN tabel_cabang d
					ON c.id_cabang_fk = d.id_cabang
				WHERE (tanggal BETWEEN ? AND ?)
				GROUP BY c.id_unit;';
		$bind = array($tanggal_awal, $tanggal_akhir);
		$result = $this->db->query($sql, $bind);
		if($result->num_rows() > 0) return $result->result_array();
        else return FALSE;
	}

	public function lihatperbulan($data)
	{
		if($this->db->SELECT('tabel_hasilperhari', $data)) return TRUE;
        else return FALSE;
	}

}

berikut controllernya :

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Laporanperbulan extends CI_Controller {

	public function index()
	{	$this->load->view('template/header');
		$this->load->view('Laporanlihatdataperbulan');
		$this->load->view('template/footer');
	}

	public function __construct()
	{
		parent::__construct();
		$this->load->model('ModelLihatPerBulan');
	}

	function lihatperbulan()
	{

		$tanggal_awal = $this->input->post('tanggal_awal');
		$tanggal_akhir = $this->input->post('tanggal_akhir');

		$data['lihatdata'] = $this->ModelLihatPerBulan->Lihatdataperbulan($tanggal_awal, $tanggal_akhir);


	$this->load->view('template/header');
	$this->load->view('tabelperbulan', $data);
	$this->load->view('template/footer');
	}

}

untuk tabelnya :


            <div class="x_content">
                        <div style="overflow-x:scroll;">
                            <table class="table  align=center table-striped table-bordered dt nowrap" cellspacing="0" width="100%">
                                <thead>
                                    <tr>
                                        <tr>
                                          <th>No</th>
                                          <!-- <th>Tanggal</th> -->
                                         <!--  <th>ID Unit</th> -->
                                          <th>Nama Unit</th>
                                          <th>Nama Cabang</th>
                                          <th>Jumlah Pegawai</th>
                                          <th>Target Transaksi</th>
                                          <th>Kreasi</th>
                                          <th>Krasida</th>
                                          <th>Mulia</th>
                                          <th>Amanah</th>
                                          <th>Tabungan Emas</th>
                                          <th>Top UP Tabungan Emas</th>
                                          <th>Arrum Haji</th>
                                          <th>Rahn Tasjili</th>
                                          <th>PDS</th>
                                          <th>Jumlah</th>
                                          <th>Selisih</th>
                                        <!--   <th>j_peg</th> -->
                                    </tr>
                                </thead>
                                <tbody>
                                    <?php $no = 0; ?>
                                    <?php if(!empty($lihatdata)) :?>
                                        <?php foreach($lihatdata as $lihat){
                                      ?>
                                    <tr>
                                        <td><?php $no++; echo $no; ?></td>
                                        <!-- <td><?php echo $lihat['tanggal']; ?></td> -->
                                      <!--   <td><?php echo $lihat['id_unit']; ?></td> -->
                                        <td><?php echo $lihat['nama_unit']; ?></td>
                                        <td><?php echo $lihat['nama_cabang']; ?></td>
                                        <td><?php echo $lihat['jumlah_pegawai']; ?></td>
                                        <td><?php echo $lihat['target_transaksi']; ?></td>
                                        <td><?php echo $lihat['p_kreasi']; ?></td>
                                        <td><?php echo $lihat['p_krasida']; ?></td>
                                        <td><?php echo $lihat['p_mulia']; ?></td>
                                        <td><?php echo $lihat['p_amanah']; ?></td>
                                        <td><?php echo $lihat['p_tabungan_emas']; ?></td>
                                        <td><?php echo $lihat['p_top_up_TE']; ?></td>
                                        <td><?php echo $lihat['p_arrum_haji']; ?></td>
                                        <td><?php echo $lihat['p_rahn_tasjili']; ?></td>
                                        <td><?php echo $lihat['p_pds']; ?></td>
                                        <td><?php echo $lihat['p_jumlah']; ?></td>
                                        <td><?php echo $lihat['p_selisih']; ?></td>

                                    </tr>
                                <?php } ?>
                            <?php endif ?>
                                </tbody>
                            </table>
                        </div>
                    </div>

             </div>
              </div>
            <div class="clearfix"></div>
          </div>
        </div>

<script src="<?php echo base_url();?>assets/gentelella/vendors/datatables.net/js/jquery.dataTables.min.js"></script>
<script src="<?php echo base_url();?>assets/gentelella/vendors/datatables.net-bs/js/dataTables.bootstrap.min.js"></script>

tabel: mohon bantuannya, maaf masih newbie. terima kasih..

avatar charissas
@charissas

1 Kontribusi 0 Poin

Diperbarui 5 tahun yang lalu

Tanggapan

Itu struktur tablenya bagaimana? + codingnya jangan dibikin gambar ya, susah ngetesnya.

1 Jawaban:

mungkin bisa pake join select, jadi agan buat select untuk cari total 3 bln tsb group by idunit. lalu di joinkan dengan tabel yg sudah ada diquery. step awal coba cari total 3 bln tsb per idunit berdasarkan periode yg dipilih. kalo sudah ketemu baru gabung dengan query yg sudah jadi

avatar dianarifr
@dianarifr

642 Kontribusi 316 Poin

Dipost 5 tahun yang lalu

Tanggapan

akan dicoba. terima kasih..

Login untuk ikut Jawaban