====== Sindikalna prodaja ======
Evidencija prodaje i relizacije po osnovu ugovora sa sindikatima. Ova vrsta prodaje najčešće uključuje i "Prodaju na rate".\\
Modul je napravljen na inicijativu Planika d.o.o. u Novembru 2008 godine.
Projektni zadatak sa osnovnom postavkom i opisom tabela može se preuzeti {{:projekti:sindikalni_krediti.odt|odavde}}.
====== Cilj projekta ======
- Evidencija kreditnih zaduženja (u ratama) zaposlenih lica preduzeća koja imaju sklopljen ugovor o sindikalnoj prodaji.
- Evidencija uplata od strane preduzeća na prelazni račun.
- Razvrstavanje tih uplata na pokriće rata zaposlenih tog preduzeća na osnovu prispelih spiskova.
- Pregled otvorenih rata, alarm za "prekoračenja" roka, pregled nerešenih situacija.
====== Algoritam rešenja ======
{{ :kb:sindikalna_prodaja_dijagram_toka.png?606x292 }}
====== Način knjiženja ======
|Duguje |Potražuje |Napomena | |
|PRODAJA SA KASE ||| |
| **OP** \\ 2026 - KUP | |Prilikom knjiženja dnevnog pazara, odmah uknjižiti potraživanja za odložena plaćanja i to analitički na preduzeće | |
|KNJIŽENJE IZVODA ||| |
| |PR |Potražuje prelazni račun bez analitike kupca jer će se to odrediti naknadno | |
|RAZVRSTAVANJE UPLATA ||| |
| |-PR |Storniramo prelazni račun (da nam ne pravi promet) | |
| |202 - KUP |Prebacuje se na potraživanje konkretnog kupca | |
|202 - KUP | |Zatvaram dugovanje kupca | |
| -**OP** \\ 2026 - KUP | |Storniranjem odloženog plaćanja | |
**NAPOMENA ! Konto 2026 (ili bilo koji drugi koji će preuzeti funkciju) mora da ima u definiciji konta obeleženu //Posebnu sistemsku funkciju konta // pod brojem 99 - Potraz.za prod. sindik. kredit. Na taj način se prilikom knjiženja utvrđuje koji konto će preuzeti vrednost prodaje.**
\\
====== Izmena strukture baze podataka ======
U cilju evidencije kredita, u bazi će se koristiti sledeće tabele i modifikacije:
===== Tabela Kupci (postojeća tabela) =====
U nju se unose PREDUZEĆA sa kojima imamo sindikalni ugovor.
===== Tabela KupciSektori (postojeća tabela) =====
Sektor firme (filijala) u kojoj je zaposleni zaposlen.
===== Tabela Lica (modifikovana) =====
Tabela lica je modifikovana tako da sadrži i dopunske podatka
Dodata polja:
^ Naziv polja ^ Tip polja ^ Index ^ Opis |
|LicTip |BYTE | |Tip lica (0-nebitno, 1-korisnik sindik. kredita) |
|LicRefBr |TEXT (10) | |Referenca od strane preduzeća (nije obavezno) |
|LicLdsID |INTEGER | |Veza ka LongDesc za potrebe dodatnih podataka (adresa itd) |
|LicDatIsp |DATETIME | |Datum i vreme otvaranja kartice |
|LicKorID |INTEGER | |ID korisnika koji je karticu uneo |
|LicLKBR |TEXT (30) | |Broj lične karte ili drugog identifikacionog dokumenta |
|LicJMBG |TEXT (30) | |Matični broj ili broj socijalnog osiguranja |
|LicActive |BIT | |Oznaka da je zaposleni i dalje aktivan u firmi |
|LicOtac |TEXT (20) | |Ime oca (roditelja, srednje ime itd.) |
|LicIDMes |INTEGER | |Mesto u kome lice živi (tab. Mesta) |
|LicAdrID |INTEGER | |Link ka ShortDesc tabeli koja sadrži adresu stanovanja |
|LicRodj |DATETIME | |Datum rođenja lica |
|LicMUPID |INTEGER | |Lokacija MUP-a koji je izdao ličnu kartu (opština) |
\\
===== Tabela LicaObav (nova) =====
Tabela registrovanih sindikalnih obaveza, kupovina i ugovora
Polja:
^ Naziv polja ^ Tip polja ^ Index ^ Opis |
|LobID |INTEGER |PK, LskIdx |Primarni ključ (LastID) |
|LicID |INTEGER |FK, Lsk2Lic |Referenca ka tabeli Lica |
|Datum |DATETIME | |Datum ugovora |
|DocBr |TEXT (20) | |Broj ugovora |
|KorID |INTEGER | |Korisnik koji je uneo ugovor |
|DTStamp |DOUBLE | |Stvarni datum i vreme unosa |
|SklID |INTEGER | |Objekat u kom je izvršena prodaja |
|DatRat |DATETIME | |Datum prve rate |
|Total |CURRENCY | |Ukupan iznos zaduženja |
|TotRat |CURRENCY | |Iznos rate |
|ValID |INTEGER | |ID valute u kojoj je izražen iznos i rata |
|Napomena |TEXT (100) | |Napomena uz ugovor |
|Status |INTEGER | |Status u kom se nalazi ugovor |
|BrojRata |SMALLINT | |Ukupan broj rata |
|KorOverID |INTEGER | |Korisnik koji je overio ugovor |
|DatOver |DATETIME | |Datum i vreme overe ugovora |
|Avans |CURRENCY | |Iznos koji je uplaćen na licu mesta (ili avansno) - Total+Avanas=Ukupna vrednost robe (usluga). |
|RacBr |TEXT (20) | |Broj računa po kom je roba prodata (KasaCek) |
|RacDat |DATETIME | |Datum izdavanja računa |
|RacID |INTEGER | |ID računa (kada se radi direktno iz kase OtpID kasa čeka) |
\\
===== Tabela BookSpec (nova) =====
Tabela koja sadrži posebne situacije koje se knjiže u finansijskom modulu. Detaljnija instrukcija sa opisom funkcionalnosti ove tabele nalazi se u članku "[[:l1:visefazna_knjizenja_bookspec_tabela|Višefazno knjiženje]] ".
Polja:
^ Naziv polja ^ Tip polja ^ Index ^ Opis |
|BukID |INTEGER |PK BukIDIdx |Primarni ključ (LastID) |
|DatDoc |DATETIME | |Datum izrade naloga koji će se knjižiti (datum knjiženja) |
|DocBr |TEXT(20) | |Broj naloga za knjiženje |
|DocTip |BYTE | |Vrsta dokumenta koji se knjiži |
|KorID |INTEGER | |Korisnik koji je dokument izradio |
|DocStatus |INTEGER | |Status naloga BE_DocStatus |
|DTSTamp |DOUBLE | |Stvarni datum i vreme unosa naloga |
|Link |INTEGER | |Posebna veza ka nekom dokumentu |
\\
===== Tabela LicaObavRat (nova) =====
\\
Unos otvorenih rata sa datumima dospeća i ostalo.
Polja:
^Naziv polja ^ Tip polja ^ Index ^ Opis |
|LobRatID | INTEGER | PK LoRtIdx |Primarni ključ (LastSasID) |
|LobID | INTEGER | FK, Lrt2Lob |Referenca ka tabeli LicaObav |
|BukID | INTGERE | FK, Lrt2Buk |Referenca ka tabeli za "posebna knjiženja" |
|DPO | DATETIME | |Datum dospeća rate |
|Dug | CURRENCY | |Iznos rate |
|Pot | CURRENCY | |Pokriće rate |
|Status | INTEGER | |Status rate **BE_DocStatus** |
|DatUplat | DATETIME | |Datum uplate rate (poslendji datum ako se uplata deli) |
\\
====== Konstante, enumeratori i funkcijska polja ======
===== Status kreditne obaveze lica (LicaObav.Status) =====
Ovo polje ukazuje na status u kom se nalazi kreditna obaveza lica. Vrednosti odgovaraju **BE_DocStatus** enumeratoru, i imaju sledeće značenje:
^ Enumerator ^ Vrednost ^ Opis |
| beDOSTWaiting | 1 | Kredit je tek evidentiran, izmene su moguće, podaci nisu overeni |
| beDOSTProcesing | 4 | Podaci o kreditu su overeni, kredit je spreman za fakturisanje |
| beDOSTDelivered | 16 | Kredit je fakturisan sindikatu |
| beDOSTCompleted | 32 | Uplata po kreditu je započeta |
| beDOSTAccepted | 64 | Lice je preuzelo isplatu na sebe (dobilo otkaz u firmi, i slično) |
| beDOSTFinalControl | 128 | Isplata kredita je završena |
| beDOSTStorno | 256 | Ugovor je suspendovan (storniran) |
//View// (upit) **FN_StatusSindikUgov** vraća parove **Status **-> **StatusOpis ** vrednosti iz ove tabele.
\\
===== Parametri modula =====
Parametri modula se pamte u strukturi **KontneGrupe > KontneGrupeSas ** pod **KGrID=200100**. Upit zadužen za pregled parametara je **FN_SindikSettings**. \\
Funkcije parametara odgovaraju enumeratoru **BE_SindikSettings**.
===== Tabela KontneGrupe =====
^KGrID ^Opis ^Funkcija ^FUlFakTros ^FTrosak ^FCashFlow ^GrDef |
|200100 |0 |200100 |0 |0 |0 | |
\\
===== Tabela KontneGrupeSas =====
==== KGrID = 200100 ====
^Pozicija ^Konto ^Funkcija ^polje AddID |
|0 |Podrazumevana vrsta racuna |1 |Podrazumevni tip dokumenta (defDocTip.DTID) koji će se koristiti za fakturisanje ugovora po sindikalnim kreditima. \\ Preporučena vrednost je 3 (Račun - domaći). \\ NAPOMENA! Ovde nikako ne treba koristiti tip 9 koji predstavlja račun-otpremnice. |
|1 |Podrazumevana vrsta poreza |2 |Veza sa obračunskim strukturama. |
|2 |Artikal za sastav racuna |3 |Veza sa tabelom Elementi (Elementi.ElID). \\ Ovde se upisuje ElID artikla koji će se koristiti kao stavka računa za vrednost ugovora. \\ Artikal treba da bude tipa Usluge. |
|3 |Osnovno skladiste za izradu faktura sindikatima |4 |Podrazumevano „skladište“ koje će se koristiti pri izradi računa. \\ Dobro je odvojiti sindikalne kredite posebnim „skladištem“ uslužnog tipa kako bi se oni mogli posebno tretitati tokom knjiženja. |
|4 |Osnovno skladište za izdavanje robe krajnjim kupcima |5 |Podrazumevano MP skladište sa kog se izdaje roba i rade fiskalni isečci |
|5 |Model razrešavanja sindikalnih porudžbenica |6 |Celobrojan vrednost koja odgovara enumeratoru BE_SindikPorudResMod \\ \\ 0 - ručno u potpunost (beSINDPRSMODRucno) \\ 1 - izradom naloga za prenos robe u maloprodaju (beSINDPRSMODPrenosMP), nalogom gcDTMPPREM (25) |
\\
===== Fakturisanje =====
Program je u stanju da napravi automatski izlazni račun na osnovu overenih sindikalnih ugovora.
Tom prilikom se kao veza ka ugovorima pamti:
**1. DocLink.DocID=Rate.LobID; DocLink.Link=Racuni.RacLink;**
**2. SasRac.Odlozeno=Rate.LobID; <-- 28.08.2012 Milano, ova veza je problematična jer je Odlozeno DOUBLE a LobID LONG tipa ! Ostavljena je zbog kompatibilnosti unazad, ali se više ne treba koristiti. **
**3. DocSasLink.SasID=SasRac.SasRacID; DocSasLink.DocID=Rate.LobID** \\ (od 28.09.2012 veza između ugovora i stavke računa po kojoj je agregiran i posalt firmi vrši se preko **DocSasLink** tabele)
==== Posebna obračunska struktura ====
Da bi se tako izdate fakture razlikovale po tretmanu (finansijskom, računovodstvenom) napravljene su izmene u **Obračunskim strukturama**. Radi se o posebnom identifikatoru u polju **RacTip.RTBookProc (RT_BKPRC_SINDIKRED=1).**
====== Unapređenje 11.08.2012 - Smartphone ======
Smartphone počinje intenzivan rad sa sindikatima pa je predložio sledeće izmene:
1. Evidencija uplate rata po fizičkim licima ne funkcioniše (ne može se snimiti evidencija uplate)\\ \\ 2. Izveštaj „[[:kb:izvestaji_sindikat_realizacija_kredita|PREGLED REALIZACIJE KREDITA]] “ ne funkcioniše, možda i zbog toga što nema evidentiranih uplata
//[[milan@melany.rs|Milan Oparnica]] 2012/08/11 14:07//- [[http://razvoj.melany.rs/issues/413|Razvojni zadatak]]
//[[milan@melany.rs|Milan Oparnica]] 2012/08/27 21:13//- [[:kb:sindikalna_prodaja_vezivanje_uplata_za_lica|Sistem vezivanja sindikalnih uplata za zaduženje lica (rate)]] \\ \\ 3. Potreban mi je izveštaj „PREGLED EVIDENTIRANIH UGOVORA“ – zbirno (nevezano za prodajni objekat u kome je rađen ili bar da ne bude podeljen po njima)\\ \\ 4. Potreban mi je izveštaj „PREGLED EVIDENTIRANIH UGOVORA“ – po komitentu i po statusu ugovora (sa vremenskim periodom od-do, naravno), što bi mi automatizovalo izradu specifikacija koje svakog meseca nosim u obračunske službe, a možda bi se vremenom sa bar nekim komitentima mogli prebaciti na elektronsku komunikaciju, pa bi i export tog izveštaja u excell bio dobra opcija. Dakle, potrebno mi je da odaberem komitenta, odaberem fakturisane ugovore, zadam vremenski period i trebalo bi da dobijem specifikaciju koja sadrzi: broj i datum ugovora, ime i prezime, jmbg, ukupan iznos, broj rata i iznos pojedinacne rate. Kada se štampa, bilo bi dobro da ima zaglavlje Smartphone shop, mesto za overu (predao i primio).\\ \\ 5. Dobro bi mi dosla i opcija brisanja ugovora (zbog storiniranih koji se nagomilaju)\\ \\ 6. Treba mi resenje i za automatsko vracanje u stanje „overeni“ iz „fakturisani“ u slucaju da se stornira faktura. Sada je to mnogo komplikovano i zahteva pojedinacno vracanje ugovora kroz komandnu liniju, sto nije problem kada ima nekoliko ugovora, ali imamo i fakture sa velikim brojem ugovora.\\ \\ 7. Na ovo bih dodala Miloradovu primedbu, vec ti je to napomenuo, da kad se povuce faktura, sve skida sa jednog MP objekta u finansijama, umesto sa vise njih, gde je i kucano kroz kasu, tako da stvara negativan saldo\\ \\ 8. U tekstu ugovora, broj rata u clanu 5 stoji cetiri i ne vuce automatski izabrani broj rata ( uvek pise cetiri)