private void BindData(bool isUpdate) { DataTable dt = new DataTable(); dt.Columns.Add("stok card id"); dt.Columns.Add("transaction id"); dt.Columns.Add("faktur"); dt.Columns.Add("trans status"); dt.Columns.Add("item id"); dt.Columns.Add("status add"); dt.Columns.Add("jumlah"); dt.Columns.Add("saldo"); dt.Columns.Add("saldo 2"); DataRow dr; IList listItem = DataMaster.GetAll(typeof(MItem)); MItem item; IList listStok; TStokCard stokCard; TTransaction trans; ItemGudangStok stok; decimal t = 0; for (int i = 0; i < listItem.Count; i++) { item = (MItem)listItem[i]; listStok = DataMaster.GetSortByListLike(typeof(TStokCard), TStokCard.ColumnNames.ItemId, item.ItemId, TStokCard.ColumnNames.StokCardId, "ASC"); t = 0; for (int j = 0; j < listStok.Count; j++) { stokCard = (TStokCard)listStok[j]; trans = (TTransaction)DataMaster.GetObjectByProperty(typeof(TTransaction), TTransaction.ColumnNames.TransactionId, stokCard.TransactionId); if (j == 0) { if (trans.TransactionStatus == ListOfTransaction.SalesVIP.ToString()) { t = stokCard.StokCardSaldo - (stokCard.StokCardQuantity * 2); } else { t = stokCard.StokCardSaldo + (stokCard.StokCardQuantity * 2); } } else { if (trans.TransactionStatus == ListOfTransaction.SalesVIP.ToString()) { t = t - stokCard.StokCardQuantity; } else { t = t + stokCard.StokCardQuantity; } } dr = dt.NewRow(); dr[0] = stokCard.StokCardId; dr[1] = trans.TransactionId; dr[2] = trans.TransactionFactur; dr[3] = trans.TransactionStatus; dr[4] = item.ItemId; dr[5] = stokCard.StokCardStatus; dr[6] = stokCard.StokCardQuantity; dr[7] = stokCard.StokCardSaldo; dr[8] = t; dt.Rows.Add(dr); if (isUpdate) { if (trans.TransactionStatus == ListOfTransaction.SalesVIP.ToString()) { stokCard.StokCardStatus = false; } stokCard.StokCardSaldo = t; DataMaster.UpdatePersistence(stokCard); if (j == listStok.Count - 1) { stok = (ItemGudangStok)DataMaster.GetObjectByProperty(typeof(ItemGudangStok), ItemGudangStok.ColumnNames.GudangId, stokCard.GudangId, ItemGudangStok.ColumnNames.ItemId, stokCard.ItemId); if (stok != null) { stok.ItemStok = t; DataMaster.UpdatePersistence(stok); } } } } } dataGridView1.DataSource = dt; dataGridView1.Show(); Inventori.Module.ModuleControlSettings.SetGridDataView(dataGridView1); }