Autor Wątek: Rozliczenie przez skojarzenie  (Przeczytany 10689 razy)

0 użytkowników i 12 Gości przegląda ten wątek.

Offline OS_snaKe

  • Nowy użytkownik
  • *
  • Wiadomości: 22
  • Reputacja +0/-0
  • Wersja programu: Subiekt GT 1.28
Rozliczenie przez skojarzenie
« dnia: Sierpień 27, 2014, 21:39:00 »
Witam serdecznie Forumowiczów

Moje pytanie dotyczy wykonania Rozliczenia przez skojarzenie dla dokumentu FS poprzez Sferę.
Wystawiam programistycznie dokument FS, następnie dokument KP. Jak powiązać te dokumenty? Czy jest tak możliwość poprzez API?

Offline dkozlowski

  • Ekspert
  • *****
  • Wiadomości: 17237
  • Reputacja +800/-27
  • Wersja programu: GT/Navireo/nexo
Odp: Rozliczenie przez skojarzenie
« Odpowiedź #1 dnia: Sierpień 27, 2014, 21:44:51 »
Jest taka możliwość, zajrzyj do pomocy, analogicznie jak w programie należy posłużyć się dokumentami finansowymi ("FinDokument")...
Daniel, Białystok.

Offline OS_snaKe

  • Nowy użytkownik
  • *
  • Wiadomości: 22
  • Reputacja +0/-0
  • Wersja programu: Subiekt GT 1.28
Odp: Rozliczenie przez skojarzenie
« Odpowiedź #2 dnia: Sierpień 27, 2014, 22:03:09 »
Jest taka możliwość, zajrzyj do pomocy, analogicznie jak w programie należy posłużyć się dokumentami finansowymi ("FinDokument")...

