konto_check 6.02.1 → 6.05.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.
@@ -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-2017 Michael Plugge <m.plugge@hs-mannheim.de> #
13
+ * # Copyright (C) 2002-2018 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 #
@@ -286,6 +287,10 @@
286
287
  #define LUT2_IBAN_REGEL 25
287
288
  #define LUT2_IBAN_REGEL_SORT 26
288
289
  #define LUT2_BIC_H_SORT 27
290
+ #define LUT2_SCL_INFO 28
291
+ #define LUT2_SCL_BIC 29
292
+ #define LUT2_SCL_NAME 30
293
+ #define LUT2_SCL_FLAGS 31
289
294
 
290
295
  #define LUT2_2_BLZ 101
291
296
  #define LUT2_2_FILIALEN 102
@@ -314,6 +319,10 @@
314
319
  #define LUT2_2_IBAN_REGEL 125
315
320
  #define LUT2_2_IBAN_REGEL_SORT 126
316
321
  #define LUT2_2_BIC_H_SORT 127
322
+ #define LUT2_2_SCL_INFO 128
323
+ #define LUT2_2_SCL_BIC 129
324
+ #define LUT2_2_SCL_NAME 130
325
+ #define LUT2_2_SCL_FLAGS 131
317
326
 
318
327
  #define LUT2_DEFAULT 501
319
328
 
@@ -330,6 +339,12 @@ extern const char *lut2_feld_namen[256];
330
339
  */
331
340
 
332
341
  #undef FALSE
342
+ #define NO_SCL_BLOCKS_LOADED -158
343
+ #define NO_SCL_INFO_BLOCK -157
344
+ #define SCL_BIC_NOT_FOUND -156
345
+ #define INVALID_SCL_INFO_BLOCK -155
346
+ #define NO_SCL_BLOCKS -154
347
+ #define SCL_INPUT_FORMAT_ERROR -153
333
348
  #define INVALID_REGULAR_EXPRESSION_CNT -152
334
349
  #define INVALID_REGULAR_EXPRESSION -151
335
350
  #define INVALID_HANDLE -150
@@ -483,6 +498,9 @@ extern const char *lut2_feld_namen[256];
483
498
  #define OK_KTO_REPLACED_NO_PZ 24
484
499
  #define OK_UNTERKONTO_ATTACHED 25
485
500
  #define OK_SHORT_BIC_USED 26
501
+ #define OK_SCL_EXTENSION_BIC_USED 27
502
+ #define OK_SCL_WILDCARD_BIC_USED 28
503
+ #line 279 "konto_check_h.lx"
486
504
 
487
505
  #define MAX_BLZ_CNT 30000 /* maximale Anzahl BLZ's in generate_lut() */
488
506
 
@@ -1090,6 +1108,24 @@ DLL_EXPORT int iban_name_id(char *iban,int filiale,int*retval);
1090
1108
  DLL_EXPORT int iban_name_kurz_id(char *iban,int filiale,int*retval);
1091
1109
  DLL_EXPORT int iban_ort_id(char *iban,int filiale,int*retval);
1092
1110
 
1111
+ /* Funktionen f�r das SCL-Verzeichnis */
1112
+ DLL_EXPORT int lut_scl_init(char *lut_name);
1113
+ DLL_EXPORT int lut_scl_info(char *lutfile,int *cnt,const char **gueltigkeit,const char **gueltigkeit_iso);
1114
+ DLL_EXPORT int lut_write_scl_blocks(char *inputfile,char *lutfile);
1115
+ DLL_EXPORT int lut_scl_multi(char *bic,const char **scl_flags,const char **used_bic,const char **scl_name);
1116
+ DLL_EXPORT int lut_scl_multi_blz(char *blz,const char **scl_flags,const char **used_bic,const char **scl_name);
1117
+ DLL_EXPORT int lut_scl_multi_blz_i(int blz,const char **scl_flags,const char **used_bic,const char **scl_name);
1118
+ DLL_EXPORT int lut_scl_sct(char *bic,int *retval);
1119
+ DLL_EXPORT int lut_scl_sdd(char *bic,int *retval);
1120
+ DLL_EXPORT int lut_scl_cor1(char *bic,int *retval);
1121
+ DLL_EXPORT int lut_scl_b2b(char *bic,int *retval);
1122
+ DLL_EXPORT int lut_scl_scc(char *bic,int *retval);
1123
+ DLL_EXPORT int lut_scl_sct_blz(char *blz,int *retval,const char **used_bic);
1124
+ DLL_EXPORT int lut_scl_sdd_blz(char *blz,int *retval,const char **used_bic);
1125
+ DLL_EXPORT int lut_scl_cor1_blz(char *blz,int *retval,const char **used_bic);
1126
+ DLL_EXPORT int lut_scl_b2b_blz(char *blz,int *retval,const char **used_bic);
1127
+ DLL_EXPORT int lut_scl_scc_blz(char *blz,int *retval,const char **used_bic);
1128
+
1093
1129
  /*
1094
1130
  * ######################################################################
1095
1131
  * # globale Variablen #
@@ -811,6 +811,7 @@ static VALUE lut_blocks_rb(int argc,VALUE* argv,VALUE self)
811
811
  */
