コード例 #1
0
        // 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);
        }
コード例 #2
0
        // 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();
        }
コード例 #3
0
        // Przyk³ad 3. - Dodanie nowego kontrahenta
        protected static void DodajKontrahenta()
        {
            CDNBase.AdoSession Sesja = Login.CreateSession();

            OP_KASBOLib.Banki Banki     = (OP_KASBOLib.Banki)Sesja.CreateObject("CDN.Banki", null);
            CDNHeal.Kategorie Kategorie = (CDNHeal.Kategorie)Sesja.CreateObject("CDN.Kategorie", null);

            CDNHeal.Kontrahenci Kontrahenci = (CDNHeal.Kontrahenci)Sesja.CreateObject("CDN.Kontrahenci", null);
            CDNHeal.IKontrahent Kontrahent  = (CDNHeal.IKontrahent)Kontrahenci.AddNew(null);

            CDNHeal.IAdres    Adres    = Kontrahent.Adres;
            CDNHeal.INumerNIP NumerNIP = Kontrahent.NumerNIP;

            Adres.Gmina       = "Kozia Wólka";
            Adres.KodPocztowy = "20-835";
            Adres.Kraj        = "Polska";
            Adres.NrDomu      = "17";
            Adres.Miasto      = "Kozia Wólka";
            Adres.Powiat      = "Lukrecjowo";
            Adres.Ulica       = "Œliczna";
            Adres.Wojewodztwo = "Kujawsko-Pomorskie";

            NumerNIP.UstawNIP("PL", "281-949-89-45", 1);

            Kontrahent.Akronim  = "NOWY";
            Kontrahent.Email    = "*****@*****.**";
            Kontrahent.Medialny = 0;
            Kontrahent.Nazwa1   = "Nowy kontrahent";
            Kontrahent.Nazwa2   = "dodany z C#";
            string Nazwa = Kontrahent.NazwaPelna;

            Kontrahent.Bank      = (OP_KASBOLib.Bank)Banki["BNa_BNaID=2"];
            Kontrahent.Kategoria = (CDNHeal.Kategoria)Kategorie["Kat_KodSzczegol='ENERGIA'"];

            Sesja.Save();

            Console.WriteLine("Nazwa dodanego kotrahenta: " + Nazwa);
        }
コード例 #4
0
        protected static void UtworzeniePK()
        {
            IAdoSession Sesja = Login.CreateSession();

            /*
             * Pobranie ID bie¿¹cego okresu obrachunkowego z konfigracji Opt!my
             */
            CDNKONFIGLib.IKonfiguracja knf = (CDNKONFIGLib.IKonfiguracja)Sesja.Login.CreateObject("CDNKonfig.Konfiguracja");
            string val   = knf.get_Value("BiezOkresObr");
            int    OObID = (val.Length == 0) ? 0 : Convert.ToInt32(val);

            /* stworzenie nowego PK */
            CDNKH.Dekrety dekret  = (CDNKH.Dekrety)Sesja.CreateObject("CDN.Dekrety", null);
            CDNKH.IDekret idekret = (CDNKH.IDekret)dekret.AddNew(null);

            /* pobranie obiektu okresu obrachunkowego (je¿eli konieczne) – tutaj ju¿ mamy okres do jakiego dodajemy PK
             * ICollection okresy = (CDNBase.ICollection)(Sesja.CreateObject("CDN.Okresy", null));
             * CDNDave.IOkres iokres = (CDNDave.IOkres)okresy["OOb_OObID=" + OObID];
             */

            /*
             * pobranie dziennika
             * pobieranie dzinnika po samym ID nie jest dobre:
             *      dziennik jest przypisany do okresu obrachunkowego!
             *      lepiej po symbolu oraz w³aœnie ID okresu do jakiego bêdzie dodane PK
             */
            ICollection dziennik = (CDNBase.ICollection)(Sesja.CreateObject("CDN.Dzienniki", null));

            //CDNDave.IDziennik idzienniki = (CDNDave.IDziennik)dziennik["Dzi_DziID = 26"];
            CDNDave.IDziennik idzienniki = (CDNDave.IDziennik)dziennik["Dzi_Symbol = 'BANK' AND Dzi_OObID=" + OObID];

            /* stworzenie kontrahenta */
            ICollection Kontrahenci = (CDNBase.ICollection)(Sesja.CreateObject("CDN.Kontrahenci", null));

            CDNHeal.IKontrahent kontrahent = (CDNHeal.IKontrahent)Kontrahenci["Knt_Kod='ADM'"];

            /*
             * podstawienie OObID nie jest konieczne - dziennik wie, do jakiego okresu nale¿y
             */
            //idekret.OObId = iokres.ID;
            idekret.DziID   = idzienniki.ID;
            idekret.DataDok = new DateTime(2010, 06, 9);

            /*
             * podstawienie dataOpe i DataWys nie jest konieczne, je¿eli maj¹ byæ takie same jak DataDok
             */
            //idekret.DataOpe = new DateTime(2010, 06, 9);
            //idekret.DataWys = new DateTime(2010, 06, 9);

            idekret.Bufor    = 1;
            idekret.Podmiot  = (CDNHeal.IPodmiot)kontrahent;
            idekret.Dokument = "A1234";

            // Dodawania pozycji do dokumentu
            ICollection elementy = idekret.Elementy;

            CDNKH.IDekretElement ielement = (CDNKH.IDekretElement)elementy.AddNew(null);

            ICollection kategorie = (ICollection)Sesja.CreateObject("CDN.Kategorie", null);

            CDNHeal.IKategoria ikategoria = (CDNHeal.IKategoria)kategorie["Kat_KodSzczegol = 'INNE'"];
            ielement.Kategoria = (CDNHeal.Kategoria)ikategoria;

            /*
             * Te daty przejmowane s¹ z PK
             */
            // ielement.DataOpe = new DateTime(2010, 06, 9);
            // ielement.DataWys = new DateTime(2010, 06, 9);

            ICollection konta = (ICollection)Sesja.CreateObject("CDN.Konta", null);

            /*
             * Konta ksiegowe te¿ s¹ przypisane do okresu obrachunkowego!
             * Wybieranie konta po samym numerze to za ma³o: trzeba jeszcze wybraæ z jakiego okresu ma byæ konto!
             */
            CDNKH.IKonto kontoWn = (CDNKH.IKonto)konta["Acc_Numer = '100' AND Acc_OObID=" + OObID];
            CDNKH.IKonto kontoMa = (CDNKH.IKonto)konta["Acc_Numer = '131' AND Acc_OObID=" + OObID];

            ielement.KontoWn = (CDNKH.Konto)kontoWn;
            ielement.KontoMa = (CDNKH.Konto)kontoMa;

            ielement.Kwota = 100;

            // Koniec dodawania pozycji do dokumentu
            Sesja.Save();
        }
コード例 #5
0
        /*<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));
            }
        }
コード例 #6
0
        /*<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));
            }
        }