Forum Użytkownikow Subiekt GT
InsERT GT => Dodatki - zestawienia - sfera => Wątek zaczęty przez: Eldorado w Luty 27, 2019, 10:00:40
-
Witam,
Szukałem w dokumentacji, ale póki co nie mogę znalezc jak z kodu można wystawić fakturę. Czy konieczne jest również do tego procesu otwarcie subiekta z kodu, czy wzystko może odbyć się bezpośrednio z kodu i połączenia bezpośredniego do bazy.
Bardzo dziękuję.
-
Szukałem w dokumentacji, ale póki co nie mogę znalezc jak z kodu można wystawić fakturę.
Nie pisz takich rzeczy, nawet w wątku, w którym przed chwilą odpowiadałeś miałeś podany przykład kodu, który to realizuje.
Czy konieczne jest również do tego procesu otwarcie subiekta z kodu, czy wzystko może odbyć się bezpośrednio z kodu i połączenia bezpośredniego do bazy.
Nie jest konieczne, ale jest bez sensu skoro jest dostępna Sfera... Poczytaj forum, temat poruszany wielokrotnie, również w zakresie skutków nieumiejętnego pisania do bazy danych.
-
Znalazłem w Pomocy pod hasłem "DodajFM", natomiast mam mały problem, mógłbym spojrzeć?
Oto kod:
static void WystawFakture()
{
SuDokument oDok;
SuPozycja oPoz;
UruchomSubiekta();
oDok = Sgt.SuDokumentyManager.DodajFM();
oDok.KontrahentId = 1;
oPoz = oDok.Pozycje.DodajUslugeJednorazowa();
oPoz.UslJednNazwa = "Mycie okien";
oPoz.Opis = "Mycie zewnętrzne";
oPoz.IloscJm = 2;
oPoz.Jm = "godz.";
oPoz.CenaNettoPrzedRabatem = 20;
oPoz = oDok.Pozycje.Dodaj(2);
oPoz.IloscJm = 10;
oPoz.Jm = "szt.";
oPoz.CenaNettoPrzedRabatem = 10;
oPoz.IloscJm = 2;
oPoz.CenaNabycia = 21;
oPoz = oDok.Pozycje.Dodaj(2);
oPoz.IloscJm = 3;
oPoz.CenaNabycia = 32;
oDok.VatMarza = true;
oDok.Wyswietl();
oDok.Zapisz();
oDok.Zamknij();
}
Dla tej linijki wyspteuj blad: oPoz = oDok.Pozycje.Dodaj(2);
Error:
System.Runtime.InteropServices.COMException: 'Wstawianie towarów spoza systemu VAT marża na fakturę VAT marża jest zablokowane.
-
Czego nie rozumiesz z komunikatu błędu ?
Jak powtarzam do znudzenia również tym forum, jedną z podstawowych umiejętności jaką należy posiadać przy korzystaniu ze Sfery jest znajomość obsługi programu, dlatego typowy "programista" z założenia sobie nie poradzi, a przynajmniej nie zrobi tego efektywnie bez popełniania błędów...
-
Przyznaję, że nie znam programu typowo od strony obsługi. Czy jednak mógłbyś naprowadzić na odpowiedni tor, czy chodzi tu o to, że gdzies nie ma takiego towaru w bazie? Chociaż w sumie na logikę dodaję "jednorazową usługę", wieć jakby ręcznie nie powinno przejść jako usługa spoza bazy czy coś? Z góry dzięki !
A tak poza tym:
jedną z podstawowych umiejętności jaką należy posiadać przy korzystaniu ze Sfery jest znajomość obsługi programu
A czy istnieje gdzies np dokumentacja opisuajaca strukture bazy z jakimś opisem co gdzie w jakiej tabeli się znajduje? Wtedy moze samym sqlem mozna by operować bez Sfery?
-
Przyznaję, że nie znam programu typowo od strony obsługi. Czy jednak mógłbyś naprowadzić na odpowiedni tor, czy chodzi tu o to, że gdzies nie ma takiego towaru w bazie? Chociaż w sumie na logikę dodaję "jednorazową usługę", wieć jakby ręcznie nie powinno przejść jako usługa spoza bazy czy coś? Z góry dzięki !
Opis błędu jednoznacznie mówi że dodajesz fakturę VAT marża, a teraz piszesz że próbujesz na nią wstawić usługę jednorazową.
Przecież to w ogóle nie ma sensu, bez względu na to czy robisz to programistycznie czy z klawiatury.
Faktury VAT marża służą do czego innego.
A czy istnieje gdzies np dokumentacja opisuajaca strukture bazy z jakimś opisem co gdzie w jakiej tabeli się znajduje? Wtedy moze samym sqlem mozna by operować bez Sfery?
W helpie do Subiekta.
Oczywiście można by utworzyć fakturę "samym SQLem", ale można strzelić sobie w kolano znacznie szybciej i prościej.
Możesz np sformatować sobie dysk z rozpoczętym projektem ;)
Nie idź tą drogą. Pracy dużo więcej, rozwalenie bazy praktycznie gwarantowane, nie wiadomo tylko kiedy.
Pisanie rozwiązań sferycznych bez znajomości programu nie ma sensu. Uwierz, bo szkoda Twojego czasu
-
Nie lubię prosić w tn sposób, ale czy mógłbyś pokazać na kodzie, który udostępniłem jak go zmodyfikować, aby wystawić normalną fakturę powiedzmy z dwoma pozycjami? Jeśli oczywiście to możliwe.
P.S Czy istnieje opcja, aby pobrać wszystkie numery faktur? W ten sposób mogę porać konkretną fakturę (poniżej), ale nie znalazłem póki co opcji pobrania wszystkich i druga sprawa w jakiej tabeli znajduja sie te faktury?
UruchomSubiekta();
var dok = _subiekt.Dokumenty.Wczytaj("KW 1/KAS/2018");
dok.DrukujDoPliku(@"G:\faktura.pdf", TypPlikuEnum.gtaTypPlikuPDF);
Dzieki za pomoc.
-
Nie lubię prosić w tn sposób, ale czy mógłbyś pokazać na kodzie, który udostępniłem jak go zmodyfikować, aby wystawić normalną fakturę powiedzmy z dwoma pozycjami? Jeśli oczywiście to możliwe.
OK, ale od początku.
W folderze C:\Program Files (x86)\InsERT\InsERT GT\Pomoc masz plik gta.chm - to jest help do Sfery. Zaprzyjaźnij się z nim ;)
Napisałeś:oDok = Sgt.SuDokumentyManager.DodajFM();
Wg helpa:Metoda DodajFM
Dodaje nowy dokument faktury vat marża
Jeśli chcesz "zwykłą" fakturę to musisz użyć DodajFS()
-
czesc Candy, dzieki za odpowiedz, a co do pobrania listy faktur w mojej czesci pytania
-
Faktury są w dok__dokument (dok_typ=2)
-
a jesli chodzi o metode pobierajaca wszystkienazwy faktur,dzieki jakiej metodzie moge to osiagnac?
-
Pisanie rozwiązań sferycznych bez znajomości programu nie ma sensu.
Nie do końca się zgodzę. Pisanie rozwiązań sferycznych bez znajomości programu ma znacznie więcej sensu niż pisanie rozwiązań niesferycznych bez znajomości programu. :-)
Zaryzykowałbym stwierdzenie, ze jest to nawet stosunkowo bezpieczne. :-)
-
Pisanie rozwiązań sferycznych bez znajomości programu nie ma sensu.
Nie do końca się zgodzę. Pisanie rozwiązań sferycznych bez znajomości programu ma znacznie więcej sensu niż pisanie rozwiązań niesferycznych bez znajomości programu. :-)
Zaryzykowałbym stwierdzenie, ze jest to nawet stosunkowo bezpieczne. :-)
OK, niech Ci będzie.
To pierwsze jest upierdliwe bo wymaga co chwilę konsultacji z kimś kto wie
To drugie jest upierdliwe bo wymaga co chwilę konsultacji z kimś kto wie, a do tego zajmuje znacznie więcej czasu i kończy się źle ;)
-
@birds22: dziekuję ! A jesli chodzi o metode pobierajaca wszystkie nazwy faktur,dzieki jakiej metodzie moge to osiagnac?
-
Nazwy faktur?
Co konkretnie masz na myśli?
-
Np SqlDataAdapter albo SqlDataReader ;)