| | 309 | wystawFakture(zamowienie, klient); |
| | 310 | |
| | 311 | this.Cursor = Cursors.Default; |
| | 312 | } |
| | 313 | } |
| | 314 | |
| | 315 | private int wystawFakture(REKLAMADataSet.zamowieniaRow zamowienie, REKLAMADataSet.KLIENCIRow klient) |
| | 316 | { |
| | 317 | int idNaglowka = 0; |
| | 318 | |
| | 319 | try |
| | 320 | { |
| | 321 | REKLAMADataSet.FAKTURYRow naglowekFaktury = utworzNaglowekFaktury(zamowienie, klient); |
| | 322 | this.rEKLAMADataSet.FAKTURY.AddFAKTURYRow(naglowekFaktury); |
| | 323 | pobierzOznaczEmisje(zamowienie, naglowekFaktury); |
| | 324 | utworzPozycjeFaktury(naglowekFaktury); |
| | 325 | dodajWplate(naglowekFaktury); |
| | 326 | |
| | 327 | zamowienie.zafakturowano = true; |
| | 328 | zamowienie.EndEdit(); |
| | 329 | |
| | 330 | SqlConnection conn = new SqlConnection(ConnString.getConnString().Value); |
| | 331 | |
| | 332 | fAKTURYTableAdapter.Connection = conn; |
| | 333 | emisjeTableAdapter.Connection = conn; |
| | 334 | zamowieniaTableAdapter.Connection = conn; |
| | 335 | fakturyDetailsTableAdapter.Connection = conn; |
| | 336 | rEKLAMATableAdapter.Connection = conn; |
| | 337 | wplatyTableAdapter.Connection = conn; |
| | 338 | |
| | 339 | conn.Open(); |
| | 340 | |
| | 341 | SqlTransaction transaction = conn.BeginTransaction(); |
| | 342 | fAKTURYTableAdapter.AttachTransaction(transaction); |
| | 343 | emisjeTableAdapter.AttachTransaction(transaction); |
| | 344 | zamowieniaTableAdapter.AttachTransaction(transaction); |
| | 345 | fakturyDetailsTableAdapter.AttachTransaction(transaction); |
| | 346 | rEKLAMATableAdapter.AttachTransaction(transaction); |
| | 347 | wplatyTableAdapter.AttachTransaction(transaction); |
| | 348 | |
| 303 | | REKLAMADataSet.FAKTURYRow naglowekFaktury = utworzNaglowekFaktury(zamowienie, klient); |
| 304 | | this.rEKLAMADataSet.FAKTURY.AddFAKTURYRow(naglowekFaktury); |
| 305 | | pobierzOznaczEmisje(zamowienie, naglowekFaktury); |
| 306 | | utworzPozycjeFaktury(naglowekFaktury); |
| 307 | | |
| 308 | | zamowienie.zafakturowano = true; |
| 309 | | zamowienie.EndEdit(); |
| 310 | | |
| 311 | | SqlConnection conn = new SqlConnection(ConnString.getConnString().Value); |
| 312 | | |
| 313 | | fAKTURYTableAdapter.Connection = conn; |
| 314 | | emisjeTableAdapter.Connection = conn; |
| 315 | | zamowieniaTableAdapter.Connection = conn; |
| 316 | | fakturyDetailsTableAdapter.Connection = conn; |
| 317 | | rEKLAMATableAdapter.Connection = conn; |
| 318 | | |
| 319 | | conn.Open(); |
| 320 | | |
| 321 | | SqlTransaction transaction = conn.BeginTransaction(); |
| 322 | | fAKTURYTableAdapter.AttachTransaction(transaction); |
| 323 | | emisjeTableAdapter.AttachTransaction(transaction); |
| 324 | | zamowieniaTableAdapter.AttachTransaction(transaction); |
| 325 | | fakturyDetailsTableAdapter.AttachTransaction(transaction); |
| 326 | | rEKLAMATableAdapter.AttachTransaction(transaction); |
| 327 | | |
| 328 | | try |
| 329 | | { |
| 330 | | fAKTURYTableAdapter.Update(this.rEKLAMADataSet.FAKTURY); |
| 331 | | emisjeTableAdapter.Update(this.rEKLAMADataSet.UKAZE_SIE_W_NR); |
| 332 | | fakturyDetailsTableAdapter.Update(this.rEKLAMADataSet.FAKTURA_DETAILS); |
| 333 | | |
| 334 | | int il = (int)emisjeTableAdapter.iloscNiezafakturowanychEmisjiWZamowieniu( |
| 335 | | zamowienie.idZamowienia); |
| 336 | | if (il == 0) |
| 337 | | { |
| 338 | | zamowienie.zafakturowanoWszystko = true; |
| 339 | | } |
| 340 | | |
| 341 | | zamowieniaTableAdapter.Update(this.rEKLAMADataSet.zamowienia); |
| 342 | | rEKLAMATableAdapter.Update(this.rEKLAMADataSet.REKLAMA); |
| 343 | | |
| 344 | | transaction.Commit(); |
| 345 | | dtpZmianaDaty.Value = DateTime.Today; |
| 346 | | } |
| 347 | | catch (Exception e1) |
| 348 | | { |
| 349 | | transaction.Rollback(); |
| 350 | | conn.Close(); |
| 351 | | this.rEKLAMADataSet.FAKTURY.RemoveFAKTURYRow(naglowekFaktury); |
| 352 | | this.fAKTURYBindingSource.ResetBindings(false); |
| 353 | | this.fAKTURYDataGridView.Refresh(); |
| 354 | | throw e1; |
| 355 | | } |
| 356 | | } |
| 357 | | catch (Exception e2) |
| 358 | | { |
| 359 | | MessageBox.Show("Wyst¹pi³ b³¹d: \n" + e2.ToString()); |
| 360 | | } |
| 361 | | finally |
| 362 | | { |
| | 351 | fAKTURYTableAdapter.Update(this.rEKLAMADataSet.FAKTURY); |
| | 352 | idNaglowka = naglowekFaktury.ID_FAKTURY; |
| | 353 | emisjeTableAdapter.Update(this.rEKLAMADataSet.UKAZE_SIE_W_NR); |
| | 354 | fakturyDetailsTableAdapter.Update(this.rEKLAMADataSet.FAKTURA_DETAILS); |
| | 355 | wplatyTableAdapter.Update(this.rEKLAMADataSet.Wplaty); |
| | 356 | |
| | 357 | int il = (int)emisjeTableAdapter.iloscNiezafakturowanychEmisjiWZamowieniu( |
| | 358 | zamowienie.idZamowienia); |
| | 359 | if (il == 0) |
| | 360 | { |
| | 361 | zamowienie.zafakturowanoWszystko = true; |
| | 362 | } |
| | 363 | |
| | 364 | zamowieniaTableAdapter.Update(this.rEKLAMADataSet.zamowienia); |
| | 365 | rEKLAMATableAdapter.Update(this.rEKLAMADataSet.REKLAMA); |
| | 366 | |
| | 367 | transaction.Commit(); |
| | 368 | dtpZmianaDaty.Value = DateTime.Today; |
| | 369 | } |
| | 370 | catch (Exception e1) |
| | 371 | { |
| | 372 | transaction.Rollback(); |
| | 373 | conn.Close(); |
| 369 | | this.zamowieniaBindingSource.ResetBindings(false); |
| 370 | | } |
| 371 | | |
| 372 | | this.Cursor = Cursors.Default; |
| 373 | | } |
| | 381 | throw e1; |
| | 382 | } |
| | 383 | } |
| | 384 | catch (Exception e2) |
| | 385 | { |
| | 386 | MessageBox.Show("Wyst¹pi³ b³¹d: \n" + e2.ToString()); |
| | 387 | } |
| | 388 | finally |
| | 389 | { |
| | 390 | this.rEKLAMADataSet.UKAZE_SIE_W_NR.Clear(); |
| | 391 | this.rEKLAMADataSet.DatyWydan.Clear(); |
| | 392 | this.rEKLAMADataSet.FAKTURA_DETAILS.Clear(); |
| | 393 | this.rEKLAMADataSet.Wplaty.Clear(); |
| | 394 | this.fAKTURYBindingSource.ResetBindings(false); |
| | 395 | this.fAKTURYBindingSource.Sort = "NUMER"; |
| | 396 | this.fAKTURYDataGridView.Refresh(); |
| | 397 | this.zamowieniaBindingSource.ResetBindings(false); |
| | 398 | |
| | 399 | } |
| | 400 | |
| | 401 | return idNaglowka; |
| | 402 | } |
| | 403 | |
| | 404 | private void dodajWplate(REKLAMADataSet.FAKTURYRow naglowekFaktury) |
| | 405 | { |
| | 406 | REKLAMADataSet.WplatyRow wplata = this.rEKLAMADataSet.Wplaty.NewWplatyRow(); |
| | 407 | wplata.idFaktury = naglowekFaktury.ID_FAKTURY; |
| | 408 | wplata.idZamowienia = naglowekFaktury.idZamowienia; |
| | 409 | this.rEKLAMADataSet.Wplaty.AddWplatyRow(wplata); |
| 1101 | | private void usunKorekte(REKLAMADataSet.FAKTURYRow faktura) |
| 1102 | | { |
| 1103 | | int idKorekty = faktura.ID_FAKTURY; |
| 1104 | | int idKorygowanejFaktury = faktura.idFakturyKorekta; |
| 1105 | | int idZam = faktura.idZamowienia; |
| 1106 | | |
| 1107 | | fAKTURYBindingSource.Position = fAKTURYBindingSource.Find("id_faktury", |
| 1108 | | idKorygowanejFaktury); |
| 1109 | | |
| 1110 | | REKLAMADataSet.FAKTURYRow f = (REKLAMADataSet.FAKTURYRow) |
| 1111 | | ((DataRowView)fAKTURYBindingSource.Current).Row; |
| 1112 | | f.SetID_FK_KORNull(); |
| | 1148 | private void usunKorekte(REKLAMADataSet.FAKTURYRow korekta) |
| | 1149 | { |
| | 1150 | int idKorekty = korekta.ID_FAKTURY; |
| | 1151 | int idKorygowanejFaktury = korekta.idFakturyKorekta; |
| | 1152 | int idZam = korekta.idZamowienia; |
| | 1153 | |
| | 1154 | int i = fAKTURYBindingSource.Find("ID_FK_KOR",idKorekty); |
| | 1155 | |
| | 1156 | REKLAMADataSet.FAKTURYRow korygowanaFaktura = (REKLAMADataSet.FAKTURYRow) |
| | 1157 | ((DataRowView)fAKTURYBindingSource.List[i]).Row; |
| | 1158 | |
| | 1159 | int j = fAKTURYBindingSource.Find("ID_FAKTURY",idKorygowanejFaktury); |
| | 1160 | |
| | 1161 | if (j > -1) |
| | 1162 | { |
| | 1163 | REKLAMADataSet.FAKTURYRow poprzedniaKorekta = (REKLAMADataSet.FAKTURYRow) |
| | 1164 | ((DataRowView)fAKTURYBindingSource.List[j]).Row; |
| | 1165 | |
| | 1166 | korygowanaFaktura.ID_FK_KOR = poprzedniaKorekta.ID_FAKTURY; |
| | 1167 | } |
| | 1168 | else |
| | 1169 | { |
| | 1170 | korygowanaFaktura.SetID_FK_KORNull(); |
| | 1171 | } |
| | 1172 | |
| 1228 | | |
| | 1289 | |
| | 1290 | private void proformaButton_Click(object sender, EventArgs e) |
| | 1291 | { |
| | 1292 | if (zamowieniaBindingSource.Current != null) |
| | 1293 | { |
| | 1294 | this.Cursor = Cursors.WaitCursor; |
| | 1295 | |
| | 1296 | DataRowView z = (DataRowView)zamowieniaBindingSource.Current; |
| | 1297 | REKLAMADataSet.zamowieniaRow zamowienie = (REKLAMADataSet.zamowieniaRow)z.Row; |
| | 1298 | |
| | 1299 | REKLAMADataSet.KLIENCIRow klient = (REKLAMADataSet.KLIENCIRow)this.klienciTableAdapter.GetDataByCustomerId(zamowienie.idKlienta).Rows[0]; |
| | 1300 | string errorMessage = czyMoznaZafakturowac(zamowienie, klient); |
| | 1301 | |
| | 1302 | if (errorMessage != string.Empty) |
| | 1303 | { |
| | 1304 | MessageBox.Show(errorMessage); |
| | 1305 | this.Cursor = Cursors.Default; |
| | 1306 | return; |
| | 1307 | } |
| | 1308 | |
| | 1309 | int id = wystawFakture(zamowienie, klient); |
| | 1310 | FactureViewer fv = new FactureViewer(id,true); |
| | 1311 | |
| | 1312 | fv.ShowDialog(); |
| | 1313 | |
| | 1314 | DataRow[] rows = this.rEKLAMADataSet.FAKTURY.Select("id_faktury=" + id); |
| | 1315 | usunFakture((REKLAMADataSet.FAKTURYRow)rows[0]); |
| | 1316 | |
| | 1317 | this.Cursor = Cursors.Default; |
| | 1318 | } |
| | 1319 | } |