// 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); }
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); }
public void UpdateDocumentDateAtribute(string documentId, DateTime date, string number, States state) { OptimaConnect(); string description = Properties.Settings.Default.DescriptionPrefix + " " + number; string atrName = Properties.Settings.Default.AtributeName; try { if (state == States.Przetworzony) { CDNHlmn.IDokumentHaMag doc = optima.GetDocumentHaMagByID(documentId); string atrValue = date.ToShortDateString() + " " + description + " {" + DateTime.Now.ToShortDateString() + ' ' + DateTime.Now.ToLongTimeString() + " " + optima.operatorKod + "[" + optima.operatorID + "]}"; optima.AddOrEditAtributeDocumentHaMag(doc, atrName, atrValue); logFile.Write("Do dokumentu o ID: [" + doc.ID + "] dodano atrybut " + atrName + " o wartości: [ " + atrValue + " ]"); OptimaSave(); } } catch (Exception e) { throw new Exception("Błąd podczas dodawania/aktualizowania atrybutu dla TrNId = [" + documentId + "] " + e.Message); } }