Example #1
0
        public static string TambahData(SuratJalan pSuratJalan)
        {
            using (var tranScope = new TransactionScope(TransactionScopeOption.RequiresNew))
            {
                // perintah sql 1 = untuk menambahkan data ke tabel surat Jalan
                string sql1 = "INSERT INTO suratJalan(noSuratJalan,jenis, tgl,  keterangan, nosuratpermintaan) VALUES ('" +
                              pSuratJalan.NoSuratJalan + "', '" +
                              pSuratJalan.Jenis + "', '" +
                              pSuratJalan.Tgl.ToString("yyyy-MM-dd ") + "', '" +
                              pSuratJalan.Keterangan + "', '" +
                              pSuratJalan.SuratPermintaan.NoSuratPermintaan + "')";

                try
                {
                    //jalankan perintah untuk menambahkan  ke tabel suratjalan
                    Koneksi.JalankanPerintahDML(sql1);
                    //menambahkan semua barang yang akan di kirim, ke dalam detilsuratjalan
                    for (int i = 0; i < pSuratJalan.ListDetilSuratJalan.Count; i++)
                    {
                        //perintah sql2 = untuk menambahkan barang barang yang dikirim ke tabel detilsuratjalan
                        string sql2 = "INSERT INTO detilsuratjalan(nosuratjalan, kodebarang, jumlah) VALUES ('" +
                                      pSuratJalan.NoSuratJalan + "', '" +
                                      pSuratJalan.ListDetilSuratJalan[i].Barang.KodeBarang + "', " +
                                      pSuratJalan.ListDetilSuratJalan[i].Jumlah + ")";

                        //menjalankan perintah untuk menambahkan  ke tabel detilsuratjalan
                        Koneksi.JalankanPerintahDML(sql2);

                        //ubah stok barang
                        if (pSuratJalan.Jenis == "M") // jika barang  dikirim ke gudang (job order telah selesai)
                        {
                            Barang.UbahStokBeli(pSuratJalan.ListDetilSuratJalan[i].Barang.KodeBarang, pSuratJalan.ListDetilSuratJalan[i].Jumlah);
                        }
                        else //jika barang di ambil dari gudang untuk keperluan job order
                        {
                            Barang.UbahStokTerjual(pSuratJalan.ListDetilSuratJalan[i].Barang.KodeBarang, pSuratJalan.ListDetilSuratJalan[i].Jumlah);
                        }
                    }
                    //jika semua perinth dml berhasil dijalankan
                    tranScope.Complete();
                    return("1");
                }
                catch (Exception e)
                {
                    //jika ada kegagalan perintah dml
                    tranScope.Dispose();
                    return(e.Message);
                }
            }
        }
        public static string TambahData(NotaPembelian pNotaBeli)
        {
            using (var tranScope = new TransactionScope(TransactionScopeOption.RequiresNew))
            {
                // perintah sql 1 = untuk menambahkan data ke tabel nota pembelian
                string sql1 = "INSERT INTO notapembelian(noNotaPembelian, diskon,  totalHarga, tglBatasPelunasan, tglBatasDiskon, tglBeli, status, keterangan, idsupplier) VALUES ('" +
                              pNotaBeli.NoNotaPembelian + "', " +
                              pNotaBeli.Diskon + ", " +
                              pNotaBeli.TotalHarga + ", '" +
                              pNotaBeli.TglBatasPelunasan.ToString("yyyy-MM-dd ") + "', '" +
                              pNotaBeli.TglBatasDiskon.ToString("yyyy-MM-dd ") + "', '" +
                              pNotaBeli.TglBeli.ToString("yyyy-MM-dd ") + "', '" +
                              pNotaBeli.Status + "', '" +
                              pNotaBeli.Keterangan + "', " +
                              pNotaBeli.Supplier.IdSupplier + ")";

                try
                {
                    //jalankan perintah untuk menambahkan  ke tabel notapembelian
                    Koneksi.JalankanPerintahDML(sql1);
                    //menambahkan semua barang yang dibeli ke dalam detilnotabeli
                    for (int i = 0; i < pNotaBeli.ListNotaBeliDetil.Count; i++)
                    {
                        //perintah sql2 = untuk menambahkan barang barang yang dibeli ke tabel detilnotabeli
                        string sql2 = "INSERT INTO detilnotabeli(noNotaPembelian, kodeBarang, jumlah, hargaBeli) VALUES ('" +
                                      pNotaBeli.NoNotaPembelian + "', '" +
                                      pNotaBeli.ListNotaBeliDetil[i].Barang.KodeBarang + "', " +
                                      pNotaBeli.ListNotaBeliDetil[i].Jumlah + ", " +
                                      pNotaBeli.ListNotaBeliDetil[i].HargaBeli + ")";

                        //menjalankan perintah untuk menambahkan  ke tabel notabelidetil
                        Koneksi.JalankanPerintahDML(sql2);

                        //panggil method untuk menambah stok/quantity barang yang dibeli
                        string hasilUpdateBrng    = Barang.UbahStokBeli(pNotaBeli.ListNotaBeliDetil[i].Barang.KodeBarang, pNotaBeli.ListNotaBeliDetil[i].Jumlah);
                        string hasilUbahHargaBeli = Barang.UbahHargaBeliTerbaru(pNotaBeli.ListNotaBeliDetil[i].Barang.KodeBarang, pNotaBeli.ListNotaBeliDetil[i].HargaBeli);
                    }
                    //jika semua perinth dml berhasil dijalankan
                    tranScope.Complete();
                    return("1");
                }
                catch (Exception e)
                {
                    //jika ada kegagalan perintah dml
                    tranScope.Dispose();
                    return(e.Message);
                }
            }
        }