812
812
  static VALUE lut_blocks1_rb(int argc,VALUE* argv,VALUE self)
813
813
  {
814
+ // rb_scan_args(argc,argv,"0",NULL);
814
815
  return INT2FIX(lut_blocks(0,NULL,NULL,NULL));
815
816
  }
816
817
 
@@ -4357,7 +4358,7 @@ void Init_konto_check_raw()
4357
4358
  *
4358
4359
  * <b>ATTENTION:</b> There are a few important changes in the API between
4359
4360
  * version 0.0.2 (version by Peter Horn/Provideal), version 0.0.6 (jeanmartin)
4360
- * and this version (V. 6.02 from 2017-11-26):
4361
+ * and this version (V. 6.05 from 2018-09-01):
4361
4362
  *
4362
4363
  * * The function KontoCheck::load_bank_data() is no longer used; it is
4363
4364
  * replaced by KontoCheck::init() and KontoCheck::generate_lutfile().
@@ -4539,6 +4540,18 @@ void Init_konto_check_raw()
4539
4540
  rb_define_module_function(KontoCheck,"load_bank_data",load_bank_data,1);
4540
4541
 
4541
4542
  /* Rückgabewerte der konto_check Bibliothek */
4543
+ /* (-158) die SCL-Blocks wurden noch nicht eingelesen */
4544
+ rb_define_const(KontoCheck,"NO_SCL_BLOCKS_LOADED",INT2FIX(NO_SCL_BLOCKS_LOADED));
4545
+ /* (-157) Der Info-Block des SCL-Verzeichnisses wurde noch nicht eingelesen */
4546
+ rb_define_const(KontoCheck,"NO_SCL_INFO_BLOCK",INT2FIX(NO_SCL_INFO_BLOCK));
4547
+ /* (-156) Der BIC wurde im SCL-Verzeichnis nicht gefunden */
4548
+ rb_define_const(KontoCheck,"SCL_BIC_NOT_FOUND",INT2FIX(SCL_BIC_NOT_FOUND));
4549
+ /* (-155) Ungültiger SCL-Info-Block in der LUT-Datei */
4550
+ rb_define_const(KontoCheck,"INVALID_SCL_INFO_BLOCK",INT2FIX(INVALID_SCL_INFO_BLOCK));
4551
+ /* (-154) Keine SCL-Blocks in der LUT-Datei enthalten */
4552
+ rb_define_const(KontoCheck,"NO_SCL_BLOCKS",INT2FIX(NO_SCL_BLOCKS));
4553
+ /* (-153) Ungültige Eingabewerte in der SCL-Datei */
4554
+ rb_define_const(KontoCheck,"SCL_INPUT_FORMAT_ERROR",INT2FIX(SCL_INPUT_FORMAT_ERROR));
4542
4555
  /* (-152) Ungültiger Zähler in regulärem Ausdruck (innerhalb von {}) */
4543
4556
  rb_define_const(KontoCheck,"INVALID_REGULAR_EXPRESSION_CNT",INT2FIX(INVALID_REGULAR_EXPRESSION_CNT));
4544
4557
  /* (-151) Ungültiger regulärer Ausdruck (enthält zwei Zeichen aus [+?*] nacheinander) */
@@ -4845,4 +4858,8 @@ void Init_konto_check_raw()
4845
4858
  rb_define_const(KontoCheck,"OK_UNTERKONTO_ATTACHED",INT2FIX(OK_UNTERKONTO_ATTACHED));
4846
4859
  /* (26) ok, für den BIC wurde die Zweigstellennummer allerdings durch XXX ersetzt */
