Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision | |||
| kb:kb:dodatni_moduli:modul75_xamlprocs [2026/05/20 09:57] – milica | kb:kb:dodatni_moduli:modul75_xamlprocs [2026/10/22 09:49] (current) – milica | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Čarobnjak za uvoz SEF računa (BLExDocApp.frImpPurInvWiz) ====== | ====== Čarobnjak za uvoz SEF računa (BLExDocApp.frImpPurInvWiz) ====== | ||
| - | ====== 1. mXamlGetProcedure – glavna razgraničavajuća funkcija | + | ===== 1. mXamlGetProcedure – glavna razgraničavajuća funkcija ===== |
| - | **Opis**: | + | **Opis:** |
| - | Ova funkcija služi kao //router// (usmerivač) koji na osnovu trenutno odabrane procedure (čuva se u '' | + | Ova funkcija služi kao //router// (usmerivač) koji na osnovu trenutno odabrane procedure (čuva se u '' |
| - | **Ulaz**: nema eksplicitne parametre, ali koristi: | + | **Ulaz:** Nema eksplicitne parametre, ali koristi: |
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | **Izlaz**: '' | + | **Izlaz:** '' |
| **Pozvane funkcije** (u zavisnosti od procedure): | **Pozvane funkcije** (u zavisnosti od procedure): | ||
| Line 18: | Line 18: | ||
| * '' | * '' | ||
| * '' | * '' | ||
| + | * '' | ||
| * '' | * '' | ||
| * '' | * '' | ||
| Line 23: | Line 24: | ||
| ===== 2. mXamlProcedureSEFPURIEXSMPL() ===== | ===== 2. mXamlProcedureSEFPURIEXSMPL() ===== | ||
| - | **Opis**: | + | **Opis:** |
| - | Generiše interfejs za **jednostavan uvoz računa za troškove** (bez raspodele na više stavki). Prikazuje se tabela sa poreskim stopama (TaxSubtotal) iz SEF dokumenta. Za svaku stopu se nudi: | + | Generiše interfejs za **jednostavan uvoz računa za troškove** (bez raspodele na više stavki). Prikazuje se tabela sa poreskim stopama ('' |
| - | * dugme za mapiranje troška (otvara formu za odabir obračunske strukture, tarife, sektora, projekta...) | + | * Dugme za mapiranje troška (otvara formu za odabir obračunske strukture, tarife, sektora, projekta...). |
| - | * prikaz | + | * Prikaz |
| - | **Povezane funkcije**: | + | **Povezane funkcije:** |
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | **Koristi se za procedure**: '' | + | **Koristi se za procedure:** '' |
| + | |||
| + | **Napomena: | ||
| ===== 3. mXamlProcedureSEFPURIEXCPLX1() ===== | ===== 3. mXamlProcedureSEFPURIEXCPLX1() ===== | ||
| - | **Opis**: | + | **Opis:** |
| - | Generiše interfejs za **složeniji uvoz računa za troškove** – raspodela po **stavkama računa** (InvoiceLine), | + | Generiše interfejs za **složeniji uvoz računa za troškove** – raspodela po **stavkama računa** ('' |
| - | * šifrom, opisom, stopom poreza | + | * Šifrom, opisom, stopom poreza. |
| - | * dugmetom | + | * Dugmetom |
| - | * prikazom | + | * Prikazom |
| **Razlika u odnosu na '' | **Razlika u odnosu na '' | ||
| Ova procedura tretira svaku //liniju// računa zasebno, što omogućava precizniju raspodelu troškova. | Ova procedura tretira svaku //liniju// računa zasebno, što omogućava precizniju raspodelu troškova. | ||
| - | **Povezane funkcije**: | + | **Povezane funkcije:** |
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | **Koristi se za proceduru**: '' | + | **Koristi se za proceduru:** '' |
| ===== 4. mXamlProcedureSEFPURIMATSMPL() ===== | ===== 4. mXamlProcedureSEFPURIMATSMPL() ===== | ||
| - | **Opis**: | + | **Opis:** |
| Generiše interfejs za **pojednostavljeni uvoz računa za robu** – mapiranje se vrši na nivou **poreskih stopa**, a ne pojedinačnih artikala. Korisnik za svaku poresku stopu bira: | Generiše interfejs za **pojednostavljeni uvoz računa za robu** – mapiranje se vrši na nivou **poreskih stopa**, a ne pojedinačnih artikala. Korisnik za svaku poresku stopu bira: | ||
| - | * vrstu artikla, tarifu, šifru, naziv, jedinicu mere | + | * Vrstu artikla, tarifu, šifru, naziv, jedinicu mere. |
| - | **Ključna karakteristika**: | + | **Ključna karakteristika:** |
| Ne koriste se pojedinačne stavke računa, već agregirani iznosi po stopama PDV-a. | Ne koriste se pojedinačne stavke računa, već agregirani iznosi po stopama PDV-a. | ||
| - | **Povezane funkcije**: | + | **Povezane funkcije:** |
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | **Koristi se za proceduru**: '' | + | **Koristi se za proceduru:** '' |
| ===== 5. mXamlProcedureSEFPURIMATSTD() ===== | ===== 5. mXamlProcedureSEFPURIMATSTD() ===== | ||
| - | **Opis**: | + | **Opis:** |
| - | Generiše interfejs za **standardni uvoz računa za robu** – svaka stavka računa (InvoiceLine) se mapira na artikal iz šifarnika. Tabela sadrži: | + | Generiše interfejs za **standardni uvoz računa za robu** – svaka stavka računa ('' |
| - | * redni broj, šifru, opis, stopu PDV-a, akciju | + | * Redni broj, šifru, opis, stopu PDV-a, akciju. |
| - | * vrstu artikla, tarifu, šifru artikla, opis artikla, jedinicu mere | + | * Vrstu artikla, tarifu, šifru artikla, opis artikla, jedinicu mere. |
| - | **Povezane funkcije**: | + | **Povezane funkcije:** |
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | **Koristi se za procedure**: '' | + | **Koristi se za procedure:** '' |
| ===== 6. mXamlProcedureSEFPURIMATKALK() ===== | ===== 6. mXamlProcedureSEFPURIMATKALK() ===== | ||
| - | **Opis**: | + | **Opis:** |
| Generiše interfejs za **uvoz računa koji se vezuje za postojeće prijemnice (kalkulacije)**. Prikazuje: | Generiše interfejs za **uvoz računa koji se vezuje za postojeće prijemnice (kalkulacije)**. Prikazuje: | ||
| - | * listu nefakturisanih prijemnica (ili povratnica) dobavljača | + | * Listu nefakturisanih prijemnica (ili povratnica) dobavljača. |
| - | * filter | + | * Filter |
| - | * mogućnost odabira jedne ili više prijemnica | + | * Mogućnost odabira jedne ili više prijemnica. |
| - | * zatim vrši **verifikaciju** (upoređivanje količina, cena, ukupnih iznosa) između računa i odabranih prijemnica | + | * Zatim vrši **verifikaciju** (upoređivanje količina, cena, ukupnih iznosa) između računa i odabranih prijemnica. |
| - | **Verifikacija** se radi kroz '' | + | **Verifikacija** se radi kroz '' |
| - | **Povezane funkcije**: | + | **Povezane funkcije:** |
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | **Koristi se za procedure**: '' | + | **Koristi se za procedure:** '' |
| - | ===== 7. mXamlProcedureSEFCRNOTFINTARS() ===== | + | **Razlika u odnosu na '' |
| + | '' | ||
| - | **Opis**: | + | ===== 7. mXamlProcedureSEFPURIEXKALK() ===== |
| - | Generiše interfejs za **finansijsko knjižno odobrenje** (CreditNote) – mapiranje po **poreskim stopama**. Svaka poreska stopa dobija red sa: | + | |
| - | * tarifnom | + | **Opis:** |
| - | * obračunskom strukturom | + | Generiše interfejs za **uvoz SEF računa za troškove uz povezivanje sa postojećim zavisnim troškovima kalkulacije**. |
| - | * iznosom | + | |
| - | * checkbox-om za potvrdu | + | Procedura je namenjena situacijama kada je kalkulacija robe već formirana, a zavisni trošak evidentiran, |
| + | |||
| + | ==== 7.1. Prikaz i izbor zavisnih troškova ==== | ||
| + | |||
| + | * Prikazuje listu nefakturisanih zavisnih troškova izabranog dobavljača. | ||
| + | * Za svaki trošak prikazuje objekat, datum prijema, referencu, broj matične kalkulacije i iznos troška sa PDV-om. | ||
| + | * Omogućava tekstualnu pretragu po referenci troška i broju kalkulacije. | ||
| + | * Automatski označava trošak čija referenca odgovara broju SEF računa. | ||
| + | * Korisnik može ručno označiti ili ukloniti jedan ili više troškova. | ||
| + | * Klikom na broj kalkulacije otvara se odgovarajući dokument. | ||
| + | |||
| + | ==== 7.2. Izvor podataka ==== | ||
| + | |||
| + | Koristi pogled '' | ||
| + | |||
| + | Za zavisne troškove: | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | |||
| + | **Napomena: | ||
| + | |||
| + | ==== 7.3. Čuvanje izbora i priprema povezivanja ==== | ||
| + | |||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | |||
| + | Za popunjavanje '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | |||
| + | ==== 7.4. Mapiranje stavki računa ==== | ||
| + | |||
| + | Nakon izbora zavisnih troškova poziva se '' | ||
| + | |||
| + | Koristi se postojeći mehanizam mapiranja preko '' | ||
| + | |||
| + | U '' | ||
| + | * '' | ||
| + | * '' | ||
| + | |||
| + | Mapiranje se čuva standardnim mehanizmom, zajedno sa mapiranjima ostalih procedura za uvoz troškovnih računa. | ||
| + | |||
| + | ==== 7.5. Formiranje ulazne fakture ==== | ||
| + | |||
| + | U '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | |||
| + | Povezivanje koristi isti mehanizam kao ručni izbor nefakturisanih zavisnih troškova u ulaznoj fakturi. | ||
| + | |||
| + | **Važno: | ||
| + | Ne formira se nova kalkulacija, | ||
| + | |||
| + | ==== 7.6. Povezane funkcije ==== | ||
| + | |||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | |||
| + | **Koristi se za proceduru: | ||
| + | |||
| + | ===== 8. mXamlProcedureSEFCRNOTFINTARS() ===== | ||
| + | |||
| + | **Opis: | ||
| + | Generiše interfejs za **finansijsko knjižno odobrenje** ('' | ||
| + | * Tarifnom | ||
| + | * Obračunskom strukturom. | ||
| + | * Iznosom | ||
| + | * Checkbox-om za potvrdu. | ||
| Takođe se prikazuje i **zaglavlje odobrenja** ('' | Takođe se prikazuje i **zaglavlje odobrenja** ('' | ||
| - | **Povezane funkcije**: | + | **Povezane funkcije:** |
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | **Koristi se za proceduru**: '' | + | **Koristi se za proceduru:** '' |
| - | ===== 8. mXamlProcedureSEFDENOTFINTARS() ===== | + | ===== 9. mXamlProcedureSEFDENOTFINTARS() ===== |
| - | **Opis**: | + | **Opis:** |
| - | Veoma slična prethodnoj, ali namenjena za **knjižno zaduženje** (DebitNote). Takođe koristi: | + | Veoma slična prethodnoj, ali namenjena za **knjižno zaduženje** ('' |
| - | * zaglavlje | + | * Zaglavlje |
| - | * tabelu | + | * Tabelu |
| - | **Razlika**: | + | **Razlika:** |
| - | Umesto '' | + | Umesto '' |
| - | **Koristi se za proceduru**: '' | + | **Koristi se za proceduru:** '' |
| - | ===== 9. mDecodeGoodsMap(oInvLine As IUblDocumentLine) As IArtLstItem ===== | + | ===== 10. mDecodeGoodsMap(oInvLine As IUblDocumentLine) As IArtLstItem ===== |
| - | **Opis**: | + | **Opis:** |
| - | Vraća **artikal iz Balans šifarnika** ('' | + | Vraća **artikal iz Balans šifarnika** ('' |
| - | 1. Prvo pokušava da pronađe artikal na osnovu šifre artikla ('' | + | |
| - | 2. Ako ne uspe, čita prethodna mapiranja iz tabele '' | + | |
| - | 3. Ako postoji JSON zapis, popunjava '' | + | |
| - | 4. Na kraju proverava da li taj artikal i dalje postoji u bazi i osvežava podatke | + | |
| - | **Važno**: Uvek vraća inicijalizovan objekat. Ako artikal | + | **Logika:** |
| + | - Prvo pokušava da pronađe artikal na osnovu šifre artikla ('' | ||
| + | - Ako ne uspe, čita prethodna mapiranja iz tabele '' | ||
| + | - Ako postoji JSON zapis, popunjava '' | ||
| + | - Na kraju proverava da li taj artikal i dalje postoji u bazi i osvežava podatke. | ||
| - | ===== 10. mDecodeGoodsTaxMap(oTax As TaxSubtotal) As IArtLstItem ===== | + | **Važno:** Uvek vraća inicijalizovan objekat. Ako artikal nije pronađen, '' |
| - | **Opis**: | + | ===== 11. mDecodeGoodsTaxMap(oTax As TaxSubtotal) As IArtLstItem ===== |
| + | |||
| + | **Opis:** | ||
| Slično '' | Slično '' | ||
| - | **Logika**: | + | **Logika:** |
| - | * Preskače se prvi korak (pretraga po šifri artikla u bazi) | + | * Preskače se prvi korak (pretraga po šifri artikla u bazi). |
| - | * Direktno se čita prethodno mapiranje iz '' | + | * Direktno se čita prethodno mapiranje iz '' |
| - | * Zatim isto osvežavanje iz baze ako '' | + | * Zatim isto osvežavanje iz baze ako '' |
| + | |||
| + | **Koristi se u proceduri: | ||
| - | **Koristi se u proceduri**: | + | ===== 12. mDecodeExpenseMap(sCode As String) As IUlazFaktSas ===== |
| - | ===== 11. mDecodeExpenseMap(sCode As String) As IUlazFaktSas | + | **Opis: |
| + | Vraća **objekat troška** | ||
| - | **Opis**: | + | **Logika:** |
| - | Vraća | + | * Čita prethodno mapiranje iz tabele '' |
| - | * Čita prethodno mapiranje iz tabele '' | + | |
| * Parsira JSON i popunjava svojstva objekta: | * Parsira JSON i popunjava svojstva objekta: | ||
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | * Takođe postavlja | + | * Takođe postavlja iznose ('' |
| - | **Koristi se u procedurama**: '' | + | **Koristi se u procedurama:** '' |
| - | ===== 12. Dodatne pomoćne funkcije ===== | + | ===== 13. Dodatne pomoćne funkcije ===== |
| - | ==== 12.1 mXamlProcedureSEFCRNOTFINK() ==== | + | ==== 13.1. mXamlProcedureSEFCRNOTFINK() ==== |
| - | **Opis**: | + | **Opis:** |
| Generiše **zaglavlje za knjižna odobrenja/ | Generiše **zaglavlje za knjižna odobrenja/ | ||
| - | * Obračunska struktura ('' | + | * Obračunska struktura ('' |
| - | * Osnov za knjiženje ('' | + | * Osnov za knjiženje ('' |
| Korisnik bira vrednosti kroz posebne forme za odabir, a dugmad za brisanje omogućavaju resetovanje. | Korisnik bira vrednosti kroz posebne forme za odabir, a dugmad za brisanje omogućavaju resetovanje. | ||
| - | ==== 12.2 mCheckTaxRates(iUblPercent As Long, oArt As IArtLstItem, | + | ==== 13.2. mCheckTaxRates(iUblPercent As Long, oArt As IArtLstItem, |
| + | |||
| + | **Opis: | ||
| + | Proverava da li se **poreska stopa iz SEF dokumenta** ('' | ||
| - | **Opis**: | + | Ako se ne poklapa, prikazuje poruku i vraća '' |
| - | Proverava da li se **poreska stopa iz SEF dokumenta** ('' | + | |
| - | **Upotreba**: Poziva se prilikom mapiranja artikla ili troška da bi se sprečilo unošenje pogrešne poreske stope. Preskače se ako je SEF stopa 0 (poresko oslobođenje). | + | **Upotreba:** Poziva se prilikom mapiranja artikla ili troška da bi se sprečilo unošenje pogrešne poreske stope. Preskače se ako je SEF stopa 0 (poresko oslobođenje). |
| - | ==== 12.3 Ostale često korišćene funkcije ==== | + | ==== 13.3. Ostale često korišćene funkcije ==== |
| - | | Funkcija | + | ^ Funkcija |
| - | | --- | --- | | + | |
| | '' | | '' | ||
| - | | '' | + | | '' |
| | '' | | '' | ||
| | '' | | '' | ||