====== 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)