public void TworzenieDokumentu() { new Soneta.Start.Loader() { WithExtensions = true }.Load(); //using (Session session = BusApplication.Instance["Firma demo"].Login(false, "Administrator", "").CreateSession(false, false)) using (Session session = Session.Login.CreateSession(false, false)) { CRMModule cm = CRMModule.GetInstance((ISessionable)session); CoreModule corem = CoreModule.GetInstance((ISessionable)session); using (ITransaction transaction = session.Logout(true)) { Date today = Date.Today; int num1 = 1; for (int i = 24204; i <= 1000000; ++i) { string numerdodatkowy = Convert.ToString(i); if (corem.DokEwidencja.WgDodatkowego[numerdodatkowy].IsEmpty) { num1 = i; break; } } int idOstatniejFaktury = int.Parse(this.IleFaktur()); int idFaktury = num1; int idOstatniejFakturyZZakresu = 0; int idPierwszejFakturyZZakresu = 0; for (int i = 24204; i <= idOstatniejFaktury; ++i) { TraceInfo.WriteProgress("id: " + i); Faktura faktura1 = new Faktura(i); Date date = faktura1.DataFaktury; Date zakresOdDnia = Convert.ToDateTime("01.02.2021"); Date zakresDoDnia = Convert.ToDateTime("01.03.2021"); if (date == zakresOdDnia) { idPierwszejFakturyZZakresu = i; break; } } for (int i = idPierwszejFakturyZZakresu; i <= idOstatniejFaktury; ++i) { TraceInfo.WriteProgress("id: " + i); Faktura faktura1 = new Faktura(i); Date date = faktura1.DataFaktury; Date zakresOdDnia = Convert.ToDateTime("01.02.2021"); Date zakresDoDnia = Convert.ToDateTime("01.03.2021"); if (date == zakresDoDnia) { idOstatniejFakturyZZakresu = --i; break; } } idFaktury = idPierwszejFakturyZZakresu; int progressBar = idOstatniejFakturyZZakresu - idPierwszejFakturyZZakresu; int j = 0; for (int index = idPierwszejFakturyZZakresu; index <= idOstatniejFakturyZZakresu; ++index) { string numerdodatkowy = Convert.ToString(index); TraceInfo.SetProgressBar(j / idOstatniejFaktury); /// ProgressBar j++; TraceInfo.WriteProgress("FV: " + numerdodatkowy); if (corem.DokEwidencja.WgDodatkowego[numerdodatkowy].IsEmpty) { Faktura faktura = new Faktura(index); Customer customer = null; try { customer = new Customer(new Zamowienie(faktura.IdOrder).IdCustomer); } catch (Exception e) { } string idFakturyPresta = Convert.ToString(index); ///string numerFakturyPresta = faktura.Number.ToString(this.fmt); string numerFakturyPresta = idFaktury.ToString(this.fmt); SprzedazEwidencja sprzedazEwidencja = new SprzedazEwidencja(); corem.DokEwidencja.AddRow((Row)sprzedazEwidencja); DefinicjaDokumentu definicjaDokumentu = corem.DefDokumentow.WgSymbolu["SPT"]; /// Pobieranie serii dokumentu już ustawionego np: FVS itp ... sprzedazEwidencja.Definicja = definicjaDokumentu; //sprzedazEwidencja.DomyślnaKasa.SposobZaplaty.Typ = Soneta.Kasa.TypySposobowZaplaty.Przelew; string kod = "!INCYDENTALNY"; if (customer != null) { if (customer.Imie != null || customer.Nazwisko != null) { kod = customer.Imie + " " + customer.Nazwisko; } } if (kod.Length >= 19) { kod = kod.Remove(17); } Kontrahent kontrahent = cm.Kontrahenci.WgKodu[kod]; Kontrahent kontrahentFirma = (Kontrahent)null; if (customer != null) { if (customer.Nip != "" && customer.Nip != null) { kontrahentFirma = cm.Kontrahenci.WgNIP[customer.Nip].FirstOrDefault <Kontrahent>(); } } if (kontrahentFirma == null) { if (kontrahent == null) { if (customer.Nip != "") { Kontrahent kontrahentNowy = new Kontrahent(); cm.Kontrahenci.AddRow((Row)kontrahentNowy); //string str3 = kod.Length >= 17 ? customer.Company : customer.Company.Remove(17); if (kod.Length >= 19) { kod = kod.Remove(17); } kontrahentNowy.Kod = kod; kontrahentNowy.Nazwa = customer.Company; kontrahentNowy.NIP = customer.Nip; sprzedazEwidencja.Podmiot = (IPodmiot)kontrahentNowy; } else { Kontrahent kontrahentNowy = new Kontrahent(); cm.Kontrahenci.AddRow((Row)kontrahentNowy); if (kod.Length >= 19) { kod = kod.Remove(17); } kontrahentNowy.Kod = kod; kontrahentNowy.Nazwa = kod; sprzedazEwidencja.Podmiot = (IPodmiot)kontrahentNowy; } } else { sprzedazEwidencja.Podmiot = (IPodmiot)kontrahent; } } else { sprzedazEwidencja.Podmiot = (IPodmiot)kontrahentFirma; } sprzedazEwidencja.DataDokumentu = faktura.DataFaktury; sprzedazEwidencja.DataEwidencji = today; sprzedazEwidencja.DataWplywu = today; sprzedazEwidencja.NumerDokumentu = "#FV" + numerFakturyPresta + "/" + Convert.ToString(faktura.DataFaktury.Year); sprzedazEwidencja.NumerDodatkowy = idFakturyPresta; //sprzedazEwidencja.Wartosc = (Soneta.Types.Currency)faktura.WartoscBrutto; sprzedazEwidencja.PodlegaVAT = true; //sprzedazEwidencja.DataZaewidencjonowania = faktura.DataFaktury; //sprzedazEwidencja.Wartosc = faktura.WartoscBrutto; //sprzedazEwidencja.NagEwidencjiVAT.Ewidencja.Wartosc = faktura.WartoscBrutto; sprzedazEwidencja.NagEwidencjiVAT.Ewidencja.Wartosc = faktura.WartoscBrutto; sprzedazEwidencja.NagEwidencjiVAT.DataZaewidencjonowania = faktura.DataFaktury; sprzedazEwidencja.Stan = StanEwidencji.Bufor; transaction.CommitUI(); ++num1; ++idFaktury; } } } session.Save(); } }