4847
4860
  rb_define_const(KontoCheck,"OK_SHORT_BIC_USED",INT2FIX(OK_SHORT_BIC_USED));
4861
+ /* (27) ok, für den BIC wurde die Extension XXX angehängt */
4862
+ rb_define_const(KontoCheck,"OK_SCL_EXTENSION_BIC_USED",INT2FIX(OK_SCL_EXTENSION_BIC_USED));
4863
+ /* (28) ok, für den BIC wurde die Wildcard-Version (8stellig) benutzt */
4864
+ rb_define_const(KontoCheck,"OK_SCL_WILDCARD_BIC_USED",INT2FIX(OK_SCL_WILDCARD_BIC_USED));
4848
4865
  }
@@ -48,6 +48,12 @@ DLL_EXPORT const char *kto_check_retval2txt(int retval)
48
48
  DLL_EXPORT const char *kto_check_retval2iso(int retval)
49
49
  {
50
50
  switch(retval){
51
+ case NO_SCL_BLOCKS_LOADED: return "die SCL-Blocks wurden noch nicht eingelesen";
52
+ case NO_SCL_INFO_BLOCK: return "Der Info-Block des SCL-Verzeichnisses wurde noch nicht eingelesen";
53
+ case SCL_BIC_NOT_FOUND: return "Der BIC wurde im SCL-Verzeichnis nicht gefunden";
54
+ case INVALID_SCL_INFO_BLOCK: return "Ung�ltiger SCL-Info-Block in der LUT-Datei";
55
+ case NO_SCL_BLOCKS: return "Keine SCL-Blocks in der LUT-Datei enthalten";
56
+ case SCL_INPUT_FORMAT_ERROR: return "Ung�ltige Eingabewerte in der SCL-Datei";
51
57
  case INVALID_REGULAR_EXPRESSION_CNT: return "Ung�ltiger Z�hler in regul�rem Ausdruck (innerhalb von {})";
52
58
  case INVALID_REGULAR_EXPRESSION: return "Ung�ltiger regul�rer Ausdruck (enth�lt zwei Zeichen aus [+?*] nacheinander)";
53
59
  case INVALID_HANDLE: return "Ung�ltiges Handle angegeben";
@@ -202,6 +208,8 @@ DLL_EXPORT const char *kto_check_retval2iso(int retval)
202
208
  case OK_KTO_REPLACED_NO_PZ: return "ok, die Kontonummer wurde ersetzt, die neue Kontonummer hat keine Pr�fziffer";
203
209
  case OK_UNTERKONTO_ATTACHED: return "ok, es wurde ein (weggelassenes) Unterkonto angef�gt";
204
210
  case OK_SHORT_BIC_USED: return "ok, f�r den BIC wurde die Zweigstellennummer allerdings durch XXX ersetzt";
211
+ case OK_SCL_EXTENSION_BIC_USED: return "ok, f�r den BIC wurde die Extension XXX angeh�ngt";
212
+ case OK_SCL_WILDCARD_BIC_USED: return "ok, f�r den BIC wurde die Wildcard-Version (8stellig) benutzt";
205
213
  default: return "ung�ltiger R�ckgabewert";
206
214
  }
207
215
  }
@@ -218,6 +226,12 @@ DLL_EXPORT const char *kto_check_retval2iso(int retval)
218
226
  DLL_EXPORT const char *kto_check_retval2dos(int retval)
