fina_files 0.0.4 → 0.0.5
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +2 -0
- data/README.md +28 -10
- data/lib/fina_files/doprinosi.rb +3 -0
- data/lib/fina_files/fina_izvadak.rb +20 -0
- data/lib/fina_files/version.rb +1 -1
- data/spec/fina_files/fina_izvadak_spec.rb +21 -0
- metadata +2 -2
data/.gitignore
CHANGED
data/README.md
CHANGED
@@ -1,9 +1,9 @@
|
|
1
1
|
# Fina files
|
2
2
|
|
3
|
-
|
3
|
+
Podržani su:
|
4
4
|
|
5
|
-
1.
|
6
|
-
2.
|
5
|
+
1. Generiranje FINA zbrojnog naloga
|
6
|
+
2. Import FINA format izvatka - skoro bez validacija, ali dobije se array prometa
|
7
7
|
|
8
8
|
Radi se o novom formatu koji je aktualan od 4. lipnja 2012 (Novi univerzalni HUB3 obrazac)
|
9
9
|
|
@@ -13,11 +13,21 @@ Radi se o novom formatu koji je aktualan od 4. lipnja 2012 (Novi univerzalni HUB
|
|
13
13
|
|
14
14
|
## Zbrojni nalog za doprinose
|
15
15
|
|
16
|
-
|
16
|
+
Ovo je za napaćeni radni narod koji nema volje/živaca svaki mjesec raditi knjiženja našoj dragoj državnoj upravi (umjesto da ima mogućnost platiti jedan iznos).
|
17
|
+
|
18
|
+
Ogledni primjer:
|
19
|
+
|
17
20
|
|
18
21
|
```ruby
|
22
|
+
# !/usr/bin/env ruby
|
23
|
+
# encoding: UTF-8
|
24
|
+
|
25
|
+
require "fina_files"
|
26
|
+
|
27
|
+
# Podese se osnovni podaci
|
19
28
|
Doprinosi.configure do
|
20
29
|
{
|
30
|
+
:pdv => 100.00, #opcionalno
|
21
31
|
:oib_platitelja => '58914703561',
|
22
32
|
:mio_i => 574.60,
|
23
33
|
:mio_ii => 191.53,
|
@@ -26,22 +36,30 @@ Doprinosi.configure do
|
|
26
36
|
:zaposljavanje => 65.12,
|
27
37
|
:place =>
|
28
38
|
[
|
29
|
-
{ :oib => 58914703561, :prima => '
|
39
|
+
{ :oib => 58914703561, :prima => 'Krešimir Bojčić', :racun => '2484004-3235123152', :iznos => 3064.52 }
|
30
40
|
]
|
31
41
|
}
|
32
42
|
end
|
33
|
-
```
|
34
43
|
|
35
|
-
|
44
|
+
fname = '~/Desktop/doprinosi.hub3'
|
36
45
|
|
37
|
-
|
46
|
+
# nakon toga se može generirati zbrojni nalog za željeni broj računa:
|
38
47
|
ZbrojniNalog.new("HR3624840081111111111").tap do |result|
|
39
48
|
result.nalozi = Doprinosi.nalozi
|
40
|
-
result.export(
|
49
|
+
result.export(fname)
|
41
50
|
end
|
51
|
+
puts "Ogledni primjer za prošli mjesec u #{fname} datoteci."
|
42
52
|
```
|
43
53
|
|
44
|
-
|
54
|
+
Za broj "mjeseca" koji treba kod naloga koji se generiraju uzima se prošli mjesec. Dakle ako 1.11.2012 radimo naloge poziv na broj za MIO I stup je:
|
55
|
+
|
56
|
+
```ruby
|
57
|
+
"HR68 8109-#{postavke[:oib_platitelja]}-#{godina_mjesec}" #=> "HR68 8109-58914703561-1210"
|
58
|
+
```
|
59
|
+
|
60
|
+
Ovo nije točan podatak ako je firma tek otvorena jer se u biti gleda redni broj doprinosa, a ne mjesec. Kada firma radi punu godinu onda je taj redni broj jednak broju mjeseca. Ako nekome treba može se dodati postavka :korekcija_mjeseca.
|
61
|
+
|
62
|
+
* Garancija je - "AS IS" - molim da svi provjere naloge prije autorizacije jer ne mogu preuzeti odgovornost za moguće propuste.
|
45
63
|
|
46
64
|
|
47
65
|
|
data/lib/fina_files/doprinosi.rb
CHANGED
@@ -27,6 +27,9 @@ class Doprinosi
|
|
27
27
|
result << [ "HR67 #{placa[:oib]}-#{godina_mjesec}-0",'Isplata place',"#{placa[:racun]}","#{placa[:prima]}", placa[:iznos] ]
|
28
28
|
end
|
29
29
|
end
|
30
|
+
unless postavke[:pdv].nil?
|
31
|
+
result << [ "HR68 1201-#{postavke[:oib_platitelja]}","PDV #{godina_mjesec}",'1001005-1863000160','DRŽAVNI PRORAČUN REPUBLIKE HRVATSKE', postavke[:pdv]],
|
32
|
+
end
|
30
33
|
result
|
31
34
|
end
|
32
35
|
|
@@ -20,6 +20,26 @@ class FinaIzvadak
|
|
20
20
|
|
21
21
|
line.unpack(DEFINICIJA.fetch(type(line))).map(&:strip)
|
22
22
|
end
|
23
|
+
####################
|
24
|
+
# format prometa
|
25
|
+
####################
|
26
|
+
# broj_izvoda
|
27
|
+
# redni broj
|
28
|
+
# datum izvoda
|
29
|
+
# vrsta transakcije
|
30
|
+
# transakcijski racun
|
31
|
+
# valuta
|
32
|
+
# racun stranka
|
33
|
+
# naziv stranka
|
34
|
+
# adresa stranka
|
35
|
+
# mjesto stranka
|
36
|
+
# datum valute
|
37
|
+
# datum izvrsenja
|
38
|
+
# iznos
|
39
|
+
# poziv na broj platitelja
|
40
|
+
# poziv na broj primatelja
|
41
|
+
# opis prometa
|
42
|
+
# identifikacijski broj prometa
|
23
43
|
|
24
44
|
def prometi(izvadak)
|
25
45
|
[].tap do |result|
|
data/lib/fina_files/version.rb
CHANGED
@@ -60,6 +60,27 @@ describe FinaIzvadak do
|
|
60
60
|
subject.prometi(FINA_FILE).count.should == 2
|
61
61
|
end
|
62
62
|
|
63
|
+
####################
|
64
|
+
# format prometa
|
65
|
+
####################
|
66
|
+
# broj izvoda
|
67
|
+
# broj prometa u izvodu
|
68
|
+
# datum izvoda
|
69
|
+
# vrsta_transakcije
|
70
|
+
# transakcijski_racun
|
71
|
+
# valuta
|
72
|
+
# racun_stranka
|
73
|
+
# naziv stranka
|
74
|
+
# adresa_stranka
|
75
|
+
# mjesto_stranka
|
76
|
+
# datum_valute
|
77
|
+
# datum_izvrsenja
|
78
|
+
# iznos
|
79
|
+
# poziv_na_broj_platitelja
|
80
|
+
# poziv_na_broj_primatelja
|
81
|
+
# opis_prometa
|
82
|
+
# identifikacijski_broj_prometa
|
83
|
+
|
63
84
|
it 'zna podatke naloga' do
|
64
85
|
subject.prometi(FINA_FILE)[0].should == [
|
65
86
|
251,
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fina_files
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.5
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-11-
|
12
|
+
date: 2012-11-28 00:00:00.000000000 Z
|
13
13
|
dependencies: []
|
14
14
|
description: FINA formati na jednom mjestu
|
15
15
|
email:
|