- 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("Atry ...");
- //CDNBase.ICollection opis = zlecenie.opis;
- 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));
- }
- }