Пример #1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                log.Info("ViewAssetSummaryByComp Page_Load.");

                string company  = "";
                string province = "";
                string username = Request.QueryString["usr"];
                int    id       = Convert.ToInt32(Request.QueryString["id"]);

                decimal totalAsset      = 0;
                decimal totalSertipikat = 0;
                decimal totalGirik      = 0;
                decimal totalLainnya    = 0;
                decimal totalArea       = 0;

                SIMAWS.WS_SIMA ws = new SIMAWS.WS_SIMA();

                DataTable dtParameter = new DataTable();

                log.DebugFormat("Call GetReportParameter() Started. Parameters : id = {0}", id);

                dtParameter = ws.GetReportParameter(id);

                if (dtParameter.Rows.Count > 0)
                {
                    company  = dtParameter.Rows[0]["Parameter1"].ToString();
                    province = dtParameter.Rows[0]["Parameter2"].ToString();
                }

                log.DebugFormat("Call GetReportParameter() Finished. Result {0} rows.", dtParameter.Rows.Count);

                DataTable dtAsset = new DataTable();

                log.DebugFormat("Call GetAssetSummaryByComp() Started. Parameters : Company = {0}, Province = {0}", company, province);

                dtAsset = ws.GetAssetSummaryByComp(company, province);

                log.DebugFormat("Call GetAssetSummaryByComp() Finished. Result {0} rows.", dtAsset.Rows.Count);

                string html = System.IO.File.ReadAllText(Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, "Template/HTML/AssetSummaryByComp.html"));

                if (dtAsset.Rows.Count > 0)
                {
                    string HTMLContentReport = "";

                    for (int i = 0; i < dtAsset.Rows.Count; i++)
                    {
                        HTMLContentReport += string.Format(@"<tr>
                            <td style='text-align: left; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px; min-width: 50px'>{0}</td>
                            <td style='text-align: left; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px; min-width: 50px'>{1}</td>
                            <td style='text-align: left; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px; min-width: 50px'>{2}</td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px; min-width: 50px'>{3}</td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px; min-width: 50px'>{4}</td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px; min-width: 50px'>{5}</td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px; min-width: 50px'>{6}</td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px; min-width: 50px'>{7}</td>

                            </tr>", dtAsset.Rows[i]["CompanyName"].ToString(),
                                                           dtAsset.Rows[i]["ProvinsiName"].ToString(),
                                                           dtAsset.Rows[i]["AsetTypeName"].ToString(),
                                                           string.Format("{0:n0}", Convert.ToDecimal(dtAsset.Rows[i]["hasAsset"].ToString())),
                                                           string.Format("{0:n0}", Convert.ToDecimal(dtAsset.Rows[i]["hasSertipikat"].ToString())),
                                                           string.Format("{0:n0}", Convert.ToDecimal(dtAsset.Rows[i]["hasGirik"].ToString())),
                                                           string.Format("{0:n0}", Convert.ToDecimal(dtAsset.Rows[i]["Lainnya"].ToString())),
                                                           string.Format("{0:n0}", Convert.ToDecimal(dtAsset.Rows[i]["LuasTanah"].ToString())));

                        totalAsset      += Convert.ToDecimal(dtAsset.Rows[i]["hasAsset"].ToString());
                        totalSertipikat += Convert.ToDecimal(dtAsset.Rows[i]["hasSertipikat"].ToString());
                        totalGirik      += Convert.ToDecimal(dtAsset.Rows[i]["hasGirik"].ToString());
                        totalLainnya    += Convert.ToDecimal(dtAsset.Rows[i]["Lainnya"].ToString());
                        totalArea       += Convert.ToDecimal(dtAsset.Rows[i]["LuasTanah"].ToString());
                    }

                    //Total
                    HTMLContentReport += string.Format(@"<tr>
                            <td colspan='3' style='text-align: left; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px; min-width: 50px'><b>{0}</b></td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px; min-width: 50px'><b>{1}</b></td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px; min-width: 50px'><b>{2}</b></td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px; min-width: 50px'><b>{3}</b></td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px; min-width: 50px'><b>{4}</b></td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px; min-width: 50px'><b>{5}</b></td>
                            </tr>", "Total",
                                                       string.Format("{0:n0}", totalAsset),
                                                       string.Format("{0:n0}", totalSertipikat),
                                                       string.Format("{0:n0}", totalGirik),
                                                       string.Format("{0:n0}", totalLainnya),
                                                       string.Format("{0:n0}", totalArea));

                    html = html.Replace("@ContentReport", HTMLContentReport);
                }
                else
                {
                    html = html.Replace("@ContentReport", "");
                }

                html = html.Replace("@PrintedBy", username + " " + DateTime.Now.ToString("dd/MM/yyyy hh:mm:ss"))
                       .Replace("@AsOf", "As of " + DateTime.Now.ToString("dd/MM/yyyy"));

                ltView.Text = html;
            }
            catch (Exception ex)
            {
                log.Error(ex.Message);
            }
        }