Sprawdziłem w pomocy ale nie znalazłem rozwiązania lub jakiegoś przykładu :(
« Ostatnia zmiana: Sierpień 27, 2014, 22:09:41 wysłana przez OS_snaKe »

Offline dkozlowski

  • Ekspert
  • *****
  • Wiadomości: 17237
  • Reputacja +800/-27
  • Wersja programu: GT/Navireo/nexo
Odp: Rozliczenie przez skojarzenie
« Odpowiedź #3 dnia: Sierpień 27, 2014, 22:09:31 »
Sprawdziłem w dokumentacji ale nie znalazłem przykładu :(

Nie wiem jak komentować takie wypowiedzi... Cytat z pomocy:

Cytuj
Przykład
W przykładzie najpierw tworzona jest należność, a następnie dla tego samego kontrahenta powstaje spłata należności w postaci wpłaty na rachunek bankowy. Kolejno następuje skojarzenie dokumentu wpłaty z należnością (rozliczenie na kwotę 199.09). Na koniec, po ponownym wczytaniu, iterowana jest kolekcja FinRozliczenia dla obiektu Należności i dla obiektu Spłaty. W okienku Immediate listowane są parametry rozliczeń, a wynik dla rozliczeń przeglądanych od strony Należności jak i spłaty jest (co oczywiste) identyczny.
 
Należy zwrócić uwagę, że obiekty Należności i Spłaty po dokonaniu rozliczenia (rozliczenie od strony BP) muszą zostać "przeładowane", bowiem niektóre atrybuty (w tym także kolekcja FinRozliczenia) aktualizuje się w bazie danych w momencie zapisu dokumentów, ale my dysponujemy cały czas "starą", niezaktualizowaną instancją obiektu. Stąd potrzeba przeładowywania.

Sub ParametryObiektuFinRozliczenie()
On Error GoTo ErrHandler
 
    Dim oSubGT As InsERT.Subiekt
    Dim oFinNal, oFinBp As InsERT.FinDokument
    Dim oFinRoz As InsERT.FinRozliczenie
 
    'Uruchomienie Subiekta GT
    Set oSubGT = UruchomSubiekta()
   
    'Utworzenie należności i ustawienie jej atrybutów
    Set oFinNal = oSubGT.FinManager.DodajRozrachunek(gtaDokFinTypNal)
    oFinNal.Data = "2006-05-14"
    oFinNal.TerminPlatnosci = "2006-06-30"
    oFinNal.NumerPelny = "FS 227/MAG/2006"
    oFinNal.ObiektPowiazanyWstaw gtaDokFinObiektKontrahent, 1
    oFinNal.WartoscPoczatkowaWaluta = 1204.09
    oFinNal.Zapisz
    'oFinNal.Wyswietl
   
    'Utworzenie wpłaty na rach. bankowy i ustawienie jej atrybutów
    Set oFinBp = oSubGT.FinManager.DodajOperacjeBankowa(gtaDokFinTypBP, 1)
    oFinBp.Data = "2006-05-19"
    oFinBp.ObiektPowiazanyWstaw gtaDokFinObiektKontrahent, 1
    oFinBp.WartoscPoczatkowaWaluta = 1343.9
   
    'Dokonanie rozliczenia Należności i BP
    Set oFinRoz = oFinBp.Rozliczenia.Rozlicz(oFinNal, 199.09)
    oFinBp.Tytulem = oFinBp.GenerujTytul()
    oFinBp.Zapisz
   
    'Sprawdzenie atrybutów obiektu FinRozliczenie od strony Należności
    Dim id As Long
   
    id = oFinNal.Identyfikator
    oFinNal.Zamknij
    Set oFinNal = oSubGT.FinManager.Wczytaj(id)
    For Each oFinRoz In oFinNal.Rozliczenia
        Debug.Print "Czy automatyczny: " & oFinRoz.Automatyczne
        Debug.Print "Data rozliczenia: " & oFinRoz.Data
        Debug.Print "Id rozliczenia: " & oFinRoz.RozliczenieId
        Debug.Print "Id rozrachunku: " & oFinRoz.DlugId
        Debug.Print "Id spłaty: " & oFinRoz.SplataId
        Debug.Print "Kwota rozliczenia: " & oFinRoz.Kwota
        Debug.Print "Waluta: " & oFinRoz.Waluta
    Next
   
    'Sprawdzenie atrybutów obiektu FinRozliczenie od strony Spłaty BP
    id = oFinBp.Identyfikator
    oFinBp.Zamknij
    Set oFinBp = oSubGT.FinManager.Wczytaj(id)
    For Each oFinRoz In oFinBp.Rozliczenia
        Debug.Print "Czy automatyczny: " & oFinRoz.Automatyczne
        Debug.Print "Data rozliczenia: " & oFinRoz.Data
        Debug.Print "Id rozliczenia: " & oFinRoz.RozliczenieId
        Debug.Print "Id rozrachunku: " & oFinRoz.DlugId
        Debug.Print "Id spłaty: " & oFinRoz.SplataId
        Debug.Print "Kwota rozliczenia: " & oFinRoz.Kwota
        Debug.Print "Waluta: " & oFinRoz.Waluta
    Next
   
    Exit Sub
ErrHandler:
    MsgBox "Wystąpił błąd: " & Err.Number & " - " & Err.Description
End Sub

Daniel, Białystok.

Offline OS_snaKe

  • Nowy użytkownik
  • *
  • Wiadomości: 22
  • Reputacja +0/-0
  • Wersja programu: Subiekt GT 1.28
Odp: Rozliczenie przez skojarzenie
« Odpowiedź #4 dnia: Sierpień 28, 2014, 11:12:38 »
Dzięki za wklejenie kodu z helpa, ale nie jest to precyzyjna odpowiedź na moje pytanie. Tworząc obiekt oFinNal i dodając rozliczenie zostanie zdublowana należność, gdyż przy tworzeniu faktury została ona już wygenerowana.
Temat już nieaktualny udało mi się rozwiązać problem w bardzo prosty sposób :)

                 oFinNal = oSgt.FinManager.WczytajDokument(id); //id - identyfikator rozliczenia dla dokumentu FS pobrany przez zapytanie SQL
                 oFinRoz = oFin.Rozliczenia.Rozlicz(oFinNal, kwota); // oFin - tworzony dokument KP, kwota dla dokumentu KP
                 oFin.Zapisz();
                 oFin.Zamknij();

Offline dkozlowski

  • Ekspert
  • *****
  • Wiadomości: 17237
  • Reputacja +800/-27
  • Wersja programu: GT/Navireo/nexo
Odp: Rozliczenie przez skojarzenie
« Odpowiedź #5 dnia: Sierpień 28, 2014, 11:32:02 »
Dzięki za wklejenie kodu z helpa, ale nie jest to precyzyjna odpowiedź na moje pytanie. Tworząc obiekt oFinNal i dodając rozliczenie zostanie zdublowana należność, gdyż przy tworzeniu faktury została ona już wygenerowana.

Przykład pokazywał "zasadę" rozliczenia rozrachunków przez skojarzenie. Jaka to różnica czy należność zostanie utworzona czy wczytana i będzie rozliczana przez KP zamiast BP, "zasada" będzie przecież ta sama i przykłady wszystkich kombinacji są zbędne. Trzeba po prostu trochę "pomyśleć", a nie tylko "przepisywać", żadna dokumentacja i przykłady nie są w stanie przewidzieć czego "dokładnie" ktoś będzie potrzebował czy w jakim języku będzie pisał.

Temat już nieaktualny udało mi się rozwiązać problem w bardzo prosty sposób :)

