Tahun baru, skill baru! 🚀. Masukkan kupon "skill2025" untuk diskon 30% di kelas apa saja

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 6 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 6 tahun yang lalu

Tanggapan

akan dicoba. terima kasih..

Login untuk ikut Jawaban