Posts

Showing posts from 2017

The DELETE statement conflicted with the REFERENCE constraint "FK_subplan_job_id"

Image
Pada posting kali ini akan dibahas cara mengatasi error " The DELETE statement conflicted with the REFERENCE constraint 'FK_subplan_job_id' " pada saat kita akan menghapus job di SQL Server. Error diatas disebabkan adanya relasi antara tabel-tabel sysmaintplan sehingga kita harus menghapus relasi tersebut pada level pada tabel paling bawah. Dibawah ini adalah langkah-langkah sebelum menghapus job tersebut : Cari ID plan dengan query dibawah ini SELECT name, id FROM msdb.dbo.sysmaintplan_plans Hapus plan_id dari tabel msdb.dbo.sysmaintplan_log untuk plan_id pada poin 1. DELETE FROM msdb.dbo.sysmaintplan_log WHERE plan_id = 'AC1514E8-E14F-4468-B923-9FB05395112C' Hapus plan_id dari tabel msdb.dbo.sysmaintplan_subplans untuk plan_id pada poin 1. DELETE FROM msdb.dbo.sysmaintplan_subplans WHERE plan_id = 'AC1514E8-E14F-4468-B923-9FB05395112C' Hapus plan_id dari tabel msdb.dbo.sysmaintplan_plans untuk plan_id pada poin 1. DELETE FROM msdb.d

Open and Mapping Web App From TFS Into Local Hardisk

Image
Pada posting kali ini kita akan membahas bagaimana cara membuka website di visual studio dan otomatis melakukan mapping ke dalam local hardisk kita. Agar pada saat download source code tersebut dari TFS sudah otomatis melakukan mapping dan ter-hubung dengan TFS. Dengan demikian maka kita dapat melakukan checkin maupun checkout. Sedikit berbeda dengan tipe aplikasi berjenis project yang pada saat kita mapping ke local akan langsung terhubung dengan TFS pada saat kita buka dari local folder kita. Seperti pada gambar dibawah ini : Untuk jenis website maka langkahnya akan berbeda karena kita dapat langsung membuka jenis web app langsung dari TFS dan oleh visual studio akan otomatis termapping ke dalam local hardisk kita. Seperti yang pada gambar dibawah ini : Siapkan nama folder di local hardsik untuk proses mapping Langkah terakhir adalah menyimpan web tersebut yang akan memunculkan konfirmasi pembuatan solution. Semoga posting tenta

Get URL PageName Using SQL Server Query