219
227
  {
220
228
  switch(retval){
229
+ case NO_SCL_BLOCKS_LOADED: return "die SCL-Blocks wurden noch nicht eingelesen";
230
+ case NO_SCL_INFO_BLOCK: return "Der Info-Block des SCL-Verzeichnisses wurde noch nicht eingelesen";
231
+ case SCL_BIC_NOT_FOUND: return "Der BIC wurde im SCL-Verzeichnis nicht gefunden";
232
+ case INVALID_SCL_INFO_BLOCK: return "Ung�ltiger SCL-Info-Block in der LUT-Datei";
233
+ case NO_SCL_BLOCKS: return "Keine SCL-Blocks in der LUT-Datei enthalten";
234
+ case SCL_INPUT_FORMAT_ERROR: return "Ung�ltige Eingabewerte in der SCL-Datei";
221
235
  case INVALID_REGULAR_EXPRESSION_CNT: return "Ung�ltiger Z� hler in regul� rem Ausdruck (innerhalb von {})";
222
236
  case INVALID_REGULAR_EXPRESSION: return "Ung�ltiger regul� rer Ausdruck (enth� lt zwei Zeichen aus [+?*] nacheinander)";
223
237
  case INVALID_HANDLE: return "Ung�ltiges Handle angegeben";
@@ -372,6 +386,8 @@ DLL_EXPORT const char *kto_check_retval2dos(int retval)
372
386
  case OK_KTO_REPLACED_NO_PZ: return "ok, die Kontonummer wurde ersetzt, die neue Kontonummer hat keine Pr�fziffer";
373
387
  case OK_UNTERKONTO_ATTACHED: return "ok, es wurde ein (weggelassenes) Unterkonto angef�gt";
374
388
  case OK_SHORT_BIC_USED: return "ok, f�r den BIC wurde die Zweigstellennummer allerdings durch XXX ersetzt";
389
+ case OK_SCL_EXTENSION_BIC_USED: return "ok, f�r den BIC wurde die Extension XXX angeh� ngt";
390
+ case OK_SCL_WILDCARD_BIC_USED: return "ok, f�r den BIC wurde die Wildcard-Version (8stellig) benutzt";
375
391
  default: return "ung�ltiger R�ckgabewert";
376
392
  }
377
393
  }
@@ -388,6 +404,12 @@ DLL_EXPORT const char *kto_check_retval2dos(int retval)
388
404
  DLL_EXPORT const char *kto_check_retval2html(int retval)
389
405
  {
390
406
  switch(retval){
407
+ case NO_SCL_BLOCKS_LOADED: return "die SCL-Blocks wurden noch nicht eingelesen";
408
+ case NO_SCL_INFO_BLOCK: return "Der Info-Block des SCL-Verzeichnisses wurde noch nicht eingelesen";
409
+ case SCL_BIC_NOT_FOUND: return "Der BIC wurde im SCL-Verzeichnis nicht gefunden";
410
+ case INVALID_SCL_INFO_BLOCK: return "Ung&uuml;ltiger SCL-Info-Block in der LUT-Datei";
411
+ case NO_SCL_BLOCKS: return "Keine SCL-Blocks in der LUT-Datei enthalten";
412
+ case SCL_INPUT_FORMAT_ERROR: return "Ung&uuml;ltige Eingabewerte in der SCL-Datei";
391
413
  case INVALID_REGULAR_EXPRESSION_CNT: return "Ung&uuml;ltiger Z&auml;hler in regul&auml;rem Ausdruck (innerhalb von {})";
392
414
  case INVALID_REGULAR_EXPRESSION: return "Ung&uuml;ltiger regul&auml;rer Ausdruck (enth&auml;lt zwei Zeichen aus [+?*] nacheinander)";
393
415
  case INVALID_HANDLE: return "Ung&uuml;ltiges Handle angegeben";
@@ -542,6 +564,8 @@ DLL_EXPORT const char *kto_check_retval2html(int retval)
542
564
  case OK_KTO_REPLACED_NO_PZ: return "ok, die Kontonummer wurde ersetzt, die neue Kontonummer hat keine Pr&uuml;fziffer";
543
565
  case OK_UNTERKONTO_ATTACHED: return "ok, es wurde ein (weggelassenes) Unterkonto angef&uuml;gt";
544
566
  case OK_SHORT_BIC_USED: return "ok, f&uuml;r den BIC wurde die Zweigstellennummer allerdings durch XXX ersetzt";
567
+ case OK_SCL_EXTENSION_BIC_USED: return "ok, f&uuml;r den BIC wurde die Extension XXX angeh&auml;ngt";
568
+ case OK_SCL_WILDCARD_BIC_USED: return "ok, f&uuml;r den BIC wurde die Wildcard-Version (8stellig) benutzt";
545
569
  default: return "ung&uuml;ltiger R&uuml;ckgabewert";
546
570
  }
547
571
  }
@@ -558,6 +582,12 @@ DLL_EXPORT const char *kto_check_retval2html(int retval)
558
582
  DLL_EXPORT const char *kto_check_retval2utf8(int retval)
