public OP_CSRSLib.SrsZlecenie GetOrCreateOrder(string zlecenieNr, DateTime dataPrzyjęcia, string numSymbol) { try { ADODB.Recordset rs = optima.Execute("select DAt_SrZId from CDN.DokAtrybuty join CDN.DefAtrybuty on DeA_DeAId = DAt_DeAId and DeA_Kod = '" + attName + "' where DAt_WartoscTxt = '" + zlecenieNr + "'"); if (rs.RecordCount == 1) { return(optima.GetZlecenieByID(int.Parse(rs.Fields["DAt_SrZId"].Value.ToString()))); } else if (rs.RecordCount == 0) { OP_CSRSLib.SrsZlecenie zlecenie = optima.CreateZlecenie(); zlecenie.DataPrzyjecia = dataPrzyjęcia; var numerator = zlecenie.Numerator; numerator.DefinicjaDokumentu = optima.GetNumeratorBySymbol(numSymbol); CDNTwrb1.IDefAtrybut defAtrybut = optima.GetDefAtribute(attName, 4); CDNTwrb1.IDokAtrybut atrybut = zlecenie.Atrybuty.AddNew(); atrybut.DeAID = defAtrybut.ID; atrybut.Wartosc = zlecenieNr; return(zlecenie); } else { throw new Exception("Błąd! Znaleziono " + rs.RecordCount + " zleceń o numerze [" + zlecenieNr + "]"); } } catch (Exception e) { throw new Exception(e.Message); } }
public void AddOrEditAtributeDocumentHaMag(CDNHlmn.IDokumentHaMag doc, string code, string value) { Boolean found = false; try { foreach (CDNTwrb1.IDokAtrybut atr in doc.Atrybuty) { if (atr.Kod.Equals(code)) { atr.Wartosc = value; found = true; break; } } if (!found) { CDNTwrb1.IDefAtrybut defAtrybut = GetDefAtribute(code, 4); CDNTwrb1.IDokAtrybut atrybut = doc.Atrybuty.AddNew(); atrybut.DeAID = defAtrybut.ID; atrybut.Wartosc = value; } } catch (Exception e) { throw new Exception("Błąd przy ustawianiu atrybutu: " + code + " = '" + value + "', " + e.Message); } }
// 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); }