CSV formāta pārveidošana uz QIF
Must prepare before: Grisbi finanšu lietotne or Gnucash finanšu lietotne |
- Izmantojot Swedbank, lejuplādē un saglabā failu .
- Izmantot Parex, lejuplādē un saglabā failu .
- Klikšķina uz faila ar labo peles pogu, izvēlas Īpašības.
- Klikšķina cilni Atļaujas.
- Iezīmē Ļaut izpildīt failu kā programmu un Aizvērt.
- Ar dubultklikšķi palaiž failu un izvēlas Palaist terminālī.
- Importē sagatavoto statement.csv.qif (vai Statement.csv.qif) failu grāmatvedības programmā.
Kļūdu risināšana
- Pārliecinās, ka bankas izdrukas fails atrodas tajā pašā mapē, kur saglabātais konvertēšanas skripts.
- Klikšķina uz faila ar labo peles pogu, izvēlas Atvērt ar, tad Cita lietotne... un izvēlas gedit.
- Pārliecinās, ka skriptā ir norādīts atbilstošs bankas izdrukas faila nosaukums ņemot vērā lielos un mazos burtus.
- Palaiž skriptu termināļa logā un aplūko tā ziņojumus.
Calc2QIF
- Lejupielādē no un palaiž instalāciju
Ja nepieciešams, var veikt eksportēto datu pārveidi ar Basic makrosu:
REM ***** BASIC *****
'==========================================
' Procedure: format_columns
'==========================================
sub format_columns
on error resume next
Dim oSheet as Object, oCell as Object
Dim cRow as Long
Dim val as Single
Dim str as String
Dim txt as Variant
Dim ctype as String, datestr as String, col3 as String, col4 as String, col11 as String, col12 as String
Dim valuea() as String
Dim i as Integer
' Define Empty type
Dim EMPTYCELLTYPE
EMPTYCELLTYPE = com.sun.star.table.CellContentType.EMPTY
' get current sheet
set oSheet = ThisComponent.CurrentController.ActiveSheet
' for all rows with non empty 1. and 2. cells, fill cells in the row according to 1. cell
cRow = 1
do while oSheet.getCellByPosition(0,cRow).getType() <> EMPTYCELLTYPE
oCell=oSheet.getCellByPosition(15,cRow)
str=oSheet.getCellByPosition(5,cRow).string ' (could be also .Value for numeric, .Text and .getValue)
' for i=1 to len(str)
' if mid(str,i,1)="," then str=left(str,i-1) & "." & mid(str,i+1) ' convert string to 00.00 format
' next i
str=replace(str,",","")
val=csng(str)/100 ' convert to single
' val=oSheet.getCellByPosition(5,cRow).value
ctype = oSheet.getCellByPosition(7,cRow).Formula
if ctype="D" then ' split debit and credit columns
oSheet.getCellByPosition(8,cRow).setValue(val)
oSheet.getCellByPosition(9,cRow).String=""
else
oSheet.getCellByPosition(8,cRow).String=""
oSheet.getCellByPosition(9,cRow).setValue(val)
end if
oSheet.getCellByPosition(10,cRow).FormulaLocal=datestr ' could be .FormulaLocal for date or .String for string values)
col3=oSheet.getCellByPosition(3,cRow).String
col4=oSheet.getCellByPosition(4,cRow).String
col11=""
col12=""
if ctype="K" then
if InStr(col3,"ALBERTA") OR InStr(col3,"ODO") then col11="Ienākumi:Valda alga"
if col11="" then col11="Ienākumi:Citi"
if InStr(col4,"Apgrozījums") OR InStr(col4,"Atlikums") then col11="--Nevajag--"
else
if InStr(col4,"PIRKUMS") then col11="Pārtika"
if InStr(col4,"NAUDAS IZSN") then
if InStr(col4,"KOMISIJA") then
col11="Izdevumi:Pakalpojumi:Bankas"
else
col11="Nauda:Valda skaidrā nauda"
end if
end if
if InStr(col3,"Mālkalne") then col11="Izdevumi:Pakalpojumi:Ūdens un kanalizācija"
if InStr(col3,"LATVENERGO") then col11="Izdevumi:Pakalpojumi:Elektrība"
if InStr(col4,"komisija") then col11="Izdevumi:Pakalpojumi:Bankas"
if InStr(col4,"Konversija") then col11="Aizņēmumi:Kredīts"
if InStr(col4,"apdrošināšana") then col11="Izdevumi:Pakalpojumi:Bankas"
if InStr(col3,"VĪTOLIŅA") then col11="Banka:Ievas karte"
if InStr(col3,"INSURANCE") then
col11="Izdevumi:Pakalpojumi:Bankas:Dzīvības apdrošināšana"
end if
if InStr(col4,"Apgrozījums") OR InStr(col4,"Atlikums") then col11="--Nevajag--"
if col11="" then col11="Pirkums"
if col12="" then col12=col4
end if
oSheet.getCellByPosition(10,cRow).String = col11
oSheet.getCellByPosition(11,cRow).String = col12
cRow = cRow + 1
loop
end sub