Czyli jest jeszcze dla Ciebie "nadzieja" ;)
Daniel, Białystok.

Offline OS_snaKe

  • Nowy użytkownik
  • *
  • Wiadomości: 22
  • Reputacja +0/-0
  • Wersja programu: Subiekt GT 1.28
Odp: Rozliczenie przez skojarzenie
« Odpowiedź #6 dnia: Sierpień 28, 2014, 11:45:20 »
Dzięki za wklejenie kodu z helpa, ale nie jest to precyzyjna odpowiedź na moje pytanie. Tworząc obiekt oFinNal i dodając rozliczenie zostanie zdublowana należność, gdyż przy tworzeniu faktury została ona już wygenerowana.

Przykład pokazywał "zasadę" rozliczenia rozrachunków przez skojarzenie. Jaka to różnica czy należność zostanie utworzona czy wczytana i będzie rozliczana przez KP zamiast BP, "zasada" będzie przecież ta sama i przykłady wszystkich kombinacji są zbędne. Trzeba po prostu trochę "pomyśleć", a nie tylko "przepisywać", żadna dokumentacja i przykłady nie są w stanie przewidzieć czego "dokładnie" ktoś będzie potrzebował czy w jakim języku będzie pisał.

Temat już nieaktualny udało mi się rozwiązać problem w bardzo prosty sposób :)

Czyli jest jeszcze dla Ciebie "nadzieja" ;)

Doskonale zdaję sobie sprawę, że w Pomocy nie ma możliwości podać wszystkich możliwych przykładów.
Nie każdy jest ekspertem w danym systemie (na co dzień programuję w innym) po prostu zapytałem na forum, aby nie szukać i nie tracić czasu. 
Wystarczyło podać: oFinRoz = oFin.Rozliczenia.Rozlicz(należność, kwota) i wszystko staje się jasne. Mniej pracochłonne niż wklejenie kodu ;)
Mimo wszystko dzięki...

Offline dkozlowski

  • Ekspert
  • *****
  • Wiadomości: 17237
  • Reputacja +800/-27
  • Wersja programu: GT/Navireo/nexo
Odp: Rozliczenie przez skojarzenie
« Odpowiedź #7 dnia: Sierpień 28, 2014, 12:01:39 »
Nie każdy jest ekspertem w danym systemie (na co dzień programuję w innym) po prostu zapytałem na forum, aby nie szukać i nie tracić czasu.

Jesteś trochę "nieprecyzyjny", wcześniej napisałeś że nie znalazłeś rozwiązania, a teraz że po prostu Ci się nie chciało ;) Poza tym napisz co robisz na co dzień i w czym ewentualnie mógłbyś pomóc ?
Daniel, Białystok.

Offline OS_snaKe

  • Nowy użytkownik
  • *
  • Wiadomości: 22
  • Reputacja +0/-0
  • Wersja programu: Subiekt GT 1.28
Odp: Rozliczenie przez skojarzenie
« Odpowiedź #8 dnia: Sierpień 28, 2014, 12:22:30 »
Nie każdy jest ekspertem w danym systemie (na co dzień programuję w innym) po prostu zapytałem na forum, aby nie szukać i nie tracić czasu.

Jesteś trochę "nieprecyzyjny", wcześniej napisałeś że nie znalazłeś rozwiązania, a teraz że po prostu Ci się nie chciało ;) Poza tym napisz co robisz na co dzień i w czym ewentualnie mógłbyś pomóc ?
Zajrzałem do dokumentacji ale nie znalazłem rozwiązania więc zadałem pytanie na forum. Nie obraź się ale Twoja odpowiedź była jak "strzelanie z armaty do muchy" ;) dlatego musiałem jednak poszukać rozwiązania we własnym zakresie. Na co dzień zajmuję się systemem CDN XL oraz programowaniem w C# i SQL.

