konto_check 6.02.0 → 6.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/ext/konto_check_raw/konto_check.c +927 -400
- data/ext/konto_check_raw/konto_check.h +52 -12
- data/ext/konto_check_raw/konto_check_raw_ruby.c +545 -3
- data/ext/konto_check_raw/retvals.h +40 -0
- data/lib/konto_check.rb +216 -0
- metadata +5 -4
@@ -1,5 +1,6 @@
|
|
1
1
|
/* vim: ft=c:set si:set fileencoding=iso-8859-1
|
2
2
|
*/
|
3
|
+
#line 9 "konto_check_h.lx"
|
3
4
|
|
4
5
|
/*
|
5
6
|
* ##########################################################################
|
@@ -9,7 +10,7 @@
|
|
9
10
|
* # Verwendung in anderen Programmen bzw. Programmiersprachen benutzt #
|
10
11
|
* # werden. #
|
11
12
|
* # #
|
12
|
-
* # Copyright (C) 2002-
|
13
|
+
* # Copyright (C) 2002-2020 Michael Plugge <m.plugge@hs-mannheim.de> #
|
13
14
|
* # #
|
14
15
|
* # Dieses Programm ist freie Software; Sie d�rfen es unter den #
|
15
16
|
* # Bedingungen der GNU Lesser General Public License, wie von der Free #
|
@@ -167,17 +168,19 @@
|
|
167
168
|
|
168
169
|
#if _WIN32>0 || _WIN64>0
|
169
170
|
# if USE_CDECL
|
170
|
-
#
|
171
|
-
#
|
172
|
-
#
|
173
|
-
#
|
174
|
-
#
|
175
|
-
#
|
176
|
-
#
|
177
|
-
#
|
178
|
-
#
|
179
|
-
#
|
171
|
+
# define STDCALL
|
172
|
+
# if BUILD_DLL /* DLL kompilieren */
|
173
|
+
# define DLL_EXPORT __declspec (dllexport)
|
174
|
+
# define DLL_EXPORT_V __declspec (dllexport)
|
175
|
+
# elif USE_DLL /* DLL in einem anderen Programm benutzen */
|
176
|
+
# define DLL_EXPORT __declspec (dllimport)
|
177
|
+
# define DLL_EXPORT_V __declspec (dllimport)
|
178
|
+
# else /* kein DLL-Krempel erforderlich */
|
179
|
+
# define DLL_EXPORT
|
180
|
+
# define DLL_EXPORT_V
|
181
|
+
# endif
|
180
182
|
# else
|
183
|
+
# define STDCALL __stdcall
|
181
184
|
# if BUILD_DLL /* DLL kompilieren */
|
182
185
|
# define DLL_EXPORT __declspec (dllexport) __stdcall
|
183
186
|
# define DLL_EXPORT_V __declspec (dllexport)
|
@@ -185,12 +188,13 @@
|
|
185
188
|
# define DLL_EXPORT __declspec (dllimport) __stdcall
|
186
189
|
# define DLL_EXPORT_V __declspec (dllimport)
|
187
190
|
# else /* kein DLL-Krempel erforderlich */
|
188
|
-
# define DLL_EXPORT
|
191
|
+
# define DLL_EXPORT __stdcall
|
189
192
|
# define DLL_EXPORT_V
|
190
193
|
# endif
|
191
194
|
# endif
|
192
195
|
# define localtime_r(timep,result) localtime(timep)
|
193
196
|
#else
|
197
|
+
# define STDCALL
|
194
198
|
# define DLL_EXPORT
|
195
199
|
# define DLL_EXPORT_V
|
196
200
|
#endif
|
@@ -286,6 +290,10 @@
|
|
286
290
|
#define LUT2_IBAN_REGEL 25
|
287
291
|
#define LUT2_IBAN_REGEL_SORT 26
|
288
292
|
#define LUT2_BIC_H_SORT 27
|
293
|
+
#define LUT2_SCL_INFO 28
|
294
|
+
#define LUT2_SCL_BIC 29
|
295
|
+
#define LUT2_SCL_NAME 30
|
296
|
+
#define LUT2_SCL_FLAGS 31
|
289
297
|
|
290
298
|
#define LUT2_2_BLZ 101
|
291
299
|
#define LUT2_2_FILIALEN 102
|
@@ -314,6 +322,10 @@
|
|
314
322
|
#define LUT2_2_IBAN_REGEL 125
|
315
323
|
#define LUT2_2_IBAN_REGEL_SORT 126
|
316
324
|
#define LUT2_2_BIC_H_SORT 127
|
325
|
+
#define LUT2_2_SCL_INFO 128
|
326
|
+
#define LUT2_2_SCL_BIC 129
|
327
|
+
#define LUT2_2_SCL_NAME 130
|
328
|
+
#define LUT2_2_SCL_FLAGS 131
|
317
329
|
|
318
330
|
#define LUT2_DEFAULT 501
|
319
331
|
|
@@ -330,6 +342,12 @@ extern const char *lut2_feld_namen[256];
|
|
330
342
|
*/
|
331
343
|
|
332
344
|
#undef FALSE
|
345
|
+
#define NO_SCL_BLOCKS_LOADED -158
|
346
|
+
#define NO_SCL_INFO_BLOCK -157
|
347
|
+
#define SCL_BIC_NOT_FOUND -156
|
348
|
+
#define INVALID_SCL_INFO_BLOCK -155
|
349
|
+
#define NO_SCL_BLOCKS -154
|
350
|
+
#define SCL_INPUT_FORMAT_ERROR -153
|
333
351
|
#define INVALID_REGULAR_EXPRESSION_CNT -152
|
334
352
|
#define INVALID_REGULAR_EXPRESSION -151
|
335
353
|
#define INVALID_HANDLE -150
|
@@ -483,6 +501,9 @@ extern const char *lut2_feld_namen[256];
|
|
483
501
|
#define OK_KTO_REPLACED_NO_PZ 24
|
484
502
|
#define OK_UNTERKONTO_ATTACHED 25
|
485
503
|
#define OK_SHORT_BIC_USED 26
|
504
|
+
#define OK_SCL_EXTENSION_BIC_USED 27
|
505
|
+
#define OK_SCL_WILDCARD_BIC_USED 28
|
506
|
+
#line 282 "konto_check_h.lx"
|
486
507
|
|
487
508
|
#define MAX_BLZ_CNT 30000 /* maximale Anzahl BLZ's in generate_lut() */
|
488
509
|
|
@@ -856,6 +877,7 @@ DLL_EXPORT int lut_info_id(char *lut_name,int *info1,int *info2,int *valid1,int
|
|
856
877
|
DLL_EXPORT const char *current_lutfile_name(int *set,int *level,int *retval);
|
857
878
|
DLL_EXPORT int current_lutfile_name_id(int *set,int *level,int *retval);
|
858
879
|
DLL_EXPORT int lut_valid(void);
|
880
|
+
DLL_EXPORT int lut_valid_date(char *lut_name,int *v11,int *v12,int *v21,int *v22);
|
859
881
|
DLL_EXPORT int get_lut_info2(char *lut_name,int *version_p,char **prolog_p,char **info_p,char **user_info_p);
|
860
882
|
DLL_EXPORT int get_lut_info_b(char **info,char *lutname);
|
861
883
|
DLL_EXPORT int get_lut_info2_b(char *lutname,int *version,char **prolog_p,char **info_p,char **user_info_p);
|
@@ -1090,6 +1112,24 @@ DLL_EXPORT int iban_name_id(char *iban,int filiale,int*retval);
|
|
1090
1112
|
DLL_EXPORT int iban_name_kurz_id(char *iban,int filiale,int*retval);
|
1091
1113
|
DLL_EXPORT int iban_ort_id(char *iban,int filiale,int*retval);
|
1092
1114
|
|
1115
|
+
/* Funktionen f�r das SCL-Verzeichnis */
|
1116
|
+
DLL_EXPORT int lut_scl_init(char *lut_name);
|
1117
|
+
DLL_EXPORT int lut_scl_info(char *lutfile,int *cnt,const char **gueltigkeit,const char **gueltigkeit_iso);
|
1118
|
+
DLL_EXPORT int lut_write_scl_blocks(char *inputfile,char *lutfile);
|
1119
|
+
DLL_EXPORT int lut_scl_multi(char *bic,const char **scl_flags,const char **used_bic,const char **scl_name);
|
1120
|
+
DLL_EXPORT int lut_scl_multi_blz(char *blz,const char **scl_flags,const char **used_bic,const char **scl_name);
|
1121
|
+
DLL_EXPORT int lut_scl_multi_blz_i(int blz,const char **scl_flags,const char **used_bic,const char **scl_name);
|
1122
|
+
DLL_EXPORT int lut_scl_sct(char *bic,int *retval);
|
1123
|
+
DLL_EXPORT int lut_scl_sdd(char *bic,int *retval);
|
1124
|
+
DLL_EXPORT int lut_scl_cor1(char *bic,int *retval);
|
1125
|
+
DLL_EXPORT int lut_scl_b2b(char *bic,int *retval);
|
1126
|
+
DLL_EXPORT int lut_scl_scc(char *bic,int *retval);
|
1127
|
+
DLL_EXPORT int lut_scl_sct_blz(char *blz,int *retval,const char **used_bic);
|
1128
|
+
DLL_EXPORT int lut_scl_sdd_blz(char *blz,int *retval,const char **used_bic);
|
1129
|
+
DLL_EXPORT int lut_scl_cor1_blz(char *blz,int *retval,const char **used_bic);
|
1130
|
+
DLL_EXPORT int lut_scl_b2b_blz(char *blz,int *retval,const char **used_bic);
|
1131
|
+
DLL_EXPORT int lut_scl_scc_blz(char *blz,int *retval,const char **used_bic);
|
1132
|
+
|
1093
1133
|
/*
|
1094
1134
|
* ######################################################################
|
1095
1135
|
* # globale Variablen #
|
@@ -48,6 +48,7 @@ vim: ft=c:set si:set fileencoding=utf-8
|
|
48
48
|
#include "ruby.h"
|
49
49
|
#include <stdio.h>
|
50
50
|
#include "konto_check.h"
|
51
|
+
#line 64 "konto_check_raw_ruby.lxx"
|
51
52
|
|
52
53
|
/* Ruby 1.8/1.9 compatibility definitions */
|
53
54
|
#ifndef RSTRING_PTR
|
@@ -285,6 +286,38 @@ static void get_params_int(int argc,VALUE* argv,int *arg1,int *arg2,int *uniq_p)
|
|
285
286
|
if(uniq_p)*uniq_p=uniq;
|
286
287
|
}
|
287
288
|
|
289
|
+
|
290
|
+
/**
|
291
|
+
* get_params_scl()
|
292
|
+
*
|
293
|
+
* get one string parameter from argc/argv
|
294
|
+
*/
|
295
|
+
static void get_params_scl(int argc,VALUE* argv,char *arg1s,int maxlen)
|
296
|
+
{
|
297
|
+
int len;
|
298
|
+
VALUE arg1_rb;
|
299
|
+
|
300
|
+
rb_scan_args(argc,argv,"10",&arg1_rb);
|
301
|
+
if(maxlen==8)switch(TYPE(arg1_rb)){
|
302
|
+
case RUBY_T_STRING:
|
303
|
+
break;
|
304
|
+
case RUBY_T_FLOAT:
|
305
|
+
case RUBY_T_FIXNUM:
|
306
|
+
case RUBY_T_BIGNUM:
|
307
|
+
snprintf(arg1s,9,"%08d",FIX2INT(arg1_rb));
|
308
|
+
return;
|
309
|
+
default:
|
310
|
+
rb_raise(rb_eTypeError,"%s","argument must be a string");
|
311
|
+
}
|
312
|
+
if(TYPE(arg1_rb)==RUBY_T_STRING){
|
313
|
+
if((len=RSTRING_LEN(arg1_rb))>maxlen)len=maxlen;
|
314
|
+
strncpy(arg1s,RSTRING_PTR(arg1_rb),len);
|
315
|
+
*(arg1s+len)=0;
|
316
|
+
}
|
317
|
+
else
|
318
|
+
rb_raise(rb_eTypeError,"%s","argument must be a string");
|
319
|
+
}
|
320
|
+
|
288
321
|
/**
|
289
322
|
* get_params()
|
290
323
|
*
|
@@ -811,7 +844,7 @@ static VALUE lut_blocks_rb(int argc,VALUE* argv,VALUE self)
|
|
811
844
|
*/
|
812
845
|
static VALUE lut_blocks1_rb(int argc,VALUE* argv,VALUE self)
|
813
846
|
{
|
814
|
-
rb_scan_args(argc,argv,"0",NULL);
|
847
|
+
// rb_scan_args(argc,argv,"0",NULL);
|
815
848
|
return INT2FIX(lut_blocks(0,NULL,NULL,NULL));
|
816
849
|
}
|
817
850
|
|
@@ -4289,7 +4322,7 @@ static VALUE bank_suche_volltext(int argc,VALUE* argv,VALUE self)
|
|
4289
4322
|
* ====Mögliche Statuscodes:
|
4290
4323
|
* * -70 (LUT1_FILE_USED) "Es wurde eine LUT-Datei im Format 1.0/1.1 geladen"
|
4291
4324
|
* * -48 (LUT2_NAME_KURZ_NOT_INITIALIZED) "Das Feld Kurzname wurde nicht initialisiert"
|
4292
|
-
* * -40 (LUT2_NOT_INITIALIZED)
|
4325
|
+
* * -40 (LUT2_NOT_INITIALIZED) "die Programmbibliothek wurde noch nicht initialisiert"
|
4293
4326
|
* * -9 (ERROR_MALLOC) "kann keinen Speicher allokieren"
|
4294
4327
|
* * 1 (OK) "ok"
|
4295
4328
|
* * 14 (SOME_KEYS_NOT_FOUND) "ok; ein(ige) Schlüssel wurden nicht gefunden"
|
@@ -4317,6 +4350,485 @@ static VALUE bank_suche_multiple(int argc,VALUE* argv,VALUE self)
|
|
4317
4350
|
}
|
4318
4351
|
|
4319
4352
|
|
4353
|
+
/**
|
4354
|
+
* ===KontoCheckRaw::scl_init([lutname})
|
4355
|
+
* =====KontoCheck::scl_init([lutname])
|
4356
|
+
* Mit den scl_* Funktionen können für einen gegebenen BIC oder eine BLZ die
|
4357
|
+
* Einträge des SCL-Verzeichnisses bestimmt werden. Falls die _blz() Version der
|
4358
|
+
* Funktionen verwendet wird, muß die Bibliothek mittels KontoCheck::init *und*
|
4359
|
+
* KontoCheck::scl_init initialisiert werden, um sowohl die Kontodaten als auch die
|
4360
|
+
* Daten des SCL-Verzeichnisses einzulesen.
|
4361
|
+
*
|
4362
|
+
* Die Funktion scl_init liest die SCL-Blocks aus einer LUT-Datei und initialisiert
|
4363
|
+
* die zugehörigen internen Datenstrukturen.initialisiert SCL-Datenstrukturen.
|
4364
|
+
* Falls der Parameter lut_name nicht angegeben ist, wird die LUT-Datei benutzt,
|
4365
|
+
* mit der die Bibliothek mittels KontoCheck::init initialisiert wurde.
|
4366
|
+
*
|
4367
|
+
* ====Aufruf:
|
4368
|
+
* * ret=KontoCheckRaw::scl_init([lutname])
|
4369
|
+
*
|
4370
|
+
* ====Rückgabe:
|
4371
|
+
* Es wird ein skalarer Statuscode zurückgegeben, der Auskunft über die Initialisierung bzw.
|
4372
|
+
* aufgetretene Fehler gibt.
|
4373
|
+
*
|
4374
|
+
* ====Mögliche Statuscodes:
|
4375
|
+
* * -155 (INVALID_SCL_INFO_BLOCK) "(Ungültiger SCL-Info-Block in der LUT-Datei"
|
4376
|
+
* * -154 (NO_SCL_BLOCKS) "Ungültige Eingabewerte in der SCL-Datei"
|
4377
|
+
* * -40 (LUT2_NOT_INITIALIZED) "die Programmbibliothek wurde noch nicht initialisiert"
|
4378
|
+
* * -10 (FILE_READ_ERROR) "kann Datei nicht lesen"
|
4379
|
+
* * 1 (OK) "ok"
|
4380
|
+
*/
|
4381
|
+
static VALUE scl_init_rb(int argc,VALUE* argv,VALUE self)
|
4382
|
+
{
|
4383
|
+
char lut_name[FILENAME_MAX+1];
|
4384
|
+
const char *l_name;
|
4385
|
+
int retval;
|
4386
|
+
|
4387
|
+
get_params_file(argc,argv,lut_name,NULL,NULL,3);
|
4388
|
+
if(!*lut_name){
|
4389
|
+
l_name=current_lutfile_name(NULL,NULL,&retval);
|
4390
|
+
if(l_name && retval>0){
|
4391
|
+
strcpy(lut_name,l_name);
|
4392
|
+
}
|
4393
|
+
else
|
4394
|
+
return INT2FIX(retval);
|
4395
|
+
}
|
4396
|
+
retval=lut_scl_init(lut_name);
|
4397
|
+
return INT2FIX(retval);
|
4398
|
+
}
|
4399
|
+
|
4400
|
+
/**
|
4401
|
+
* ===KontoCheckRaw::scl_multi(bic)
|
4402
|
+
* =====KontoCheck::scl_multi(bic)
|
4403
|
+
* Diese Funktion bestimmt alle Werte des BIC-Verzeichnisses zu einem gegebenen BIC.
|
4404
|
+
* Im Fehlerfall wird nil zurückgegeben und die Variable retval auf den
|
4405
|
+
* entsprechende Fehlercode (<0) gesetzt.
|
4406
|
+
*
|
4407
|
+
* ====Aufruf:
|
4408
|
+
* * ret=KontoCheckRaw::scl_multi(bic)
|
4409
|
+
*
|
4410
|
+
* ====Rückgabe:
|
4411
|
+
* Die Rückgabe ist ein Array mit vier Elementen:
|
4412
|
+
*
|
4413
|
+
* * Das erste Element ist der Statuscode (s.u.)
|
4414
|
+
* * Das zweite Element sind die SCL Flags (als String)
|
4415
|
+
* * das dritte Element ist der benutzte BIC
|
4416
|
+
* * das vierte Element ist der Institutsname aus dem BIC-Verzeichnis
|
4417
|
+
*
|
4418
|
+
* ====Mögliche Statuscodes:
|
4419
|
+
* * -158 (NO_SCL_BLOCKS_LOADED) "die SCL-Blocks wurden noch nicht eingelesen"
|
4420
|
+
* * -156 (SCL_BIC_NOT_FOUND) "Der BIC wurde im SCL-Verzeichnis nicht gefunden"
|
4421
|
+
* * -139 (LUT2_NOT_ALL_IBAN_BLOCKS_LOADED) "es konnten nicht alle Datenblocks die für die IBAN-Berechnung notwendig sind geladen werden"
|
4422
|
+
* * 1 (OK) "ok"
|
4423
|
+
* * 27 (OK_SCL_EXTENSION_BIC_USED) "ok, für den BIC wurde die Extension XXX angehängt"
|
4424
|
+
* * 28 (OK_SCL_WILDCARD_BIC_USED) "ok, für den BIC wurde die Wildcard-Version (8stellig) benutzt"
|
4425
|
+
*/
|
4426
|
+
static VALUE scl_multi(int argc,VALUE* argv,VALUE self)
|
4427
|
+
{
|
4428
|
+
char bic[12];
|
4429
|
+
const char *scl_flags,*used_bic,*scl_name;
|
4430
|
+
int retval;
|
4431
|
+
|
4432
|
+
get_params_scl(argc,argv,bic,11);
|
4433
|
+
retval=lut_scl_multi(bic,&scl_flags,&used_bic,&scl_name);
|
4434
|
+
if(retval>0)
|
4435
|
+
return rb_ary_new3(4,INT2FIX(retval),rb_str_new2(scl_flags),rb_str_new2(used_bic),rb_str_new2(scl_name));
|
4436
|
+
else
|
4437
|
+
return rb_ary_new3(4,INT2FIX(retval),Qnil,Qnil,Qnil);
|
4438
|
+
}
|
4439
|
+
|
4440
|
+
/**
|
4441
|
+
* ===KontoCheckRaw::scl_sct(bic)
|
4442
|
+
* =====KontoCheck::scl_sct(bic)
|
4443
|
+
* =====KontoCheckRaw::scl_sct_blz(blz)
|
4444
|
+
* Diese Funktion bestimmt das Flag SCT (SEPA Credit Transfer) des SCL-
|
4445
|
+
* Verzeichnisses und gibt das Flag (0 bzw. 1) zurück.
|
4446
|
+
* Im Fehlerfall wird nil zurückgegeben und die Variable retval auf den
|
4447
|
+
* entsprechende Fehlercode (<0) gesetzt.
|
4448
|
+
*
|
4449
|
+
* ====Aufruf:
|
4450
|
+
* * ret=KontoCheckRaw::scl_sct(bic)
|
4451
|
+
*
|
4452
|
+
* ====Rückgabe:
|
4453
|
+
* Die Rückgabe ist ein Array mit zwei Elementen:
|
4454
|
+
*
|
4455
|
+
* * Das erste Element ist das Flag SCT aus dem SEPA-Directory
|
4456
|
+
* * Das zweite Element ist der Statuscode (s.u.)
|
4457
|
+
*
|
4458
|
+
* ====Mögliche Statuscodes:
|
4459
|
+
* * -158 (NO_SCL_BLOCKS_LOADED) "die SCL-Blocks wurden noch nicht eingelesen"
|
4460
|
+
* * -156 (SCL_BIC_NOT_FOUND) "Der BIC wurde im SCL-Verzeichnis nicht gefunden"
|
4461
|
+
* * 1 (OK) "ok"
|
4462
|
+
* * 27 (OK_SCL_EXTENSION_BIC_USED) "ok, für den BIC wurde die Extension XXX angehängt"
|
4463
|
+
* * 28 (OK_SCL_WILDCARD_BIC_USED) "ok, für den BIC wurde die Wildcard-Version (8stellig) benutzt"
|
4464
|
+
*
|
4465
|
+
*/
|
4466
|
+
static VALUE scl_sct(int argc,VALUE* argv,VALUE self)
|
4467
|
+
{
|
4468
|
+
char bic[12];
|
4469
|
+
int rv,retval;
|
4470
|
+
|
4471
|
+
get_params_scl(argc,argv,bic,11);
|
4472
|
+
rv=lut_scl_sct(bic,&retval);
|
4473
|
+
return rb_ary_new3(2,retval>0?INT2FIX(rv):Qnil,INT2FIX(retval));
|
4474
|
+
}
|
4475
|
+
|
4476
|
+
/**
|
4477
|
+
* ===KontoCheckRaw::scl_sct_blz(blz)
|
4478
|
+
* =====KontoCheck::scl_sct_blz(blz)
|
4479
|
+
* =====KontoCheckRaw::scl_sct(bic)
|
4480
|
+
* Diese Funktion bestimmt das Flag SCT (SEPA Credit Transfer) des SCL-
|
4481
|
+
* Verzeichnisses und gibt das Flag (0 bzw. 1) zurück.
|
4482
|
+
* Im Fehlerfall wird nil zurückgegeben und die Variable retval auf den
|
4483
|
+
* entsprechende Fehlercode (<0) gesetzt.
|
4484
|
+
*
|
4485
|
+
* ====Aufruf:
|
4486
|
+
* * ret=KontoCheckRaw::scl_sct_blz(blz)
|
4487
|
+
*
|
4488
|
+
* ====Rückgabe:
|
4489
|
+
* Die Rückgabe ist ein Array mit drei Elementen:
|
4490
|
+
*
|
4491
|
+
* * Das erste Element ist das Flag SCT aus dem SEPA-Directory
|
4492
|
+
* * Das zweite Element ist der Statuscode (s.u.)
|
4493
|
+
* * Das dritte Element ist der benutzte BIC
|
4494
|
+
*
|
4495
|
+
* ====Mögliche Statuscodes:
|
4496
|
+
* * -158 (NO_SCL_BLOCKS_LOADED) "die SCL-Blocks wurden noch nicht eingelesen"
|
4497
|
+
* * -156 (SCL_BIC_NOT_FOUND) "Der BIC wurde im SCL-Verzeichnis nicht gefunden"
|
4498
|
+
* * -139 (LUT2_NOT_ALL_IBAN_BLOCKS_LOADED) "es konnten nicht alle Datenblocks die für die IBAN-Berechnung notwendig sind geladen werden"
|
4499
|
+
* * -5 (INVALID_BLZ_LENGTH) "die Bankleitzahl ist nicht achtstellig"
|
4500
|
+
* * -4 (INVALID_BLZ) "die Bankleitzahl ist ungültig"
|
4501
|
+
* * 1 (OK) "ok"
|
4502
|
+
* * 27 (OK_SCL_EXTENSION_BIC_USED) "ok, für den BIC wurde die Extension XXX angehängt"
|
4503
|
+
* * 28 (OK_SCL_WILDCARD_BIC_USED) "ok, für den BIC wurde die Wildcard-Version (8stellig) benutzt"
|
4504
|
+
*/
|
4505
|
+
static VALUE scl_sct_blz(int argc,VALUE* argv,VALUE self)
|
4506
|
+
{
|
4507
|
+
char blz[12];
|
4508
|
+
const char *used_bic;
|
4509
|
+
int rv,retval;
|
4510
|
+
|
4511
|
+
get_params_scl(argc,argv,blz,8);
|
4512
|
+
rv=lut_scl_sct_blz(blz,&retval,&used_bic);
|
4513
|
+
if(retval>0)
|
4514
|
+
return rb_ary_new3(3,INT2FIX(rv),INT2FIX(retval),rb_str_new2(used_bic));
|
4515
|
+
else
|
4516
|
+
return rb_ary_new3(3,Qnil,INT2FIX(retval),Qnil);
|
4517
|
+
}
|
4518
|
+
|
4519
|
+
/**
|
4520
|
+
* ===KontoCheckRaw::scl_sdd(bic)
|
4521
|
+
* =====KontoCheck::scl_sdd(bic)
|
4522
|
+
* =====KontoCheckRaw::scl_sdd_blz(blz)
|
4523
|
+
* Diese Funktion bestimmt das Flag SDD (SEPA CORE Direct Debit (SEPA-Basislastschrift)
|
4524
|
+
* des SCL- Verzeichnisses und gibt das Flag (0 bzw. 1) zurück.
|
4525
|
+
* Im Fehlerfall wird nil zurückgegeben und die Variable retval auf den
|
4526
|
+
* entsprechende Fehlercode (<0) gesetzt.
|
4527
|
+
*
|
4528
|
+
* ====Aufruf:
|
4529
|
+
* * ret=KontoCheckRaw::scl_sdd(bic)
|
4530
|
+
*
|
4531
|
+
* ====Rückgabe:
|
4532
|
+
* Die Rückgabe ist ein Array mit zwei Elementen:
|
4533
|
+
*
|
4534
|
+
* * Das erste Element ist das Flag SDD aus dem SEPA-Directory
|
4535
|
+
* * Das zweite Element ist der Statuscode (s.u.)
|
4536
|
+
*
|
4537
|
+
* ====Mögliche Statuscodes:
|
4538
|
+
* * -158 (NO_SCL_BLOCKS_LOADED) "die SCL-Blocks wurden noch nicht eingelesen"
|
4539
|
+
* * -156 (SCL_BIC_NOT_FOUND) "Der BIC wurde im SCL-Verzeichnis nicht gefunden"
|
4540
|
+
* * 1 (OK) "ok"
|
4541
|
+
* * 27 (OK_SCL_EXTENSION_BIC_USED) "ok, für den BIC wurde die Extension XXX angehängt"
|
4542
|
+
* * 28 (OK_SCL_WILDCARD_BIC_USED) "ok, für den BIC wurde die Wildcard-Version (8stellig) benutzt"
|
4543
|
+
*/
|
4544
|
+
static VALUE scl_sdd(int argc,VALUE* argv,VALUE self)
|
4545
|
+
{
|
4546
|
+
char bic[12];
|
4547
|
+
int rv,retval;
|
4548
|
+
|
4549
|
+
get_params_scl(argc,argv,bic,11);
|
4550
|
+
rv=lut_scl_sdd(bic,&retval);
|
4551
|
+
return rb_ary_new3(2,retval>0?INT2FIX(rv):Qnil,INT2FIX(retval));
|
4552
|
+
}
|
4553
|
+
|
4554
|
+
/**
|
4555
|
+
* ===KontoCheckRaw::scl_sdd_blz(blz)
|
4556
|
+
* =====KontoCheck::scl_sdd(bic)
|
4557
|
+
* =====KontoCheckRaw::scl_sdd(blz)
|
4558
|
+
* Diese Funktion bestimmt das Flag SDD (SEPA CORE Direct Debit (SEPA-Basislastschrift)
|
4559
|
+
* des SCL- Verzeichnisses und gibt das Flag (0 bzw. 1) zurück.
|
4560
|
+
* Im Fehlerfall wird nil zurückgegeben und die Variable retval auf den
|
4561
|
+
* entsprechende Fehlercode (<0) gesetzt.
|
4562
|
+
*
|
4563
|
+
* ====Aufruf:
|
4564
|
+
* * ret=KontoCheckRaw::scl_sdd_blz(blz)
|
4565
|
+
*
|
4566
|
+
* ====Rückgabe:
|
4567
|
+
* Die Rückgabe ist ein Array mit drei Elementen:
|
4568
|
+
*
|
4569
|
+
* * Das erste Element ist das Flag SDD aus dem SEPA-Directory
|
4570
|
+
* * Das zweite Element ist der Statuscode (s.u.)
|
4571
|
+
* * Das dritte Element (nur bei scl_sdd_blz()) ist der benutzte BIC
|
4572
|
+
*
|
4573
|
+
* ====Mögliche Statuscodes:
|
4574
|
+
* * -158 (NO_SCL_BLOCKS_LOADED) "die SCL-Blocks wurden noch nicht eingelesen"
|
4575
|
+
* * -156 (SCL_BIC_NOT_FOUND) "Der BIC wurde im SCL-Verzeichnis nicht gefunden"
|
4576
|
+
* * -139 (LUT2_NOT_ALL_IBAN_BLOCKS_LOADED) "es konnten nicht alle Datenblocks die für die IBAN-Berechnung notwendig sind geladen werden"
|
4577
|
+
* * -5 (INVALID_BLZ_LENGTH) "die Bankleitzahl ist nicht achtstellig"
|
4578
|
+
* * -4 (INVALID_BLZ) "die Bankleitzahl ist ungültig"
|
4579
|
+
* * 1 (OK) "ok"
|
4580
|
+
* * 27 (OK_SCL_EXTENSION_BIC_USED) "ok, für den BIC wurde die Extension XXX angehängt"
|
4581
|
+
* * 28 (OK_SCL_WILDCARD_BIC_USED) "ok, für den BIC wurde die Wildcard-Version (8stellig) benutzt"
|
4582
|
+
*/
|
4583
|
+
static VALUE scl_sdd_blz(int argc,VALUE* argv,VALUE self)
|
4584
|
+
{
|
4585
|
+
char blz[12];
|
4586
|
+
const char *used_bic;
|
4587
|
+
int rv,retval;
|
4588
|
+
|
4589
|
+
get_params_scl(argc,argv,blz,8);
|
4590
|
+
rv=lut_scl_sdd_blz(blz,&retval,&used_bic);
|
4591
|
+
if(retval>0)
|
4592
|
+
return rb_ary_new3(3,INT2FIX(rv),INT2FIX(retval),rb_str_new2(used_bic));
|
4593
|
+
else
|
4594
|
+
return rb_ary_new3(3,Qnil,INT2FIX(retval),Qnil);
|
4595
|
+
}
|
4596
|
+
|
4597
|
+
/**
|
4598
|
+
* ===KontoCheckRaw::scl_cor1(bic)
|
4599
|
+
* =====KontoCheck::scl_cor1(bic)
|
4600
|
+
* =====KontoCheck::scl_cor1_blz(blz)
|
4601
|
+
* Diese Funktion bestimmt das Flag COR1 (SEPA COR1 Direct Debit (SEPA-Basislastschrift
|
4602
|
+
* mit verkürzter Vorlagefrist) des SCL-Verzeichnisses und gibt das Flag (0 bzw. 1) zurück.
|
4603
|
+
* Im Fehlerfall wird nil zurückgegeben und die Variable retval auf den
|
4604
|
+
* entsprechende Fehlercode (<0) gesetzt.
|
4605
|
+
*
|
4606
|
+
* ====Aufruf:
|
4607
|
+
* * ret=KontoCheckRaw::scl_cor1(bic)
|
4608
|
+
*
|
4609
|
+
* ====Rückgabe:
|
4610
|
+
* Die Rückgabe ist ein Array mit zwei Elementen:
|
4611
|
+
*
|
4612
|
+
* * Das erste Element ist das Flag SDD aus dem SEPA-Directory
|
4613
|
+
* * Das zweite Element ist der Statuscode (s.u.)
|
4614
|
+
*
|
4615
|
+
* ====Mögliche Statuscodes:
|
4616
|
+
* * -158 (NO_SCL_BLOCKS_LOADED) "die SCL-Blocks wurden noch nicht eingelesen"
|
4617
|
+
* * -156 (SCL_BIC_NOT_FOUND) "Der BIC wurde im SCL-Verzeichnis nicht gefunden"
|
4618
|
+
* * 1 (OK) "ok"
|
4619
|
+
* * 27 (OK_SCL_EXTENSION_BIC_USED) "ok, für den BIC wurde die Extension XXX angehängt"
|
4620
|
+
* * 28 (OK_SCL_WILDCARD_BIC_USED) "ok, für den BIC wurde die Wildcard-Version (8stellig) benutzt"
|
4621
|
+
*/
|
4622
|
+
static VALUE scl_cor1(int argc,VALUE* argv,VALUE self)
|
4623
|
+
{
|
4624
|
+
char bic[12];
|
4625
|
+
int rv,retval;
|
4626
|
+
|
4627
|
+
get_params_scl(argc,argv,bic,11);
|
4628
|
+
rv=lut_scl_cor1(bic,&retval);
|
4629
|
+
return rb_ary_new3(2,retval>0?INT2FIX(rv):Qnil,INT2FIX(retval));
|
4630
|
+
}
|
4631
|
+
|
4632
|
+
/**
|
4633
|
+
* ===KontoCheckRaw::scl_cor1_blz(blz)
|
4634
|
+
* =====KontoCheck::scl_cor1(bic)
|
4635
|
+
* =====KontoCheckRaw::scl_cor1(blz)
|
4636
|
+
* Diese Funktion bestimmt das Flag COR1 (SEPA COR1 Direct Debit (SEPA-Basislastschrift
|
4637
|
+
* mit verkürzter Vorlagefrist) des SCL-Verzeichnisses und gibt das Flag (0 bzw. 1) zurück.
|
4638
|
+
* Im Fehlerfall wird nil zurückgegeben und die Variable retval auf den
|
4639
|
+
* entsprechende Fehlercode (<0) gesetzt.
|
4640
|
+
*
|
4641
|
+
* ====Aufruf:
|
4642
|
+
* * ret=KontoCheckRaw::scl_cor1_blz(blz)
|
4643
|
+
*
|
4644
|
+
* ====Rückgabe:
|
4645
|
+
* Die Rückgabe ist ein Array mit drei Elementen:
|
4646
|
+
*
|
4647
|
+
* * Das erste Element ist das Flag SDD aus dem SEPA-Directory
|
4648
|
+
* * Das zweite Element ist der Statuscode (s.u.)
|
4649
|
+
* * Das dritte Element (nur bei scl_cor1_blz()) ist der benutzte BIC
|
4650
|
+
*
|
4651
|
+
* ====Mögliche Statuscodes:
|
4652
|
+
* * -158 (NO_SCL_BLOCKS_LOADED) "die SCL-Blocks wurden noch nicht eingelesen"
|
4653
|
+
* * -156 (SCL_BIC_NOT_FOUND) "Der BIC wurde im SCL-Verzeichnis nicht gefunden"
|
4654
|
+
* * -139 (LUT2_NOT_ALL_IBAN_BLOCKS_LOADED) "es konnten nicht alle Datenblocks die für die IBAN-Berechnung notwendig sind geladen werden"
|
4655
|
+
* * -5 (INVALID_BLZ_LENGTH) "die Bankleitzahl ist nicht achtstellig"
|
4656
|
+
* * -4 (INVALID_BLZ) "die Bankleitzahl ist ungültig"
|
4657
|
+
* * 1 (OK) "ok"
|
4658
|
+
* * 27 (OK_SCL_EXTENSION_BIC_USED) "ok, für den BIC wurde die Extension XXX angehängt"
|
4659
|
+
* * 28 (OK_SCL_WILDCARD_BIC_USED) "ok, für den BIC wurde die Wildcard-Version (8stellig) benutzt"
|
4660
|
+
*/
|
4661
|
+
static VALUE scl_cor1_blz(int argc,VALUE* argv,VALUE self)
|
4662
|
+
{
|
4663
|
+
char blz[12];
|
4664
|
+
const char *used_bic;
|
4665
|
+
int rv,retval;
|
4666
|
+
|
4667
|
+
get_params_scl(argc,argv,blz,8);
|
4668
|
+
rv=lut_scl_cor1_blz(blz,&retval,&used_bic);
|
4669
|
+
if(retval>0)
|
4670
|
+
return rb_ary_new3(3,INT2FIX(rv),INT2FIX(retval),rb_str_new2(used_bic));
|
4671
|
+
else
|
4672
|
+
return rb_ary_new3(3,Qnil,INT2FIX(retval),Qnil);
|
4673
|
+
}
|
4674
|
+
|
4675
|
+
/**
|
4676
|
+
* ===KontoCheckRaw::scl_b2b(bic)
|
4677
|
+
* =====KontoCheck::scl_b2b(bic)
|
4678
|
+
* =====KontoCheckRaw::scl_b2b_blz(blz)
|
4679
|
+
* Diese Funktion bestimmt das Flag B2B (SEPA B2B Direct Debit, Sepa-Firmelastschrift)
|
4680
|
+
* des SCL-Verzeichnisses und gibt das Flag (0 bzw. 1) zurück.
|
4681
|
+
* Im Fehlerfall wird nil zurückgegeben und die Variable retval auf den
|
4682
|
+
* entsprechende Fehlercode (<0) gesetzt.
|
4683
|
+
*
|
4684
|
+
* ====Aufruf:
|
4685
|
+
* * ret=KontoCheckRaw::scl_b2b(bic)
|
4686
|
+
*
|
4687
|
+
* ====Rückgabe:
|
4688
|
+
* Die Rückgabe ist ein Array mit zwei Elementen:
|
4689
|
+
*
|
4690
|
+
* * Das erste Element ist das Flag B2B aus dem SEPA-Directory
|
4691
|
+
* * Das zweite Element ist der Statuscode (s.u.)
|
4692
|
+
*
|
4693
|
+
* ====Mögliche Statuscodes:
|
4694
|
+
* * -158 (NO_SCL_BLOCKS_LOADED) "die SCL-Blocks wurden noch nicht eingelesen"
|
4695
|
+
* * -156 (SCL_BIC_NOT_FOUND) "Der BIC wurde im SCL-Verzeichnis nicht gefunden"
|
4696
|
+
* * 1 (OK) "ok"
|
4697
|
+
* * 27 (OK_SCL_EXTENSION_BIC_USED) "ok, für den BIC wurde die Extension XXX angehängt"
|
4698
|
+
* * 28 (OK_SCL_WILDCARD_BIC_USED) "ok, für den BIC wurde die Wildcard-Version (8stellig) benutzt"
|
4699
|
+
*/
|
4700
|
+
static VALUE scl_b2b(int argc,VALUE* argv,VALUE self)
|
4701
|
+
{
|
4702
|
+
char bic[12];
|
4703
|
+
int rv,retval;
|
4704
|
+
|
4705
|
+
get_params_scl(argc,argv,bic,11);
|
4706
|
+
rv=lut_scl_b2b(bic,&retval);
|
4707
|
+
return rb_ary_new3(2,retval>0?INT2FIX(rv):Qnil,INT2FIX(retval));
|
4708
|
+
}
|
4709
|
+
|
4710
|
+
/**
|
4711
|
+
* ===KontoCheckRaw::scl_b2b_blz(blz)
|
4712
|
+
* =====KontoCheck::scl_b2b_blz(blz)
|
4713
|
+
* =====KontoCheckRaw::scl_b2b(bic)
|
4714
|
+
* Diese Funktion bestimmt das Flag B2B (SEPA B2B Direct Debit, Sepa-Firmelastschrift)
|
4715
|
+
* des SCL-Verzeichnisses und gibt das Flag (0 bzw. 1) zurück.
|
4716
|
+
* Im Fehlerfall wird nil zurückgegeben und die Variable retval auf den
|
4717
|
+
* entsprechende Fehlercode (<0) gesetzt.
|
4718
|
+
*
|
4719
|
+
* ====Aufruf:
|
4720
|
+
* * ret=KontoCheckRaw::scl_b2b_blz(blz)
|
4721
|
+
*
|
4722
|
+
* ====Rückgabe:
|
4723
|
+
* Die Rückgabe ist ein Array mit drei Elementen:
|
4724
|
+
*
|
4725
|
+
* * Das erste Element ist das Flag B2B aus dem SEPA-Directory
|
4726
|
+
* * Das zweite Element ist der Statuscode (s.u.)
|
4727
|
+
* * Das dritte Element (nur bei scl_b2b_blz()) ist der benutzte BIC
|
4728
|
+
*
|
4729
|
+
* ====Mögliche Statuscodes:
|
4730
|
+
* * -158 (NO_SCL_BLOCKS_LOADED) "die SCL-Blocks wurden noch nicht eingelesen"
|
4731
|
+
* * -156 (SCL_BIC_NOT_FOUND) "Der BIC wurde im SCL-Verzeichnis nicht gefunden"
|
4732
|
+
* * -139 (LUT2_NOT_ALL_IBAN_BLOCKS_LOADED) "es konnten nicht alle Datenblocks die für die IBAN-Berechnung notwendig sind geladen werden"
|
4733
|
+
* * -5 (INVALID_BLZ_LENGTH) "die Bankleitzahl ist nicht achtstellig"
|
4734
|
+
* * -4 (INVALID_BLZ) "die Bankleitzahl ist ungültig"
|
4735
|
+
* * 1 (OK) "ok"
|
4736
|
+
* * 27 (OK_SCL_EXTENSION_BIC_USED) "ok, für den BIC wurde die Extension XXX angehängt"
|
4737
|
+
* * 28 (OK_SCL_WILDCARD_BIC_USED) "ok, für den BIC wurde die Wildcard-Version (8stellig) benutzt"
|
4738
|
+
*/
|
4739
|
+
static VALUE scl_b2b_blz(int argc,VALUE* argv,VALUE self)
|
4740
|
+
{
|
4741
|
+
char blz[12];
|
4742
|
+
const char *used_bic;
|
4743
|
+
int rv,retval;
|
4744
|
+
|
4745
|
+
get_params_scl(argc,argv,blz,8);
|
4746
|
+
rv=lut_scl_b2b_blz(blz,&retval,&used_bic);
|
4747
|
+
if(retval>0)
|
4748
|
+
return rb_ary_new3(3,INT2FIX(rv),INT2FIX(retval),rb_str_new2(used_bic));
|
4749
|
+
else
|
4750
|
+
return rb_ary_new3(3,Qnil,INT2FIX(retval),Qnil);
|
4751
|
+
|
4752
|
+
}
|
4753
|
+
|
4754
|
+
/**
|
4755
|
+
* ===KontoCheckRaw::scl_scc(bic)
|
4756
|
+
* =====KontoCheck::scl_scc(bic)
|
4757
|
+
* =====KontoCheckRaw::scl_scc_blz(blz)
|
4758
|
+
* Diese Funktion bestimmt das Flag SCC (SEPA Card Clearing, SCC Karteneinzüge)
|
4759
|
+
* des SCL-Verzeichnisses und gibt das Flag (0 bzw. 1) zurück.
|
4760
|
+
* Im Fehlerfall wird nil zurückgegeben und die Variable retval auf den
|
4761
|
+
* entsprechende Fehlercode (<0) gesetzt.
|
4762
|
+
*
|
4763
|
+
* ====Aufruf:
|
4764
|
+
* * ret=KontoCheckRaw::scl_scc(bic)
|
4765
|
+
*
|
4766
|
+
* ====Rückgabe:
|
4767
|
+
* Die Rückgabe ist ein Array mit zwei Elementen:
|
4768
|
+
*
|
4769
|
+
* * Das erste Element ist das Flag SDD aus dem SEPA-Directory
|
4770
|
+
* * Das zweite Element ist der Statuscode (s.u.)
|
4771
|
+
*
|
4772
|
+
* ====Mögliche Statuscodes:
|
4773
|
+
* * -158 (NO_SCL_BLOCKS_LOADED) "die SCL-Blocks wurden noch nicht eingelesen"
|
4774
|
+
* * -156 (SCL_BIC_NOT_FOUND) "Der BIC wurde im SCL-Verzeichnis nicht gefunden"
|
4775
|
+
* * 1 (OK) "ok"
|
4776
|
+
* * 27 (OK_SCL_EXTENSION_BIC_USED) "ok, für den BIC wurde die Extension XXX angehängt"
|
4777
|
+
* * 28 (OK_SCL_WILDCARD_BIC_USED) "ok, für den BIC wurde die Wildcard-Version (8stellig) benutzt"
|
4778
|
+
*/
|
4779
|
+
static VALUE scl_scc(int argc,VALUE* argv,VALUE self)
|
4780
|
+
{
|
4781
|
+
char bic[12];
|
4782
|
+
int rv,retval;
|
4783
|
+
|
4784
|
+
get_params_scl(argc,argv,bic,11);
|
4785
|
+
rv=lut_scl_scc(bic,&retval);
|
4786
|
+
return rb_ary_new3(2,retval>0?INT2FIX(rv):Qnil,INT2FIX(retval));
|
4787
|
+
}
|
4788
|
+
|
4789
|
+
/**
|
4790
|
+
* ===KontoCheckRaw::scl_scc_blz(blz)
|
4791
|
+
* =====KontoCheck::scl_scc(bic)
|
4792
|
+
* =====KontoCheckRaw::scl_scc(bic)
|
4793
|
+
* Diese Funktion bestimmt das Flag SCC (SEPA Card Clearing, SCC Karteneinzüge)
|
4794
|
+
* des SCL-Verzeichnisses und gibt das Flag (0 bzw. 1) zurück.
|
4795
|
+
* Im Fehlerfall wird nil zurückgegeben und die Variable retval auf den
|
4796
|
+
* entsprechende Fehlercode (<0) gesetzt.
|
4797
|
+
*
|
4798
|
+
* ====Aufruf:
|
4799
|
+
* * ret=KontoCheckRaw::scl_scc_blz(blz)
|
4800
|
+
*
|
4801
|
+
* ====Rückgabe:
|
4802
|
+
* Die Rückgabe ist ein Array mit drei Elementen:
|
4803
|
+
*
|
4804
|
+
* * Das erste Element ist das Flag SDD aus dem SEPA-Directory
|
4805
|
+
* * Das zweite Element ist der Statuscode (s.u.)
|
4806
|
+
* * Das dritte Element (nur bei scl_scc_blz()) ist der benutzte BIC
|
4807
|
+
*
|
4808
|
+
* ====Mögliche Statuscodes:
|
4809
|
+
* * -158 (NO_SCL_BLOCKS_LOADED) "die SCL-Blocks wurden noch nicht eingelesen"
|
4810
|
+
* * -156 (SCL_BIC_NOT_FOUND) "Der BIC wurde im SCL-Verzeichnis nicht gefunden"
|
4811
|
+
* * -139 (LUT2_NOT_ALL_IBAN_BLOCKS_LOADED) "es konnten nicht alle Datenblocks die für die IBAN-Berechnung notwendig sind geladen werden"
|
4812
|
+
* * -5 (INVALID_BLZ_LENGTH) "die Bankleitzahl ist nicht achtstellig"
|
4813
|
+
* * -4 (INVALID_BLZ) "die Bankleitzahl ist ungültig"
|
4814
|
+
* * 1 (OK) "ok"
|
4815
|
+
* * 27 (OK_SCL_EXTENSION_BIC_USED) "ok, für den BIC wurde die Extension XXX angehängt"
|
4816
|
+
* * 28 (OK_SCL_WILDCARD_BIC_USED) "ok, für den BIC wurde die Wildcard-Version (8stellig) benutzt"
|
4817
|
+
*/
|
4818
|
+
static VALUE scl_scc_blz(int argc,VALUE* argv,VALUE self)
|
4819
|
+
{
|
4820
|
+
char blz[12];
|
4821
|
+
const char *used_bic;
|
4822
|
+
int rv,retval;
|
4823
|
+
|
4824
|
+
get_params_scl(argc,argv,blz,8);
|
4825
|
+
rv=lut_scl_scc_blz(blz,&retval,&used_bic);
|
4826
|
+
if(retval>0)
|
4827
|
+
return rb_ary_new3(3,INT2FIX(rv),INT2FIX(retval),rb_str_new2(used_bic));
|
4828
|
+
else
|
4829
|
+
return rb_ary_new3(3,Qnil,INT2FIX(retval),Qnil);
|
4830
|
+
}
|
4831
|
+
|
4320
4832
|
/**
|
4321
4833
|
* ===KontoCheckRaw::version( [mode] )
|
4322
4834
|
* =====KontoCheck::version( [mode] )
|
@@ -4358,7 +4870,7 @@ void Init_konto_check_raw()
|
|
4358
4870
|
*
|
4359
4871
|
* <b>ATTENTION:</b> There are a few important changes in the API between
|
4360
4872
|
* version 0.0.2 (version by Peter Horn/Provideal), version 0.0.6 (jeanmartin)
|
4361
|
-
* and this version (V. 6.
|
4873
|
+
* and this version (V. 6.13 from 2020-12-16):
|
4362
4874
|
*
|
4363
4875
|
* * The function KontoCheck::load_bank_data() is no longer used; it is
|
4364
4876
|
* replaced by KontoCheck::init() and KontoCheck::generate_lutfile().
|
@@ -4536,10 +5048,36 @@ void Init_konto_check_raw()
|
|
4536
5048
|
rb_define_module_function(KontoCheck,"bank_suche_regel",bank_suche_regel,-1);
|
4537
5049
|
rb_define_module_function(KontoCheck,"bank_suche_volltext",bank_suche_volltext,-1);
|
4538
5050
|
rb_define_module_function(KontoCheck,"bank_suche_multiple",bank_suche_multiple,-1);
|
5051
|
+
|
5052
|
+
rb_define_module_function(KontoCheck,"scl_init",scl_init_rb,-1);
|
5053
|
+
rb_define_module_function(KontoCheck,"scl_multi",scl_multi,-1);
|
5054
|
+
rb_define_module_function(KontoCheck,"scl_sct",scl_sct,-1);
|
5055
|
+
rb_define_module_function(KontoCheck,"scl_sdd",scl_sdd,-1);
|
5056
|
+
rb_define_module_function(KontoCheck,"scl_cor1",scl_cor1,-1);
|
5057
|
+
rb_define_module_function(KontoCheck,"scl_b2b",scl_b2b,-1);
|
5058
|
+
rb_define_module_function(KontoCheck,"scl_scc_blz",scl_scc,-1);
|
5059
|
+
rb_define_module_function(KontoCheck,"scl_sct_blz",scl_sct_blz,-1);
|
5060
|
+
rb_define_module_function(KontoCheck,"scl_sdd_blz",scl_sdd_blz,-1);
|
5061
|
+
rb_define_module_function(KontoCheck,"scl_cor1_blz",scl_cor1_blz,-1);
|
5062
|
+
rb_define_module_function(KontoCheck,"scl_b2b_blz",scl_b2b_blz,-1);
|
5063
|
+
rb_define_module_function(KontoCheck,"scl_scc_blz",scl_scc_blz,-1);
|
5064
|
+
|
4539
5065
|
rb_define_module_function(KontoCheck,"version",version_rb,-1);
|
4540
5066
|
rb_define_module_function(KontoCheck,"load_bank_data",load_bank_data,1);
|
4541
5067
|
|
4542
5068
|
/* Rückgabewerte der konto_check Bibliothek */
|
5069
|
+
/* (-158) die SCL-Blocks wurden noch nicht eingelesen */
|
5070
|
+
rb_define_const(KontoCheck,"NO_SCL_BLOCKS_LOADED",INT2FIX(NO_SCL_BLOCKS_LOADED));
|
5071
|
+
/* (-157) Der Info-Block des SCL-Verzeichnisses wurde noch nicht eingelesen */
|
5072
|
+
rb_define_const(KontoCheck,"NO_SCL_INFO_BLOCK",INT2FIX(NO_SCL_INFO_BLOCK));
|
5073
|
+
/* (-156) Der BIC wurde im SCL-Verzeichnis nicht gefunden */
|
5074
|
+
rb_define_const(KontoCheck,"SCL_BIC_NOT_FOUND",INT2FIX(SCL_BIC_NOT_FOUND));
|
5075
|
+
/* (-155) Ungültiger SCL-Info-Block in der LUT-Datei */
|
5076
|
+
rb_define_const(KontoCheck,"INVALID_SCL_INFO_BLOCK",INT2FIX(INVALID_SCL_INFO_BLOCK));
|
5077
|
+
/* (-154) Keine SCL-Blocks in der LUT-Datei enthalten */
|
5078
|
+
rb_define_const(KontoCheck,"NO_SCL_BLOCKS",INT2FIX(NO_SCL_BLOCKS));
|
5079
|
+
/* (-153) Ungültige Eingabewerte in der SCL-Datei */
|
5080
|
+
rb_define_const(KontoCheck,"SCL_INPUT_FORMAT_ERROR",INT2FIX(SCL_INPUT_FORMAT_ERROR));
|
4543
5081
|
/* (-152) Ungültiger Zähler in regulärem Ausdruck (innerhalb von {}) */
|
4544
5082
|
rb_define_const(KontoCheck,"INVALID_REGULAR_EXPRESSION_CNT",INT2FIX(INVALID_REGULAR_EXPRESSION_CNT));
|
4545
5083
|
/* (-151) Ungültiger regulärer Ausdruck (enthält zwei Zeichen aus [+?*] nacheinander) */
|
@@ -4846,4 +5384,8 @@ void Init_konto_check_raw()
|
|
4846
5384
|
rb_define_const(KontoCheck,"OK_UNTERKONTO_ATTACHED",INT2FIX(OK_UNTERKONTO_ATTACHED));
|
4847
5385
|
/* (26) ok, für den BIC wurde die Zweigstellennummer allerdings durch XXX ersetzt */
|
4848
5386
|
rb_define_const(KontoCheck,"OK_SHORT_BIC_USED",INT2FIX(OK_SHORT_BIC_USED));
|
5387
|
+
/* (27) ok, für den BIC wurde die Extension XXX angehängt */
|
5388
|
+
rb_define_const(KontoCheck,"OK_SCL_EXTENSION_BIC_USED",INT2FIX(OK_SCL_EXTENSION_BIC_USED));
|
5389
|
+
/* (28) ok, für den BIC wurde die Wildcard-Version (8stellig) benutzt */
|
5390
|
+
rb_define_const(KontoCheck,"OK_SCL_WILDCARD_BIC_USED",INT2FIX(OK_SCL_WILDCARD_BIC_USED));
|
4849
5391
|
}
|