559
583
  {
560
584
  switch(retval){
585
+ case NO_SCL_BLOCKS_LOADED: return "die SCL-Blocks wurden noch nicht eingelesen";
586
+ case NO_SCL_INFO_BLOCK: return "Der Info-Block des SCL-Verzeichnisses wurde noch nicht eingelesen";
587
+ case SCL_BIC_NOT_FOUND: return "Der BIC wurde im SCL-Verzeichnis nicht gefunden";
588
+ case INVALID_SCL_INFO_BLOCK: return "Ungültiger SCL-Info-Block in der LUT-Datei";
589
+ case NO_SCL_BLOCKS: return "Keine SCL-Blocks in der LUT-Datei enthalten";
590
+ case SCL_INPUT_FORMAT_ERROR: return "Ungültige Eingabewerte in der SCL-Datei";
561
591
  case INVALID_REGULAR_EXPRESSION_CNT: return "Ungültiger Zähler in regulärem Ausdruck (innerhalb von {})";
562
592
  case INVALID_REGULAR_EXPRESSION: return "Ungültiger regulärer Ausdruck (enthält zwei Zeichen aus [+?*] nacheinander)";
563
593
  case INVALID_HANDLE: return "Ungültiges Handle angegeben";
@@ -712,6 +742,8 @@ DLL_EXPORT const char *kto_check_retval2utf8(int retval)
712
742
  case OK_KTO_REPLACED_NO_PZ: return "ok, die Kontonummer wurde ersetzt, die neue Kontonummer hat keine Prüfziffer";
713
743
  case OK_UNTERKONTO_ATTACHED: return "ok, es wurde ein (weggelassenes) Unterkonto angefügt";
714
744
  case OK_SHORT_BIC_USED: return "ok, für den BIC wurde die Zweigstellennummer allerdings durch XXX ersetzt";
745
+ case OK_SCL_EXTENSION_BIC_USED: return "ok, für den BIC wurde die Extension XXX angehängt";
746
+ case OK_SCL_WILDCARD_BIC_USED: return "ok, für den BIC wurde die Wildcard-Version (8stellig) benutzt";
715
747
  default: return "ungültiger Rückgabewert";
716
748
  }
717
749
  }
@@ -728,6 +760,12 @@ DLL_EXPORT const char *kto_check_retval2utf8(int retval)
728
760
  DLL_EXPORT const char *kto_check_retval2txt_short(int retval)
729
761
  {
730
762
  switch(retval){
763
+ case NO_SCL_BLOCKS_LOADED: return "NO_SCL_BLOCKS_LOADED";
764
+ case NO_SCL_INFO_BLOCK: return "NO_SCL_INFO_BLOCK";
765
+ case SCL_BIC_NOT_FOUND: return "SCL_BIC_NOT_FOUND";
766
+ case INVALID_SCL_INFO_BLOCK: return "INVALID_SCL_INFO_BLOCK";
767
+ case NO_SCL_BLOCKS: return "NO_SCL_BLOCKS";
768
+ case SCL_INPUT_FORMAT_ERROR: return "SCL_INPUT_FORMAT_ERROR";
731
769
  case INVALID_REGULAR_EXPRESSION_CNT: return "INVALID_REGULAR_EXPRESSION_CNT";
732
770
  case INVALID_REGULAR_EXPRESSION: return "INVALID_REGULAR_EXPRESSION";
733
771
  case INVALID_HANDLE: return "INVALID_HANDLE";
@@ -882,6 +920,8 @@ DLL_EXPORT const char *kto_check_retval2txt_short(int retval)
882
920
  case OK_KTO_REPLACED_NO_PZ: return "OK_KTO_REPLACED_NO_PZ";
883
921
  case OK_UNTERKONTO_ATTACHED: return "OK_UNTERKONTO_ATTACHED";
884
922
  case OK_SHORT_BIC_USED: return "OK_SHORT_BIC_USED";
923
+ case OK_SCL_EXTENSION_BIC_USED: return "OK_SCL_EXTENSION_BIC_USED";
924
+ case OK_SCL_WILDCARD_BIC_USED: return "OK_SCL_WILDCARD_BIC_USED";
885
925
  default: return "UNDEFINED_RETVAL";
886
926
  }
887
927
  }
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: konto_check
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.02.1
4
+ version: 6.05.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Provideal Systems GmbH
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2018-06-01 00:00:00.000000000 Z
13
+ date: 2018-09-04 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: thoughtbot-shoulda
@@ -66,7 +66,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
66
66
  version: '0'
67
67
  requirements: []
68
68
  rubyforge_project:
69
- rubygems_version: 2.5.2
69
+ rubygems_version: 2.7.6
70
70
  signing_key:
71
71
  specification_version: 4
72
72
  summary: Checking german BICs/Bank account numbers and IBANs, generate IBANs, retrieve