protected override void GetDataSource(out string DataSource, out string DataSourceOrder, List <FieldParam> Parameters) { string strTemp = string.Empty; string strEmpty = FormatSqlValue(string.Empty, DataType.VarChar); UpdateSaldo(); if (BaseGL.SetingPerusahaan.MultiDepartemen) { strTemp = string.Concat(Dp.GetSqlIifNoFormat("IdDepartemen=" + strEmpty, strEmpty, "(SELECT KodeDepartemen FROM Departemen X WHERE X.IdDepartemen=IdDepartemen)"), " AS KodeDepartemen,"); } if (BaseGL.SetingPerusahaan.MultiProyek) { strTemp = string.Concat(strTemp, Dp.GetSqlIifNoFormat("IdProyek=" + strEmpty, strEmpty, "(SELECT KodeProyek FROM Proyek X WHERE X.IdProyek=IdProyek)"), " AS KodeProyek,"); } Parameters.Add(new FieldParam("0", _TglAwal)); Parameters.Add(new FieldParam("1", _TglAkhir.AddDays(1))); Parameters.Add(new FieldParam("2", _Akun)); DataSource = string.Concat(@"SELECT J.NoJurnal, TglJurnal,JenisDokSumber,NoDokSumber,BuatJurnalPembalik,", strTemp, @"Debit,Kredit,J.Keterangan AS Uraian FROM Jurnal J INNER JOIN JurnalDetil D ON J.NoJurnal=D.NoJurnal WHERE TglJurnal>=@0 AND TglJurnal<@1 AND IdAkun=@2"); DataSourceOrder = "TglJurnal,NoJurnal"; }
protected override void GetDataSource(out string DataSource, out string DataSourceOrder, List <FieldParam> Parameters) { BaseGL.RingkasanAkun.Update(_TglNeraca2 > _TglNeraca1 ? _TglNeraca2 : _TglNeraca1); string NilaiNeraca1 = Dp.GetSqlCoalesce("Neraca1", 0); string NilaiNeraca2 = Dp.GetSqlCoalesce("Neraca2", 0); DataSource = string.Concat( "SELECT NoAkun,NamaAkun,JenisAkun,UrutanKelompok,KelompokAkun,", NilaiNeraca1, " as Neraca1,", NilaiNeraca2, " as Neraca2,", NilaiNeraca2, "-", NilaiNeraca1, " as Selisih,", Dp.GetSqlIifNoFormat(NilaiNeraca1 + "=0", Dp.GetSqlIifNoFormat(NilaiNeraca2 + "<0", "-100", Dp.GetSqlIifNoFormat(NilaiNeraca2 + ">0", "100", "null")), string.Concat("(", NilaiNeraca2, "-", NilaiNeraca1, ")*100/", Dp.GetSqlAbs(NilaiNeraca1))), @" as [% Selisih] FROM (SELECT JenisAkun,UrutanKelompok,KelompokAkun,NoAkun,NamaAkun,Aktif, (SELECT SUM(Debit-Kredit) FROM (", BaseGL.RingkasanAkun.SqlPosisiAkun(_TglNeraca1, false, "1", Parameters), @") p WHERE p.IdAkun=q.IdAkun ) as Neraca1, (SELECT SUM(Debit-Kredit) FROM (", BaseGL.RingkasanAkun.SqlPosisiAkun(_TglNeraca2, false, "2", Parameters), @") r WHERE r.IdAkun=q.IdAkun ) as Neraca2 FROM Akun q WHERE Posting<>0 AND JenisAkun<>", FormatSqlValue(enJenisAkun.Laba__Rugi), ") XX WHERE Aktif<>0"); DataSourceOrder = "UrutanKelompok,NoAkun"; }