Пример #2
0
        protected void Page_Load(object sender, EventArgs e)
        {
            log.Info("ViewAkuisisiSummaryByComp Page_Load.");

            try
            {
                int    id       = Convert.ToInt32(Request.QueryString["id"]);
                string username = Request.QueryString["usr"];
                string company  = "";

                decimal totalPerencanaan            = 0;
                decimal totalAreaPerencanaan        = 0;
                decimal totalPemeriksaan            = 0;
                decimal totalAreaPemeriksaan        = 0;
                decimal totalProses                 = 0;
                decimal totalAreaProses             = 0;
                decimal totalSudahBayarProses       = 0;
                decimal totalJatuhTempoProses       = 0;
                decimal totalBelumJatuhTempoProses  = 0;
                decimal totalNilaiProses            = 0;
                decimal totalSelesai                = 0;
                decimal totalAreaSelesai            = 0;
                decimal totalSudahBayarSelesai      = 0;
                decimal totalJatuhTempoSelesai      = 0;
                decimal totalBelumJatuhTempoSelesai = 0;
                decimal totalNilaiSelesai           = 0;
                decimal totalSeluruhAkuisisi        = 0;
                decimal totalSeluruhArea            = 0;
                decimal totalSeluruhNilai           = 0;

                SIMAWS.WS_SIMA ws = new SIMAWS.WS_SIMA();

                DataTable dtParameter = new DataTable();

                log.DebugFormat("Call GetReportParameter() Started. Parameters : id = {0}", id);

                dtParameter = ws.GetReportParameter(id);

                if (dtParameter.Rows.Count > 0)
                {
                    company = dtParameter.Rows[0]["Parameter1"].ToString();
                }

                log.DebugFormat("Call GetReportParameter() Finished. Result {0} rows.", dtParameter.Rows.Count);

                DataTable dtAkuisisi = new DataTable();

                log.DebugFormat("Call GetAkuisisiSummaryByComp() Started. Parameters : Company = {0}", company);

                dtAkuisisi = ws.GetAkuisisiSummaryByComp(company);

                log.DebugFormat("Call GetAkuisisiSummaryByComp() Finished. Result {0} rows.", dtAkuisisi.Rows.Count);

                string html = System.IO.File.ReadAllText(Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, "Template/HTML/AkuisisiSummaryByComp.html"));

                if (dtAkuisisi.Rows.Count > 0)
                {
                    string HTMLContentReport = "";

                    int no = 1;

                    for (int i = 0; i < dtAkuisisi.Rows.Count; i++)
                    {
                        HTMLContentReport += string.Format(@"<tr>
                            <td style='text-align: center; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'>{0}</td>
                            <td style='text-align: left; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'>{1}</td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'>{2}</td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'>{3}</td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'>{4}</td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'>{5}</td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'>{6}</td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'>{7}</td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'>{8}</td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'>{9}</td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'>{10}</td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'>{11}</td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'>{12}</td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'>{13}</td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'>{14}</td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'>{15}</td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'>{16}</td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'>{17}</td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'>{18}</td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'>{19}</td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'>{20}</td>

                            </tr>", string.Format("{0:n0}", Convert.ToDecimal(no.ToString())),
                                                           dtAkuisisi.Rows[i]["CompanyName"].ToString(),
                                                           string.Format("{0:n0}", Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalPerencanaan"].ToString())),
                                                           string.Format("{0:n2}", Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalAreaPerencanaan"].ToString())),
                                                           string.Format("{0:n0}", Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalPemeriksaan"].ToString())),
                                                           string.Format("{0:n2}", Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalAreaPemeriksaan"].ToString())),
                                                           string.Format("{0:n0}", Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalProses"].ToString())),
                                                           string.Format("{0:n2}", Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalAreaProses"].ToString())),
                                                           string.Format("{0:n0}", Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalBayarProses"].ToString())),
                                                           string.Format("{0:n0}", Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalJatuhTempoProses"].ToString())),
                                                           string.Format("{0:n0}", Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalBelumJatuhTempoProses"].ToString())),
                                                           string.Format("{0:n0}", Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalNilaiProses"].ToString())),
                                                           string.Format("{0:n0}", Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalSelesai"].ToString())),
                                                           string.Format("{0:n2}", Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalAreaSelesai"].ToString())),
                                                           string.Format("{0:n0}", Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalBayarSelesai"].ToString())),
                                                           string.Format("{0:n0}", Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalJatuhTempoSelesai"].ToString())),
                                                           string.Format("{0:n0}", Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalBelumJatuhTempoSelesai"].ToString())),
                                                           string.Format("{0:n0}", Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalNilaiSelesai"].ToString())),
                                                           string.Format("{0:n0}", Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalAkuisisi"].ToString())),
                                                           string.Format("{0:n2}", Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalArea"].ToString())),
                                                           string.Format("{0:n0}", Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalNilai"].ToString())));

                        totalPerencanaan            += Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalPerencanaan"].ToString());
                        totalAreaPerencanaan        += Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalAreaPerencanaan"].ToString());
                        totalPemeriksaan            += Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalPemeriksaan"].ToString());
                        totalAreaPemeriksaan        += Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalAreaPemeriksaan"].ToString());
                        totalProses                 += Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalProses"].ToString());
                        totalAreaProses             += Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalAreaProses"].ToString());
                        totalSudahBayarProses       += Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalBayarProses"].ToString());
                        totalJatuhTempoProses       += Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalJatuhTempoProses"].ToString());
                        totalBelumJatuhTempoProses  += Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalBelumJatuhTempoProses"].ToString());
                        totalNilaiProses            += Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalNilaiProses"].ToString());
                        totalSelesai                += Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalSelesai"].ToString());
                        totalAreaSelesai            += Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalAreaSelesai"].ToString());
                        totalSudahBayarSelesai      += Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalBayarSelesai"].ToString());
                        totalJatuhTempoSelesai      += Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalJatuhTempoSelesai"].ToString());
                        totalBelumJatuhTempoSelesai += Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalBelumJatuhTempoSelesai"].ToString());
                        totalNilaiSelesai           += Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalNilaiSelesai"].ToString());
                        totalSeluruhAkuisisi        += Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalAkuisisi"].ToString());
                        totalSeluruhArea            += Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalArea"].ToString());
                        totalSeluruhNilai           += Convert.ToDecimal(dtAkuisisi.Rows[i]["TotalNilai"].ToString());

                        no += 1;
                    }

                    //Total
                    HTMLContentReport += string.Format(@"<tr>
                            <td colspan='2' style='text-align: left; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px; min-width: 50px'><b>{0}</b></td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'><b>{1}</b></td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'><b>{2}</b></td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'><b>{3}</b></td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'><b>{4}</b></td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'><b>{5}</b></td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'><b>{6}</b></td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'><b>{7}</b></td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'><b>{8}</b></td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'><b>{9}</b></td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'><b>{10}</b></td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'><b>{11}</b></td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'><b>{12}</b></td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'><b>{13}</b></td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'><b>{14}</b></td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'><b>{15}</b></td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'><b>{16}</b></td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'><b>{17}</b></td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'><b>{18}</b></td>
                            <td style='text-align: right; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px;'><b>{19}</b></td>
                            </tr>", "Total",
                                                       string.Format("{0:n0}", totalPerencanaan),
                                                       string.Format("{0:n2}", totalAreaPerencanaan),
                                                       string.Format("{0:n0}", totalPemeriksaan),
                                                       string.Format("{0:n2}", totalAreaPemeriksaan),
                                                       string.Format("{0:n0}", totalProses),
                                                       string.Format("{0:n2}", totalAreaProses),
                                                       string.Format("{0:n0}", totalSudahBayarProses),
                                                       string.Format("{0:n0}", totalJatuhTempoProses),
                                                       string.Format("{0:n0}", totalBelumJatuhTempoProses),
                                                       string.Format("{0:n0}", totalNilaiProses),
                                                       string.Format("{0:n0}", totalSelesai),
                                                       string.Format("{0:n2}", totalAreaSelesai),
                                                       string.Format("{0:n0}", totalSudahBayarSelesai),
                                                       string.Format("{0:n0}", totalJatuhTempoSelesai),
                                                       string.Format("{0:n0}", totalBelumJatuhTempoSelesai),
                                                       string.Format("{0:n0}", totalNilaiSelesai),
                                                       string.Format("{0:n0}", totalSeluruhAkuisisi),
                                                       string.Format("{0:n2}", totalSeluruhArea),
                                                       string.Format("{0:n0}", totalSeluruhNilai));

                    html = html.Replace("@ContentReport", HTMLContentReport);
                }
                else
                {
                    html = html.Replace("@ContentReport", "");
                }

                html = html.Replace("@PrintedBy", username + " " + DateTime.Now.ToString("dd/MM/yyyy hh:mm:ss"))
                       .Replace("@AsOf", "As of " + DateTime.Now.ToString("dd/MM/yyyy"));

                ltView.Text = html;
            }
            catch (Exception ex)
            {
                log.Error(ex.Message);
            }
        }
Пример #3
0
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                log.Info("ViewAssetDocumentChecklist Page_Load.");

                int    id       = Convert.ToInt32(Request.QueryString["id"]);
                string username = Request.QueryString["usr"];
                string type     = Request.QueryString["ty"];
                string namaAset = "";
                string kodeAset = "";
                string status   = "";

                SIMAWS.WS_SIMA ws = new SIMAWS.WS_SIMA();

                DataTable dtParameter = new DataTable();

                log.DebugFormat("Call GetReportParameter() Started. Parameters : id = {0}", id);

                dtParameter = ws.GetReportParameter(id);

                if (dtParameter.Rows.Count > 0)
                {
                    status = dtParameter.Rows[0]["Parameter1"].ToString();
                }

                log.DebugFormat("Call GetReportParameter() Finished. Result {0} rows.", dtParameter.Rows.Count);

                DataTable dtAsset = new DataTable();

                log.DebugFormat("Call GetAssetDocumentChecklist() Started.");

                dtAsset = ws.GetAssetDocumentChecklist(status);

                log.DebugFormat("Call GetAssetDocumentChecklist() Finished. Result {0} rows.", dtAsset.Rows.Count);

                string html        = System.IO.File.ReadAllText(Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, "Template/HTML/AssetDocumentChecklist.html"));
                string HTMLDokumen = "";

                if (dtAsset.Rows.Count > 0)
                {
                    if (type == "d")
                    {
                        string HTMLContent = "";

                        HTMLContent += @"<div style='page-break-after: always;'>
                                        <table style='width:100%; font-family: Arial; font-size: 11px; border-spacing: 0; border-collapse: collapse;'>
	                                        <tr style='font-family: Calibri; font-size: 16px; color: black; text-align: center'>
		                                        <td colspan='2'><b>Asset Document Checklist</b></td>
	                                        </tr>
	
	                                        <tr style='font-family: Calibri; font-size: 12px; color: black; text-align: center'>
		                                        <td colspan='2'><b>@AsOf</b></td>
	                                        </tr>

	                                        <tr style='height:20px'>
		                                        <td colspan='2'></td>
	                                        </tr>

                                            <tr>
	                                            <td style='width:500px; text-align:center; background-color:#E0E0E0; font-weight:bold; padding:5px 15px 5px 15px; height:20px; border:.5pt solid black;'>Nama Aset</td>
	                                            <td style='width:900px; text-align:center; background-color:#E0E0E0; font-weight:bold; padding:5px 15px 5px 15px; height:20px; border:.5pt solid black;'>Kekurangan</td>
                                            </tr>";

                        var DTAkuisisi = (from DataRow dRow in dtAsset.Rows
                                          select new
                        {
                            akuisisiID = dRow["AkuisisiID"],
                            kodeAkuisisi = dRow["KodeAkuisisi"],
                            statusAkuisisi = dRow["StatusAkuisisi"]
                        }).Distinct().ToList();

                        int  idx       = 1;
                        int  idxOri    = 1;
                        bool pageBreak = false;

                        foreach (var akuisisi in DTAkuisisi)
                        {
                            var DTAssetID = (from DataRow dRow in dtAsset.Rows
                                             where dRow["AkuisisiID"].ToString() == akuisisi.akuisisiID.ToString()
                                             select new
                            {
                                asetID = dRow["AsetID"],
                                akuisisiID = dRow["AkuisisiID"]
                            }).Distinct().ToList();

                            foreach (var asetid in DTAssetID)
                            {
                                var DTAsset = (from DataRow dRow in dtAsset.Rows
                                               where dRow["AsetID"].ToString() == asetid.asetID.ToString() &&
                                               dRow["AkuisisiID"].ToString() == asetid.akuisisiID.ToString()
                                               select new
                                {
                                    akuisisiID = dRow["AkuisisiID"],
                                    kodeAkuisisi = dRow["KodeAkuisisi"],
                                    kodeAset = dRow["KodeAset"],
                                    namaAset = dRow["NamaAset"],
                                    jenisDokumen = dRow["JenisDokumen"],
                                    keterangan = dRow["Keterangan"]
                                }).ToList();

                                idx++;

                                if (idx > 115 || (idxOri + DTAsset.Count()) > 115)
                                {
                                    pageBreak = true;

                                    idx    = 1;
                                    idxOri = 1;
                                }

                                foreach (var asset in DTAsset)
                                {
                                    if (idx > 115)
                                    {
                                        pageBreak = true;
                                    }

                                    namaAset = asset.namaAset.ToString();
                                    kodeAset = asset.kodeAset.ToString();

                                    if (asset.keterangan.ToString() == "")
                                    {
                                        HTMLDokumen += asset.jenisDokumen.ToString().Trim() + "<br/>";
                                    }
                                    else
                                    {
                                        HTMLDokumen += asset.jenisDokumen.ToString().Trim() + " - <i>" + asset.keterangan.ToString().Trim() + "</i><br/>";
                                    }

                                    idx++;
                                }

                                idxOri = idx;

                                if (pageBreak)
                                {
                                    HTMLContent += @"   </table>
                                             </div>

                                             <div style='page-break-after: always;'>
                                                <table style='width:100%; font-family: Arial; font-size: 11px; border-spacing: 0; border-collapse: collapse;'>
	                                                <tr style='font-family: Calibri; font-size: 16px; color: black; text-align: center'>
		                                                <td colspan='11'><b>Asset Document Checklist</b></td>
	                                                </tr>
	
	                                                <tr style='font-family: Calibri; font-size: 12px; color: black; text-align: center'>
		                                                <td colspan='21'><b>@AsOf</b></td>
	                                                </tr>

	                                                <tr style='height:20px'>
		                                                <td colspan='11'></td>
	                                                </tr>

                                                    <tr>
	                                                    <td style='width:500px; text-align:center; background-color:#E0E0E0; font-weight:bold; padding:5px 15px 5px 15px; height:20px; border:.5pt solid black;'>Nama Aset</td>
	                                                    <td style='width:900px; text-align:center; background-color:#E0E0E0; font-weight:bold; padding:5px 15px 5px 15px; height:20px; border:.5pt solid black;'>Kekurangan</td>
                                                    </tr>";

                                    pageBreak = false;
                                }

                                HTMLContent += @"<tr bgcolor=#F7F7F7><td colspan=2 style='text-align: left; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px; min-width: 50px'><b>Kode Akuisisi : " + akuisisi.kodeAkuisisi.ToString() + " - " + akuisisi.statusAkuisisi.ToString() + "</b></td></tr>";

                                HTMLContent += string.Format(@"<tr>                            
                                                             <td style='text-align: left; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px; min-width: 50px'>{0}</td>
                                                             <td style='text-align: left; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px; min-width: 50px'>{1}</td>
                                                           </tr>", namaAset, HTMLDokumen);

                                HTMLDokumen = "";
                            }
                        }

                        HTMLContent += @"<table style='width:100%; font-family: Arial; font-size: 11px; border-spacing: 0; border-collapse: collapse;'>
                                        <tr style='height:20px'>
                                            <td></td>
                                        </tr>
                
                                        <tr style='font-family: Calibri; font-size: 10px; color: black; text-align: center'>
                                            <td>-- End of Report --</td>
                                        </tr>

                                        <tr style='font-family: Calibri; font-size: 10px; color: black; text-align: left'>
                                            <td>Printed by : @PrintedBy</td>
                                        </tr>
                                    </table>";

                        html = html.Replace("@ContentReport", HTMLContent);
                    }
                    else if (type == "v")
                    {
                        string HTMLContent = "";

                        HTMLContent += @"<div style='page-break-after: always;'>
                                        <table style='width:100%; font-family: Arial; font-size: 11px; border-spacing: 0; border-collapse: collapse;'>
	                                        <tr style='font-family: Calibri; font-size: 16px; color: black; text-align: center'>
		                                        <td colspan='2'><b>Asset Document Checklist</b></td>
	                                        </tr>
	
	                                        <tr style='font-family: Calibri; font-size: 12px; color: black; text-align: center'>
		                                        <td colspan='2'><b>@AsOf</b></td>
	                                        </tr>

	                                        <tr style='height:20px'>
		                                        <td colspan='2'></td>
	                                        </tr>

                                            <tr>
	                                            <td style='width:500px; text-align:center; background-color:#E0E0E0; font-weight:bold; padding:5px 15px 5px 15px; height:20px; border:.5pt solid black;'>Nama Aset</td>
	                                            <td style='width:900px; text-align:center; background-color:#E0E0E0; font-weight:bold; padding:5px 15px 5px 15px; height:20px; border:.5pt solid black;'>Kekurangan</td>
                                            </tr>";

                        var DTAkuisisi = (from DataRow dRow in dtAsset.Rows
                                          select new
                        {
                            akuisisiID = dRow["AkuisisiID"],
                            kodeAkuisisi = dRow["KodeAkuisisi"],
                            statusAkuisisi = dRow["StatusAkuisisi"]
                        }).Distinct().ToList();

                        foreach (var akuisisi in DTAkuisisi)
                        {
                            var DTAssetID = (from DataRow dRow in dtAsset.Rows
                                             where dRow["AkuisisiID"].ToString() == akuisisi.akuisisiID.ToString()
                                             select new
                            {
                                asetID = dRow["AsetID"],
                                akuisisiID = dRow["AkuisisiID"]
                            }).Distinct().ToList();

                            foreach (var asetid in DTAssetID)
                            {
                                var DTAsset = (from DataRow dRow in dtAsset.Rows
                                               where dRow["AsetID"].ToString() == asetid.asetID.ToString() &&
                                               dRow["AkuisisiID"].ToString() == asetid.akuisisiID.ToString()
                                               select new
                                {
                                    akuisisiID = dRow["AkuisisiID"],
                                    kodeAkuisisi = dRow["KodeAkuisisi"],
                                    kodeAset = dRow["KodeAset"],
                                    namaAset = dRow["NamaAset"],
                                    jenisDokumen = dRow["JenisDokumen"],
                                    keterangan = dRow["Keterangan"]
                                }).ToList();

                                foreach (var asset in DTAsset)
                                {
                                    namaAset = asset.namaAset.ToString();
                                    kodeAset = asset.kodeAset.ToString();

                                    if (asset.keterangan.ToString() == "")
                                    {
                                        HTMLDokumen += asset.jenisDokumen.ToString().Trim() + "<br/>";
                                    }
                                    else
                                    {
                                        HTMLDokumen += asset.jenisDokumen.ToString().Trim() + " - <i>" + asset.keterangan.ToString().Trim() + "</i><br/>";
                                    }
                                }

                                HTMLContent += @"<tr bgcolor=#F7F7F7><td colspan=2 style='text-align: left; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px; min-width: 50px'><b>Kode Akuisisi : " + akuisisi.kodeAkuisisi.ToString() + " - " + akuisisi.statusAkuisisi.ToString() + "</b></td></tr>";

                                HTMLContent += string.Format(@"<tr>                            
                                                             <td style='text-align: left; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px; min-width: 50px'>{0}</td>
                                                             <td style='text-align: left; padding: 5px 15px 5px 15px; border: 0.5pt solid black; height: 20px; min-width: 50px'>{1}</td>
                                                           </tr>", namaAset, HTMLDokumen);

                                HTMLDokumen = "";
                            }
                        }

                        HTMLContent += @"</table>
                                         </div>

                                        <table style='width:100%; font-family: Arial; font-size: 11px; border-spacing: 0; border-collapse: collapse;'>
                                        <tr style='height:20px'>
                                            <td></td>
                                        </tr>
                
                                        <tr style='font-family: Calibri; font-size: 10px; color: black; text-align: center'>
                                            <td>-- End of Report --</td>
                                        </tr>

                                        <tr style='font-family: Calibri; font-size: 10px; color: black; text-align: left'>
                                            <td>Printed by : @PrintedBy</td>
                                        </tr>
                                        </table>";

                        html = html.Replace("@ContentReport", HTMLContent);
                    }
                }
                else
                {
                    html = html.Replace("@ContentReport", "");
                }

                html = html.Replace("@PrintedBy", username + " " + DateTime.Now.ToString("dd/MM/yyyy hh:mm:ss"))
                       .Replace("@AsOf", "As of " + DateTime.Now.ToString("dd/MM/yyyy"));

                ltView.Text = html;
            }
            catch (Exception ex)
            {
                log.Error(ex.Message);
            }
        }