Offline dkozlowski

  • Ekspert
  • *****
  • Wiadomości: 17237
  • Reputacja +800/-27
  • Wersja programu: GT/Navireo/nexo
Odp: Rozliczenie przez skojarzenie
« Odpowiedź #9 dnia: Sierpień 28, 2014, 12:49:08 »
Gdybyś dodał, że nie znasz programów Insertu to odpowiedź byłaby inna... Jak napisałem jeśli wiesz jak działa sam program to szybko znajdziesz odpowiednik w Sferze, a jeśli nie znasz działania programu to wyszło jak widać.

Szkoda, że to CDN XL a nie Optima, podpytałbym o kilka rzeczy ;)
Daniel, Białystok.

Offline mysz0n

  • Nowy użytkownik
  • *
  • Wiadomości: 23
  • Reputacja +0/-0
  • Wersja programu: 1.47SP1HF1
Odp: Rozliczenie przez skojarzenie
« Odpowiedź #10 dnia: Luty 14, 2017, 16:54:36 »
                 oFinNal = oSgt.FinManager.WczytajDokument(id); //id - identyfikator rozliczenia dla dokumentu FS pobrany przez zapytanie SQL
                 oFinRoz = oFin.Rozliczenia.Rozlicz(oFinNal, kwota); // oFin - tworzony dokument KP, kwota dla dokumentu KP
                 oFin.Zapisz();
                 oFin.Zamknij();

Byłbyś tak dobry i wrzucił jakiś wiekszy fragment kodu?
Chodzi o to, że chciałbym pokazać nierozliczone Faktury i pozwolić kobiecie rozliczyć - tak jakby było rozliczone przez kasę w sklepie/firmie.
Nie mogę tego przeskoczyć, kombinuje 2. dzień Czytam helpa, ale mam problem z przyklepaniem tego na PHP.
(Udało mi się wystawiać faktury, pozostaje tylko ich rozliczanie)

Rozumiem, że dodając fakturę, tworzy się rozrachunek i teraz musze go tylko rozliczyć tak? ale w celu rozliczenia musze dodać dokument kasowy?

Offline dkozlowski

  • Ekspert
  • *****
  • Wiadomości: 17237
  • Reputacja +800/-27
  • Wersja programu: GT/Navireo/nexo
Odp: Rozliczenie przez skojarzenie
« Odpowiedź #11 dnia: Luty 14, 2017, 17:07:27 »
Nie mogę tego przeskoczyć, kombinuje 2. dzień Czytam helpa, ale mam problem z przyklepaniem tego na PHP.
(Udało mi się wystawiać faktury, pozostaje tylko ich rozliczanie)

Na problemy ze znajomością PHP nie pomogę, nie programuję w tym języku.

Rozumiem, że dodając fakturę, tworzy się rozrachunek i teraz musze go tylko rozliczyć tak?

No nie, to zależy od wybranej formy płatności, jeśli na przykład wybierzesz gotówkę to powstanie należność, powstanie KP w kasie i nastąpi rozliczenie tych dokumentów, w efekcie nie będzie już czego rozliczyć.

ale w celu rozliczenia musze dodać dokument kasowy?

Tak.
Daniel, Białystok.

Offline mysz0n

  • Nowy użytkownik
  • *
  • Wiadomości: 23
  • Reputacja +0/-0
  • Wersja programu: 1.47SP1HF1
Odp: Rozliczenie przez skojarzenie
« Odpowiedź #12 dnia: Luty 15, 2017, 16:57:48 »
Miło @dkozlowski, że zainteresowałeś się tematem.
Myśle, że największy problemów  moim przypadku to zrozumieć do końca działanie subiekta. Reszta pójdzie z górki, prosiłbym więc o kilka informacji.
99% Faktur w mojej firmie to faktury abonamentowe, wystawiane z datą 1. każdego miesiąca z terminem płatności 10 dni (kredyt kupiecki).
Na chwilę obecną generuję sobie z mssqla plik cvs, który przerabiam na xls i wciągam programem fakturaSeryjna i nim generuje FV.
Ze swojej strony zacząłem działac w sferze (dotychczas wszystkie dane wyciągałem z bazy przez mssql, ale teraz, gdy nadszedł czas na jakieś INSERTy, to wole dla bezpieczeństwa działać przez sferę)

