// Przyk³ad 6. - Korekta FA protected static void DogenerujKorekteFA() { CDNBase.AdoSession Sesja = Login.CreateSession(); CDNHlmn.DokumentyHaMag Faktury = (CDNHlmn.DokumentyHaMag)Sesja.CreateObject("CDN.DokumentyHaMag", null); CDNHlmn.IDokumentHaMag Faktura = (CDNHlmn.IDokumentHaMag)Faktury.AddNew(null); // FAKI 302001; // FAKW 302002; // FAKV 302003; //ustawiamy rodzaj i typ dokumentu Faktura.Rodzaj = 302001; Faktura.TypDokumentu = 302; //Rodzaj korekty Faktura.Korekta = 1; //Bufor Faktura.Bufor = 1; //Id korygowanej faktury Faktura.OryginalID = 1; //Zmieniamy ilosc CDNBase.ICollection Pozycje = Faktura.Elementy; CDNHlmn.IElementHaMag Pozycja = (CDNHlmn.IElementHaMag)Pozycje["Tre_TwrKod='NOWY_C#'"]; Pozycja.Ilosc = 1; //Zapisujemy Sesja.Save(); Console.WriteLine("Dogenerowano korektê: " + Faktura.NumerPelny); }
// Przyk³ad 5. - Dodanie faktury sprzeda¿y protected static void DodanieFaktury() { CDNBase.AdoSession Sesja = Login.CreateSession(); CDNHlmn.DokumentyHaMag Faktury = (CDNHlmn.DokumentyHaMag)Sesja.CreateObject("CDN.DokumentyHaMag", null); CDNHlmn.IDokumentHaMag Faktura = (CDNHlmn.IDokumentHaMag)Faktury.AddNew(null); CDNBase.ICollection Kontrahenci = (CDNBase.ICollection)(Sesja.CreateObject("CDN.Kontrahenci", null)); CDNHeal.IKontrahent Kontrahent = (CDNHeal.IKontrahent)Kontrahenci["Knt_Kod='ALOZA'"]; CDNBase.ICollection FormyPlatnosci = (CDNBase.ICollection)(Sesja.CreateObject("CDN.FormyPlatnosci", null)); OP_KASBOLib.FormaPlatnosci FPl = (OP_KASBOLib.FormaPlatnosci)FormyPlatnosci[1]; // e_op_Rdz_FS 302000 Faktura.Rodzaj = 302000; // e_op_KlasaFS 302 Faktura.TypDokumentu = 302; //Ustawiamy bufor Faktura.Bufor = 0; //Ustawiamy date Faktura.DataDok = new DateTime(2007, 06, 04); //Ustawiamy formê póatnoœci Faktura.FormaPlatnosci = FPl; //Ustawiamy podmiot Faktura.Podmiot = (CDNHeal.IPodmiot)Kontrahent; //Ustawiamy magazyn Faktura.MagazynZrodlowyID = 1; //Dodajemy pozycje CDNBase.ICollection Pozycje = Faktura.Elementy; CDNHlmn.IElementHaMag Pozycja = (CDNHlmn.IElementHaMag)Pozycje.AddNew(null); Pozycja.TowarKod = "NOWY_C#"; Pozycja.Ilosc = 2; //Pozycja.Cena0WD = 10; Pozycja.WartoscNetto = Convert.ToDecimal("123,13"); //Dodanie atrybutu dokumentu TEKST CDNBase.ICollection rAtrybuty = (CDNBase.ICollection)(Sesja.CreateObject("CDN.DefAtrybuty", null)); CDNTwrb1.IDefAtrybut rAtrybut = (CDNTwrb1.IDefAtrybut)rAtrybuty["dea_Kod = 'TEKST'"]; CDNTwrb1.IDokAtrybut rAtrybutDokumentu = (CDNTwrb1.IDokAtrybut)Faktura.Atrybuty.AddNew(null); rAtrybutDokumentu.DefAtrybut = (CDNTwrb1.DefAtrybut)rAtrybut; rAtrybutDokumentu.Wartosc = "Nr:XP123456"; // Atrybut mo¿na te¿ podstawiæ za pomoc¹ ID atrybutu bez tworzenia kolekcji atrybutów: // rAtrybutDokumentu.DeAID = 123 //zapisujemy Sesja.Save(); Console.WriteLine("Dodano fakturê: " + Faktura.NumerPelny); }
protected static void DodajElementyDoRejestru(CDNRVAT.VAT RejestrVAT) { // pobranie kolekcji elementów rejestru CDNBase.ICollection Elementy = RejestrVAT.Elementy; Console.WriteLine("Dodawanie elementow: "); // dodanie elementów kolejno o stawkach 0%, 3%, 5%, 7%, 22% i zwolnionej DodajJeden(0, (CDNRVAT.VATElement)Elementy.AddNew(null)); DodajJeden(3, (CDNRVAT.VATElement)Elementy.AddNew(null)); DodajJeden(5, (CDNRVAT.VATElement)Elementy.AddNew(null)); DodajJeden(7, (CDNRVAT.VATElement)Elementy.AddNew(null)); DodajJeden(22, (CDNRVAT.VATElement)Elementy.AddNew(null)); DodajJeden(-1, (CDNRVAT.VATElement)Elementy.AddNew(null)); }
// Przyk³ad 2. - Dodanie dokumentu rejestru VAT protected static void DodanieRejestru() { // Tworzymy obiekt sesji AdoSession Sesja = Login.CreateSession(); // tworzenie potrzebnych kolekcji CDNBase.ICollection FormyPlatnosci = (CDNBase.ICollection)(Sesja.CreateObject("CDN.FormyPlatnosci", null)); CDNBase.ICollection Waluty = (CDNBase.ICollection)(Sesja.CreateObject("CDN.Waluty", null)); CDNBase.ICollection RejestryVAT = (CDNBase.ICollection)(Sesja.CreateObject("CDN.RejestryVAT", null)); CDNBase.ICollection Kontrahenci = (CDNBase.ICollection)(Sesja.CreateObject("CDN.Kontrahenci", null)); // pobieranie kontrahenta, formy platnosci i waluty CDNHeal.IKontrahent Kontrahent = (CDNHeal.IKontrahent)Kontrahenci["Knt_Kod='ALOZA'"]; // w konfiguracji jest tylko jedna waluta (PLN) // CDNHeal.Waluta Waluta = (CDNHeal.Waluta)Waluty[ "WNa_Symbol='EUR'" ]; OP_KASBOLib.FormaPlatnosci FPl = (OP_KASBOLib.FormaPlatnosci)FormyPlatnosci[1]; // utworzenie nowego obiektu rejestru VAT CDNRVAT.VAT RejestrVAT = (CDNRVAT.VAT)RejestryVAT.AddNew(null); //ustawianie parametrów rejestru RejestrVAT.Typ = 2; // 1 - zakupu; 2 - sprzeda¿y Console.WriteLine("Typ ustawiony"); RejestrVAT.Rejestr = "SPRZEDA¯"; // nazwa rejestru0 Console.WriteLine("Rejestr ustawiony"); RejestrVAT.Dokument = "DET01/05/2007"; Console.WriteLine("Dokument ustawiony"); RejestrVAT.IdentKsieg = "2007/05/28-oop"; Console.WriteLine("IdentKsieg ustawiony"); RejestrVAT.DataZap = new DateTime(2007, 05, 28); Console.WriteLine("DataZap ustawiona"); RejestrVAT.FormaPlatnosci = FPl; Console.WriteLine("Forma platnosci ustawiona"); RejestrVAT.Podmiot = (CDNHeal.IPodmiot)Kontrahent; Console.WriteLine("Podmiot ustawiony"); // kategoria ustawia siê sama, gdy ustawiany jest kontrahent // waluty nie ustawiam, bo w konf. jest na razie tylko jedna waluta (PLN) // RejestrVAT.WalutaDoVAT = Waluta; // Console.WriteLine( "Waluta ustawiona " + RejestrVAT.Waluta.Symbol ); // dodanie elementów rejestru VAT DodajElementyDoRejestru(RejestrVAT); // zapisanie zmian Sesja.Save(); }
// Przyk³ad 4. - Dodanie towaru protected static void DodanieTowaru() { CDNBase.AdoSession Sesja = Login.CreateSession(); CDNTwrb1.Towary Towary = (CDNTwrb1.Towary)Sesja.CreateObject("CDN.Towary", null); CDNTwrb1.ITowar Towar = (CDNTwrb1.ITowar)Towary.AddNew(null); Towar.Nazwa = "Nowy towar dodany z C#"; string nazwa = Towar.Nazwa1; Towar.Kod = "NOWY_C#"; Towar.Opis = "Taki sobie towar dodany z C#"; Towar.Stawka = 22.00m; Towar.Flaga = 2; // 2- oznacza stawkê opodatkowan¹, pozosta³e wartoœci // pola s¹ podane w strukturze bazy tabela: [CDN.Towary].[Twr_Flaga] Towar.JM = "SZT"; // Podstawienie grupy do towaru // Grupy dla towarów maj¹ strukutrê drzewiast¹ która jest umieszczona w tabeli TwrGrupy CDNBase.ICollection Grupy = (CDNBase.ICollection)(Sesja.CreateObject("CDN.TwrGrupy", null)); CDNTwrb1.TwrGrupa Grupa = (CDNTwrb1.TwrGrupa)Grupy["twg_kod = 'Grupa G³ówna'"]; // Towar jest przypisany do jednje grupy domyœlnej Towar.TwGGIDNumer = Grupa.GIDNumer; // oraz do listy grup CDNTwrb1.TwrGrupa GrupaZListy = (CDNTwrb1.TwrGrupa)Towar.Grupy.AddNew(null); GrupaZListy = Grupa; Console.WriteLine("podstawienie do grupy: " + Grupa.Kod); CDNTwrb1.ICena cana1 = (CDNTwrb1.ICena)Towar.Ceny[1]; cana1.WartoscNetto = 29.29m; CDNTwrb1.ICena cana2 = (CDNTwrb1.ICena)Towar.Ceny[4]; cana2.WartoscBrutto = 30.02m; // Zapis Sesja.Save(); Console.WriteLine("Towar dodany: " + nazwa); }
/*<COM_DOK> * <OPIS>Dodanie dokumentu OBD</OPIS> * <Uruchomienie>Przyk³ad dzia³a na bazie DEMO. </Uruchomienie> * <Interfejs> IDokNag </<Interfejs> * <Interfejs> IKontrahent </<Interfejs> * <Interfejs> INumerator </<Interfejs> * <Osoba>WN</Osoba> * <Jezyk>C#</Jezyk> * <OPT_VER>17.3.1</OPT_VER> * </COM_DOK>*/ #endregion public static void DodanieDokumentuOBD() { try { Console.WriteLine("##### dodawanie dokumentu OBD #####"); Console.WriteLine("Kreujê sesjê ..."); CDNBase.AdoSession sesja = Login.CreateSession(); Console.WriteLine("Kreujê kolekcjê dokumentów ..."); OP_SEKLib.DokNagColl dokumenty = (OP_SEKLib.DokNagColl)sesja.CreateObject("CDN.DokNagColl", null); Console.WriteLine("Dodajê nowy dokument do kolekcji ..."); OP_SEKLib.IDokNag dokument = (OP_SEKLib.IDokNag)dokumenty.AddNew(null); dokument.Typ = 1; //firmowy //jeœli seria dokumentu ma byæ inna ni¿ domyœlna const string symbolDD = "AUTO"; CDNHeal.DefinicjeDokumentow definicjeDokumentow = (CDNHeal.DefinicjeDokumentow)sesja.CreateObject("CDN.DefinicjeDokumentow", null); CDNHeal.DefinicjaDokumentu definicjaDokumentu = (CDNHeal.DefinicjaDokumentu)definicjeDokumentow[string.Format("Ddf_Symbol='OBD'", symbolDD)]; //Ustawiamy numerator OP_KASBOLib.INumerator numerator = (OP_KASBOLib.INumerator)dokument.Numerator; numerator.DefinicjaDokumentu = definicjaDokumentu; numerator.Rejestr = "A1";//ustawiam seriê dla wybranej definicji dokumentów //numerator.Rejestr = 133; //jeœli potrzeba ustawiæ numer Console.WriteLine("Dzisiejsz¹ datê podstawiam jako datê utworzenia..."); //dokument.DataDok = DateTime.Now; //jeœli data dokumentu ma byæ inna ni¿ bie¿¹ca dokument.Tytul = "Rozpoczêcie procesu akwizycji"; dokument.Dotyczy = "Opis kroków do wykonania. Proszê zacz¹æ od dzisiaj!"; //Dodanie podmiotu Console.WriteLine("Kreujê kolekcjê kontrahentów ..."); CDNBase.ICollection kontrahenci = (CDNBase.ICollection)(sesja.CreateObject("CDN.Kontrahenci", null)); Console.WriteLine("I pobieram z niej obiekt kontrahenta o kodzie 'ALOZA' ..."); CDNHeal.IKontrahent kontrahent = (CDNHeal.IKontrahent)kontrahenci["Knt_Kod='ALOZA'"]; dokument.PodmiotTyp = 1; //TypPodmiotuKontrahent dokument.PodId = kontrahent.ID; Console.WriteLine("Zapisujê dokument... " + dokument.Stempel.TSMod); // Dodanie nag³ówka pliku OP_SEKLib.IDokNagPlik DokNagPlik = (OP_SEKLib.IDokNagPlik)dokument.PlikiArchiwalne.AddNew(null); // ustalenie koniecznych atrybutów DokNagPlik.UstawStempel(); DokNagPlik.DoNID = dokument.ID; DokNagPlik.FileMode = 2; DokNagPlik.WBazie = 1; DokNagPlik.NazwaPliku = "testfile.html"; DokNagPlik.Wersja = 0; // Tworzenie danych binarnych CDNTwrb1.IDanaBinarna PlikDaneBin = (CDNTwrb1.IDanaBinarna)DokNagPlik.PlikiBinarne.AddNew(null); //koniczne atrybuty pliku binarnego oraz import danych PlikDaneBin.TWAID = DokNagPlik.ID; PlikDaneBin.DodajPlik(@"C:\testfile.html"); PlikDaneBin.Typ = 2; PlikDaneBin.NazwaPliku = "testfile.html"; // Zapis dok. sesja.Save(); dokument = (OP_SEKLib.IDokNag)dokumenty[String.Format("DoN_DoNId={0}", dokument.ID)]; Console.WriteLine("Dodano dokument numer: {0}", dokument.NumerPelny); } catch (COMException comError) { Console.WriteLine("###ERROR### Dodanie dokumentu OBD nie powiod³o siê!\n{0}", ErrorMessage(comError)); } }
/*<COM_DOK> * <OPIS>Dodanie zlecenia serwisowego</OPIS> * <Uruchomienie>Przyk³ad dzia³a na bazie DEMO</Uruchomienie> * <Interfejs> ISrsZlecenie </<Interfejs> * <Interfejs> ISrsCzynnosc </<Interfejs> * <Interfejs> ISrsCzesc </<Interfejs> * <Osoba>WN</Osoba> * <Jezyk>C#</Jezyk> * <OPT_VER>17.3.1</OPT_VER> * </COM_DOK>*/ #endregion public static void DodanieZleceniaSerwisowego() { try { Console.WriteLine("##### dodawanie zlecenia serwisowego #####"); Console.WriteLine("Kreujê sesjê ..."); CDNBase.AdoSession sesja = Login.CreateSession(); Console.WriteLine("Kreujê kolekcjê zleceñ serwisowych ..."); OP_CSRSLib.SrsZlecenia zlecenia = (OP_CSRSLib.SrsZlecenia)sesja.CreateObject("CDN.SrsZlecenia", null); Console.WriteLine("Dodajê nowe zlecenie do kolekcji zleceñ serwisowych ..."); OP_CSRSLib.ISrsZlecenie zlecenie = (OP_CSRSLib.ISrsZlecenie)zlecenia.AddNew(null); Console.WriteLine("Kreujê kolekcje kontrahentów ..."); CDNBase.ICollection kontrahenci = (CDNBase.ICollection)(sesja.CreateObject("CDN.Kontrahenci", null)); Console.WriteLine("I pobieram z niej obiekt kontrahenta o kodzie 'ALOZA' ..."); CDNHeal.IKontrahent kontrahent = (CDNHeal.IKontrahent)kontrahenci["Knt_Kod='ALOZA'"]; Console.WriteLine("Teraz obiekt kontrahenta podstawiam do property Podmiot dla zlecenia ..."); zlecenie.Podmiot = (CDNHeal.IPodmiot)kontrahent; Console.WriteLine("Dzisiejsz¹ datê podstawiam jako datê utworzenia zlecenia..."); zlecenie.DataDok = DateTime.Now; Console.WriteLine("Pobieram kolekcjê czynnoœci przypisanych do zlecenia..."); CDNBase.ICollection czynnosci = zlecenie.Czynnosci; Console.WriteLine("I dodajê do niej nowy obiekt..."); OP_CSRSLib.ISrsCzynnosc czynnosc = (OP_CSRSLib.ISrsCzynnosc)czynnosci.AddNew(null); Console.WriteLine("Przypisujê us³ugê o kodzie PROJ_ZIELENI do tej czynnoœci..."); czynnosc.TwrId = GetIdTowaru(sesja, "PROJ_ZIELENI"); Console.WriteLine("Iloœæ jednostek ustalam na dwie..."); czynnosc.Ilosc = 2; czynnosc.CenaNetto = 100; czynnosc.CzasTrwania = new DateTime(1899, 12, 30, 12, 0, 0); //12 godzin czynnosc.KosztUslugi = 48; Console.WriteLine("Teraz dodajê czêœci ..."); CDNBase.ICollection czesci = zlecenie.Czesci; Console.WriteLine("I dodajê do niej nowy obiekt..."); OP_CSRSLib.ISrsCzesc czesc = (OP_CSRSLib.ISrsCzesc)czesci.AddNew(null); Console.WriteLine("Przypisujê towar o kodzie IGLAKI_CYPRYS ..."); czesc.TwrId = GetIdTowaru(sesja, "IGLAKI_CYPRYS"); Console.WriteLine("Iloœæ jednostek ustalam na trzy..."); czesc.Ilosc = 3; czesc.CenaNetto = 99.80m; czesc.Fakturowac = 1; //do fakturowania Console.WriteLine("Przypisujê towar o kodzie ZIEMIA_5 ..."); czesc.TwrId = GetIdTowaru(sesja, "ZIEMIA_5"); Console.WriteLine("Iloœæ jednostek ustalam na piêæ..."); czesc.Ilosc = 5; czesc.CenaNetto = 4.90m; czesc.Fakturowac = 1; //do fakturowania Console.WriteLine("Zapisujê sesjê..."); sesja.Save(); zlecenie = (OP_CSRSLib.ISrsZlecenie)zlecenia[String.Format("SrZ_SrZId={0}", zlecenie.ID)]; Console.WriteLine("Dodano zlecenie: {0}\nCzas trwania czynnoœci: {1}:{2}\nKoszt: {3}\nWartoœæ netto w cenach sprzeda¿y: {4}\nWartoœæ netto do zafakturowania : {5}", zlecenie.NumerPelny, zlecenie.CzynnosciCzasTrwania / 100, (zlecenie.CzynnosciCzasTrwania % 100).ToString("00"), zlecenie.Koszt.ToString("#0.00"), zlecenie.WartoscNetto.ToString("#0.00"), zlecenie.WartoscNettoDoFA.ToString("#0.00")); } catch (COMException comError) { Console.WriteLine("###ERROR### Dodanie zlecenia nie powiod³o siê!\n{0}", ErrorMessage(comError)); } }
private void comarchOptimaImportOrderSTA() { string akronim; try { string reference = ""; WebClient client = new WebClient(); string prestaResponse = ""; try { NameValueCollection postData = new NameValueCollection() { { "action", "getXmlOrders" } }; prestaResponse = Encoding.UTF8.GetString(client.UploadValues(getOrdersGate(), postData)); } catch (Exception exPresta) { eventLog.WriteEntry("Error 1 on order import:" + Environment.NewLine + exPresta.ToString(), EventLogEntryType.Error, 0); } XmlDocument ordersXML = new XmlDocument(); ordersXML.LoadXml(prestaResponse); XmlElement ordersXMLroot = ordersXML.DocumentElement; if (ordersXMLroot.ChildNodes.Count > 0) { foreach (XmlNode orderXML in ordersXMLroot.ChildNodes) { bool error = true; try { //eventLog.WriteEntry("Rozpoczynam import zamówień:" + Environment.NewLine , EventLogEntryType.Information, 0); Dictionary <string, List <XmlNode> > splitedOrder = new Dictionary <string, List <XmlNode> >(); orderId = orderXML["id"].InnerText; reference = orderXML["reference"].InnerText; curOrderXML = orderXML; if (CzyZaimportowane(reference)) //Jeśłi zamówienie zaimportowane to przerywam. { continue; } XmlNode tmpNode = orderXML["associations"]; LogowanieAutomatyczne(eventLog); AdoSession Sesja = Login.CreateSession(); try { XmlNode xmlBilling = orderXML.SelectSingleNode("address_invoice")["address"]; XmlNode xmlShipping = orderXML.SelectSingleNode("address_delivery")["address"]; XmlNode xmlCustomer = orderXML.SelectSingleNode("customer"); XmlNode xmlCarrier = orderXML.SelectSingleNode("carrier"); try { XmlNode xmltmp = orderXML["address_invoice"]["address"]; DefAtrybut defAtrybut = Sesja.CreateObject("CDN.DefAtrybuty").Item("DeA_Kod='B2BID'"); //Pobranie id atrybutu string KnA_DeAId = "KnA_DeAId=" + defAtrybut.ID.ToString() + ""; SqlConnection conn = new SqlConnection(); conn.ConnectionString = connectionString; conn.Open(); SqlCommand idKnt = new SqlCommand("SELECT [KnA_PodmiotId] ,[KnA_WartoscTxt] FROM [CDN].[KntAtrybuty] where [KnA_DeAId] = '" + defAtrybut.ID.ToString() + "' AND [KnA_WartoscTxt] = '" + xmlBilling["id"].InnerText + "'", conn); SqlDataReader reader = idKnt.ExecuteReader(); int podmiotId = 0; try { if (reader.Read()) { Int32.TryParse(reader["KnA_PodmiotId"].ToString(), out podmiotId); knt = Sesja.CreateObject("CDN.Kontrahenci").Item("Knt_kntid=" + podmiotId); } else { podmiotId = 0; try { knt = Sesja.CreateObject("CDN.Kontrahenci").Item("Knt_Kod='" + ZbudujAkronim(curOrderXML) + "'"); }catch (Exception ex) { knt = null; } if (knt == null) { knt = Sesja.CreateObject("CDN.Kontrahenci").AddNew(); knt.Akronim = ZbudujAkronim(curOrderXML);; knt.Rodzaj_Odbiorca = 1; knt.Rodzaj_Dostawca = 0; PobierzDaneDoFaktury(); KntAtrybut b2bId = knt.Atrybuty.AddNew(); b2bId.DefAtrybut = defAtrybut; b2bId.ROSaveMode = 1; b2bId.Wartosc = xmlBilling["id"].InnerText; knt.Kategoria = Sesja.CreateObject("CDN.Kategorie").Item("Kat_KodOgolny='ALLEGRO MAJSTERKOWAN'"); knt.Grupa = "ALLEGRO MAJSTERKOWAN"; Sesja.Save(); podmiotId = knt.ID; } } } catch (Exception exPresta) { // eventLog.WriteEntry("Błąd przy tworzeniu Kontrahenta: " + orderId + Environment.NewLine + "" + exPresta, EventLogEntryType.Error, 0); throw; } reader.Close(); reader.Dispose(); conn.Close(); DokumentHaMag dok = Sesja.CreateObject("CDN.DokumentyHaMag").AddNew(); dok.Rodzaj = 308000; dok.TypDokumentu = 308; var rNumerator = dok.Numerator; DefinicjaDokumentu dokDef = Sesja.CreateObject("CDN.DefinicjeDokumentow").Item("DDf_Symbol='RO'"); rNumerator.DefinicjaDokumentu = dokDef; knt = Sesja.CreateObject("CDN.Kontrahenci").Item("Knt_kntid=" + knt.ID); dok.Podmiot = knt; dok.WalutaSymbol = "PLN"; dok.OdbEmail = xmlCustomer["email"].InnerText; dok.TypNB = 2; /* 1 - Licz od netto, 2 -licz od brutto*/ dok.OdbNazwa1 = ZbudujNazwe(xmlShipping["company"].InnerText, xmlShipping["firstname"].InnerText, xmlShipping["lastname"].InnerText).Nazwa1; dok.OdbNazwa2 = ZbudujNazwe(xmlShipping["company"].InnerText, xmlShipping["firstname"].InnerText, xmlShipping["lastname"].InnerText).Nazwa2; dok.OdbNazwa3 = ZbudujNazwe(xmlShipping["company"].InnerText, xmlShipping["firstname"].InnerText, xmlShipping["lastname"].InnerText).Nazwa3; dok.OdbAdres.Ulica = xmlShipping["address1"].InnerText; dok.OdbAdres.NrDomu = xmlShipping["address2"].InnerText; dok.OdbAdres.NrLokalu = ""; dok.OdbAdres.Poczta = ""; dok.OdbTelefon = xmlShipping["phone"].InnerText ?? xmlShipping["phone_mobile"].InnerText; dok.OdbAdres.Miasto = xmlShipping["city"].InnerText; dok.OdbAdres.KodPocztowy = xmlShipping["postcode"].InnerText; dok.OdbAdres.Kraj = "Polska"; //dok.OdbAdres.Wojewodztwo = xmlShipping["Region"].InnerText; DokAtrybut dostawa = dok.Atrybuty.AddNew(); dostawa.Kod = "METODADOSTAWY"; dostawa.Wartosc = xmlCarrier["name"].InnerText; DokAtrybut platnosc = dok.Atrybuty.AddNew(); platnosc.Kod = "METODAPLATNOSCI"; platnosc.Wartosc = orderXML["payment"].InnerText; DokAtrybut b2bIdDok = dok.Atrybuty.AddNew(); b2bIdDok.Kod = "B2BID"; b2bIdDok.Wartosc = orderId; dok.NumerObcy = reference; // dok.MagazynZrodlowyID = int.Parse(orderContent.Key); Kategoria kategoria; if (orderXML["module"].InnerText == "allegro") { knt.Kategoria = Sesja.CreateObject("CDN.Kategorie").Item("Kat_KodOgolny='ALLEGRO MAJSTERKOWAN'"); knt.Grupa = "ALLEGRO MAJSTERKOWAN"; } else { knt.Kategoria = Sesja.CreateObject("CDN.Kategorie").Item("Kat_KodOgolny='MAJSTERKOWANIE.EU'"); knt.Grupa = "MAJSTERKOWANIE.EU"; } CDNBase.ICollection FormyPlatnosci = (CDNBase.ICollection)(Sesja.CreateObject("CDN.FormyPlatnosci", null)); if (orderXML["module"].InnerText == "ps_cashondelivery" || orderXML["payment"].InnerText.IndexOf("collect_on_delivery") != -1) { dok.FormaPlatnosci = (OP_KASBOLib.FormaPlatnosci)FormyPlatnosci["FPl_FPlId=14"]; /*Pobranie IE*/ } else { dok.FormaPlatnosci = (OP_KASBOLib.FormaPlatnosci)FormyPlatnosci["FPl_FPlId=13"]; /*Przedpłata IE*/ } ICollection pozycje = dok.Elementy; foreach (XmlNode orderXmlElement in tmpNode["order_rows"]) { ElementHaMag pozycja = pozycje.AddNew(); int TwrTwrId; if (Int32.TryParse(orderXmlElement["TwrTwrId"].InnerText, out TwrTwrId)) { pozycja.TowarID = TwrTwrId; } else { pozycja.TowarID = Convert.ToInt32(getTwrIdException()); } var product_price = orderXmlElement["unit_price_tax_incl"].InnerText.Replace(".", ","); pozycja.CenaT = Convert.ToDecimal(product_price); pozycja.IloscJM = Convert.ToDouble(orderXmlElement["product_quantity"].InnerText); } ElementHaMag carrier = pozycje.AddNew(); carrier.TowarID = Convert.ToInt32(getTwrIdCarrier()); var total_shipping = orderXML["total_shipping"].InnerText.Replace(".", ","); carrier.CenaT = Convert.ToDecimal(total_shipping); carrier.IloscJM = Convert.ToDouble(1); carrier.UstawNazweTowaru(xmlCarrier["name"].InnerText); carrier.WartoscZakupu = Convert.ToDecimal(total_shipping); error = false; Sesja.Save(); eventLog.WriteEntry("Pomyślnie pobrano zamówienie nr:" + orderId + Environment.NewLine, EventLogEntryType.Information, 0); OznaczJakoPobrane(Convert.ToInt32(orderXML["id_optimaexportorders"].InnerText), Convert.ToInt32(orderXML["id"].InnerText)); } catch (Exception exDokDef) { eventLog.WriteEntry("Error 2 on order import: " + orderId + Environment.NewLine + exDokDef.ToString(), EventLogEntryType.Error, 0); } } catch (Exception exPresta) { error = true; eventLog.WriteEntry("Error on order import: " + orderId + Environment.NewLine + "dzieki tej opcji wystapienie bledu importu zamowienia nie powinno zabijac optimy" + exPresta, EventLogEntryType.Error, 0); Wylogowanie(); } Wylogowanie(); } catch (Exception exPresta) { error = true; eventLog.WriteEntry("Error 3 on order import: " + orderId + Environment.NewLine + Environment.NewLine + exPresta.ToString(), EventLogEntryType.Error, 0); } } } } catch (Exception exception) { eventLog.WriteEntry("Błąd ogólny:" + Environment.NewLine + exception.ToString(), EventLogEntryType.Error, 0); } }