Facebook
From Colossal Hedgehog, 5 Years ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 278
  1.  
  2.   public static void DodanieZleceniaSerwisowego()
  3.         {
  4.             try
  5.             {
  6.                 Console.WriteLine("##### dodawanie zlecenia serwisowego #####");
  7.                 Console.WriteLine("Kreuję sesję ...");
  8.                 CDNBase.AdoSession sesja = Login.CreateSession();
  9.                 Console.WriteLine("Kreuję kolekcję zleceń serwisowych ...");
  10.  
  11.                 OP_CSRSLib.SrsZlecenia zlecenia = (OP_CSRSLib.SrsZlecenia)sesja.CreateObject("CDN.SrsZlecenia", null);
  12.                 Console.WriteLine("Dodaję nowe zlecenie do kolekcji zleceń serwisowych ...");
  13.                 OP_CSRSLib.ISrsZlecenie zlecenie = (OP_CSRSLib.ISrsZlecenie)zlecenia.AddNew(null);
  14.  
  15.                 Console.WriteLine("Kreuję kolekcje kontrahentów ...");
  16.                 CDNBase.ICollection kontrahenci = (CDNBase.ICollection)(sesja.CreateObject("CDN.Kontrahenci", null));
  17.                 Console.WriteLine("I pobieram z niej obiekt kontrahenta o kodzie 'ALOZA' ...");
  18.                 CDNHeal.IKontrahent kontrahent = (CDNHeal.IKontrahent)kontrahenci["Knt_Kod='ALOZA'"];
  19.            
  20.                 Console.WriteLine("Teraz obiekt kontrahenta podstawiam do property Podmiot dla zlecenia ...");
  21.                 zlecenie.Podmiot = (CDNHeal.IPodmiot)kontrahent;
  22.                
  23.                 Console.WriteLine("Dzisiejszą datę podstawiam jako datę utworzenia zlecenia...");
  24.                 zlecenie.DataDok = DateTime.Now;
  25.                
  26.                 Console.WriteLine("Pobieram kolekcję czynności przypisanych do zlecenia...");
  27.                 CDNBase.ICollection czynnosci = zlecenie.Czynnosci;
  28.                 Console.WriteLine("I dodaję do niej nowy obiekt...");
  29.                 OP_CSRSLib.ISrsCzynnosc czynnosc = (OP_CSRSLib.ISrsCzynnosc)czynnosci.AddNew(null);
  30.  
  31.                 Console.WriteLine("Przypisuję usługę o kodzie PROJ_ZIELENI do tej czynności...");
  32.                 czynnosc.TwrId = GetIdTowaru(sesja, "PROJ_ZIELENI");
  33.                 Console.WriteLine("Ilość jednostek ustalam na dwie...");
  34.                 czynnosc.Ilosc = 2;
  35.                 czynnosc.CenaNetto = 100;
  36.                 czynnosc.CzasTrwania = new DateTime(1899, 12, 30, 12, 0, 0);   //12 godzin
  37.                 czynnosc.KosztUslugi = 48;
  38.  
  39.                 Console.WriteLine("Teraz dodaję części ...");
  40.                 CDNBase.ICollection czesci = zlecenie.Czesci;
  41.                 Console.WriteLine("I dodaję do niej nowy obiekt...");
  42.                 OP_CSRSLib.ISrsCzesc czesc = (OP_CSRSLib.ISrsCzesc)czesci.AddNew(null);
  43.  
  44.                 Console.WriteLine("Przypisuję towar o kodzie IGLAKI_CYPRYS ...");
  45.                 czesc.TwrId = GetIdTowaru(sesja, "IGLAKI_CYPRYS");
  46.                 Console.WriteLine("Ilość jednostek ustalam na trzy...");
  47.                 czesc.Ilosc = 3;
  48.                 czesc.CenaNetto = 99.80m;
  49.                 czesc.Fakturowac = 1; //do fakturowania
  50.  
  51.                 Console.WriteLine("Przypisuję towar o kodzie ZIEMIA_5 ...");
  52.                 czesc.TwrId = GetIdTowaru(sesja, "ZIEMIA_5");
  53.                 Console.WriteLine("Ilość jednostek ustalam na pięć...");
  54.                 czesc.Ilosc = 5;
  55.                 czesc.CenaNetto = 4.90m;
  56.                 czesc.Fakturowac = 1; //do fakturowania
  57.                 Console.WriteLine("Atry ...");
  58.                 //CDNBase.ICollection opis = zlecenie.opis;
  59.  
  60.                
  61.                 Console.WriteLine("Zapisuję sesję...");
  62.                 sesja.Save();
  63.                 zlecenie = (OP_CSRSLib.ISrsZlecenie)zlecenia[String.Format("SrZ_SrZId={0}", zlecenie.ID)];
  64.                 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}",
  65.                     zlecenie.NumerPelny,
  66.                     zlecenie.CzynnosciCzasTrwania / 100,
  67.                     (zlecenie.CzynnosciCzasTrwania % 100).ToString("00"),
  68.                     zlecenie.Koszt.ToString("#0.00"),
  69.                     zlecenie.WartoscNetto.ToString("#0.00"),
  70.                     zlecenie.WartoscNettoDoFA.ToString("#0.00"));
  71.             }
  72.             catch (COMException comError)
  73.             {
  74.                 Console.WriteLine("###ERROR### Dodanie zlecenia nie powiodło się!\n{0}", ErrorMessage(comError));
  75.             }
  76.         }