Untuk keperluan data analitic aplikasi berbasis web. Pada umumnya kita menggunakan log yang dihasilkan oleh web server. Contohnya adalah jika kita menggunakan IIS Web Server maka kita dapat melihat file log didalam folder Log yang ada di folder inetpub. Isi dari file log tersebut jika kita parsing menggunakan IISLogParser maka terdapat kolom URI yang berisi alamat URL yang diakses oleh user. Biasanya kita ingin memisahkan antara base URL, page yang diakses, dan parameter yang diterima agar lebih mudah dikelompokkan. Jika kita menyimpan informasi URL tersebut didalam database SQL Server maka kita dapat membuat function untuk memisahkan informasi URL dengan lebih spesifik. Dibawah ini adalah sample function yang dapat kita gunakan untuk memilah. CREATE FUNCTION [dbo].[udf_ExtractPartsofURLString] (    @URLString   VARCHAR ( MAX ) -- the URL string to parse ) RETURNS @Results TABLE        (            SuppliedURLString       VARCHAR ( MAX ),   -- http://www.mssqltips.com/tip

IIS Log Parser Using C# and Saved In Database

Image
Pada posting berjudul " IIS Log Parser Using C# and Saved In Database " kali ini penulis akan memberikan sample program untuk melakukan parsing IIS Log ke dalam database SQL Server. Fungsi IIS Log sendiri untuk mencatat lalu lintas apa saja yang terjadi di dalam web server sehingga kita dapat menganalisa utilisasi dari aplikasi maupun respond time dari aplikasi terhadap request yang diminta oleh client. Source code asli dari sample yanga akan saya berikan diambil dari situs :  https://www.codeproject.com/Articles/18749/LogParser-DataProvider-for-ADO-NET. Pada posting ini source code tersebut telah dimodifikasi sehingga hasil parsing dapat langsung disimpan kedalam database sehingga lebih mudah untuk diolah untuk laporan analisa. Penjelasan Singkat Hal yang pertama kita perlukan adalah membuat database untuk menyimpan hasil parsing IIS Log. Dibawah ini contoh script dan tampilan database yang penulis gunakan untuk menampung hasil parsing. Contoh Struktur Table US

Passing Value From User Control To Parent Page in ASP.NET

Sesuai dengan judul postingan yaitu " Passing Value From User Control To Parent Page in ASP.NET ". Sebenarnya cara paling mudah menggunakan session yang dibuat pada user control tetapi cara ini tidak direkomendasikan karena session memiliki timeout dan mengambil banyak resource. Sedangkan cara lainnya adalah membuat property dan mengeset property tersebut dengan memanfaatkan viewstate seperti pada contoh dibawah ini  : Partial Class Controls_ADUserControl     Inherits System.Web.UI.UserControl     Public _ADUser As String     Public Property ADUser() As String         Get             Return Convert.ToString(ViewState("ADAccount"))         End Get         Set(value As String)             ViewState("ADAccount") = value         End Set     End Property     Protected Sub BtnSearchAD_Click(sender As Object, e As System.EventArgs) Handles BtnSearchAD.Click         ADUser = "Return Value"     End Sub End Class Kemudian di parent

The connection to the server was reset while the page was loading.

Image
Sebagai developer web khususnya yang menggunakan ASP.NET. Pernahkah pembaca mendapatkan error seperti berikut ini " The connection to the server was reset while the page was loading " yang terjadi setelah request postback ke server yang membutuhkan waktu yang cukup lama. Penyebab dari error diatas adalah proses di server membutuhkan waktu yang lama atau jumlah data yang ditampilkan melewati batasan default aplikasi web. Solusinya adalah dengan menambahkan konfigurasi di web config tag dibawah ini :  <httpRuntime maxRequestLength="1048576" executionTimeout="800" /> Letakkan tag diatas di dalam tag <system.web></system.web> Semoga posting tentang " The connection to the server was reset while the page was loading " diatas dapat bermanfaat. Salam,

Less Than Equal For Date Data Type In SQL Server

Bertemu lagi dengan penulis yang akan membahas tentang LESS THAN EQUAL TO dan GREATER THAN EQUAL TO yang digunakan untuk tipe data tanggal pada SQL Server. Penggunaan operator BETWEEN di query sql server akan memberikan hasil nilai yang berada diantara rentang BETWEEN tersebut. Sedangkan penggunaan LESS THAN EQUAL TO (dengan operator <=) atau GREATER THAN EQUAL TO  (dengan operator >=) akan memberikan hasil nilai yang dimulai dari rentang awal, nilai diantara rentang, dan nilai rentang akhir. Penggunaan LESS THAN EQUAL TO dan GREATER THAN EQUAL TO memang mudah penggunaanya terutama untuk data numeric. Tapi bagaimana untuk tipe data tanggal? Di posting sebelumnya penulis pernah membahasa tentang " Date Between Not Working In SQL Server " yang menjadi acuan pada penulisan artikel kali ini. Penggunaan LESS THAN EQUAL TO dan GREATER THAN EQUAL TO untuk tipe data tanggal dapat memanfaat fungsi convert terlebih dahulu dikombinasikan dengan operator <= dan >= sep

SQL Server Data Encryption

SQL Server 2005 dan SQL Server 2008 menyediakan fitur eknripsi untuk melindungi data dari serangan hacker. Hacker mungkin mampu untuk melakukan akses ke database maupun table, tetapi dengan memberi enkripsi mereka tidak akan memahami data dan menggunakannya. Saat ini sudah menjadi hal yang krusial untuk melakukan enkripsi data yang disimpan didalam database sama seperti keamanan pada saat transmisi data melalui jaringan antara client dan server. Hirarki enkripsi dibedakan dalam 3 level sekuritu. Level-level tersebut menyediakan mekanisme yang  berbeda pada saat melindungi data melalui jaringan maupub server lokal. Hirarki level yang berbeda memperbolehkan lebih dari 1 instan server untuk berjalan dalam 1 server. Windows Level – Highest Level – Menggunakan Windows DP API untuk enkripsi SQL Server Level – Moderate Level – Menggunakan Services Master Key untuk enkripsi Database Level – Lower Level – Menggunakan Database Master Key untuk enkripsi Terdapat dua jenis kunci yang di

How Do I Apply a CSS When a Control is Runat=Server?

Image
Seperti judul posting " How Do I Apply a CSS When a Control is Runat=Server? ". Maka pada posting kali ini penulis akan memberikan gambaran cara menambahkan CSS pada HTML control yang diberi attribut runat=server pada aplikasi berbasis ASP.NET. Pada contoh berikut ini akan menggunakan control DIV yang umum dipakai. Seperti terlihat pada gambar dibawah ini, control DIV tersebut diber tambahan attribut runat=server . Setelah control tersebut diber attribut runat=server maka kita dapat mengakses control melalui server side code untuk menambahkan CSS ketika menekan tombol ataupun pada saat page load . Hasil dari penambahan attribut CSS melalui server side code dapat kita lihat seperti gambar dibawah ini. Ketika kita melakukan inspek terhadap DIV tersebut maka dapat kita lihat terdapat attribut baru sesuai dengan yang kita tambahkan melalui server side code . Semoga posting tentang " How Do I Apply a CSS When a Control is Runat=Server? &q

K2 Mail Event Error The Parameter 'address' Cannot Be an Empty String

Image
Bagi pengguna K2 Workflow mungkin sudah tidak asing lagi dengan error " The Parameter 'address' Cannot Be an Empty String " yang terjad pada saat terjadi kegagalan mengirim notifikasi ke partisipan menggunakan mail event dari K2 Workflow . Penyebab munculnya error tersebut di Workspace - Workflow Server - Error Profile adalah alamat email yang digunakan berisi string kosong. Di K2 Workflow cara pengechekannya adalah sebagai berikut : Jika pengiriman email mengacu ke alamat email maka pastikan Stored Procedure yang menghasilkan alamat email tidak kosong. Cek preceeding rule pada destination user dan pastikan untuk setiap partisipan memiliki email agar tiap slot yang akan dibuat tidak error. Jika menggunakan AD Account maka pastikan data email di kolom properties tabel [Identity].[Identity] pada tag email berisi alamat email. Cek juga di bagian Data Instance Workflow tersebut destinasi yang sudah di-assign pada saat instance workflow dibuat. Maksudnya ada

Internal Server Error 500 - CombinedResource.ashx In K2 SmartForm

Image
Problem " Internal Server Error 500 - CombinedResource.ashx In K2 SmartForm " ini terjadi pada saat kami memutuskan untuk mengganti HTTP menjadi HTTPS di K2 Server. Sebelum kita memutuskan untuk merubah HTTP menjadi HTTPS di K2, maka perlu dilihat beberapa item dibawah ini :  String Table di Workspace - Workflow Server ConnectionString EWS (Exchange Web Service) di Host Server Bin Application Pool Identity Passoword Smartform Runtime URL setting PDF Service Instance Masalah yang kami temui adalah pada saat mengakses Smartform halaman yang diakses tidak memunculkan display seperti biasa tetapi hanya muncul loading icon yang berputar. Setelah kami cek menggunakan Developer Tools Browser di bagian Network. Terdapat request yang resultnya adalah Internal Server Error 500. Sehingga kami mengambil kesimpulan bahwa ada bagian rendering yang tidak terkirim ke client. Akhirnya kami membuka tiket ke K2 Support untuk mengatasi masalah tersebut. Berikut ini tiket yan

Cannot Save a PDF File in The Form

Image
Problem Cannot Save a PDF File in The Form di K2 Smartform . Resolution Dibawah ini adalah cara untuk mengatasi problem gagal simpan ke PDF pada K2 Smartform. Kita harus menggunakan PDF Converter Service Instance di dalam SmartObject Service Tester dengan mengikuti langkah-langkah dibawah ini : - Change Authentication Mode from Impersonate to ServiceAccount - Change useWebkit from true to false - Change serializeResources from true to false   Semoga posting tentang Cannot Save a PDF File in The Form diatas dapat bermanfaat . Salam,

K2 Information Failed To Return Data Table In Workspace

Image
Posting berjudul " K2 Information Failed To Return Data Table In Workspace " kali ini akan membahas cara memberikan akses ke dalam Workflow Server di K2 Workspace. Pesan informasi yang muncul pada saat kita tidak memiliki akses di Workflow Server di Workspace seperti terlihat dibawah ini : Dibawah ini adalah langkah-langkah untuk menambahkan akses ke dalam Workflow Server di K2 Workspace. Langkah 1 Langkah 2   Langkah 3 Centang bagian admin, export, impersonate dan kemudian klik icon simpan yang berada diatas. Semoga posting tenang  " K2 Information Failed To Return Data Table In Workspace " diatas dapat bermanfaaat. Salam,

Export Network Developer Tool To Excel

Image
Capture network yang terdapat di browser pada umumnya berupa HAR file. Sedangkan HAR file sendiri adalah file standard yang berisi infomasi dalam format JSON. Dibawah ini adalah tampilan Developer Tool untuk mengcapture network di browser. Kekurangan HAR file adalah karena format tersebut akan lebih sulit dibaca dibanding format tabular yang biasa kita temukan dalam excel. Sehingga kita perlu merubah format HAR file tersebut menjadi bentuk yang mudah dibaca. Untuk melakukan konversi file HAR tersebut kita bisa submit ke alamat berikut ini : toolbox.googleapps.com www.softwareishard.com Kemudian dari result yang dihasilkan dari kedua situs diatas kita bisa langsung paste ke dalam excel agar lebih mudah dibaca dan dirapikan. Semoga posting tentang " Export Network Developer Tool To Excel " diatas dapat bermanfaat. Salam,

Remove Metrics Header Column in MicroStrategy Document Grid

Image
Di bawah ini adalah gambar setting cara untuk menghilangkan column metrics pada Document MicroStrategy . Langkah yang perlu dilakukan adalah : Masuk di design mode kemudian klik kanan grid. Pilih Properties dan Formatting Pada popup yang muncul pilih pilihan grid sebelah kiri Tick pada pilihan remove extra column Semoga posting tentang " Remove Metrics Header Column in Microstrategy Document Grid " diatas dapat bermanfaat. Salam,

Create Custom Worklist In K2 Designer

Image
Posting kali ini akan membahas tentang " Create Custom Worklist In K2 Designer ". Hal yang perlu dipersiapkan untuk membuat custom worklist adalah sebagai berikut : Buatlah SmartObject untuk Worklist Service Broker melalui SmartObject Tester . Buatlah Stored Prosedur yang kolomnya menyerupai Worklist Standar. Contoh kolom bisa dilihat dari SmartObject yang telah dibuat pada nomor 1. Buat SmartObject dari Stored Prosedur pada nomor 2. Bukalah K2 Designer dengan browser lalu edit  SmartObject pada nomor 1 kemudian petakan attribute dan buatlah asosiasi pada kedua SmartObject diatas tersebut. Petakan one-on-one dengan kolom folio sebagai key pada SmartObject Worklist Standar pada SmartObject Stored Prosedur yang kita buat.  Setelah hal diatas sudah siap maka kita hanya perlu membuat SmartView untuk Custom Worklist tersebut dengan memanggil methode Get Worklist dengan parameter username sesuai dengan login user. Penjelasn detail bisa dilihat pada gambar dibawa

Remove Duplicate Row Using Query In SQL Server

Image
Sesuai dengn judul " Remove Duplicate Row Using Query In SQL Server ". Pada posting kali ini kita akan belajar cara menggunakan conditional delete untuk menghapus salah 1 baris dari 2 buah baris duplikat dengan menghapus baris yang memiliki nilai paling kecil. Script untuk menghapus seperti terlihat dibawah ini : delete sap_volume_dsp             from sap_volume_dsp             join             (             -- get equip duplicate with min production             select lequnr, dateid, [shift], min(prod) as prod from sap_volume_dsp where rtrim(Lequnr) in             (                 -- get duplicate equip                 select rtrim(lequnr) from                 (                     select count(lequnr) as jml, Lequnr from sap_volume_dsp group by dateid, lequnr, [shift]                 ) tmp where jml > 1             ) group by lequnr, dateid, [shift]             ) tabfilter             on             sap_volume_dsp.lequnr = tabfilter.lequnr             and sap_

Create Table HTML From Table SQL (Part 1 of 2)

Image
Pada posting kali ini saya akan jelaskan bagaimana cara untuk membuat tabel HTML dari sebuah tabel di database. Pada umumnya kategori di dalam database merupakan data yang berupa baris sedangkan kategori didalam tampilan web HTML berupa kolom. Query yang kita butuhkan untuk membentuk table HTML adalah left join dengan cara melakukan left join dengan table itu sendiri. Gambar dibawah ini adalah hasil yang kita inginkan : HTML table tersebut mempunyai beberapa kondisi : Maksimal baris untuk setiap kategori adalah 5. Jika jumlah item dari kategori lebih dari 5 maka pindahkan ke samping. Untuk kategori yang sama maka merge judul kategori-nya. Berikut ini adalah langkah-langkah untuk membuat HTML dari tabel diatas : Buatlah row number untuk setiap jenis location id menggunakan row_number partition by. Tentukan jumlah maksimal baris untuk setiap location id (maksimal 5 baris untuk sample diatas). Tentukan jumlah maksimal  kolom untuk setiap halaman (maksimal