Ze sfrey generuje fakturę w taki sposób:
// 'Uruchomienie Subiekta'
$Subiekt = $oGT->Uruchom(0,4);
// Zmiana magazynu
$Subiekt->MagazynId=2;

$oDk = $Subiekt->SuDokumentyManager->DodajFS();
//Symbol Klienta który ma dostać FV
$sgtClientID = 'ID771177';
//Symbol towaru
$sgtTowar = 'UT';

//Dodaj FV
$oDk = $Subiekt->SuDokumentyManager->DodajFS();

$oDk->KontrahentID = $sgtClientID;
//Ustawienie uwagi
$oDk->Uwagi = 'UWAGA ze Sfery';     
//Data wystawienia i dostawy - zmieniam obie bo widać na FV
$oDk->DataWystawienia ="2017-03-01;
$oDk->DataZakonczeniaDostawy ="2017-03-01";

// Symbol, cena, ilość
$oPoz = $oDk->Pozycje->Dodaj($sgtTowar);
$oPoz->CenaBruttoPrzedRabatem = 100;
$oPoz->IloscJm = 1;

//Płatność przelewem, i ustawienie formy płatności ze słownika [sl_FormaPlatnosci] (przelew 10 dni- z tego co widzę liczy się od daty wystawienia)
$oDk->PlatnoscKredytKwota = $oDk->KwotaDoZaplaty;
$oDk->PlatnoscKredytId =21;  
$oDk->Zapisz();

Z tego co widzę, faktura wygląda tak samo jak faktura generowana przez "laski" z reki, lub przez Program Faktura seryjna (mam nadzieje, że wszystko jest prawidłowo ustawione i o niczym nie zapominam generując ten dokument)

Teraz problem polega na tym, że chciałbym móc rozliczać poszczególne faktury, zakładając sytuacje:
przychodzi klient, podaje nazwisko, wyskakuje jego faktura, laska klika ROZLICZ - i to wszystko.

Głównie chodzi o to, że rozliczać nas będzie osoba z zewnątrz, a przez ostatnie zawirowania kadrowe, nie chcemy nikomu dawać dostępu do bazy/subiekta/niczego. Tylko interface który po podaniu nazwiska, wyświetli czy są jakieś zaległości i pozwoli na rozliczenie.

Rozliczenia z przelewów, będzie robiła osoba z wewnątrz przez subiekta. Generalnie ma to symulować opcję, ROZLICZ- kasa - gotówka w subiekcie.
Jak się zabrać przez sferę?
Ptrzyłem FinRozliczenia, Metoda Rozlicz,ObiektPowiazanyWstaw,DodajDokumentKasowy ale nic mi jakoś nie chce ruszyć.
Myślałem, że będzie to coś na zasadzie - pociągnę z mssqla, numer FV, sprawdzę(jeszcze na poziomie mssqla) czy FV jest rozliczona czy nie i wrzucę ID lub sybbol FV w metodę Rozlicz - i pójdzie.
Niestety nie :( albo coś źle robie, więc jeśli byłbyś tak dobry - podpowiedz.

Offline dkozlowski

  • Ekspert
  • *****
  • Wiadomości: 17237
  • Reputacja +800/-27
  • Wersja programu: GT/Navireo/nexo
Odp: Rozliczenie przez skojarzenie
« Odpowiedź #13 dnia: Luty 15, 2017, 18:42:41 »
No tak, jak pisałem... Zacznij w takim razie od wystawienia dokumentu KP (w zacytowanym przykładzie z pomocy jest dodawana wpłata bankowa, KP dodaje się analogicznie), jak będziesz miał już KP to zostaje rozliczyć przez skojarzenie dodane KP z należnością wskazanymi w wątku metodami.
Daniel, Białystok.

Offline mysz0n

  • Nowy użytkownik
  • *
  • Wiadomości: 23
  • Reputacja +0/-0
  • Wersja programu: 1.47SP1HF1
Odp: Rozliczenie przez skojarzenie
« Odpowiedź #14 dnia: Luty 16, 2017, 09:14:26 »
a Czy w momencie wystawienia FS z kredytem kupieckim nie jest generowane juz KP które czeka na rozliczenie?

Forum Użytkownikow Subiekt GT

Odp: Rozliczenie przez skojarzenie
« Odpowiedź #14 dnia: Luty 16, 2017, 09:14:26 »