Dynamic List sorting via reflection (C#)

Dynamic List sorting via reflection (C#)

These methods allow the developer to sort generic list of objects based on any simple property(int, string, bool etc) of the object.

private static List DynamicSort(List genericList, string sortExpression, string sortDirection)
{
if(!string.IsNullOrEmpty(sortExpression))
{
int sortReverser = sortDirection.ToLower().StartsWith("asc") ? 1 : -1;

Comparison comparisonDelegate =
new Comparison(delegate(T x, T y)
{
MethodInfo compareToMethod = GetCompareToMethod(x, sortExpression);

object xSortExpressionValue = x.GetType().GetProperty(sortExpression).GetValue(x, null);
object ySortExpressionValue = y.GetType().GetProperty(sortExpression).GetValue(y, null);

object result = compareToMethod.Invoke(xSortExpressionValue, new object[] { ySortExpressionValue });

return sortReverser * Convert.ToInt16(result);
});

genericList.Sort(comparisonDelegate);
}
return genericList;
}

private static MethodInfo GetCompareToMethod(T genericInstance, string sortExpression)
{
Type genericType = genericInstance.GetType();
object sortExpressionValue = genericType.GetProperty(sortExpression).GetValue(genericInstance, null);
Type sortExpressionType = sortExpressionValue.GetType();
MethodInfo compareToMethodOfSortExpressionType = sortExpressionType.GetMethod("CompareTo", new Type[] { sortExpressionType });

return compareToMethodOfSortExpressionType;
}

Read the rest of this entry »

Microsoft Small Basic

Pemrograman Komputer didefinisikan sebagai process pembuatan perangkat lunak (software) komputer  dengan menggunakan bahasa pemrogramman. Sama halnya seperti kita berbicara dan memahami bahasa Inggris ataupun bahasa lainnya, komputer pun dapat memahami dalam setiap penulisan bahasa yang kita tuliskan. Maka ini di sebut bahasa pemrogramman. Pada awalnya hanya ada sedikit bahasa pemrogramman yang mudah dipelajari dan dimengerti. Tetapi dengan seiring perkembangan zaman teknologi computer semakin berkembang lebih canggih lagi. Bahasa pemrogramman pun juga terus berkembang cepat, dan terdapat sekumpulan konsep yang lebih rumit dalam perjalanannya. Hasil dari bahasa pemrogramman modern ini menjadi tantangan tersendiri yang menarik bagi pemula. Dan faktanya banyak orang yang takut untuk belajar ataupun mencoba dalam pemrogramman computer.

Read the rest of this entry »

Sample SSIS – Export To Excel

Pada kesempatan kali ini saia mencoba untuk membuat sample sederhana menggunakan SSIS (SQL Server Integration Sevices) untuk Export data dari Sql Server ke Excel.

Langkah-langkahnya seperti berikut:

1. Pastikan BIDS sudah terinstall dan tekan file-> new->project

Read the rest of this entry »

Sekilas SQL Server Integration Services

Dalam artikel kali ini saya mencoba untuk sedikit menulis tentang apa yang saat ini saya sedang pelajari. Saya akan mengupas sedikit tentang SSIS (SQL Server Integration Services).

Apa itu SSIS ??

SSIS adalah singkatan dari SQL Server Integration Services. SSIS merupakan tools yang disediakan oleh Microsoft yang digunakan untuk proses ETL (Extract, Transform, Load).  SSIS pertama kali di released bersamaan dengan  SQL Server 2005. SSIS digunakan sebagai pengganti DTS (Data Transformation Services) yang sebelumnya ada pada versi SQL Server seperti SQL Server 7.0 dan SQL Server 2000.

Apa fungsinya ?

  • pengambilan data dari source system, misal:SQL Server, DB2, SAP dll
  • dapat merubah dari macam-macam data; seperti : merubah dari satu tipe ke tipe yang lain, untuk kalkulasi dll
  • memuat data ke dalam source system, misal SQL Server
  • dan mendefinisikan workflow.

Overview SharePoint

SharePoint adalah sebuah platform sistem manajemen dokumen berbasis web yang diciptakan oleh Microsoft Corporation. SharePoint dapat digunakan untuk menjalankan situs-situs web yang terdiri atas ruangan kerja (shared workspace) dan dokumen yang digunakan secara bersama-sama (shared documents), selain tentunya aplikasi khusus seperti wiki dan blog. Fitur-fitur SharePoint ini bisa diakses oleh sebuah penjelajah web (meski yang disarankan adalah keluarga Microsoft Internet Explorer). SharePoint tidaklah dimaksudkan untuk mengganti server berkas secara keseluruhan (karena memang dalam SharePoint terdapat limitasi ukuran berkas hanya hingga 2 gigabita saja). Fungsionalitas SharePoint terbangun dari beberapa web part, seperti halnya daftar tugas (task list) atau panel diskusi (discussion pane). Web-part-web-part tersebut kemudian dimasukkan ke dalam halaman web, yang kemudian dijalankan di atas portal SharePoint. Situs SharePoint, sebenarnya merupakan aplikasi ASP.NET2.0, yang berjalan di atas Microsoft Internet Information Services (IIS) dan menggunakan basis data Microsoft SQL Server sebagai tempat penyimpanan data yang bekerja di belakang layar.

Read the rest of this entry »