ToolkitReference
v3.90.161
PERFIDIA™
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de2
v3.90.161 PERFIDIA Toolkit Reference
3© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Inhaltsverzeichnis
Initialisierung ...............................................................................................................15perfidia_init_v2 oder perfidia_init_thread_safe_v2 ...............................................................16perfidia_cleanup oder perfidia_cleanup_thread_safe ..........................................................18perfidia_context_set oder perfidia_context_set_v2 ..............................................................19perfidia_context_get .............................................................................................................21perfidia_context_clear ..........................................................................................................22perfidia_config_set ...............................................................................................................23perfidia_config_get ...............................................................................................................27perfidia_config_clear ............................................................................................................28perfidia_config_vector_add ..................................................................................................29perfidia_config_vector_remove ............................................................................................31perfidia_config_vector_get ...................................................................................................32perfidia_mapping ..................................................................................................................33
DEÜV-Meldungen, Beitragsnachweise und Entgeltbescheinigungen ....................34perfidia_svchk_file ................................................................................................................36perfidia_svchk_mem ............................................................................................................38perfidia_svchk_record ..........................................................................................................40perfidia_svchk_error .............................................................................................................41perfidia_sv_check .................................................................................................................42perfidia_sv_connect_test ......................................................................................................44perfidia_sv_send ..................................................................................................................45perfidia_sv_receive ..............................................................................................................48perfidia_sv_confirmation ......................................................................................................51perfidia_sv_recv_open_statuscode ......................................................................................53perfidia_sv_recv_next_v2 .....................................................................................................55perfidia_sv_recv_close .........................................................................................................58perfidia_sv_status ................................................................................................................59perfidia_sv_recv_status ........................................................................................................61perfidia_sv_error ..................................................................................................................64perfidia_sv_info ....................................................................................................................67perfidia_sv_error_record ......................................................................................................70perfidia_sv_info_record ........................................................................................................72perfidia_sv_delete ................................................................................................................74perfidia_sv_delete_recv .......................................................................................................76perfidia_sv_delete_all ...........................................................................................................78perfidia_sv_highest_datnum ................................................................................................80perfidia_sv_transfer_ticket ...................................................................................................82perfidia_sv_dat_to_xml ........................................................................................................84perfidia_sv_xml_to_dat ........................................................................................................85perfidia_svmail_mailaddr_get ...............................................................................................86perfidia_svmail_mailaddr_set ...............................................................................................87perfidia_svmail_print ............................................................................................................88perfidia_svmail_pdf ..............................................................................................................90perfidia_svmail_print_hdc_prepare ......................................................................................92perfidia_svmail_print_hdc_cleanup ......................................................................................94perfidia_svmail_print_hdc_draw ...........................................................................................95perfidia_itsg_cert_info_v2 ....................................................................................................96perfidia_itsg_cert_info_v3 ....................................................................................................97perfidia_itsg_cert_info_v4 ....................................................................................................98perfidia_itsg_cert_info_v5 ..................................................................................................100perfidia_itsg_cert_create ....................................................................................................102perfidia_itsg_cert_create_mapi ..........................................................................................105perfidia_itsg_cert_create_v2 ..............................................................................................107
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de4
perfidia_itsg_cert_print .......................................................................................................109perfidia_itsg_cert_pdf ......................................................................................................... 111perfidia_itsg_cert_print_set ................................................................................................113perfidia_itsg_cert_import_info ............................................................................................114perfidia_itsg_cert_import ....................................................................................................116perfidia_itsg_agvcerts_import ............................................................................................117perfidia_itsg_agvcerts_import_http ....................................................................................118perfidia_itsg_agvcerts_info .................................................................................................120perfidia_itsg_cert_crp_status .............................................................................................122perfidia_itsg_cert_read_crp ................................................................................................124perfidia_itsg_cert_read_crp_http ........................................................................................125perfidia_itsg_cert_change_password .................................................................................127perfidia_itsg_cert_verify_password ....................................................................................128perfidia_itsg_ca_install .......................................................................................................129perfidia_sv_vsnrvfnr_read ..................................................................................................130perfidia_sv_vsnrvfnr_open_betrnr ......................................................................................132perfidia_sv_vsnrvfnr_open_datnum_recv ..........................................................................133perfidia_sv_vsnrvfnr_next ..................................................................................................135perfidia_sv_vsnrvfnr_close .................................................................................................137perfidia_sv_protocol_open .................................................................................................138perfidia_sv_protocol_next ..................................................................................................141perfidia_sv_protocol_close .................................................................................................144perfidia_sv_komserver_status_http ....................................................................................145perfidia_sv_komserver_status ............................................................................................147perfidia_svafh_register .......................................................................................................149perfidia_svafh_regcode_check ...........................................................................................151perfidia_svafh .....................................................................................................................153
Elster...........................................................................................................................154perfidia_elster_check .........................................................................................................156perfidia_elster_connect_test ..............................................................................................158perfidia_elster_send ...........................................................................................................159perfidia_elster_receive .......................................................................................................161perfidia_elster_confirmation ...............................................................................................163perfidia_elster_recv_open_statuscode ...............................................................................164perfidia_elster_recv_next_v2 .............................................................................................165perfidia_elster_recv_close ..................................................................................................167perfidia_elster_status .........................................................................................................168perfidia_elster_status_v2 ...................................................................................................170perfidia_elster_recv_status ................................................................................................172perfidia_elster_recv_status_block ......................................................................................174perfidia_elster_recv_status_block_v2 ................................................................................176perfidia_elster_block_error .................................................................................................178perfidia_elster_delete .........................................................................................................180perfidia_elster_delete_recv ................................................................................................181perfidia_elster_delete_all ...................................................................................................182perfidia_elster_highest_datnum .........................................................................................184perfidia_elster_transfer_ticket ............................................................................................185perfidia_elster_transfer_error .............................................................................................187perfidia_elster_transfer_error_v2 .......................................................................................189perfidia_elster_auth_info ....................................................................................................191perfidia_elster_answer_rebuild ..........................................................................................193perfidia_elster_print ............................................................................................................194perfidia_elster_pdf ..............................................................................................................196perfidia_elster_print_selection ............................................................................................198perfidia_elster_pdf_selection ..............................................................................................200perfidia_elster_print_hdc_prepare ......................................................................................202
v3.90.161 PERFIDIA Toolkit Reference
5© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_print_hdc_prepare_selection .....................................................................204perfidia_elster_print_hdc_cleanup .....................................................................................206perfidia_elster_print_hdc_draw ..........................................................................................207perfidia_elster_create_th ....................................................................................................208perfidia_elster_cert_info .....................................................................................................210perfidia_elster_cert_info_v2 ...............................................................................................211perfidia_elster_cert_create .................................................................................................212perfidia_elster_cert_change_password ..............................................................................214perfidia_elster_cert_verify_password .................................................................................215perfidia_elster_ca_install ....................................................................................................216perfidia_elster_protocol_open_v2 ......................................................................................217perfidia_elster_protocol_next_v2 .......................................................................................219perfidia_elster_protocol_close ............................................................................................221perfidia_elster_info_v2 .......................................................................................................222perfidia_elster_xml_build ....................................................................................................224perfidia_elster_dat_build ....................................................................................................226perfidia_elster_xml_send ...................................................................................................228perfidia_elster_xml_send_v2 ..............................................................................................230perfidia_elster_auth ............................................................................................................232perfidia_elster_auth_v2 ......................................................................................................235perfidia_elster_auth_test ....................................................................................................238perfidia_elster_pfx_info ......................................................................................................239perfidia_elster_pfx_info_v2 ................................................................................................241perfidia_elster_check_steuernummer ................................................................................243perfidia_elster_check_steuernummer_v2 ..........................................................................244perfidia_elster_change_steuernummer ..............................................................................245perfidia_elster_get_link_steuernummer .............................................................................246perfidia_elster_check_idnr .................................................................................................247perfidia_lstb_etin ................................................................................................................248
Statistische Ämter .....................................................................................................249perfidia_statis_check ..........................................................................................................250perfidia_statis_send ...........................................................................................................252perfidia_statis_protocol_receive .........................................................................................255perfidia_statis_status ..........................................................................................................258perfidia_statis_error ............................................................................................................260perfidia_statis_transfer_error .............................................................................................262perfidia_statis_delete .........................................................................................................263perfidia_statis_highest_datnum ..........................................................................................264perfidia_statis_transfer_ticket .............................................................................................265perfidia_statis_protocol_open ............................................................................................267perfidia_statis_protocol_next ..............................................................................................269perfidia_statis_protocol_close ............................................................................................271perfidia_statis_xml_build ....................................................................................................272perfidia_statis_xml_send ....................................................................................................273
ELMA5 ........................................................................................................................276perfidia_elma5_pfx_info .....................................................................................................277perfidia_elma5_test ............................................................................................................279perfidia_elma5_check ........................................................................................................280perfidia_elma5_send ..........................................................................................................282perfidia_elma5_protocol_receive .......................................................................................284perfidia_elma5_status ........................................................................................................286perfidia_elma5_status_v2 ..................................................................................................287perfidia_elma5_error ..........................................................................................................288perfidia_elma5_delete ........................................................................................................289perfidia_elma5_highest_datnum ........................................................................................290
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de6
perfidia_elma5_transfer_ticket ...........................................................................................291perfidia_elma5_print ...........................................................................................................292perfidia_elma5_pdf .............................................................................................................293perfidia_elma5_print_hdc_prepare .....................................................................................294perfidia_elma5_print_hdc_cleanup ....................................................................................295perfidia_elma5_print_hdc_draw .........................................................................................296perfidia_elma5_protocol_open ...........................................................................................297perfidia_elma5_protocol_next ............................................................................................298perfidia_elma5_protocol_close ...........................................................................................300
GoBD ..........................................................................................................................301perfidia_gdpdu_datfile_check .............................................................................................302perfidia_gdpdu_table_check ..............................................................................................303perfidia_gdpdu_iso_create .................................................................................................304
Hilfsfunktionen ..........................................................................................................306perfidia_get_last_error .......................................................................................................307perfidia_get_last_error_v2 ..................................................................................................308perfidia_get_error_text .......................................................................................................309perfidia_permission_check .................................................................................................310perfidia_system_info ..........................................................................................................311perfidia_test_email_connect_v2 .........................................................................................313perfidia_test_email_send_v2 ..............................................................................................314perfidia_test_internet_v3 ....................................................................................................316perfidia_test_rzproxy ..........................................................................................................318perfidia_progress_callback_set ..........................................................................................320perfidia_progress_callback_clear .......................................................................................321perfidia_progress_info ........................................................................................................322Callback-Funktion für Progressinformationen ....................................................................324perfidia_pkcs11_search ......................................................................................................325perfidia_pkcs11_info ...........................................................................................................327perfidia_pkcs11_cert_info ...................................................................................................329perfidia_scard_search ........................................................................................................331perfidia_scard_info .............................................................................................................332perfidia_scard_cert_info .....................................................................................................335Callback-Funktion für PINPAD ...........................................................................................337perfidia_isam_check ...........................................................................................................338perfidia_isam_repair ...........................................................................................................340perfidia_get_version ...........................................................................................................342perfidia_get_version_v2 .....................................................................................................343perfidia_ustidnr_bestaetigung ............................................................................................344perfidia_ustidnr_bestaetigung_v2 ......................................................................................346perfidia_dguv_mnr_check ..................................................................................................349perfidia_uuid_v4_create .....................................................................................................351perfidia_stamm_info ...........................................................................................................352perfidia_stamm_update_info ..............................................................................................353perfidia_stamm_update ......................................................................................................355
Funktionen für die Erstellung von ASCII-Datensätzen .........................................357perfidia_write_records_open ..............................................................................................358perfidia_write_records_close ..............................................................................................359perfidia_write_records_next ...............................................................................................360perfidia_write_records_set_string ......................................................................................361perfidia_write_records_set_integer ....................................................................................362perfidia_write_records_set_float ........................................................................................363perfidia_write_records_skip ................................................................................................364
v3.90.161 PERFIDIA Toolkit Reference
7© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
‘Alte’ Funktionen ........................................................................................................365perfidia_init oder perfidia_init_thread_safe ........................................................................366perfidia_svmail_kern_check ...............................................................................................368perfidia_svmail_kern_record ..............................................................................................370perfidia_svmail_kern_error .................................................................................................372perfidia_svmail_send ..........................................................................................................373perfidia_svmail_send_mapi ................................................................................................375perfidia_svmail_send_v2 ....................................................................................................377perfidia_svmail_send_mapi_v2 ..........................................................................................380perfidia_svmail_decrypt ......................................................................................................382perfidia_itsg_cert_info ........................................................................................................384perfidia_svmail_protocol_open ...........................................................................................385perfidia_svmail_protocol_next ............................................................................................387perfidia_sv_recv_next ........................................................................................................390perfidia_svmail_protocol_close ..........................................................................................393perfidia_lstb_check .............................................................................................................394perfidia_lstb_send ..............................................................................................................395perfidia_lstb_protocol_receive ............................................................................................398perfidia_lstb_protocol_status ..............................................................................................401perfidia_lstb_protocol_status_v2 ........................................................................................403perfidia_lstb_protocol_error ................................................................................................405perfidia_lstb_transfer_error ................................................................................................407perfidia_lstb_delete ............................................................................................................409perfidia_lstb_transfer_ticket ...............................................................................................410perfidia_lstb_transfer_ticket_v2 ..........................................................................................411perfidia_lstb_auth_info .......................................................................................................412perfidia_lstb_highest_datnum ............................................................................................414perfidia_lstb_print ...............................................................................................................415perfidia_lstb_print_v2 .........................................................................................................417perfidia_lstb_pdf .................................................................................................................419perfidia_lstb_print_selection ...............................................................................................421perfidia_lstb_print_selection_v2 .........................................................................................423perfidia_lstb_pdf_selection .................................................................................................425perfidia_lstb_print_hdc_prepare .........................................................................................427perfidia_lstb_print_hdc_prepare_selection .........................................................................429perfidia_lstb_print_hdc_cleanup .........................................................................................431perfidia_lstb_print_hdc_draw .............................................................................................432perfidia_lsta_check .............................................................................................................433perfidia_lsta_send ..............................................................................................................434perfidia_lsta_status ............................................................................................................437perfidia_lsta_error ..............................................................................................................438perfidia_lsta_transfer_error ................................................................................................440perfidia_lsta_delete ............................................................................................................442perfidia_lsta_highest_datnum ............................................................................................443perfidia_lsta_transfer_ticket ...............................................................................................444perfidia_lsta_transfer_ticket_v2 ..........................................................................................445perfidia_lsta_auth_info .......................................................................................................446perfidia_lsta_print ...............................................................................................................448perfidia_lsta_print_v2 .........................................................................................................450perfidia_lsta_pdf .................................................................................................................452perfidia_lsta_print_hdc_prepare .........................................................................................454perfidia_lsta_print_hdc_cleanup .........................................................................................456perfidia_lsta_print_hdc_draw .............................................................................................457perfidia_usta_check ...........................................................................................................458perfidia_usta_send .............................................................................................................459perfidia_usta_status ...........................................................................................................462
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de8
perfidia_usta_error .............................................................................................................463perfidia_usta_transfer_error ...............................................................................................465perfidia_usta_delete ...........................................................................................................467perfidia_usta_highest_datnum ...........................................................................................468perfidia_usta_transfer_ticket ..............................................................................................469perfidia_usta_transfer_ticket_v2 ........................................................................................470perfidia_usta_auth_info ......................................................................................................471perfidia_usta_print ..............................................................................................................473perfidia_usta_print_v2 ........................................................................................................475perfidia_usta_pdf ................................................................................................................477perfidia_usta_print_hdc_prepare ........................................................................................479perfidia_usta_print_hdc_cleanup .......................................................................................481perfidia_usta_print_hdc_draw ............................................................................................482perfidia_elster_protocol_open ............................................................................................483perfidia_elster_protocol_next .............................................................................................485perfidia_elster_recv_next ...................................................................................................487perfidia_elster_info .............................................................................................................489perfidia_statis_lve_check ...................................................................................................491perfidia_statis_lve_send .....................................................................................................492perfidia_statis_lve_protocol_receive ..................................................................................494perfidia_statis_lve_status ...................................................................................................496perfidia_statis_lve_error .....................................................................................................498perfidia_statis_lve_transfer_error .......................................................................................500perfidia_statis_lve_delete ...................................................................................................501perfidia_statis_lve_highest_datnum ...................................................................................502perfidia_statis_lve_transfer_ticket ......................................................................................503perfidia_statis_lve_transfer_ticket_v2 ................................................................................504perfidia_statis_bjv_check ...................................................................................................505perfidia_statis_bjv_send .....................................................................................................506perfidia_statis_bjv_protocol_receive ..................................................................................508perfidia_statis_bjv_status ...................................................................................................510perfidia_statis_bjv_error .....................................................................................................512perfidia_statis_bjv_transfer_error .......................................................................................514perfidia_statis_bjv_delete ...................................................................................................515perfidia_statis_bjv_highest_datnum ...................................................................................516perfidia_statis_bjv_transfer_ticket ......................................................................................517perfidia_statis_bjv_transfer_ticket_v2 ................................................................................518perfidia_statis_vse_check ..................................................................................................519perfidia_statis_vse_send ....................................................................................................520perfidia_statis_vse_protocol_receive .................................................................................522perfidia_statis_vse_status ..................................................................................................524perfidia_statis_vse_error ....................................................................................................526perfidia_statis_vse_transfer_error ......................................................................................528perfidia_statis_vse_delete ..................................................................................................529perfidia_statis_vse_highest_datnum ..................................................................................530perfidia_statis_vse_transfer_ticket .....................................................................................531perfidia_test_email_connect ...............................................................................................532perfidia_test_email_send ...................................................................................................534perfidia_test_email_send_mapi ..........................................................................................536perfidia_test_internet ..........................................................................................................537perfidia_test_internet_v2 ....................................................................................................538
PERFIDIA Fehlercodes ..............................................................................................539
Lizenzen eingebauter Open-Source-Komponenten ...............................................546
v3.90.161 PERFIDIA Toolkit Reference
9© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Funktionsübersicht
Callback-Funktion für PINPAD ..................................................................................................337Callback-Funktion für Progressinformationen ...........................................................................324perfidia_cleanup oder perfidia_cleanup_thread_safe .................................................................18perfidia_config_clear ...................................................................................................................28perfidia_config_get ......................................................................................................................27perfidia_config_set ......................................................................................................................23perfidia_config_vector_add .........................................................................................................29perfidia_config_vector_get ..........................................................................................................32perfidia_config_vector_remove ...................................................................................................31perfidia_context_clear .................................................................................................................22perfidia_context_get ....................................................................................................................21perfidia_context_set oder perfidia_context_set_v2 .....................................................................19perfidia_dguv_mnr_check .........................................................................................................349perfidia_elma5_check................................................................................................................280perfidia_elma5_delete ...............................................................................................................289perfidia_elma5_error .................................................................................................................288perfidia_elma5_highest_datnum ...............................................................................................290perfidia_elma5_pdf ....................................................................................................................293perfidia_elma5_pfx_info ............................................................................................................277perfidia_elma5_print ..................................................................................................................292perfidia_elma5_print_hdc_cleanup............................................................................................295perfidia_elma5_print_hdc_draw ................................................................................................296perfidia_elma5_print_hdc_prepare ............................................................................................294perfidia_elma5_protocol_close ..................................................................................................300perfidia_elma5_protocol_next ...................................................................................................298perfidia_elma5_protocol_open ..................................................................................................297perfidia_elma5_protocol_receive...............................................................................................284perfidia_elma5_send .................................................................................................................282perfidia_elma5_status ...............................................................................................................286perfidia_elma5_status_v2..........................................................................................................287perfidia_elma5_test ...................................................................................................................279perfidia_elma5_transfer_ticket ..................................................................................................291perfidia_elster_answer_rebuild..................................................................................................193perfidia_elster_auth ...................................................................................................................232perfidia_elster_auth_info ...........................................................................................................191perfidia_elster_auth_test ...........................................................................................................238perfidia_elster_auth_v2 .............................................................................................................235perfidia_elster_block_error ........................................................................................................178perfidia_elster_ca_install ...........................................................................................................216perfidia_elster_cert_change_password .....................................................................................214perfidia_elster_cert_create ........................................................................................................212perfidia_elster_cert_info ............................................................................................................210perfidia_elster_cert_info_v2 ......................................................................................................211perfidia_elster_cert_verify_password ........................................................................................215perfidia_elster_change_steuernummer .....................................................................................245perfidia_elster_check.................................................................................................................156perfidia_elster_check_idnr.........................................................................................................247perfidia_elster_check_steuernummer .......................................................................................243perfidia_elster_check_steuernummer_v2..................................................................................244perfidia_elster_confirmation ......................................................................................................163perfidia_elster_connect_test......................................................................................................158perfidia_elster_create_th ...........................................................................................................208perfidia_elster_dat_build ...........................................................................................................226perfidia_elster_delete ................................................................................................................180
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de10
perfidia_elster_delete_all...........................................................................................................182perfidia_elster_delete_recv .......................................................................................................181perfidia_elster_get_link_steuernummer ....................................................................................246perfidia_elster_highest_datnum ................................................................................................184perfidia_elster_info ....................................................................................................................489perfidia_elster_info_v2 ..............................................................................................................222perfidia_elster_pdf .....................................................................................................................196perfidia_elster_pdf_selection .....................................................................................................200perfidia_elster_pfx_info .............................................................................................................239perfidia_elster_pfx_info_v2........................................................................................................241perfidia_elster_print ...................................................................................................................194perfidia_elster_print_hdc_cleanup.............................................................................................206perfidia_elster_print_hdc_draw .................................................................................................207perfidia_elster_print_hdc_prepare .............................................................................................202perfidia_elster_print_hdc_prepare_selection.............................................................................204perfidia_elster_print_selection ...................................................................................................198perfidia_elster_protocol_close ...................................................................................................221perfidia_elster_protocol_next ....................................................................................................485perfidia_elster_protocol_next_v2...............................................................................................219perfidia_elster_protocol_open ...................................................................................................483perfidia_elster_protocol_open_v2 .............................................................................................217perfidia_elster_receive ..............................................................................................................161perfidia_elster_recv_close .........................................................................................................167perfidia_elster_recv_next ..........................................................................................................487perfidia_elster_recv_next_v2.....................................................................................................165perfidia_elster_recv_open_statuscode ......................................................................................164perfidia_elster_recv_status........................................................................................................172perfidia_elster_recv_status_block .............................................................................................174perfidia_elster_recv_status_block_v2 .......................................................................................176perfidia_elster_send ..................................................................................................................159perfidia_elster_status ................................................................................................................168perfidia_elster_status_v2...........................................................................................................170perfidia_elster_transfer_error ....................................................................................................187perfidia_elster_transfer_error_v2 ..............................................................................................189perfidia_elster_transfer_ticket ...................................................................................................185perfidia_elster_xml_build ...........................................................................................................224perfidia_elster_xml_send...........................................................................................................228perfidia_elster_xml_send_v2 .....................................................................................................230perfidia_gdpdu_datfile_check ....................................................................................................302perfidia_gdpdu_iso_create ........................................................................................................304perfidia_gdpdu_table_check......................................................................................................303perfidia_get_error_text ..............................................................................................................309perfidia_get_last_error...............................................................................................................307perfidia_get_last_error_v2 .........................................................................................................308perfidia_get_version ..................................................................................................................342perfidia_get_version_v2 ............................................................................................................343perfidia_init oder perfidia_init_thread_safe................................................................................366perfidia_init_v2 oder perfidia_init_thread_safe_v2 ......................................................................16perfidia_isam_check ..................................................................................................................338perfidia_isam_repair ..................................................................................................................340perfidia_itsg_agvcerts_import....................................................................................................117perfidia_itsg_agvcerts_import_http............................................................................................118perfidia_itsg_agvcerts_info ........................................................................................................120perfidia_itsg_ca_install ..............................................................................................................129perfidia_itsg_cert_change_password ........................................................................................127perfidia_itsg_cert_create ...........................................................................................................102
v3.90.161 PERFIDIA Toolkit Reference
11© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_itsg_cert_create_mapi .................................................................................................105perfidia_itsg_cert_create_v2 .....................................................................................................107perfidia_itsg_cert_crp_status.....................................................................................................122perfidia_itsg_cert_import ...........................................................................................................116perfidia_itsg_cert_import_info ...................................................................................................114perfidia_itsg_cert_info ...............................................................................................................384perfidia_itsg_cert_info_v2............................................................................................................96perfidia_itsg_cert_info_v3............................................................................................................97perfidia_itsg_cert_info_v4............................................................................................................98perfidia_itsg_cert_info_v5..........................................................................................................100perfidia_itsg_cert_pdf ................................................................................................................ 111perfidia_itsg_cert_print ..............................................................................................................109perfidia_itsg_cert_print_set .......................................................................................................113perfidia_itsg_cert_read_crp .......................................................................................................124perfidia_itsg_cert_read_crp_http ...............................................................................................125perfidia_itsg_cert_verify_password ...........................................................................................128perfidia_lsta_auth_info ..............................................................................................................446perfidia_lsta_check ....................................................................................................................433perfidia_lsta_delete ...................................................................................................................442perfidia_lsta_error......................................................................................................................438perfidia_lsta_highest_datnum....................................................................................................443perfidia_lsta_pdf ........................................................................................................................452perfidia_lsta_print ......................................................................................................................448perfidia_lsta_print_hdc_cleanup ................................................................................................456perfidia_lsta_print_hdc_draw.....................................................................................................457perfidia_lsta_print_hdc_prepare ................................................................................................454perfidia_lsta_print_v2 ................................................................................................................450perfidia_lsta_send .....................................................................................................................434perfidia_lsta_status....................................................................................................................437perfidia_lsta_transfer_error .......................................................................................................440perfidia_lsta_transfer_ticket.......................................................................................................444perfidia_lsta_transfer_ticket_v2 .................................................................................................445perfidia_lstb_auth_info ..............................................................................................................412perfidia_lstb_check ....................................................................................................................394perfidia_lstb_delete ...................................................................................................................409perfidia_lstb_etin .......................................................................................................................248perfidia_lstb_highest_datnum....................................................................................................414perfidia_lstb_pdf ........................................................................................................................419perfidia_lstb_pdf_selection ........................................................................................................425perfidia_lstb_print ......................................................................................................................415perfidia_lstb_print_hdc_cleanup ................................................................................................431perfidia_lstb_print_hdc_draw.....................................................................................................432perfidia_lstb_print_hdc_prepare ................................................................................................427perfidia_lstb_print_hdc_prepare_selection ................................................................................429perfidia_lstb_print_selection ......................................................................................................421perfidia_lstb_print_selection_v2 ................................................................................................423perfidia_lstb_print_v2 ................................................................................................................417perfidia_lstb_protocol_error .......................................................................................................405perfidia_lstb_protocol_receive ...................................................................................................398perfidia_lstb_protocol_status .....................................................................................................401perfidia_lstb_protocol_status_v2 ...............................................................................................403perfidia_lstb_send .....................................................................................................................395perfidia_lstb_transfer_error .......................................................................................................407perfidia_lstb_transfer_ticket.......................................................................................................410perfidia_lstb_transfer_ticket_v2 .................................................................................................411perfidia_mapping .........................................................................................................................33
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de12
perfidia_permission_check ........................................................................................................310perfidia_pkcs11_cert_info ..........................................................................................................329perfidia_pkcs11_info ..................................................................................................................327perfidia_pkcs11_search .............................................................................................................325perfidia_progress_callback_clear ..............................................................................................321perfidia_progress_callback_set .................................................................................................320perfidia_progress_info ...............................................................................................................322perfidia_scard_cert_info ............................................................................................................335perfidia_scard_info ....................................................................................................................332perfidia_scard_search ...............................................................................................................331perfidia_stamm_info ..................................................................................................................352perfidia_stamm_update .............................................................................................................355perfidia_stamm_update_info .....................................................................................................353perfidia_statis_bjv_check ..........................................................................................................505perfidia_statis_bjv_delete ..........................................................................................................515perfidia_statis_bjv_error ............................................................................................................512perfidia_statis_bjv_highest_datnum ..........................................................................................516perfidia_statis_bjv_protocol_receive .........................................................................................508perfidia_statis_bjv_send ............................................................................................................506perfidia_statis_bjv_status ..........................................................................................................510perfidia_statis_bjv_transfer_error ..............................................................................................514perfidia_statis_bjv_transfer_ticket .............................................................................................517perfidia_statis_bjv_transfer_ticket_v2 .......................................................................................518perfidia_statis_check .................................................................................................................250perfidia_statis_delete.................................................................................................................263perfidia_statis_error ...................................................................................................................260perfidia_statis_highest_datnum .................................................................................................264perfidia_statis_lve_check ..........................................................................................................491perfidia_statis_lve_delete ..........................................................................................................501perfidia_statis_lve_error ............................................................................................................498perfidia_statis_lve_highest_datnum ..........................................................................................502perfidia_statis_lve_protocol_receive .........................................................................................494perfidia_statis_lve_send ............................................................................................................492perfidia_statis_lve_status ..........................................................................................................496perfidia_statis_lve_transfer_error ..............................................................................................500perfidia_statis_lve_transfer_ticket .............................................................................................503perfidia_statis_lve_transfer_ticket_v2 .......................................................................................504perfidia_statis_protocol_close ...................................................................................................271perfidia_statis_protocol_next .....................................................................................................269perfidia_statis_protocol_open....................................................................................................267perfidia_statis_protocol_receive ................................................................................................255perfidia_statis_send...................................................................................................................252perfidia_statis_status .................................................................................................................258perfidia_statis_transfer_error.....................................................................................................262perfidia_statis_transfer_ticket ....................................................................................................265perfidia_statis_vse_check .........................................................................................................519perfidia_statis_vse_delete .........................................................................................................529perfidia_statis_vse_error ...........................................................................................................526perfidia_statis_vse_highest_datnum .........................................................................................530perfidia_statis_vse_protocol_receive ........................................................................................522perfidia_statis_vse_send ...........................................................................................................520perfidia_statis_vse_status .........................................................................................................524perfidia_statis_vse_transfer_error .............................................................................................528perfidia_statis_vse_transfer_ticket ............................................................................................531perfidia_statis_xml_build ...........................................................................................................272perfidia_statis_xml_send ...........................................................................................................273
v3.90.161 PERFIDIA Toolkit Reference
13© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_svafh ............................................................................................................................153perfidia_svafh_regcode_check ..................................................................................................151perfidia_svafh_register ..............................................................................................................149perfidia_sv_check ........................................................................................................................42perfidia_svchk_error ....................................................................................................................41perfidia_svchk_file .......................................................................................................................36perfidia_svchk_mem....................................................................................................................38perfidia_svchk_record .................................................................................................................40perfidia_sv_confirmation..............................................................................................................51perfidia_sv_connect_test .............................................................................................................44perfidia_sv_dat_to_xml................................................................................................................84perfidia_sv_delete .......................................................................................................................74perfidia_sv_delete_all ..................................................................................................................78perfidia_sv_delete_recv...............................................................................................................76perfidia_sv_error..........................................................................................................................64perfidia_sv_error_record .............................................................................................................70perfidia_sv_highest_datnum........................................................................................................80perfidia_sv_info ...........................................................................................................................67perfidia_sv_info_record ...............................................................................................................72perfidia_sv_komserver_status ...................................................................................................147perfidia_sv_komserver_status_http ...........................................................................................145perfidia_svmail_decrypt .............................................................................................................382perfidia_svmail_kern_check ......................................................................................................368perfidia_svmail_kern_error ........................................................................................................372perfidia_svmail_kern_record .....................................................................................................370perfidia_svmail_mailaddr_get ......................................................................................................86perfidia_svmail_mailaddr_set ......................................................................................................87perfidia_svmail_pdf......................................................................................................................90perfidia_svmail_print....................................................................................................................88perfidia_svmail_print_hdc_cleanup .............................................................................................94perfidia_svmail_print_hdc_draw ..................................................................................................95perfidia_svmail_print_hdc_prepare .............................................................................................92perfidia_svmail_protocol_close .................................................................................................393perfidia_svmail_protocol_next ...................................................................................................387perfidia_svmail_protocol_open ..................................................................................................385perfidia_svmail_send .................................................................................................................373perfidia_svmail_send_mapi .......................................................................................................375perfidia_svmail_send_mapi_v2 .................................................................................................380perfidia_svmail_send_v2 ...........................................................................................................377perfidia_sv_protocol_close ........................................................................................................144perfidia_sv_protocol_next..........................................................................................................141perfidia_sv_protocol_open ........................................................................................................138perfidia_sv_receive......................................................................................................................48perfidia_sv_recv_close ................................................................................................................58perfidia_sv_recv_next................................................................................................................390perfidia_sv_recv_next_v2 ............................................................................................................55perfidia_sv_recv_open_statuscode .............................................................................................53perfidia_sv_recv_status ...............................................................................................................61perfidia_sv_send .........................................................................................................................45perfidia_sv_status........................................................................................................................59perfidia_sv_transfer_ticket...........................................................................................................82perfidia_sv_vsnrvfnr_close ........................................................................................................137perfidia_sv_vsnrvfnr_next..........................................................................................................135perfidia_sv_vsnrvfnr_open_betrnr .............................................................................................132perfidia_sv_vsnrvfnr_open_datnum_recv..................................................................................133perfidia_sv_vsnrvfnr_read .........................................................................................................130
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de14
perfidia_sv_xml_to_dat................................................................................................................85perfidia_system_info..................................................................................................................311perfidia_test_email_connect ......................................................................................................532perfidia_test_email_connect_v2 ................................................................................................313perfidia_test_email_send...........................................................................................................534perfidia_test_email_send_mapi .................................................................................................536perfidia_test_email_send_v2 .....................................................................................................314perfidia_test_internet .................................................................................................................537perfidia_test_internet_v2 ...........................................................................................................538perfidia_test_internet_v3 ...........................................................................................................316perfidia_test_rzproxy .................................................................................................................318perfidia_usta_auth_info .............................................................................................................471perfidia_usta_check...................................................................................................................458perfidia_usta_delete ..................................................................................................................467perfidia_usta_error ....................................................................................................................463perfidia_usta_highest_datnum ..................................................................................................468perfidia_usta_pdf .......................................................................................................................477perfidia_usta_print .....................................................................................................................473perfidia_usta_print_hdc_cleanup...............................................................................................481perfidia_usta_print_hdc_draw ...................................................................................................482perfidia_usta_print_hdc_prepare ...............................................................................................479perfidia_usta_print_v2 ...............................................................................................................475perfidia_usta_send ....................................................................................................................459perfidia_usta_status ..................................................................................................................462perfidia_usta_transfer_error ......................................................................................................465perfidia_usta_transfer_ticket .....................................................................................................469perfidia_usta_transfer_ticket_v2................................................................................................470perfidia_ustidnr_bestaetigung ...................................................................................................344perfidia_ustidnr_bestaetigung_v2..............................................................................................346perfidia_uuid_v4_create ............................................................................................................351perfidia_write_records_close .....................................................................................................359perfidia_write_records_next ......................................................................................................360perfidia_write_records_open .....................................................................................................358perfidia_write_records_set_float................................................................................................363perfidia_write_records_set_integer ...........................................................................................362perfidia_write_records_set_string..............................................................................................361perfidia_write_records_skip .......................................................................................................364
v3.90.161 PERFIDIA Toolkit Reference
15© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Initialisierung
Mit Ausnahme der Funktionen perfidia_get_version und perfidia_get_version_v2 muß als erstes die Funktion perfidia_init_v2 oder perfidia_init_thread_safe_v2 erfolgreich ausgeführt werden, bevor irgendeine andere PERFIDIA-Funktion ausgeführt werden kann.
Um alle Resourcen wieder freizugeben, muß nach dem letzten Aufruf einer PERFIDIA-Funktion bzw. beim Programmende die Funktion perfidia_cleanup bzw. perfidia_cleanup_thread_safe ausgeführt werden.
Funktionsübersicht
perfidia_init_v2 perfidia_cleanup perfidia_init_thread_safe_v2 perfidia_cleanup_thread_safe
perfidia_context_set perfidia_context_set_v2 perfidia_context_get perfidia_context_clear
perfidia_config_set perfidia_config_get perfidia_config_clear
perfidia_config_vector_add perfidia_config_vector_remove perfidia_config_vector_get
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de16
perfidia_init_v2 oder perfidia_init_thread_safe_v2
Bevor irgendeine andere Function von PERFIDIA benutzt werden kann, muß einmal die Funktion perfidia_init_v2 oder perfidia_init_thread_safe_v2 erfolgreich aufgerufen werden.
Wenn Sie als Betriebsnummer 12345678 übergeben, wird eine Testumgebung gestartet. Beim Elster-Verfah-ren wird bei allen Datenlieferungen ein Testmerker gesetzt, falls nicht schon einer gesetzt ist.
long perfidia_init_v2 ( short nMinBuild, const char *szRootPath, long lBetrNr, long lLicenseCode, short nDebugLevel long lModules, PERFIDIA_PROGRESS_PROC lpCallbackFunc, LPARAM lParam, HWND hwndParent ); long perfidia_init_thread_safe_v2 ( short nMinBuild, const char *szRootPath, long lBetrNr, long lLicenseCode, short nDebugLevel long lModules, PERFIDIA_PROGRESS_PROC lpCallbackFunc, LPARAM lParam, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0)Funktion wurde erfolgreich ausgeführt.• PE_NULL_POINTER (80136)Unerlaubter NULL-Pointer.• PE_WRONG_DLL (70101)Die PERFIDIA-DLL ist zu alt.• PE_BETRNR_NOT_VALID (80104)Die Betriebsnummer ist ungültig.• PE_LICENSECODE (80105)Der Lizenzcode ist ungültig.• PE_ROOTPATH_NOT_VALID (70140)Das PERFIDIA-Datenverzeichnis ist nicht vorhanden.• PE_ROOTPATH_NOPERMISSION (70110)Kein Zugriff auf PERFIDIA-Datenverzeichnis.• PE_PATH_CREATION (70141)Ein Unterverzeichnis kann nicht angelegt werden. Nähere Informationen mit perfidia_get_last_error.• PE_PATH_NOPERMISSION (70111)Kein Zugriff auf ein Unterverzeichnis. Nähere Informationen mit perfidia_get_last_error.
v3.90.161 PERFIDIA Toolkit Reference
17© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Parameter
• nMinBuild (IN) Die letzte Zahl der PERFIDIA-Versionsnummer (z.B. 2.12.41) gibt immer den Build an. Um nicht aus-versehen mit einer alten DLL zu arbeiten, kann hier angegeben werden, welchen Build die ‘perfidia.dll’ mindestens haben muß.
• szRootPath (IstaN) Dies ist das Arbeitsverzeichnis von PERFIDIA. Um keine Konfikte mit Verzeichnis- und Dateinamen anderer Programme zu bekommen, sollte dieses Verzeichnis nur für PERFIDIA genutzt werden.
• lBetrNr (IN) Die Betriebsnummer des Absenders (Datenlieferanten). Wenn der Arbeitgeber seine Daten nicht selbst verschickt, kann dies z.B. die Betriebsnummer eines Rechenzentrums oder Steuerberaters sein. Im Leistungsbringerverfahren ist hier die IK-Nummer anzugeben.
• lCode (IN) Jeder Hersteller erhält von uns pro Produkt einen Lizenzcode, um PERFIDIA freizuschalten. Dieser Lizenzcode ist geheim und darf auf keinen Fall an Dritte weitergegeben werden.
• nDebugLevel (IN) In der Regel hat dieser Parameter den Wert 0. Nur bei der Fehlersuche sollte nDebugLevel eine Kom-bination (z.B. 1+4) aus den folgenden Werten sein: 1 = temporäre Dateien werden nicht gelöscht 2 = Funktionsaufrufe und deren Parameter werden in ‘log/debug.txt’ protokolliert 4 = SMTP-Kommunikation wird in ‘log/debug.txt’ protokolliert 8 = HTTP/HTTPS-Kommunikation wird in ‘log/debug.txt’ protokolliert 16 = SSH-Kommunikation wird in ‘log/debug.txt’ protokolliert
• lModules (IN) Mit diesem Parameter wird angegeben, welche Module aktiviert werden sollen. 0 = alle Module aktivieren 0x0001 (1) = SV-Verfahren 0x0002 (2) = ELSTER-Verfahren 0x0004 (4) = ELMA5-Verfahren 0x0008 (8) = STATIS-Verfahren 0x0010 (16) = GoBD-Verfahren 0x0020 (32) = ZVE-Verfahren
• lpCallbackFunc (IN) Der Pointer auf Ihre Callback-Funktion. Diese Funktion wird momentan nur bei der Konvertierung von Daten verwendet.
• lParam (IN) Dieser Parameter wird bei jedem Aufruf der Callback-Funktion übergeben. Er wird nicht von PERFIDIA benutzt, sondern kann frei für Ihre Anwendung verwendet werden.
• hwndParent (IN) Wenn bei der Konvertierung von Daten ein Progress angezeigt werden soll, muss hier ein gültiger Window-Handle übergeben werden.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de18
perfidia_cleanup oder perfidia_cleanup_thread_safe
Um alle Systemresourcen wieder freizugeben, muss die Funktion perfidia_cleanup spätestens beim Beenden des Programms und die Funktion perfidia_cleanup_thread_safe spätestens beim Beenden des Threads auf-gerufen werden, sofern zuvor die Funktion perfidia_init bzw. perfidia_init_thread_safe erfolgreich aufgerufen worden ist.
Da diese Funktionen selbständig merken, ob noch Resourcen freizugeben sind, dürfen sie auch mehrfach aufgerufen werden.
void perfidia_cleanup (); void perfidia_cleanup_tread_safe ();
Rückgabewerte
keine
Parameter
keine
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
19© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_context_set oder perfidia_context_set_v2
Mit dieser Funktion kann ein PERFIDIA-Kontext ausgewählt werden. Ein PERFIDIA-Kontext ist ein eigenstän-diges Datenverzeichnis in dem Ordner ‘PerfidiaRoot/context’. Falls dieses Verzeichnis nicht existiert, wird es automatisch mit allen Unterverzeichnissen erstellt. Wird diese Funktion beispielsweise mit dem Kontextnamen ‘mandant.007’ aufgerufen, ergibt sich folgende Verzeichnisstruktur:
• PerfidiaRoot • stamm [Stammdaten, wie z.B. Zertifikate] • pem [Krankenkassen-Verfahren] • ofd [Elster-Verfahren] • log [Protokoll-Dateien] • tmp [temporäre Dateien] • context [Hier werden alle PERFIDIA-Kontexte gespeichert.] • mandant.007 [PERFIDIA-Kontext] • pem [Krankenkassen-Verfahren] • ofd [Elster-Verfahren] • log [Protokoll-Dateien] • tmp [temporäre Dateien]
Da jeder PERFIDIA-Kontext ein eigenständiges Datenverzeichnis darstellt, hat jeder Kontext auch seine eige-nen Protokolldateien. Deshalb müssen beispielsweise die Dateinummern für LStB, LStA oder UStA nicht im gesamten Datenordner ‘PerfidiaRoot’ eindeutig sein, sondern lediglich im ausgewählten PERFIDIA-Kontext. Nur das Verzeichnis ‘stamm’, in dem sich unter anderem die Zertifikate befinden, wird von allen Datenver-zeichnissen gemeinsam genutzt.
long perfidia_context_set ( const char *szContextName );
long perfidia_context_set_v2 ( const char *szContextName, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_CONTEXTPATH_NOT_VALID (70140) Der PERFIDIA-Kontextname ist ungültig.
• PE_CONTEXTPATH_ NOPERMISSION (70110) Kein Zugriff auf PERFIDIA-Kontext.
• PE_PATH_CREATION (70141) Ein Unterverzeichnis kann nicht angelegt werden. Nähere Informationen mit perfidia_get_last_error.
• PE_PATH_NOPERMISSION (70111) Kein Zugriff auf ein Unterverzeichnis. Nähere Informationen mit perfidia_get_last_error.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de20
Parameter
• szContextName (IN) Der Name des Perfidia-Kontextes darf max. 64 Zeichen lang sein. Außerdem darf er nur aus Zeichen bestehen, die das verwendete Betriebssystem auch für Verzeichnisnamen erlaubt.
• hwndParent (IN) Wenn bei der Konvertierung von Daten ein Progress angezeigt werden soll, muss hier ein gültiger Window-Handle übergeben werden.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
21© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_context_get
Hiermit kann der ausgewählte Kontext ermittelt werden.
long perfidia_context_get ( const char *szContextNameBuffer, short nContextNameBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Es ist kein PERFIDIA-Kontext ausgewählt.
• PE_BUFSIZE (80110) Länge des Buffers zu klein.
Parameter
• szContextNameBuffer (OUT) Name des PERFIDIA-Contextes. Der Buffer muss mindestens eine Größe von 65 Zeichen haben.
• nContextNameBufferSize (IN) Größe des Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de22
perfidia_context_clear
Stellt das Datenverzeichnis wieder auf PerfidiaRoot um.
long perfidia_context_clear ();
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
Parameter
keine
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
23© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_config_set
Hiermit werden die Variablen zur speziellen Konfiguration von PERFIDIA gesetzt.
long perfidia_config_set ( const char *szVariableName, const char *szValue );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_CONFIG_NAME (80138) Ungültiger Variablenname.
• PE_TEXTSIZE (80111) Der Wert darf maximal 512 Zeichen lang sein.
Parameter
• szVariableName (IN) Name der Variablen.
• szValue (IN) Wert, der der Variablen zugewiesen werden soll.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Auf der folgenden Seite finden Sie alle momentan gültigen Variablennamen.
Nach dem Funktionsaufruf perfidia_init oder perfidia_init_thread_safe stehen alle Variablen grundsätzlich auf der Voreinstellung.
Variablenname Voreinstellung BemerkungHTTP_LIBRARY (nur Windows)
wininet wininet = Betriebssystemfunktionen von Windows libcurl = Bibliothek ‚libcurl‘
HTTP_DIRECT oder HTTPS_DIRECT (nur Windows)
no yes = direkte Verbindung zum Internet. Hierbei werden die Proxy- und Internet Explorer-Einstel-lungen ignoriert.
HTTP_PROXY_USER oder HTTPS_PROXY_USER
<leer> Mit diesen Variablen können die Einstellungen des Internet Explorers überschrieben werden. Bei der Verwendung eines Proxy-Servers mit Authentifizierung müssen diese Variablen in der Regel immer gesetzt werden.
HTTP_PROXY_PASSWORD oder HTTPS_PROXY_PASSWORD
<leer>
HTTP_PROXY_NAME oder HTTPS_PROXY_NAME
<leer>
HTTP_PROXY_PORT oder HTTPS_PROXY_PORT
<leer>
HTTP_CONNECT_TIMEOUT oder HTTPS_CONNECT_TIMEOUT
30 Verbindungstimeout in Sekunden. Es sind Werte zwischen 5 und 600 (Sekunden) gültig.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de24
Variablenname Voreinstellung BemerkungHTTP_SEND_TIMEOUT oder HTTPS_SEND_TIMEOUT
45 Sendetimeout in Sekunden. Es sind Werte zwi-schen 5 und 600 (Sekunden) gültig.
HTTP_RECEIVE_TIMEOUT oder HTTPS_RECEIVE_TIMEOUT
300 Empfangstimeout in Sekunden. Es sind Werte zwischen 5 und 600 (Sekunden) gültig.
HTTPS_PREFERRED yes yes = Wenn für eine Datenübertragung sowohl das HTTP- als auch HTTPS-Protokoll unterstützt wird, wird das HTTPS-Protokoll verwendet.
CURLOPT_DEBUG <leer> verbose = Wenn die Config-Variable HTTP_LIB-RARY den Wert libcurl besitzt, wird eine curl_de-bug.txt erstellt. In dieser werden zusätzliche Informationen der HTTP-Kommunikation doku-mentiert.
PRINT_DIALOG (nur Windows)
show hide = Unterdrückung des Druckerauswahl-Dia-logs. In diesem Fall muss die Variable PRINT_PRINTERNAME gesetzt werden.
PRINT_PRINTERNAME (nur Windows)
<leer> Mit dieser Variablen kann der Name des Dru-ckers, über den gedruckt werden soll, voreinge-stellt werden. Wenn der Drucker nicht existiert, kommt die jeweilige Druckfunktion mit dem Fehlercode PE_NO_PRINTER zurück.
PRINT_DATATYPE (nur Windows)
raw Datenformat, in dem die Daten in der Drucker-warteschlange gespeichert werden.
PROGRESS_DIALOG (nur Windows)
show Mit PROGRESS_DIALOG kann der PERFIDIA “Sende”-Dialog unterdrückt werden. Gültige Wer-te sind ‘show’ und ‘hide’.
PROGRESS_DIALOG_ABORT (nur Windows)
show Mit PROGRESS_DIALOG_ABORT kann im PERFIDIA “Sende”-Dialog die Schaltfläche „Ab-brechen“ versteckt werden. Gültige Werte sind ‘show’ und ‘hide’.
MAPI_RECIPIENT_ADDR (nur Windows)
0 0 = SMTP:[email protected] 1 = [email protected] Der Wert 1 ist für nicht standardkonforme MAPI-Schnittstellen. Allerdings sollte diese Einstellung nicht bei Outlook verwendet werden!
EMAIL_CONNECTION <leer> SMTP = SMTP-Protokoll MAPI-AUTOMAIL = MAPI-Schnittstelle (automa-tischer Emailversand) MAPI-NOAUTOMAIL = MAPI-Schnittstelle (Emailversand muss von Hand bestätigt werden.)
SMTP_SENDER <leer> Emailadresse des AbsendersSMTP_SERVER <leer> IP oder Hostname des SMTP-ServersSMTP_PORT 25 Port des SMTP-ServersSMTP_USER <leer> Benutzername für die Authentifizierung beim
SMTP-ServerSMTP_PASSWORD <leer> Password für die Authentifizierung beim SMTP-
ServerSMTP_EHLO_ONLY no yes = Beim SMTP-Protokoll wird anstelle von
HELO nur EHLO verwendet.POP3_BEFORE_SMTP no yes = Authentifizierung per POP3
v3.90.161 PERFIDIA Toolkit Reference
25© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Variablenname Voreinstellung BemerkungPOP3_SERVER <leer> Wenn die Adresse des POP3-Server von dem
SMTP-Server abweicht, kann mit dieser Varia-blen die Adresse des Email-Servers verändert werden.
POP3_PORT 110 POP3-Port des Email-Servers.LICENSE_USERDATA <leer> Diese Variable kann zur Identifikation von eBilan-
zen verwendet werden. Dabei stehen 64 Zeichen zur Verfügung, die bei jedem Versand vermerkt werden.
LSTB_DRUCK_ZWEITE_SEITE yes no = Wenn für den Druck der LStB eine zweite Seite benötigt wird, wird diese nicht gedruckt.
LSTB_DRUCK_FALZMARKE yes no = Die Falzmarke wird nicht mitgedruckt.LSTB_DRUCK_SACHBEARBEITER yes no = Auf dem Ausdruck der LStB werden die
Sachbearbeiter-Angaben nicht gedruckt.LSTB_DATENART_PROTRECV ProtokollAnfor-
derungDie bei der Anforderung der LStB-Protokolle zu verwendene Datenart. Die folgenden Datenarten sind möglich: ‚ProtokollAnforderung‘ oder ‚LStB‘ Hinweis: Laut Elster-Dokumentation sind beide Datenarten zulässig. Allerdings ist wiederholt die Situation eingetreten, dass während der Update-phase der OFD-Clearingstellen zwischenzeitlich nur eine der beiden Datenarten funktionierte.
SVMAIL_WRITE_SVNR_FILES no Wenn diese Variable den Wert ‚yes‘ hat, werden beim Entschlüsseln von DEÜV-Dateien analog zu PERFIDIA Standalone die SVNR-Dateien (svnr.dat und svnr.csv) in dem Ordner ‚pem/recv‘ geschrieben.
SV_HTTPS auto Gibt an, ob bei der Kommunikation mit dem GKV-Kommunikationsserver eine HTTPS-Verbindung genutzt werden soll. Mögliche Ausprägungen: auto = PERFIDIA entscheidet über die Verwen-dung von HTTPS no = Keine HTTPS-Verbindung verwenden yes = HTTPS-Verbindung verwenden
SV_GZIP auto Gibt an, ob beim Versand von SV-Meldungen die Kompression GZIP verwendet werden soll. Mögliche Ausprägungen: auto = PERFIDIA entscheidet über die Verwen-dung von GZIP no = GZIP nicht verwenden yes = GZIP verwenden
SV_MODIFY_RECORD_LENGTH yes no = Datensatzlängen werden nicht verändert. yes = Datensatzlängen werden automatisch korrigiert.
SV_RECV_ALL_ANST <leer> yes = alle Annahmestellen verfügbar no = nicht alle Annahmestellen verfügbar
SV_RECV_SKIP_ANST9 (Ab Build 138 wird diese Config-Varia-ble nicht mehr ausgewertet.)
no Wenn diese Variable den Wert ‚yes‘ hat, wird beim Aufruf der Funktion perfidia_sv_receive die Annahmestelle 9 nicht angesprochen, solange der Wert des Parameter ‚nAnst‘ nicht 9 ist.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de26
Variablenname Voreinstellung BemerkungELSTER_HTTPS auto Gibt an, ob bei der Kommunikation mit dem ELS-
TER Servern eine HTTPS-Verbindung genutzt werden soll. Mögliche Ausprägungen: auto = PERFIDIA entscheidet über die Verwen-dung von HTTPS no = Keine HTTPS-Verbindung verwenden yes = HTTPS-Verbindung verwenden
ELSTER_ANMELDESTEUERN auto Gibt an, auf welchem Weg die Anmeldesteuern versendet werden sollen: auto = bis 31.12.2018 Versand über die offene Schnittstelle, ab dem 01.01.2019 Versand über das PERFIDIA RZ rzproxy = Versand über das PERFIDIA RZ
PINPAD_DATA2SIGN <leer> In der PINPAD-Callbackfunktion kann mit Hilfe dieser Variablen, die zu signierende Datei ermit-telt werden,
TEST_ENVIRONMENT no no = normaler Betrieb yes = Entwicklungsumgebung
WRITE_RECORDS_CRLF no Hiermit wird eingestellt, ob die Funktionen ‚perfi-dia_write_records_*‘ am Ende eines Datensatzes automatisch ein CRLF (0x0D 0x0A) schreiben sollen.
FILENAMES_CASE_SENSITIVE (nur Linux, macOS und FreeBSD)
no no = alle Dateien upper = nur Dateien mit Großbuchstaben lower = nur Dateien mit Kleinbuchstaben
SSL_CA_CERTS_FILE (nur Linux, macOS und FreeBSD)
<leer> Hiermit kann eine Datei mit den SSL CA-Zertifi-katen angegeben werden.
SSL_CA_CERTS_PATH (nur Linux, macOS und FreeBSD)
/etc/ssl/certs Hiermit kann das Verzeichnis mit den SSL CA-Zertifikaten angegeben werden.
v3.90.161 PERFIDIA Toolkit Reference
27© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_config_get
Hiermit wird der Wert abgefragt, der einer Variablen zugewiesen worden ist.
long perfidia_config_get ( const char *szVariableName, char *szValueBuffer, short nValueBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_CONFIG_NAME (80138) Ungültiger Variablenname.
• PE_NO_DATA (80129) Dem Variablennamen ist kein Wert zugewiesen.
• PE_BUFSIZE (80110) Länge des Buffers ist zu klein.
Parameter
• szVariableName (IN) Name der Variablen. Gültige Werte siehe perfidia_config_set.
• szValueBuffer (OUT) Zugewiesener Wert. Der Buffer sollte eine Größe von 513 Zeichen haben.
• nValueBufferSize (IN) Größe des Buffers für den zugewiesenen Wert.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de28
perfidia_config_clear
Hiermit wird ein zugewiesener Wert gelöscht.
long perfidia_config_clear ( const char *szVariableName );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_CONFIG_NAME (80138) Ungültiger Variablenname.
Parameter
• szVariableName (IN) Name der Variablen. Gültige Werte siehe perfidia_config_set.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
29© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_config_vector_add
Hiermit werden die Werte in vordefinierten Vektoren zur speziellen Konfiguration von PERFIDIA gesetzt.
long perfidia_config_vector_add ( const char *szVectorName, const char *szValue );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_VECTOR_NAME (80144) Ungültiger Vectorname.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_TEXTSIZE (80111) Der Wert darf maximal 512 Zeichen lang sein.
Parameter
• szVectorName (IN) Name des Vektors.
• szValue (IN) Wert, der dem Vektor hinzugefügt werden soll.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Auf der folgenden Seite finden Sie alle momentan gültigen Vektornamen.
Nach dem Funktionsaufruf perfidia_init oder perfidia_init_thread_safe stehen alle Vektoren grundsätzlich auf der Voreinstellung.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de30
Vektorname Voreinstellung BemerkungSSH2_PUBLIC_HOST_KEYS ELMA5, VBL Hier müssen die Fingerprints der öffentlichen
Serverzertifikate hinterlegt werden, zu denen eine Verbindung per SSH2 erlaubt ist. ELMA5 = 14:2c:80:68:92:d9:32:5d:e1:2e:8a:87:32:20:66:e6 VBL = 76:b3:0d:94:73:0f:ee:77:77:40:d5:d9:a7:42:a3:d0
INVOLVED_FILES <leer> Bei allen Sende- und Empfangsfunktionen werden die beteidigten Dateien in diesen Vektor gespeichert.
ELSTER_IP_ADDRESSES 62.157.211.58 62.157.211.59
193.109.238.26 193.109.238.27
Die hier hinterlegten IP-Addressen werden für die Kommunikation mit den Servern der OFD im Elster-Verfahren verwendet.
v3.90.161 PERFIDIA Toolkit Reference
31© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_config_vector_remove
Hiermit kann ein Wert aus dem Vektor gelöscht werden.
long perfidia_config_vector_remove ( const char *szVectorName, short nIndex );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_VECTOR_NAME (80144) Ungültiger Vectorname.
• PE_NO_DATA (80129) Ungültiger Index.
Parameter
• szVectorName (IN) Name des Vektors. Gültige Werte siehe perfidia_config_vector_add.
• nIndex (IN) Der Index in den Vektor beginnend mit 0.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de32
perfidia_config_vector_get
Hiermit kann ein Wert aus einem Vektor ausgelesen werden.
long perfidia_config_vector_get ( const char *szVectorName short nIndex, char *szValueBuffer, short nValueBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_VECTOR_NAME (80144) Ungültiger Vectorname.
• PE_NO_DATA (80129) Ungültiger Index.
• PE_BUFSIZE (80110) Länge des Buffers ist zu klein.
Parameter
• szVectorName (IN) Name des Vektors. Gültige Werte siehe perfidia_config_vector_add.
• nIndex (IN) Der Index in den Vektor beginnend mit 0.
• szValueBuffer (OUT) Zugewiesener Wert. Der Buffer sollte eine Größe von 513 Zeichen haben.
• nValueBufferSize (IN) Größe des Buffers für den zugewiesenen Wert.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
33© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_mapping
Mit Hilfe dieser Funktion können Werte verschiedener Datenarten konvertiert werden.
long perfidia_mapping ( short nMapping, const char *szInput, char *szOutput, short nOutputBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PARAMETER (80138) Der Wert der Variablen ‚nMapping‘ ist ungültig.
• PE_BUFSIZE (80110) Länge des Buffers ist zu klein.
Parameter
• nMapping (IN) 1 = SV: Annahmestellen-Betriebsnummer nach PERFIDIA Annahmestellen-Nummer 2 = SV: PERFIDIA Annahmestellen-Nummer nach Annahmestellen-Betriebsnummer 3 = SV: Text zum SvSend-StatusCode 4 = SV: Text zum SvRecv-StatusCode 5 = SV: Text zum SvProt-ActionCode
• szInput (IN) Eingabewert, der gemappt werden soll.
• szOutputBuffer (OUT) Gemappter Wert. Der Buffer sollte eine Größe von 513 Zeichen haben.
• nOutputBufferSize (IN) Größe des Buffers für den gemappten Wert.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de34
DEÜV-Meldungen, Beitragsnachweise und Entgeltbescheinigungen
Funktionsübersicht
Datenprüfung
perfidia_svchk_file perfidia_svchk_mem perfidia_svchk_record perfidia_svchk_error
Versandperfidia_svmail_send_v2 perfidia_svmail_send_mapi_v2 perfidia_svmail_decrypt perfidia_svmail_mailaddr_get perfidia_svmail_mailaddr_set
Druckperfidia_svmail_print perfidia_svmail_pdf perfidia_svmail_print_hdc_prepare perfidia_svmail_print_hdc_cleanup perfidia_svmail_print_hdc_draw
Zertifikateperfidia_itsg_cert_info_v2 perfidia_itsg_cert_info_v3 perfidia_itsg_cert_info_v4 perfidia_itsg_cert_info_v5 perfidia_itsg_cert_create perfidia_itsg_cert_create_mapi perfidia_itsg_cert_create_v2 perfidia_itsg_cert_print perfidia_itsg_cert_pdf perfidia_itsg_cert_print_set perfidia_itsg_agvcerts_import perfidia_itsg_agvcerts_import_http perfidia_itsg_agvcerts_info perfidia_itsg_cert_crp_status perfidia_itsg_cert_read_crp perfidia_itsg_cert_read_crp_http perfidia_itsg_cert_change_password perfidia_itsg_cert_verify_password perfidia_itsg_ca_install
Protokollperfidia_svmail_protocol_open perfidia_svmail_protocol_next perfidia_svmail_protocol_close
v3.90.161 PERFIDIA Toolkit Reference
35© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
SV-Ausfüllhilfeperfidia_svafh_register perfidia_svafh_regcode_check perfidia_svafh
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de36
perfidia_svchk_file
Mit dieser Funktion werden die übergebenen Daten mit PERFIDIA SV-Check geprüft-
long perfidia_svchk_file ( long lDataType, const char *szDatFile, short nCharset, const char *szDatum, short *pnFaultyRecords );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PARAMETER (80114) Ungültiger Parameter.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann nicht gefunden werden.
• PE_INVALID_FORMAT (80143) Die Datei hat ein ungültiges Format.
Parameter
• nDataType (IN) 0x00000001 (1) = Beitragsnachweise [?BNA0*.*] 0x00000002 (2) = Zahlstellen-Beitragsnachweise [?BNZ0*.*] 0x00000004 (4) = Beitragserhebung [?BEA0*.*] 0x00000008 (8) = DEÜV-Meldungen [?DUA0*.*] 0x00000010 (16) = Entgeltersatzleistungen [?EEL0*.*] 0x00000020 (32) = ELENA-Daten (MVDS) [?ENA0*.*] 0x00000040 (64) = ELENA-Daten (DSVV) [?ENR0*.*] 0x00000080 (128) = Zahlstellenmeldeverfahren [?ZAV0*.*] 0x00000100 (256) = AAG-Erstattungsanträge [?AAG0*.*] 0x00000800 (2048) = euBP-Daten (LOHN) [?EBE0*.*] 0x00004000 (16384) = euBP-Daten (FIBU) [?EBF0*.*] 0x00010000 (65536) = BEA-Arbeitsbescheinigungen [?ALG0*.*] 0x00100000 (1048576) = VSNR-Abfragen [?DSV*.*] 0x00400000 (4194304) = UV-Lohnnachweis [?UVL*.*] 0x00800000 (8388608) = Abfrage der UV-Stammdaten [?UVS*.*] 0x02000000 (33554432) = Rückmeldung der BV-Werte [?ARV*.*] 0x08000000 (134217728) = A1-Anträge [?A1A*.*]
• szDatFile (IN) Name der Datendatei.
• nCharset (IN) Zeichensatz, in dem die Datendatei gespeichert ist:
v3.90.161 PERFIDIA Toolkit Reference
37© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
0 = ISO-8859-15 1 = ISO-8859-1 2 = CP1252 (WIN ANSI) 3 = CP437 (MS-DOS US) 4 = CP850 (MS-DOS Latin 1)
• szDatum (IN) Datum, das bei der Prüfung der Daten zugrunde gelegt werden soll. Wenn hier eine leere Zeichenkette oder ein NULL-Pointer übergeben wird, wird das aktuelle Datum vom Betriebssystem benutzt. (FORMAT: JJJJMMDDhhmmss)
• pnFaultyRecords (OUT) Liefert die Anzahl der fehlerhaften Datensätze.
Betriebssysteme
Microsoft Windows
Anmerkungen
Nur wenn diese Funktion den Rückgabewert 0 (PE_NO_ERROR) zurückliefert, konnten alle Daten geprüft werden.
Falls der Parameter pnFaultyRecords ungleich 0 ist, können nähere Fehlerdetails mit den Funktionen perfi-dia_svchk_record und perfidia_svchk_error abgefragt werden.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de38
perfidia_svchk_mem
Mit dieser Funktion werden die übergebenen Daten mit PERFIDIA SV-Check geprüft.
long perfidia_svchk_mem ( long lDataType, const char *szData, short nCharset, const char *szDatum, short *pnFaultyRecords );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PARAMETER (80114) Ungültiger Parameter.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann nicht gefunden werden.
• PE_INVALID_FORMAT (80143) Die Datei hat ein ungültiges Format.
Parameter
• nDataType (IN) 0x00000001 (1) = Beitragsnachweise [?BNA0*.*] 0x00000002 (2) = Zahlstellen-Beitragsnachweise [?BNZ0*.*] 0x00000004 (4) = Beitragserhebung [?BEA0*.*] 0x00000008 (8) = DEÜV-Meldungen [?DUA0*.*] 0x00000010 (16) = Entgeltersatzleistungen [?EEL0*.*] 0x00000020 (32) = ELENA-Daten (MVDS) [?ENA0*.*] 0x00000040 (64) = ELENA-Daten (DSVV) [?ENR0*.*] 0x00000080 (128) = Zahlstellenmeldeverfahren [?ZAV0*.*] 0x00000100 (256) = AAG-Erstattungsanträge [?AAG0*.*] 0x00000800 (2048) = euBP-Daten (LOHN) [?EBE0*.*] 0x00004000 (16384) = euBP-Daten (FIBU) [?EBF0*.*] 0x00010000 (65536) = BEA-Arbeitsbescheinigungen [?ALG0*.*] 0x00100000 (1048576) = VSNR-Abfragen [?DSV*.*] 0x00400000 (4194304) = UV-Lohnnachweis [?UVL*.*] 0x00800000 (8388608) = Abfrage der UV-Stammdaten [?UVS*.*] 0x02000000 (33554432) = Rückmeldung der BV-Werte [?ARV*.*] 0x08000000 (134217728) = A1-Anträge [?A1A*.*]
• szData (IN) Zu prüfende Daten inkl. VOSZ, DSKO und NCSZ.
• nCharset (IN) Zeichensatz, in dem die Datendatei gespeichert ist:
v3.90.161 PERFIDIA Toolkit Reference
39© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
0 = ISO-8859-15 1 = ISO-8859-1 2 = CP1252 (WIN ANSI) 3 = CP437 (MS-DOS US) 4 = CP850 (MS-DOS Latin 1)
• szDatum (IN) Datum, das bei der Prüfung der Daten zugrunde gelegt werden soll. Wenn hier eine leere Zeichenkette oder ein NULL-Pointer übergeben wird, wird das aktuelle Datum vom Betriebssystem benutzt. (FORMAT: JJJJMMDDhhmmss)
• pnFaultyRecords (OUT) Liefert die Anzahl der fehlerhaften Datensätze.
Betriebssysteme
Microsoft Windows
Anmerkungen
Nur wenn diese Funktion den Rückgabewert 0 (PE_NO_ERROR) zurückliefert, konnten alle Daten geprüft werden.
Falls der Parameter pnFaultyRecords ungleich 0 ist, können nähere Fehlerdetails mit den Funktionen perfi-dia_svchk_record und perfidia_svchk_error abgefragt werden.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de40
perfidia_svchk_record
Falls die Funktion perfidia_svchk_file oder perfidia_svchk_mem fehlerhafte Datensätze (pnFaultyRecords un-gleich 0) erkannt hat, kann mit dieser Funktion der fehlerhafte Datensatz und die Anzahl der darin enthaltenen Fehler ermittelt werden.
long perfidia_svchk_record ( short nFaultyRecord, short *pnErrorCount, long *plRecordNum, char *szRecordBuffer, short nRecordBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_BUFSIZE (80110) Länge des Record-Buffers ist zu klein.
Parameter
• nFaultyRecord (IN) Fortlaufende Nummer von 1 bis einschließlich pnFaultyRecords. (pnFaultyRecords siehe perfidia_svchk_file oder perfidia_svchk_mem)
• pnErrorCount (OUT) Liefert die Anzahl der Fehlertexte in diesem Datensatz.
• pnRecordNum (OUT) Liefert die Position in der Datendatei.
• szRecordBuffer (OUT) Der Record-Buffer sollte mindestens drei Zeichen größer sein, als der längste Datensatz in der Datei. Wenn der Datensatz nicht benötigt wird, darf hier auch ein NULL-Pointer übergeben werden.
• nRecordBufferSize (IN) Größe des Record-Buffers.
Betriebssysteme
Microsoft Windows
Anmerkungen
Vor dem Aufruf dieser Funktion muss die Funktion perfidia_svchk_file oder perfidia_svchk_mem erfolgreich ausgeführt worden sein.
v3.90.161 PERFIDIA Toolkit Reference
41© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_svchk_error
Falls die Funktion perfidia_svchk_file oder perfidia_svchk_mem fehlerhafte Datensätze (pnFaultyRecords ungleich 0) erkannt hat, können mit dieser Funktion die einzelnen Fehlertexte je fehlerhaftem Datensatz abge-fragt werden.
long perfidia_svchk_error ( short nFaultyRecord, short nErrorNum, char *szErrorBuffer, short nErrorBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_BUFSIZE (80110) Länge des Error-Buffers ist zu klein.
Parameter
• nFaultyRecord (IN) Fortlaufende Nummer von 1 bis einschließlich pnFaultyRecords. (pnFaultyRecords siehe perfidia_svchk_file oder perfidia_svchk_mem)
• nErrorNum (IN) Fortlaufende Nummer von 1 bis einschließlich pnErrorCount. (pnErrorCount siehe perfidia_svchk_record)
• szErrorBuffer (OUT) Der Error-Buffer sollte eine Größe von 355 Zeichen haben.
• nErrorBufferSize (IN) Größe des Error-Buffers.
Betriebssysteme
Microsoft Windows
Anmerkungen
Vor dem Aufruf dieser Funktion muss die Funktion perfidia_svchk_file oder perfidia_svchk_mem erfolgreich ausgeführt worden sein.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de42
perfidia_sv_check
Mit dieser Funktion werden die Daten in der Send-Queue auf doppelte Dateinummer, etc. geprüft.
long perfidia_sv_check ( long lDataType, short nAnst, short nTestmerker, long lDatNumSend, long *plFilesFound, long *plFilesOK );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_DATNUM_USED (80135) Dateinummer bereits benutzt.
• PE_EMPTY_QUEUE (80134) Die Warteschlange ist leer.
Parameter
• lDataType (IN) 0x00000001 (1) = Beitragsnachweise [?BNA0*.*] 0x00000002 (2) = Zahlstellen-Beitragsnachweise [?BNZ0*.*] 0x00000004 (4) = Beitragserhebung [?BEA0*.*] 0x00000008 (8) = DEÜV-Meldungen [?DUA0*.*] 0x00000010 (16) = Entgeltersatzleistungen [?EEL0*.*] 0x00000020 (32) = ELENA-Daten (MVDS) [?ENA0*.*] 0x00000040 (64) = ELENA-Daten (DSVV) [?ENR0*.*] 0x00000080 (128) = Zahlstellenmeldeverfahren [?ZAV0*.*] 0x00000100 (256) = AAG-Erstattungsanträge [?AAG0*.*] 0x00000200 (512) = Entgeltbescheinigungen [?VBA0*.*] 0x00000800 (2048) = euBP-Daten (LOHN) [?EBE0*.*] 0x00004000 (16384) = euBP-Daten (FIBU) [?EBF0*.*] 0x00004000 (16384) = euBP-Daten (FIBU) [?EBF0*.*] 0x00010000 (65536) = BEA-Arbeitsbescheinigungen [?ALG0*.*] 0x00100000 (1048576) = VSNR-Abfragen [?DSV*.*] 0x00400000 (4194304) = UV-Lohnnachweis [?UVL*.*] 0x00800000 (8388608) = Abfrage der UV-Stammdaten [?UVS*.*] 0x02000000 (33554432) = Rückmeldung der BV-Werte [?ARV*.*] 0x08000000 (134217728) = A1-Anträge [?A1A*.*]
• nAnst (IN) 0 = alle 1 = nur alle AOK-Annahmestellen 2 = nur 15451439, vdek
v3.90.161 PERFIDIA Toolkit Reference
43© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
3 = nur 37912580, IKK 4 = nur 35382142, BKK 5 = nur 47056789, LKK 6 = nur 99086875, SeeKK 7 = nur 98000006, BKN (Allgemein) 8 = nur 17625773, DASBV 9 = nur 66667777, DSRV 10 = nur 77772222, ZSS 11 = nur 98094032, BKN (Knappschaft) 12 = nur 64672791, AOK Baden-Württemberg 13 = nur 87880235, AOK Bayern/Thüringen 14 = nur 05174740, AOK Sachsen 15 = nur 20158137, AOK Bremen/Bremerhaven 16 = nur 29720865, AOK Niedersachsen 17 = nur 47860681, AOK Hessen/Saarland 18 = nur 51605725, AOK Rheinland-Pfalz 19 = nur 01000251, AOK MV/Rheinland/HH/SH 20 = nur 34364249, AOK Rheinland/HH 21 = nur 01000262, AOK Berlin/BB 22 = nur 33526082, AOK Westfalen-Lippe 23 = nur 25942967, Mobil ISC 24 = nur 76665732, BA 25 = nur 95783331, DGUV 26 = nur 93121302, ITSG 27 = nur 93951443, AOK Sachsen-Anhalt 28 = nur 92111581, DAK-G 98 = nur 99300222, eVpT (neue Kernprüfung) 99 = nur 99300001, eVpT (normal)
• nTestmerker (IN) 0 = nur Echtdaten 1 = nur Testdaten 2 = Echt- und Testdaten
• lDatNumSend (IN) 0 = alle, sonst nur die angegebene Dateinummer
• plFilesFound (OUT) Anzahl der Dateien die in der Send-Queue gefunden wurden.
• plFilesOK (OUT) Anzahl der Dateien die erfolgreich geprüft wurden.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de44
perfidia_sv_connect_test
Mit dieser Funktion kann ein Verbindungstest über eine geschützte Verbindung mit dem ITSG-Zertifikat zum ITSG KomServer durchgeführt werden.
long perfidia_sv_connect_test ( const char *szSvPassword, long lFlags, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PASSWORD (80106) Ungültiges Passwort.
• PE_PEMKEY (80113) Es existiert kein gültiger Schlüssel.
• PE_SERVER_BUSY (80163) Der Server ist momentan überlastet.
• PE_TOO_MANY_REQUESTS (80165) Die Kommunikation wurde vom Server wegen zu vielen Anfragen abgebrochen.
• PE_CERTSTORE_MISSING_CERT (80169) Im Windows-Zertifikatsspeicher fehlt ein benötigtes ITSG PCA- oder CA-Zertifikat.
Parameter
• szSVPassword (IN) Passwort des SV-Zertifikats.
• plFlags (IN) 0 oder 1 = GKV-Kommunikationsserver 2 = DSRV-Kommunikationsserver
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Diese Funktion erzeugt einen Progress und läuft immer über eine geschützte Internetverbindung.
Wichtiger Hinweis: Um die Server beim ITSG KomServer nicht unnötig zu belasten, darf diese Funktion nicht regelmäßig bzw. automatisiert aufgerufen werden. Diese Funktion sollte nur manuell vom Anwender ausge-führt werden können.
v3.90.161 PERFIDIA Toolkit Reference
45© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_sv_send
Mit dieser Funktion können die Daten aus der Send-Queue ‚pem‘ verschlüsselt und per Email oder eXTra-Standard versendet werden. Der Versand der ELENA-Daten erfolgt grundsätzlich über den eXTra-Standard.
long perfidia_sv_send ( const char *szSvPassword, long lDataType, short nAnst, short nTestmerker, long lDatNumSend, long *plFilesFound, long *plFilesSent, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PASSWORD (80106) Ungültiges Passwort.
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_DATNUM_USED (80135) Dateinummer bereits benutzt.
• PE_PEMKEY (80113) Es existiert kein gültiger Schlüssel.
• PE_SVMAIL_INIT (70204) Fehler bei der Initialisierung von SVEmail.
• PE_EMPTY_QUEUE (80134) Die Warteschlange ist leer.
• PE_SVMAIL_PROC (70206) Fehler beim Verarbeiten. Nähere Informationen mit der Funktion perfidia_get_last_error_v2.
• PE_NO_MAPI (80108) Es ist kein MAPI-fähiges Email-Programm installiert.
• PE_MAPI_ERROR (80131) Fehler beim Email-Versenden.
• PE_SMTP_MAILFROM (80306) Fehler in der Email-Adresse des Absenders.
• PE_SMTP_RCPTTO (80307) Fehler in der Email-Adresse des Empfängers.
• PE_SMTP_DATASTART (80308) Fehler beim Start der Emailübertragung.
• PE_SMTP_QUEUEMAIL (80309) Email konnte nicht in die Versand-Queue des Emailservers gestellt werden.
• PE_SMTP_UNKNOWNHOST (80310) Falsche IP-Adresse oder Hostname.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de46
• PE_SMTP_CONNECTFAILED (80312) Fehler beim Verbindungsaufbau zum Emailserver.
• PE_SMTP_AUTHLOGIN_START (80313) Abbruch beim Loginversuch über SMTP_AUTH_LOGIN.
• PE_SMTP_AUTHLOGIN_USER (80314) Benutzername vom Emailserver nicht akzeptiert.
• PE_SMTP_AUTHLOGIN_PASS (80315) Benutzername und/oder Passwort vom Emailserver nicht akzeptiert.
• PE_SMTP_AUTHPLAIN_START (80316) Abbruch beim Loginversuch über SMTP_AUTH_PLAIN.
• PE_SMTP_AUTHPLAIN_USERPASS (80317) Benutzername und/oder Passwort vom Emailserver nicht akzeptiert.
• PE_SERVER_BUSY (80163) Der Server ist momentan überlastet.
• PE_TOO_MANY_REQUESTS (80165) Die Kommunikation wurde vom Server wegen zu vielen Anfragen abgebrochen.
• PE_NEW_PERFIDIA (80167) Für den Versand der Daten wird eine neuere PERFIDIA Version benötigt.
• PE_SERVER_MAINTENANCE (80168) Der Versand der Daten ist momentan nicht möglich, da die Server gewartet werden.
• PE_CERTSTORE_MISSING_CERT (80169) Im Windows-Zertifikatsspeicher fehlt ein benötigtes ITSG PCA- oder CA-Zertifikat.
Parameter
• szSVPassword (IN) Passwort des SV-Zertifikats.
• lDataType (IN) 0x00000001 (1) = Beitragsnachweise [?BNA0*.*] 0x00000002 (2) = Zahlstellen-Beitragsnachweise [?BNZ0*.*] 0x00000004 (4) = Beitragserhebung [?BEA0*.*] 0x00000008 (8) = DEÜV-Meldungen [?DUA0*.*] 0x00000010 (16) = Entgeltersatzleistungen [?EEL0*.*] 0x00000020 (32) = ELENA-Daten (MVDS) [?ENA0*.*] 0x00000040 (64) = ELENA-Daten (DSVV) [?ENR0*.*] 0x00000080 (128) = Zahlstellenmeldeverfahren [?ZAV0*.*] 0x00000100 (256) = AAG-Erstattungsanträge [?AAG0*.*] 0x00000200 (512) = Entgeltbescheinigungen [?VBA0*.*] 0x00000800 (2048) = euBP-Daten (LOHN) [?EBE0*.*] 0x00004000 (16384) = euBP-Daten (FIBU) [?EBF0*.*] 0x00010000 (65536) = BEA-Arbeitsbescheinigungen [?ALG0*.*] 0x00100000 (1048576) = VSNR-Abfragen [?DSV*.*] 0x00400000 (4194304) = UV-Lohnnachweis [?UVL*.*] 0x00800000 (8388608) = Abfrage der UV-Stammdaten [?UVS*.*] 0x02000000 (33554432) = Rückmeldung der BV-Werte [?ARV*.*] 0x08000000 (134217728) = A1-Anträge [?A1A*.*]
• nAnst (IN) 0 = alle 1 = nur alle AOK-Annahmestellen 2 = nur 15451439, vdek 3 = nur 37912580, IKK 4 = nur 35382142, BKK 5 = nur 47056789, LKK
v3.90.161 PERFIDIA Toolkit Reference
47© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
6 = nur 99086875, SeeKK 7 = nur 98000006, BKN (Allgemein) 8 = nur 17625773, DASBV 9 = nur 66667777, DSRV 10 = nur 77772222, ZSS 11 = nur 98094032, BKN (Knappschaft) 12 = nur 64672791, AOK Baden-Württemberg 13 = nur 87880235, AOK Bayern/Thüringen 14 = nur 05174740, AOK Sachsen 15 = nur 20158137, AOK Bremen/Bremerhaven 16 = nur 29720865, AOK Niedersachsen 17 = nur 47860681, AOK Hessen/Saarland 18 = nur 51605725, AOK Rheinland-Pfalz 19 = nur 01000251, AOK MV/Rheinland/HH/SH 20 = nur 34364249, AOK Rheinland/HH 21 = nur 01000262, AOK Berlin/BB/Sachsen-Anhalt 22 = nur 33526082, AOK Westfalen-Lippe 23 = nur 25942967, Mobil ISC 24 = nur 76665732, BA 25 = nur 95783331, DGUV 26 = nur 93121302, ITSG 27 = nur 93951443, AOK Sachsen-Anhalt 28 = nur 92111581, DAK-G 98 = nur 99300222, eVpT (neue Kernprüfung) 99 = nur 99300001, eVpT (normal)
• nTestmerker (IN) 0 = nur Echtdaten 1 = nur Testdaten 2 = Echt- und Testdaten
• lDatNumSend (IN) 0 = alle, sonst nur die angegebene Dateinummer
• plFilesFound (OUT) Anzahl der Dateien die in der Send-Queue gefunden wurden.
• plFilesSent (OUT) Anzahl der Dateien die erfolgreich versendet wurden.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Diese Funktion erzeugt einen Progress. Der Kommunikation mit der ZSS erfolgt über eine geschützte Inter-netverbindung.
Die Emailkonfiguration wird über die Config-Parameter gesteuert.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de48
perfidia_sv_receive
Mit dieser Funktion können Antworten für die versendeten Daten abgeholt werden. Außerdem werden Email-Antworten, die im Ordner ‚pem/recvq‘ gespeichert wurden, automatisch mit verarbeitet.
long perfidia_sv_receive ( const char *szSvPassword, long lDataType, short nAnst, short nTestmerker, long lDatNumSend, long *plFilesFound, long *plFilesRecv, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PASSWORD (80106) Ungültiges Passwort.
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_NO_DATA (80129) Es sind keine Daten vorhanden, die auf eine Protokollantwort warten.
• PE_PEMKEY (80113) Es existiert kein gültiger Schlüssel.
• PE_EMPTY_QUEUE (80134) Die Warteschlange ist leer.
• PE_INVALID_FORMAT (80144) Ungültiges Format.
• PE_SERVER_BUSY (80163) Der Server ist momentan überlastet.
• PE_TOO_MANY_REQUESTS (80165) Die Kommunikation wurde vom Server wegen zu vielen Anfragen abgebrochen.
• PE_NEW_PERFIDIA (80167) Für den Versand der Daten wird eine neuere PERFIDIA Version benötigt.
• PE_SERVER_MAINTENANCE (80168) Der Versand der Daten ist momentan nicht möglich, da die Server gewartet werden.
• PE_CERTSTORE_MISSING_CERT (80169) Im Windows-Zertifikatsspeicher fehlt ein benötigtes ITSG PCA- oder CA-Zertifikat.
Parameter
• szSVPassword (IN) Passwort des SV-Zertifikats.
• lDataType (IN) 0x00000001 (1) = Beitragsnachweise [?BNA0*.*]
v3.90.161 PERFIDIA Toolkit Reference
49© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
0x00000002 (2) = Zahlstellen-Beitragsnachweise [?BNZ0*.*] 0x00000004 (4) = Beitragserhebung [?BEA0*.*] 0x00000008 (8) = DEÜV-Meldungen [?DUA0*.*] 0x00000010 (16) = Entgeltersatzleistungen [?EEL0*.*] 0x00000020 (32) = ELENA-Daten (MVDS) [?ENA0*.*] 0x00000040 (64) = ELENA-Daten (DSVV) [?ENR0*.*] 0x00000080 (128) = Zahlstellenmeldeverfahren [?ZAV0*.*] 0x00000100 (256) = AAG-Erstattungsanträge [?AAG0*.*] 0x00000400 (1024) = VSA-Rückmeldung [?VSA0*.*] 0x00000800 (2048) = euBP-Daten (LOHN) [?EBE0*.*] 0x00001000 (4096) = SAG-Daten [?SAG0*.*] 0x00002000 (8192) = ZAK-Daten [?ZAK0*.*] 0x00004000 (16384) = euBP-Daten (FIBU) [?EBF0*.*] 0x00008000 (32768) = euBP-Antworten [?EBR0*.*] 0x00010000 (65536) = BEA-Arbeitsbescheinigungen [?ALG0*.*] 0x00040000 (262144) = EEL-Rückmeldungen [?EEK*.*] 0x00080000 (524288) = AAG-Rückmeldungen [?AAK*.*] 0x00100000 (1048576) = VSNR-Abfragen [?DSV*.*] 0x00200000 (2097152) = euBP-Dokumente [?0BP*.*] 0x00400000 (4194304) = UV-Lohnnachweis [?UVL*.*] 0x00800000 (8388608) = Abfrage der UV-Stammdaten [?UVS*.*] 0x01000000 (16777216) = UV-Stammdaten [?UVU*.*] 0x02000000 (33554432) = Rückmeldung der angeforderten EBV-Werte [?ARV*.*] 0x04000000 (67108864) = Anforderung der EBV-Werte [?RVA*.*] 0x08000000 (134217728) = A1-Anträge [?A1A*.*] 0x10000000 (268435456) = Bewilligung/Ablehnung der A1-Anträge [?A1S*.*]
• nAnst (IN) 0 = alle 2 = nur 15451439, vdek 3 = nur 37912580, IKK 4 = nur 35382142, BKK 5 = nur 47056789, LKK 6 = nur 99086875, SeeKK 7 = nur 98000006, BKN (Allgemein) 8 = nur 17625773, DASBV 9 = nur 66667777, DSRV 10 = nur 77772222, ZSS 11 = nur 98094032, BKN (Knappschaft) 12 = nur 64672791, AOK Baden-Württemberg 13 = nur 87880235, AOK Bayern/Thüringen 14 = nur 05174740, AOK Sachsen 15 = nur 20158137, AOK Bremen/Bremerhaven 16 = nur 29720865, AOK Niedersachsen 17 = nur 47860681, AOK Hessen/Saarland 18 = nur 51605725, AOK Rheinland-Pfalz 19 = nur 01000251, AOK MV/Rheinland/HH/SH 20 = nur 34364249, AOK Rheinland/HH 21 = nur 01000262, AOK Berlin/BB/Sachsen-Anhalt 22 = nur 33526082, AOK Westfalen-Lippe 23 = nur 25942967, Mobil ISC 24 = nur 76665732, BA 25 = nur 95783331, DGUV 26 = nur 93121302, ITSG 27 = nur 93951443, AOK Sachsen-Anhalt
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de50
28 = nur 92111581, DAK-G 98 = nur 99300222, eVpT (neue Kernprüfung) 99 = nur 99300001, eVpT (normal)
• nTestmerker (IN) 0 = nur Echtdaten 1 = nur Testdaten 2 = Echt- und Testdaten
• lDatNumSend (IN) 0 = alle, sonst nur die angegebene Dateinummer Beim ITSG Kommunikationsserver wird dieser Parameter nicht benutzt, da hier grundsätzlich nur alle vorhandenen Antworten abgeholt werden können.
• plFilesFound (OUT) Anzahl der Dateien für die eine Antwort gesucht wurde.
• plFilesRecv (OUT) Anzahl der Dateien die erfolgreich empfangen wurden.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Diese Funktion erzeugt einen Progress. Der Kommunikation mit der ZSS erfolgt über eine geschützte Inter-netverbindung
v3.90.161 PERFIDIA Toolkit Reference
51© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_sv_confirmation
Mit dieser Funktion können alle im Ordner ‚pem/sendq‘ befindlichen Quittungen versendet werden.
long perfidia_sv_confirmation ( const char *szSvPassword, long *plConfirmFound, long *plConfirmSent, HWND hwndParent)
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_EMPTY_QUEUE (80134) Keine Quittungen in der Send-Queue gefunden.
• PE_PASSWORD (80106) Ungültiges Passwort.
• PE_PEMKEY (80113) Es existiert kein gültiger Schlüssel.
• PE_SERVER_BUSY (80163) Der Server ist momentan überlastet.
• PE_TOO_MANY_REQUESTS (80165) Die Kommunikation wurde vom Server wegen zu vielen Anfragen abgebrochen.
• PE_NEW_PERFIDIA (80167) Für den Versand der Daten wird eine neuere PERFIDIA Version benötigt.
• PE_SERVER_MAINTENANCE (80168) Der Versand der Daten ist momentan nicht möglich, da die Server gewartet werden.
• PE_CERTSTORE_MISSING_CERT (80169) Im Windows-Zertifikatsspeicher fehlt ein benötigtes ITSG PCA- oder CA-Zertifikat.
Parameter
• szSVPassword (IN) Passwort des SV-Zertifikats.
• plConfirmFound (OUT) Anzahl der Quittungen, die in der Send-Queue gefunden wurden.
• plConfirmSent (OUT) Anzahl der Quittungen, die erfolgreich versendet wurden.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de52
Anmerkungen
Diese Funktion erzeugt einen Progress. Der Kommunikation mit der ZSS erfolgt über eine geschützte Internetverbindung
v3.90.161 PERFIDIA Toolkit Reference
53© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_sv_recv_open_statuscode
Öffnet die Protokolldatei der empfangenen Antworten.
long perfidia_sv_recv_open_statuscode ( short nQuittung, long lDataType, short nAnst, );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
Parameter
• nQuittung (IN) 0 = nur nicht quittierte Antworten lesen 1 = nur quittierte Antworten lesen
• lDataType (IN) 0x00000000 (0) = alle Datentypen 0x00000001 (1) = Beitragsnachweise [?BNA0*.*] 0x00000002 (2) = Zahlstellen-Beitragsnachweise [?BNZ0*.*] 0x00000004 (4) = Beitragserhebung [?BEA0*.*] 0x00000008 (8) = DEÜV-Meldungen [?DUA0*.*] 0x00000010 (16) = Entgeltersatzleistungen [?EEL0*.*] 0x00000020 (32) = ELENA-Daten (MVDS) [?ENA0*.*] 0x00000040 (64) = ELENA-Daten (DSVV) [?ENR0*.*] 0x00000080 (128) = Zahlstellenmeldeverfahren [?ZAV0*.*] 0x0100 (256) = AAG-Erstattungsanträge [?AAG0*.*] 0x000000000400 (1024) = VSA-Rückmeldung [?VSA0*.*] 0x00000800 (2048) = euBP-Daten (LOHN) [?EBE0*.*] 0x00001000 (4096) = SAG-Daten [?SAG0*.*] 0x00002000 (8192) = ZAK-Daten [?ZAK0*.*] 0x00004000 (16384) = euBP-Daten (FIBU) [?EBF0*.*] 0x00008000 (32768) = euBP-Antworten [?EBR0*.*] 0x00010000 (65536) = BEA-Arbeitsbescheinigungen [?ALG0*.*] 0x00040000 (262144) = EEL-Rückmeldungen [?EEK*.*] 0x00080000 (524288) = AAG-Rückmeldungen [?AAK*.*] 0x00100000 (1048576) = VSNR-Abfragen [?DSV*.*] 0x00200000 (2097152) = euBP-Dokumente [?0BP*.*] 0x00400000 (4194304) = UV-Lohnnachweis [?UVL*.*] 0x00800000 (8388608) = Abfrage der UV-Stammdaten [?UVS*.*] 0x01000000 (16777216) = UV-Stammdaten [?UVU*.*] 0x02000000 (33554432) = Rückmeldung der angeforderten EBV-Werte [?ARV*.*] 0x04000000 (67108864) = Anforderung der EBV-Werte [?RVA*.*] 0x08000000 (134217728) = A1-Anträge [?A1A*.*] 0x10000000 (268435456) = Bewilligung/Ablehnung der A1-Anträge [?A1S*.*]
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de54
• nAnnahmestelle (IN) 0 = alle 1 = nur alle AOK-Annahmestellen 2 = nur 15451439, vdek 3 = nur 37912580, IKK 4 = nur 35382142, BKK 5 = nur 47056789, LKK 6 = nur 99086875, SeeKK 7 = nur 98000006, BKN (Allgemein) 8 = nur 17625773, DASBV 9 = nur 66667777, DSRV 10 = nur 77772222, ZSS 11 = nur 98094032, BKN (Knappschaft) 12 = nur 64672791, AOK Baden-Württemberg 13 = nur 87880235, AOK Bayern/Thüringen 14 = nur 05174740, AOK Sachsen 15 = nur 20158137, AOK Bremen/Bremerhaven 16 = nur 29720865, AOK Niedersachsen 17 = nur 47860681, AOK Hessen/Saarland 18 = nur 51605725, AOK Rheinland-Pfalz 19 = nur 01000251, AOK MV/Rheinland/HH/SH 20 = nur 34364249, AOK Rheinland/HH 21 = nur 01000262, AOK Berlin/BB/Sachsen-Anhalt 22 = nur 33526082, AOK Westfalen-Lippe 23 = nur 25942967, Mobil ISC 24 = nur 76665732, BA 25 = nur 95783331, DGUV 26 = nur 93121302, ITSG 27 = nur 93951443, AOK Sachsen-Anhalt 28 = nur 92111581, DAK-G 98 = nur 99300222, eVpT (neue Kernprüfung) 99 = nur 99300001, eVpT (normal)
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Nach dem Lesen der Protokolleinträge mit der Funktion perfidia_sv_recv_next muss die Datei mit der Funkti-on perfidia_sv_recv_close geschlossen werden.
v3.90.161 PERFIDIA Toolkit Reference
55© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_sv_recv_next_v2
Nach einem erfolgreichen Aufruf der Funktion perfidia_sv_recv_open_statuscode liefert diese Funktion solan-ge den nächsten Protokolleintrag, bis sie mit PE_NO_DATA zurückkommt.
long perfidia_sv_recv_next ( char *szDateTimeBuffer, short nDateTimeBufferSize, long *plDataType, short *pnAnst, short *pnTestmerker, long *plDatNumSend, long *plDatNumRecv, short *pnStatusCode, char *szFilenameBuffer, short nFilenameBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe eines Buffers ist zu klein.
Parameter
• szDateTimeBuffer (OUT) DateTime-Buffer sollte eine Größe von 15 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMD-Dhhmmss.
• nDateTimeBufferSize (IN) Größe des DateTime-Buffers.
• plDataType (OUT) 0x00000001 (1) = Beitragsnachweise [?BNA0*.*] 0x00000002 (2) = Zahlstellen-Beitragsnachweise [?BNZ0*.*] 0x00000004 (4) = Beitragserhebung [?BEA0*.*] 0x00000008 (8) = DEÜV-Meldungen [?DUA0*.*] 0x00000010 (16) = Entgeltersatzleistungen [?EEL0*.*] 0x00000020 (32) = ELENA-Daten (MVDS) [?ENA0*.*] 0x00000040 (64) = ELENA-Daten (DSVV) [?ENR0*.*] 0x00000080 (128) = Zahlstellenmeldeverfahren [?ZAV0*.*] 0x00000100 (256) = AAG-Erstattungsanträge [?AAG0*.*] 0x00000400 (1024) = VSA-Rückmeldung [?VSA0*.*]
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de56
0x00000800 (2048) = euBP-Daten (LOHN) [?EBE0*.*] 0x00001000 (4096) = SAG-Daten [?SAG0*.*] 0x00002000 (8192) = ZAK-Daten [?ZAK0*.*] 0x00004000 (16384) = euBP-Daten (FIBU) [?EBF0*.*] 0x00008000 (32768) = euBP-Antworten [?EBR0*.*] 0x00010000 (65536) = BEA-Arbeitsbescheinigungen [?ALG0*.*] 0x00040000 (262144) = EEL-Rückmeldungen [?EEK*.*] 0x00080000 (524288) = AAG-Rückmeldungen [?AAK*.*] 0x00100000 (1048576) = VSNR-Abfragen [?DSV*.*] 0x00200000 (2097152) = euBP-Dokumente [?0BP*.*] 0x00400000 (4194304) = UV-Lohnnachweis [?UVL*.*] 0x00800000 (8388608) = Abfrage der UV-Stammdaten [?UVS*.*] 0x01000000 (16777216) = UV-Stammdaten [?UVU*.*] 0x02000000 (33554432) = Rückmeldung der angeforderten EBV-Werte [?ARV*.*] 0x04000000 (67108864) = Anforderung der EBV-Werte [?RVA*.*] 0x08000000 (134217728) = A1-Anträge [?A1A*.*] 0x10000000 (268435456) = Bewilligung/Ablehnung der A1-Anträge [?A1S*.*]
• pnAnst (OUT) 1 = alle AOK-Annahmestellen (Datenversand bis Build 93) 2 = 15451439, vdek 3 = 37912580, IKK 4 = 35382142, BKK 5 = 47056789, LKK 6 = 99086875, SeeKK 7 = 98000006, BKN (Allgemein) 8 = 17625773, DASBV 9 = 66667777, DSRV 10 = 77772222, ZSS 11 = 98094032, BKN (Knappschaft) 12 = 64672791, AOK Baden-Württemberg 13 = 87880235, AOK Bayern/Thüringen 14 = 05174740, AOK Sachsen 15 = 20158137, AOK Bremen/Bremerhaven 16 = 29720865, AOK Niedersachsen 17 = 47860681, AOK Hessen/Saarland 18 = 51605725, AOK Rheinland-Pfalz 19 = 01000251, AOK MV/Rheinland/HH/SH 20 = 34364249, AOK Rheinland/HH 21 = 01000262, AOK Berlin/BB/Sachsen-Anhalt 22 = 33526082, AOK Westfalen-Lippe 23 = 25942967, Mobil ISC 24 = 76665732, BA 25 = 95783331, DGUV 26 = 93121302, ITSG 27 = 93951443, AOK Sachsen-Anhalt 28 = 92111581, DAK-G 98 = 99300222, eVpT (neue Kernprüfung) 99 = 99300001, eVpT (normal)
• pnTestmerker (OUT) 0 = Echtdaten 1 = Testdaten
• plDatNumSend (OUT) Dateinummer, wenn vorhanden.
• plDatNumRecv (OUT) Dateinummer, wenn vorhanden.
v3.90.161 PERFIDIA Toolkit Reference
57© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• pnStatusCode (OUT) 0 = keine Fehler, nicht quittiert 1 = Datenfehler, nicht quittiert 2 = Übertragungsfehler, nicht quittiert 10 = keine Fehler, quittiert 11 = Datenfehler, quittiert 12 = Übertragungsfehler, quittiert
• szFilenameBuffer (OUT) Der Buffer sollte ein Größe von 65 Bytes haben. Enthält den Dateinamen der Antwort.
• nFilenameBufferSize (IN) Größe des Filename-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de58
perfidia_sv_recv_close
Schließt die Protokolldatei.
void perfidia_sv_recv_close ();
Rückgabewerte
keine
Parameter
keine
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
59© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_sv_status
Mit dieser Funktion kann der Status zu einem Datenversand ermittelt werden.
long perfidia_sv_status ( long lDataType, short nAnst, short nTestmerker, long lDatNumSend, short *pnStatusCode, long *plDatNumRecv, long *plErrorCount long *plInfoCount );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDataType (IN) 0x00000001 (1) = Beitragsnachweise [?BNA0*.*] 0x00000002 (2) = Zahlstellen-Beitragsnachweise [?BNZ0*.*] 0x00000004 (4) = Beitragserhebung [?BEA0*.*] 0x00000008 (8) = DEÜV-Meldungen [?DUA0*.*] 0x00000010 (16) = Entgeltersatzleistungen [?EEL0*.*] 0x00000020 (32) = ELENA-Daten (MVDS) [?ENA0*.*] 0x00000040 (64) = ELENA-Daten (DSVV) [?ENR0*.*] 0x00000080 (128) = Zahlstellenmeldeverfahren [?ZAV0*.*] 0x00000100 (256) = AAG-Erstattungsanträge [?AAG0*.*] 0x00000200 (512) = Entgeltbescheinigungen [?VBA0*.*] 0x00000800 (2048) = euBP-Daten (LOHN) [?EBE0*.*] 0x00004000 (16384) = euBP-Daten (FIBU) [?EBF0*.*] 0x00010000 (65536) = BEA-Arbeitsbescheinigungen [?ALG0*.*] 0x00100000 (1048576) = VSNR-Abfragen [?DSV*.*] 0x00400000 (4194304) = UV-Lohnnachweis [?UVL*.*] 0x00800000 (8388608) = Abfrage der UV-Stammdaten [?UVS*.*] 0x02000000 (33554432) = Rückmeldung der BV-Werte [?ARV*.*] 0x08000000 (134217728) = A1-Anträge [?A1A*.*]
• nAnst (IN) 1 = alle AOK-Annahmestellen (Datenversand bis Build 93) 2 = 15451439, vdek 3 = 37912580, IKK 4 = 35382142, BKK 5 = 47056789, LKK 6 = 99086875, SeeKK
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de60
7 = 98000006, BKN (Allgemein) 8 = 17625773, DASBV 9 = 66667777, DSRV 10 = 77772222, ZSS 11 = 98094032, BKN (Knappschaft) 12 = 64672791, AOK Baden-Württemberg 13 = 87880235, AOK Bayern/Thüringen 14 = 05174740, AOK Sachsen 15 = 20158137, AOK Bremen/Bremerhaven 16 = 29720865, AOK Niedersachsen 17 = 47860681, AOK Hessen/Saarland 18 = 51605725, AOK Rheinland-Pfalz 19 = 01000251, AOK MV/Rheinland/HH/SH 20 = 34364249, AOK Rheinland/HH 21 = 01000262, AOK Berlin/BB/Sachsen-Anhalt 22 = 33526082, AOK Westfalen-Lippe 23 = 25942967, Mobil ISC 24 = 76665732, BA 25 = 95783331, DGUV 26 = 93121302, ITSG 27 = 93951443, AOK Sachsen-Anhalt 28 = 92111581, DAK-G 98 = 99300222, eVpT (neue Kernprüfung) 99 = 99300001, eVpT (normal)
• nTestmerker (IN) 0 = Echtdaten 1 = Testdaten
• lDatNumSend (IN) Dateinummer von 1 bis 999999.
• pnStatusCode (OUT) 0 = noch keine Antwort vorhanden 1 = Antworten fehlen noch 2 = Übertragungsfehler 3 = Antworten vollständig, keine Fehler 4 = Antworten vollständig, einige Datensätze fehlerhaft 5 = Antworten vollständig, alle Datensätze fehlerhaft
• plDatNumRecv (OUT) Dateinummer der Antwort, wenn verfügbar. (0 bis 999999) Wenn für eine versendete Datei mehrere Antwortdateien, wie beispielsweise beim DSVV-Verfahren, zurückkommen, wird hier die Dateinummer der ersten Antwort gespeichert.
• plErrorCount (OUT) Anzahl der gefundenen Fehler, wenn StatusCode gleich 1, 2, 4 oder 5 ist.
• plInfoCount (OUT) Anzahl der gefundenen Hinweise.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Die Fehler können mit der Funktion perfidia_sv_error ausgelesen werden.
v3.90.161 PERFIDIA Toolkit Reference
61© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_sv_recv_status
Mit dieser Funktion kann der Status zu einer empfangenen Antwort ermittelt werden.
long perfidia_sv_recv_status ( long lDataType, short nAnst, short nTestmerker, long lDatNumSend, long lDatNumRecv, short *pnStatusCode, long *plErrorCount, long *plInfoCount, short *pnExtraServer );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDataType (IN) 0x00000001 (1) = Beitragsnachweise [?BNA0*.*] 0x00000002 (2) = Zahlstellen-Beitragsnachweise [?BNZ0*.*] 0x00000004 (4) = Beitragserhebung [?BEA0*.*] 0x00000008 (8) = DEÜV-Meldungen [?DUA0*.*] 0x00000010 (16) = Entgeltersatzleistungen [?EEL0*.*] 0x00000020 (32) = ELENA-Daten (MVDS) [?ENA0*.*] 0x00000040 (64) = ELENA-Daten (DSVV) [?ENR0*.*] 0x00000080 (128) = Zahlstellenmeldeverfahren [?ZAV0*.*] 0x00000100 (256) = AAG-Erstattungsanträge [?AAG0*.*] 0x00000400 (1024) = VSA-Rückmeldung [?VSA0*.*] 0x00000800 (2048) = euBP-Daten (LOHN) [?EBE0*.*] 0x00001000 (4096) = SAG-Daten [?SAG0*.*] 0x00002000 (8192) = ZAK-Daten [?ZAK0*.*] 0x00004000 (16384) = euBP-Daten (FIBU) [?EBF0*.*] 0x00008000 (32768) = euBP-Antworten [?EBR0*.*] 0x00010000 (65536) = BEA-Arbeitsbescheinigungen [?ALG0*.*] 0x00040000 (262144) = EEL-Rückmeldungen [?EEK*.*] 0x00080000 (524288) = AAG-Rückmeldungen [?AAK*.*] 0x00100000 (1048576) = VSNR-Abfragen [?DSV*.*] 0x00200000 (2097152) = euBP-Dokumente [?0BP*.*] 0x00400000 (4194304) = UV-Lohnnachweis [?UVL*.*] 0x00800000 (8388608) = Abfrage der UV-Stammdaten [?UVS*.*] 0x01000000 (16777216) = UV-Stammdaten [?UVU*.*] 0x02000000 (33554432) = Rückmeldung der angeforderten EBV-Werte [?ARV*.*]
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de62
0x04000000 (67108864) = Anforderung der EBV-Werte [?RVA*.*] 0x08000000 (134217728) = A1-Anträge [?A1A*.*] 0x10000000 (268435456) = Bewilligung/Ablehnung der A1-Anträge [?A1S*.*]
• nAnst (IN) 1 = alle AOK-Annahmestellen (Datenversand bis Build 93) 2 = 15451439, vdek 3 = 37912580, IKK 4 = 35382142, BKK 5 = 47056789, LKK 6 = 99086875, SeeKK 7 = 98000006, BKN (Allgemein) 8 = 17625773, DASBV 9 = 66667777, DSRV 10 = 77772222, ZSS 11 = 98094032, BKN (Knappschaft) 12 = 64672791, AOK Baden-Württemberg 13 = 87880235, AOK Bayern/Thüringen 14 = 05174740, AOK Sachsen 15 = 20158137, AOK Bremen/Bremerhaven 16 = 29720865, AOK Niedersachsen 17 = 47860681, AOK Hessen/Saarland 18 = 51605725, AOK Rheinland-Pfalz 19 = 01000251, AOK MV/Rheinland/HH/SH 20 = 34364249, AOK Rheinland/HH 21 = 01000262, AOK Berlin/BB/Sachsen-Anhalt 22 = 33526082, AOK Westfalen-Lippe 23 = 25942967, Mobil ISC 24 = 76665732, BA 25 = 95783331, DGUV 26 = 93121302, ITSG 27 = 93951443, AOK Sachsen-Anhalt 28 = 92111581, DAK-G 98 = 99300222, eVpT (neue Kernprüfung) 99 = 99300001, eVpT (normal)
• nTestmerker (IN) 0 = Echtdaten 1 = Testdaten
• lDatNumSend (IN) Dateinummer von 0 bis 999999.
• lDatNumRecv (IN) Dateinummer von 1 bis 999999.
• pnStatusCode (OUT) 0 = keine Fehler, nicht quittiert 1 = Daten- oder Bestandsfehler, nicht quittiert 2 = Übertragungsfehler, nicht quittiert 10 = keine Fehler, quittiert 11 = Daten- oder Bestandsfehler, quittiert 12 = Übertragungsfehler, quittiert
• plErrorCount (OUT) Anzahl der gefundenen Fehler, wenn StatusCode gleich 1, 2, 11 oder 12 ist.
• plInfoCount (OUT) Anzahl der gefundenen Hinweise.
v3.90.161 PERFIDIA Toolkit Reference
63© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• pnExtraServer (OUT) 0 = Email 1 = eXTra-Server
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de64
perfidia_sv_error
Mit dieser Funktion können die Fehler zu einem Datenversand ausgelesen werden.
long perfidia_sv_error ( long lDataType, short nAnst, short nTestmerker, long lDatNumSend, long lDatNumRecv, long lErrorNum, short *pnErrorType, long *plBetrNrVU, char *szOrdnungsmerkmalBuffer, short nOrdnungsmerkmalBufferSize, char *szDatensatzId, short nDatensatzIdSize, char *szErrorBuffer, short nErrorBufferSize, short *pnDataRecordLength );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDataType (IN) 0x00000001 (1) = Beitragsnachweise [?BNA0*.*] 0x00000002 (2) = Zahlstellen-Beitragsnachweise [?BNZ0*.*] 0x00000004 (4) = Beitragserhebung [?BEA0*.*] 0x00000008 (8) = DEÜV-Meldungen [?DUA0*.*] 0x00000010 (16) = Entgeltersatzleistungen [?EEL0*.*] 0x00000020 (32) = ELENA-Daten (MVDS) [?ENA0*.*] 0x00000040 (64) = ELENA-Daten (DSVV) [?ENR0*.*] 0x00000080 (128) = Zahlstellenmeldeverfahren [?ZAV0*.*] 0x00000100 (256) = AAG-Erstattungsanträge [?AAG0*.*] 0x00000400 (1024) = VSA-Rückmeldung [?VSA0*.*] 0x00000800 (2048) = euBP-Daten (LOHN) [?EBE0*.*] 0x00001000 (4096) = SAG-Daten [?SAG0*.*] 0x00002000 (8192) = ZAK-Daten [?ZAK0*.*] 0x00004000 (16384) = euBP-Daten (FIBU) [?EBF0*.*] 0x00008000 (32768) = euBP-Antworten [?EBR0*.*] 0x00010000 (65536) = BEA-Arbeitsbescheinigungen [?ALG0*.*] 0x00040000 (262144) = EEL-Rückmeldungen [?EEK*.*] 0x00080000 (524288) = AAG-Rückmeldungen [?AAK*.*] 0x00100000 (1048576) = VSNR-Abfragen [?DSV*.*]
v3.90.161 PERFIDIA Toolkit Reference
65© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
0x00200000 (2097152) = euBP-Dokumente [?0BP*.*] 0x00400000 (4194304) = UV-Lohnnachweis [?UVL*.*] 0x00800000 (8388608) = Abfrage der UV-Stammdaten [?UVS*.*] 0x01000000 (16777216) = UV-Stammdaten [?UVU*.*] 0x02000000 (33554432) = Rückmeldung der angeforderten EBV-Werte [?ARV*.*] 0x04000000 (67108864) = Anforderung der EBV-Werte [?RVA*.*] 0x08000000 (134217728) = A1-Anträge [?A1A*.*] 0x10000000 (268435456) = Bewilligung/Ablehnung der A1-Anträge [?A1S*.*]
• nAnst (IN) 1 = alle AOK-Annahmestellen (Datenversand bis Build 93) 2 = 15451439, vdek 3 = 37912580, IKK 4 = 35382142, BKK 5 = 47056789, LKK 6 = 99086875, SeeKK 7 = 98000006, BKN (Allgemein) 8 = 17625773, DASBV 9 = 66667777, DSRV 10 = 77772222, ZSS 11 = 98094032, BKN (Knappschaft) 12 = 64672791, AOK Baden-Württemberg 13 = 87880235, AOK Bayern/Thüringen 14 = 05174740, AOK Sachsen 15 = 20158137, AOK Bremen/Bremerhaven 16 = 29720865, AOK Niedersachsen 17 = 47860681, AOK Hessen/Saarland 18 = 51605725, AOK Rheinland-Pfalz 19 = 01000251, AOK MV/Rheinland/HH/SH 20 = 34364249, AOK Rheinland/HH 21 = 01000262, AOK Berlin/BB/Sachsen-Anhalt 22 = 33526082, AOK Westfalen-Lippe 23 = 25942967, Mobil ISC 24 = 76665732, BA 25 = 95783331, DGUV 26 = 93121302, ITSG 27 = 93951443, AOK Sachsen-Anhalt 28 = 92111581, DAK-G 98 = 99300222, eVpT (neue Kernprüfung) 99 = 99300001, eVpT (normal)
• nTestmerker (IN) 0 = Echtdaten 1 = Testdaten
• lDatNumSend (IN) Dateinummer von 0 bis 999999.
• lDatNumRecv (IN) Dateinummer von 0 bis 999999.
• lErrorNum (IN) 1 bis Anzahl der Fehler
• pnErrorType (OUT) 0 = Datenfehler 1 = Bestandsfehler 2 = Übertragungsfehler
• plBetrNrVU (OUT) Nur gültig, wenn es sich um einen Datenfehler handelt.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de66
• szOrdnungsmerkmalBuffer (OUT) Nur gültig, wenn es sich um einen Datenfehler handelt. Der Ordnungsmerkmal-Buffer sollte eine Größe von 21 Zeichen haben.
• nOrdnungsmerkmalBufferSize (IN) Größe des Ordnungsmerkmal-Buffers.
• szDatensatzId (OUT) Nur gültig, wenn es sich um einen Datenfehler handelt. Der DatensatzId-Buffer sollte eine Größe von 33 Zeichen haben.
• nDatensatzIdSize (IN) Größe des DatensatzId-Buffers.
• szErrorBuffer (OUT) Der Error-Buffer sollte eine Größe von 385 Zeichen haben.
• nErrorBufferSize (IN) Die Größe des Error-Buffers
• pnDataRecordLength (OUT) Nur gültig, wenn es sich um einen Datenfehler handelt. Länge des ausgewerteten Datensatzes inkl. der Fehlerbausteine.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Die Anzahl der Fehler läßt sich mit der Funktion perfidia_sv_status ermitteln.
v3.90.161 PERFIDIA Toolkit Reference
67© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_sv_info
Mit dieser Funktion können die Fehler zu einem Datenversand ausgelesen werden.
long perfidia_sv_info ( long lDataType, short nAnst, short nTestmerker, long lDatNumSend, long lDatNumRecv, long lInfoNum, long *plBetrNrVU, char *szOrdnungsmerkmalBuffer, short nOrdnungsmerkmalBufferSize, char *szDatensatzId, short nDatensatzIdSize, char *szInfoBuffer, short nInfoBufferSize, short *pnDataRecordLength );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDataType (IN) 0x00000001 (1) = Beitragsnachweise [?BNA0*.*] 0x00000002 (2) = Zahlstellen-Beitragsnachweise [?BNZ0*.*] 0x00000004 (4) = Beitragserhebung [?BEA0*.*] 0x00000008 (8) = DEÜV-Meldungen [?DUA0*.*] 0x00000010 (16) = Entgeltersatzleistungen [?EEL0*.*] 0x00000020 (32) = ELENA-Daten (MVDS) [?ENA0*.*] 0x00000040 (64) = ELENA-Daten (DSVV) [?ENR0*.*] 0x00000080 (128) = Zahlstellenmeldeverfahren [?ZAV0*.*] 0x00000100 (256) = AAG-Erstattungsanträge [?AAG0*.*] 0x00000400 (1024) = VSA-Meldung [?VSA0*.*] 0x00000800 (2048) = euBP-Daten (LOHN) [?EBE0*.*] 0x00001000 (4096) = SAG-Daten [?SAG0*.*] 0x00002000 (8192) = ZAK-Daten [?ZAK0*.*] 0x00004000 (16384) = euBP-Daten (FIBU) [?EBF0*.*] 0x00008000 (32768) = euBP-Antworten [?EBR0*.*] 0x00010000 (65536) = BEA-Arbeitsbescheinigungen [?ALG0*.*] 0x00040000 (262144) = EEL-Rückmeldungen [?EEK*.*] 0x00080000 (524288) = AAG-Rückmeldungen [?AAK*.*] 0x00100000 (1048576) = VSNR-Abfragen [?DSV*.*] 0x00200000 (2097152) = euBP-Dokumente [?0BP*.*]
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de68
0x00400000 (4194304) = UV-Lohnnachweis [?UVL*.*] 0x00800000 (8388608) = Abfrage der UV-Stammdaten [?UVS*.*] 0x01000000 (16777216) = UV-Stammdaten [?UVU*.*] 0x02000000 (33554432) = Rückmeldung der angeforderten EBV-Werte [?ARV*.*] 0x04000000 (67108864) = Anforderung der EBV-Werte [?RVA*.*] 0x08000000 (134217728) = A1-Anträge [?A1A*.*] 0x10000000 (268435456) = Bewilligung/Ablehnung der A1-Anträge [?A1S*.*]
• nAnst (IN) 1 = alle AOK-Annahmestellen (Datenversand bis Build 93) 2 = 15451439, vdek 3 = 37912580, IKK 4 = 35382142, BKK 5 = 47056789, LKK 6 = 99086875, SeeKK 7 = 98000006, BKN (Allgemein) 8 = 17625773, DASBV 9 = 66667777, DSRV 10 = 77772222, ZSS 11 = 98094032, BKN (Knappschaft) 12 = 64672791, AOK Baden-Württemberg 13 = 87880235, AOK Bayern/Thüringen 14 = 05174740, AOK Sachsen 15 = 20158137, AOK Bremen/Bremerhaven 16 = 29720865, AOK Niedersachsen 17 = 47860681, AOK Hessen/Saarland 18 = 51605725, AOK Rheinland-Pfalz 19 = 01000251, AOK MV/Rheinland/HH/SH 20 = 34364249, AOK Rheinland/HH 21 = 01000262, AOK Berlin/BB/Sachsen-Anhalt 22 = 33526082, AOK Westfalen-Lippe 23 = 25942967, Mobil ISC 24 = 76665732, BA 25 = 95783331, DGUV 26 = 93121302, ITSG 27 = 93951443, AOK Sachsen-Anhalt 28 = 92111581, DAK-G 98 = 99300222, eVpT (neue Kernprüfung) 99 = 99300001, eVpT (normal)
• nTestmerker (IN) 0 = Echtdaten 1 = Testdaten
• lDatNumSend (IN) Dateinummer von 0 bis 999999.
• lDatNumRecv (IN) Dateinummer von 0 bis 999999.
• lInfoNum (IN) 1 bis Anzahl der Fehler
• plBetrNrVU (OUT) Nur gültig, wenn es sich um einen Datenfehler handelt.
• szOrdnungsmerkmalBuffer (OUT) Nur gültig, wenn es sich um einen Datenfehler handelt. Der Ordnungsmerkmal-Buffer sollte eine Größe von 21 Zeichen haben.
• nOrdnungsmerkmalBufferSize (IN) Größe des Ordnungsmerkmal-Buffers.
v3.90.161 PERFIDIA Toolkit Reference
69© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• szDatensatzId (OUT) Nur gültig, wenn es sich um einen Datenfehler handelt. Der DatensatzId-Buffer sollte eine Größe von 33 Zeichen haben.
• nDatensatzIdSize (IN) Größe des DatensatzId-Buffers.
• szInfoBuffer (OUT) Der Error-Buffer sollte eine Größe von 385 Zeichen haben.
• nInfoBufferSize (IN) Die Größe des Error-Buffers
• pnDataRecordLength (OUT) Nur gültig, wenn es sich um einen Datenfehler handelt. Länge des ausgewerteten Datensatzes inkl. der Fehlerbausteine.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Die Anzahl der Fehler läßt sich mit der Funktion perfidia_sv_status ermitteln.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de70
perfidia_sv_error_record
Mit dieser Funktion kann der ausgewertete fehlerhafte Datensatz inkl. der Fehlerdatenbausteine gelesen wer-den. Hierzu muss sich allerdings die Antwortdatei unverändert in dem Unterordner ‚recv‘ befinden.
long perfidia_sv_error_record ( long lDataType, short nAnst, short nTestmerker, long lDatNumSend, long lDatNumRecv, long lErrorNum, char *szDataRecordBuffer, short nDataRecordBufferSize, );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDataType (IN) 0x00000001 (1) = Beitragsnachweise [?BNA0*.*] 0x00000002 (2) = Zahlstellen-Beitragsnachweise [?BNZ0*.*] 0x00000004 (4) = Beitragserhebung [?BEA0*.*] 0x00000008 (8) = DEÜV-Meldungen [?DUA0*.*] 0x00000010 (16) = Entgeltersatzleistungen [?EEL0*.*] 0x00000020 (32) = ELENA-Daten (MVDS) [?ENA0*.*] 0x00000040 (64) = ELENA-Daten (DSVV) [?ENR0*.*] 0x00000080 (128) = Zahlstellenmeldeverfahren [?ZAV0*.*] 0x00000100 (256) = AAG-Erstattungsanträge [?AAG0*.*] 0x00000400 (1024) = VSA-Meldung [?VSA0*.*] 0x00000800 (2048) = euBP-Daten (LOHN) [?EBE0*.*] 0x00001000 (4096) = SAG-Daten [?SAG0*.*] 0x00002000 (8192) = ZAK-Daten [?ZAK0*.*] 0x00004000 (16384) = euBP-Daten (FIBU) [?EBF0*.*] 0x00008000 (32768) = euBP-Antworten [?EBR0*.*] 0x00010000 (65536) = BEA-Arbeitsbescheinigungen [?ALG0*.*] 0x00040000 (262144) = EEL-Rückmeldungen [?EEK*.*] 0x00080000 (524288) = AAG-Rückmeldungen [?AAK*.*] 0x00100000 (1048576) = VSNR-Abfragen [?DSV*.*] 0x00200000 (2097152) = euBP-Dokumente [?0BP*.*] 0x00400000 (4194304) = UV-Lohnnachweis [?UVL*.*] 0x00800000 (8388608) = Abfrage der UV-Stammdaten [?UVS*.*] 0x01000000 (16777216) = UV-Stammdaten [?UVU*.*] 0x02000000 (33554432) = Rückmeldung der angeforderten EBV-Werte [?ARV*.*]
v3.90.161 PERFIDIA Toolkit Reference
71© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
0x04000000 (67108864) = Anforderung der EBV-Werte [?RVA*.*] 0x08000000 (134217728) = A1-Anträge [?A1A*.*] 0x10000000 (268435456) = Bewilligung/Ablehnung der A1-Anträge [?A1S*.*]
• nAnst (IN) 1 = alle AOK-Annahmestellen (Datenversand bis Build 93) 2 = 15451439, vdek 3 = 37912580, IKK 4 = 35382142, BKK 5 = 47056789, LKK 6 = 99086875, SeeKK 7 = 98000006, BKN (Allgemein) 8 = 17625773, DASBV 9 = 66667777, DSRV 10 = 77772222, ZSS 11 = 98094032, BKN (Knappschaft) 12 = 64672791, AOK Baden-Württemberg 13 = 87880235, AOK Bayern/Thüringen 14 = 05174740, AOK Sachsen 15 = 20158137, AOK Bremen/Bremerhaven 16 = 29720865, AOK Niedersachsen 17 = 47860681, AOK Hessen/Saarland 18 = 51605725, AOK Rheinland-Pfalz 19 = 01000251, AOK MV/Rheinland/HH/SH 20 = 34364249, AOK Rheinland/HH 21 = 01000262, AOK Berlin/BB/Sachsen-Anhalt 22 = 33526082, AOK Westfalen-Lippe 23 = 25942967, Mobil ISC 24 = 76665732, BA 25 = 95783331, DGUV 26 = 93121302, ITSG 27 = 93951443, AOK Sachsen-Anhalt 28 = 92111581, DAK-G 98 = 99300222, eVpT (neue Kernprüfung) 99 = 99300001, eVpT (normal)
• nTestmerker (IN) 0 = Echtdaten 1 = Testdaten
• lDatNumSend (IN) Dateinummer von 0 bis 999999.
• lDatNumRecv (IN) Dateinummer von 0 bis 999999.
• lErrorNum (IN) 1 bis Anzahl der Fehler
• szDataRecordBuffer (OUT) Der DataRecord-Buffer sollte min. 1 Zeichen größer als die Größe, die bei der Funktion perfidia_sv_er-ror zurückgeliefert worden ist, sein.
• nDataRecordBufferSize (IN) Größe des DataRecord-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de72
perfidia_sv_info_record
Mit dieser Funktion kann der ausgewertete Datensatz mit dem Hinweis gelesen werden. Hierzu muss sich allerdings die Antwortdatei unverändert in dem Unterordner ‚recv‘ befinden.
long perfidia_sv_info_record ( long lDataType, short nAnst, short nTestmerker, long lDatNumSend, long lDatNumRecv, long lInfoNum, char *szDataRecordBuffer, short nDataRecordBufferSize, );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
Parameter
• lDataType (IN) 0x00000001 (1) = Beitragsnachweise [?BNA0*.*] 0x00000002 (2) = Zahlstellen-Beitragsnachweise [?BNZ0*.*] 0x00000004 (4) = Beitragserhebung [?BEA0*.*] 0x00000008 (8) = DEÜV-Meldungen [?DUA0*.*] 0x00000010 (16) = Entgeltersatzleistungen [?EEL0*.*] 0x00000020 (32) = ELENA-Daten (MVDS) [?ENA0*.*] 0x00000040 (64) = ELENA-Daten (DSVV) [?ENR0*.*] 0x00000080 (128) = Zahlstellenmeldeverfahren [?ZAV0*.*] 0x00000100 (256) = AAG-Erstattungsanträge [?AAG0*.*] 0x00000400 (1024) = VSA-Meldung [?VSA0*.*] 0x00000800 (2048) = euBP-Daten (LOHN) [?EBE0*.*] 0x00001000 (4096) = SAG-Daten [?SAG0*.*] 0x00002000 (8192) = ZAK-Daten [?ZAK0*.*] 0x00004000 (16384) = euBP-Daten (FIBU) [?EBF0*.*] 0x00008000 (32768) = euBP-Antworten [?EBR0*.*] 0x00010000 (65536) = BEA-Arbeitsbescheinigungen [?ALG0*.*] 0x00040000 (262144) = EEL-Rückmeldungen [?EEK*.*] 0x00080000 (524288) = AAG-Rückmeldungen [?AAK*.*] 0x00100000 (1048576) = VSNR-Abfragen [?DSV*.*] 0x00200000 (2097152) = euBP-Dokumente [?0BP*.*] 0x00400000 (4194304) = UV-Lohnnachweis [?UVL*.*] 0x00800000 (8388608) = Abfrage der UV-Stammdaten [?UVS*.*] 0x01000000 (16777216) = UV-Stammdaten [?UVU*.*] 0x02000000 (33554432) = Rückmeldung der angeforderten EBV-Werte [?ARV*.*] 0x04000000 (67108864) = Anforderung der EBV-Werte [?RVA*.*] 0x08000000 (134217728) = A1-Anträge [?A1A*.*] 0x10000000 (268435456) = Bewilligung/Ablehnung der A1-Anträge [?A1S*.*]
v3.90.161 PERFIDIA Toolkit Reference
73© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• nAnst (IN) 1 = alle AOK-Annahmestellen (Datenversand bis Build 93) 2 = 15451439, vdek 3 = 37912580, IKK 4 = 35382142, BKK 5 = 47056789, LKK 6 = 99086875, SeeKK 7 = 98000006, BKN (Allgemein) 8 = 17625773, DASBV 9 = 66667777, DSRV 10 = 77772222, ZSS 11 = 98094032, BKN (Knappschaft) 12 = 64672791, AOK Baden-Württemberg 13 = 87880235, AOK Bayern/Thüringen 14 = 05174740, AOK Sachsen 15 = 20158137, AOK Bremen/Bremerhaven 16 = 29720865, AOK Niedersachsen 17 = 47860681, AOK Hessen/Saarland 18 = 51605725, AOK Rheinland-Pfalz 19 = 01000251, AOK MV/Rheinland/HH/SH 20 = 34364249, AOK Rheinland/HH 21 = 01000262, AOK Berlin/BB/Sachsen-Anhalt 22 = 33526082, AOK Westfalen-Lippe 23 = 25942967, Mobil ISC 24 = 76665732, BA 25 = 95783331, DGUV 26 = 93121302, ITSG 27 = 93951443, AOK Sachsen-Anhalt 28 = 92111581, DAK-G 98 = 99300222, eVpT (neue Kernprüfung) 99 = 99300001, eVpT (normal)
• nTestmerker (IN) 0 = Echtdaten 1 = Testdaten
• lDatNumSend (IN) Dateinummer von 0 bis 999999.
• lDatNumRecv (IN) Dateinummer von 0 bis 999999.
• lInfoNum (IN) 1 bis Anzahl der Fehler
• szDataRecordBuffer (OUT) Der DataRecord-Buffer sollte min. 1 Zeichen größer als die Größe, die bei der Funktion perfidia_sv_info zurückgeliefert worden ist, sein.
• nDataRecordBufferSize (IN) Größe des DataRecord-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de74
perfidia_sv_delete
Löscht alle Protokolleinträge zu einer bestimmten Dateinummer aus den PERFIDIA-Log-Dateien, so dass die Dateinummer erneut zum Versenden benutzt werden kann. Das erfolgreiche Löschen wird protokolliert. (siehe perfidia_sv_protocol_open)
long perfidia_sv_delete ( long lDataType, short nAnst, short nTestmerker, long lDatNumSend );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDataType (IN) 0x00000001 (1) = Beitragsnachweise [?BNA0*.*] 0x00000002 (2) = Zahlstellen-Beitragsnachweise [?BNZ0*.*] 0x00000004 (4) = Beitragserhebung [?BEA0*.*] 0x00000008 (8) = DEÜV-Meldungen [?DUA0*.*] 0x00000010 (16) = Entgeltersatzleistungen [?EEL0*.*] 0x00000020 (32) = ELENA-Daten (MVDS) [?ENA0*.*] 0x00000040 (64) = ELENA-Daten (DSVV) [?ENR0*.*] 0x00000080 (128) = Zahlstellenmeldeverfahren [?ZAV0*.*] 0x00000100 (256) = AAG-Erstattungsanträge [?AAG0*.*] 0x00000200 (512) = Entgeltbescheinigungen [?VBA0*.*] 0x00000400 (1024) = VSA-Rückmeldung [?VSA0*.*] 0x00000800 (2048) = euBP-Daten (LOHN) [?EBE0*.*] 0x00001000 (4096) = SAG-Daten [?SAG0*.*] 0x00002000 (8192) = ZAK-Daten [?ZAK0*.*] 0x00004000 (16384) = euBP-Daten (FIBU) [?EBF0*.*] 0x00008000 (32768) = euBP-Antworten [?EBR0*.*] 0x00010000 (65536) = BEA-Arbeitsbescheinigungen [?ALG0*.*] 0x00040000 (262144) = EEL-Rückmeldungen [?EEK*.*] 0x00080000 (524288) = AAG-Rückmeldungen [?AAK*.*] 0x00100000 (1048576) = VSNR-Abfragen [?DSV*.*] 0x00200000 (2097152) = euBP-Dokumente [?0BP*.*] 0x00400000 (4194304) = UV-Lohnnachweis [?UVL*.*] 0x00800000 (8388608) = Abfrage der UV-Stammdaten [?UVS*.*] 0x01000000 (16777216) = UV-Stammdaten [?UVU*.*] 0x02000000 (33554432) = Rückmeldung der angeforderten EBV-Werte [?ARV*.*] 0x04000000 (67108864) = Anforderung der EBV-Werte [?RVA*.*] 0x08000000 (134217728) = A1-Anträge [?A1A*.*] 0x10000000 (268435456) = Bewilligung/Ablehnung der A1-Anträge [?A1S*.*]
• nAnst (IN) 1 = alle AOK-Annahmestellen (Datenversand bis Build 93) 2 = 15451439, vdek
v3.90.161 PERFIDIA Toolkit Reference
75© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
3 = 37912580, IKK 4 = 35382142, BKK 5 = 47056789, LKK 6 = 99086875, SeeKK 7 = 98000006, BKN (Allgemein) 8 = 17625773, DASBV 9 = 66667777, DSRV 10 = 77772222, ZSS 11 = 98094032, BKN (Knappschaft) 12 = 64672791, AOK Baden-Württemberg 13 = 87880235, AOK Bayern/Thüringen 14 = 05174740, AOK Sachsen 15 = 20158137, AOK Bremen/Bremerhaven 16 = 29720865, AOK Niedersachsen 17 = 47860681, AOK Hessen/Saarland 18 = 51605725, AOK Rheinland-Pfalz 19 = 01000251, AOK MV/Rheinland/HH/SH 20 = 34364249, AOK Rheinland/HH 21 = 01000262, AOK Berlin/BB/Sachsen-Anhalt 22 = 33526082, AOK Westfalen-Lippe 23 = 25942967, Mobil ISC 24 = 76665732, BA 25 = 95783331, DGUV 26 = 93121302, ITSG 27 = 93951443, AOK Sachsen-Anhalt 28 = 92111581, DAK-G 98 = 99300222, eVpT (neue Kernprüfung) 99 = 99300001, eVpT (normal)
• nTestmerker (IN) 0 = Echtdaten 1 = Testdaten
• plDatNumSend (IN) Die Sende-Dateinummer.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkung
Da bereits übermittelte Datensätze nicht erneut übermittelt werden können, sollte diese Funktion nur benutzt werden, wenn bei der Datenübermittlung ein Übertragungsfehler aufgetreten ist. (siehe Parameter ‚pnStatus-Code‘ in der perfidia_sv_status)
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de76
perfidia_sv_delete_recv
Mit dieser Funktion können Antworten, die noch nicht quittiert wurden, gelöscht werden, damit in Sonderfällen ein erneutes Empfangen der Antwort möglich ist. Das erfolgreiche Löschen wird protokolliert. (siehe perfidia_sv_protocol_open)
long perfidia_sv_delete_recv ( long lDataType, short nAnst, short nTestmerker, long lDatNumSend, long lDatNumRecv, long lReserved );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDataType (IN) 0x00000001 (1) = Beitragsnachweise [?BNA0*.*] 0x00000002 (2) = Zahlstellen-Beitragsnachweise [?BNZ0*.*] 0x00000004 (4) = Beitragserhebung [?BEA0*.*] 0x00000008 (8) = DEÜV-Meldungen [?DUA0*.*] 0x00000010 (16) = Entgeltersatzleistungen [?EEL0*.*] 0x00000020 (32) = ELENA-Daten (MVDS) [?ENA0*.*] 0x00000040 (64) = ELENA-Daten (DSVV) [?ENR0*.*] 0x00000080 (128) = Zahlstellenmeldeverfahren [?ZAV0*.*] 0x00000100 (256) = AAG-Erstattungsanträge [?AAG0*.*] 0x00000200 (512) = Entgeltbescheinigungen [?VBA0*.*] 0x00000400 (1024) = VSA-Meldung [?VSA0*.*] 0x00000800 (2048) = euBP-Daten (LOHN) [?EBE0*.*] 0x00001000 (4096) = SAG-Daten [?SAG0*.*] 0x00002000 (8192) = ZAK-Daten [?ZAK0*.*] 0x00004000 (16384) = euBP-Daten (FIBU) [?EBF0*.*] 0x00008000 (32768) = euBP-Antworten [?EBR0*.*] 0x00010000 (65536) = BEA-Arbeitsbescheinigungen [?ALG0*.*] 0x00040000 (262144) = EEL-Rückmeldungen [?EEK*.*] 0x00080000 (524288) = AAG-Rückmeldungen [?AAK*.*] 0x00100000 (1048576) = VSNR-Abfragen [?DSV*.*] 0x00200000 (2097152) = euBP-Dokumente [?0BP*.*] 0x00400000 (4194304) = UV-Lohnnachweis [?UVL*.*] 0x00800000 (8388608) = Abfrage der UV-Stammdaten [?UVS*.*] 0x01000000 (16777216) = UV-Stammdaten [?UVU*.*] 0x02000000 (33554432) = Rückmeldung der angeforderten EBV-Werte [?ARV*.*] 0x04000000 (67108864) = Anforderung der EBV-Werte [?RVA*.*] 0x08000000 (134217728) = A1-Anträge [?A1A*.*] 0x10000000 (268435456) = Bewilligung/Ablehnung der A1-Anträge [?A1S*.*]
v3.90.161 PERFIDIA Toolkit Reference
77© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• nAnst (IN) 1 = alle AOK-Annahmestellen (Datenversand bis Build 93) 2 = 15451439, vdek 3 = 37912580, IKK 4 = 35382142, BKK 5 = 47056789, LKK 6 = 99086875, SeeKK 7 = 98000006, BKN (Allgemein) 8 = 17625773, DASBV 9 = 66667777, DSRV 10 = 77772222, ZSS 11 = 98094032, BKN (Knappschaft) 12 = 64672791, AOK Baden-Württemberg 13 = 87880235, AOK Bayern/Thüringen 14 = 05174740, AOK Sachsen 15 = 20158137, AOK Bremen/Bremerhaven 16 = 29720865, AOK Niedersachsen 17 = 47860681, AOK Hessen/Saarland 18 = 51605725, AOK Rheinland-Pfalz 19 = 01000251, AOK MV/Rheinland/HH/SH 20 = 34364249, AOK Rheinland/HH 21 = 01000262, AOK Berlin/BB/Sachsen-Anhalt 22 = 33526082, AOK Westfalen-Lippe 23 = 25942967, Mobil ISC 24 = 76665732, BA 25 = 95783331, DGUV 26 = 93121302, ITSG 27 = 93951443, AOK Sachsen-Anhalt 28 = 92111581, DAK-G 98 = 99300222, eVpT (neue Kernprüfung) 99 = 99300001, eVpT (normal)
• nTestmerker (IN) 0 = Echtdaten 1 = Testdaten
• lDatNumSend (IN) Die Sende-Dateinummer.
• lDatNumRecv (IN) Die Antwort-Dateinummer.
• lReserved (IN) Hier muss der Wert Null übergeben werden.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkung
Da bereits übermittelte Datensätze nicht erneut übermittelt werden können, sollte diese Funktion nur benutzt werden, wenn bei der Datenübermittlung ein Übertragungsfehler aufgetreten ist. (siehe Parameter ‚pnStatus-Code‘ in der perfidia_sv_status)
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de78
perfidia_sv_delete_all
Mit dieser Funktion werden unwideruflich sowohl alle Datenbankeinträge sowie die dazugehörigen Sende- und Antwortdateien löscht, die vor dem angebenen Zeitpunkt versendet bzw. empfangen wurden.
Wichtiger Hinweis: Abhängig von der Datenmenge kann diese Funktion einige Minuten bis einige Stunden dauern. Nach dem Start kann diese Funktion nicht mehr abgebrochen werden!
long perfidia_sv_delete_all ( long lDateDeleteTo, long lDataTypes, short nTestmerker, HWND hwndParent )
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_FILE_RENAMED (80809) Eine Datei konnte nicht umbenannt werden.
• PE_FILE_OPEN (80803) Fehler beim Öffnen der Datei.
• PE_FILE_NOFILE (80802) Die Datei existiert nicht.
• PE_FILE_SIZE (80810) Ungültige Dateilänge.
• PE_ISAM_IDX (80706) Fehler beim Erstellen der Index-Datei.
• PE_PARAMETER (80114) Der Wert für den Parameter ,szDateDeteleTo‘ oder ‚nTestmerker‘ ist nicht gültig.
Parameter
• lDateDeleteTo (IN) Datum, bis zu dem alle Daten gelöscht werden sollen (Format: JJJJMMTT). Das Löschdatum muss mindestens 2 Jahre vor dem aktuellen Tagesdatum liegen. Zum Beispiel: 20171231“
• lDataTypes (IN) 0x00000001 (1) = Beitragsnachweise [?BNA0*.*] 0x00000002 (2) = Zahlstellen-Beitragsnachweise [?BNZ0*.*] 0x00000004 (4) = Beitragserhebung [?BEA0*.*] 0x00000008 (8) = DEÜV-Meldungen [?DUA0*.*] 0x00000010 (16) = Entgeltersatzleistungen [?EEL0*.*] 0x00000020 (32) = ELENA-Daten (MVDS) [?ENA0*.*] 0x00000040 (64) = ELENA-Daten (DSVV) [?ENR0*.*] 0x00000080 (128) = Zahlstellenmeldeverfahren [?ZAV0*.*] 0x00000100 (256) = AAG-Erstattungsanträge [?AAG0*.*] 0x00000200 (512) = Entgeltbescheinigungen [?VBA0*.*] 0x00000400 (1024) = VSA-Meldung [?VSA0*.*] 0x00000800 (2048) = euBP-Daten (LOHN) [?EBE0*.*] 0x00001000 (4096) = SAG-Daten [?SAG0*.*]
v3.90.161 PERFIDIA Toolkit Reference
79© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
0x00002000 (8192) = ZAK-Daten [?ZAK0*.*] 0x00004000 (16384) = euBP-Daten (FIBU) [?EBF0*.*] 0x00008000 (32768) = euBP-Antworten [?EBR0*.*] 0x00010000 (65536) = BEA-Arbeitsbescheinigungen [?ALG0*.*] 0x00040000 (262144) = EEL-Rückmeldungen [?EEK*.*] 0x00080000 (524288) = AAG-Rückmeldungen [?AAK*.*] 0x00100000 (1048576) = VSNR-Abfragen [?DSV*.*] 0x00200000 (2097152) = euBP-Dokumente [?0BP*.*] 0x00400000 (4194304) = UV-Lohnnachweis [?UVL*.*] 0x00800000 (8388608) = Abfrage der UV-Stammdaten [?UVS*.*] 0x01000000 (16777216) = UV-Stammdaten [?UVU*.*] 0x02000000 (33554432) = Rückmeldung der angeforderten EBV-Werte [?ARV*.*] 0x04000000 (67108864) = Anforderung der EBV-Werte [?RVA*.*] 0x08000000 (134217728) = A1-Anträge [?A1A*.*] 0x10000000 (268435456) = Bewilligung/Ablehnung der A1-Anträge [?A1S*.*]
• nTestmerker (IN) 0 = Echtdaten 1 = Testdaten 2 = Echt- und Testdaten
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkung
Diese Funktion erzeugt einen Progress.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de80
perfidia_sv_highest_datnum
Liefert die höchste Sende- bzw. Antwort-Dateinummer.
long perfidia_sv_highest_datnum ( short nType, long lDataType, short nAnst, short nTestmerker, long *plDatNum );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• nType 0 = höchste versendete Dateinummer 1 = höchste empfangene Dateinummer 2 = höchste empfangene Dateinummer, die quittiert wurde.
• lDataType (IN) 0x00000001 (1) = Beitragsnachweise [?BNA0*.*] 0x00000002 (2) = Zahlstellen-Beitragsnachweise [?BNZ0*.*] 0x00000004 (4) = Beitragserhebung [?BEA0*.*] 0x00000008 (8) = DEÜV-Meldungen [?DUA0*.*] 0x00000010 (16) = Entgeltersatzleistungen [?EEL0*.*] 0x00000020 (32) = ELENA-Daten (MVDS) [?ENA0*.*] 0x00000040 (64) = ELENA-Daten (DSVV) [?ENR0*.*] 0x00000080 (128) = Zahlstellenmeldeverfahren [?ZAV0*.*] 0x00000100 (256) = AAG-Erstattungsanträge [?AAG0*.*] 0x00000200 (512) = Entgeltbescheinigungen [?VBA0*.*] 0x00000400 (1024) = VSA-Meldung [?VSA0*.*] 0x00000800 (2048) = euBP-Daten (LOHN) [?EBE0*.*] 0x00001000 (4096) = SAG-Daten [?SAG0*.*] 0x00002000 (8192) = ZAK-Daten [?ZAK0*.*] 0x00004000 (16384) = euBP-Daten (FIBU) [?EBF0*.*] 0x00008000 (32768) = euBP-Antworten [?EBR0*.*] 0x00010000 (65536) = BEA-Arbeitsbescheinigungen [?ALG0*.*] 0x00040000 (262144) = EEL-Rückmeldungen [?EEK*.*] 0x00080000 (524288) = AAG-Rückmeldungen [?AAK*.*] 0x00100000 (1048576) = VSNR-Abfragen [?DSV*.*] 0x00200000 (2097152) = euBP-Dokumente [?0BP*.*] 0x00400000 (4194304) = UV-Lohnnachweis [?UVL*.*] 0x00800000 (8388608) = Abfrage der UV-Stammdaten [?UVS*.*] 0x01000000 (16777216) = UV-Stammdaten [?UVU*.*] 0x02000000 (33554432) = Rückmeldung der angeforderten EBV-Werte [?ARV*.*] 0x04000000 (67108864) = Anforderung der EBV-Werte [?RVA*.*] 0x08000000 (134217728) = A1-Anträge [?A1A*.*] 0x10000000 (268435456) = Bewilligung/Ablehnung der A1-Anträge [?A1S*.*]
v3.90.161 PERFIDIA Toolkit Reference
81© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• nAnst (IN) 1 = alle AOK-Annahmestellen (Datenversand bis Build 93) 2 = 15451439, vdek 3 = 37912580, IKK 4 = 35382142, BKK 5 = 47056789, LKK 6 = 99086875, SeeKK 7 = 98000006, BKN (Allgemein) 8 = 17625773, DASBV 9 = 66667777, DSRV 10 = 77772222, ZSS 11 = 98094032, BKN (Knappschaft) 12 = 64672791, AOK Baden-Württemberg 13 = 87880235, AOK Bayern/Thüringen 14 = 05174740, AOK Sachsen 15 = 20158137, AOK Bremen/Bremerhaven 16 = 29720865, AOK Niedersachsen 17 = 47860681, AOK Hessen/Saarland 18 = 51605725, AOK Rheinland-Pfalz 19 = 01000251, AOK MV/Rheinland/HH/SH 20 = 34364249, AOK Rheinland/HH 21 = 01000262, AOK Berlin/BB/Sachsen-Anhalt 22 = 33526082, AOK Westfalen-Lippe 23 = 25942967, Mobil ISC 24 = 76665732, BA 25 = 95783331, DGUV 26 = 93121302, ITSG 27 = 93951443, AOK Sachsen-Anhalt 28 = 92111581, DAK-G 98 = 99300222, eVpT (neue Kernprüfung) 99 = 99300001, eVpT (normal)
• nTestmerker (IN) 0 = Echtdaten 1 = Testdaten
• plDatNum (OUT) Die Sende- bzw. Antwort-Dateinummer.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de82
perfidia_sv_transfer_ticket
Mit dieser Funktion kann das TransferTicket zu einem Datenversand ermittelt werden.
long perfidia_sv_transfer_ticket ( long lDataType, short nAnst, short nTestmerker, long lDatNumSend, char *szTransferTicketBuffer, short nTransferTicketBufferSize, char *szSendDateBuffer, short nSendDateBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDataType (IN) 0x00000001 (1) = Beitragsnachweise [?BNA0*.*] 0x00000002 (2) = Zahlstellen-Beitragsnachweise [?BNZ0*.*] 0x00000004 (4) = Beitragserhebung [?BEA0*.*] 0x00000008 (8) = DEÜV-Meldungen [?DUA0*.*] 0x00000010 (16) = Entgeltersatzleistungen [?EEL0*.*] 0x00000020 (32) = ELENA-Daten (MVDS) [?ENA0*.*] 0x00000040 (64) = ELENA-Daten (DSVV) [?ENR0*.*] 0x00000080 (128) = Zahlstellenmeldeverfahren [?ZAV0*.*] 0x00000100 (256) = AAG-Erstattungsanträge [?AAG0*.*] 0x00000200 (512) = Entgeltbescheinigungen [?VBA0*.*] 0x00000800 (2048) = euBP-Daten (LOHN) [?EBE0*.*] 0x00004000 (16384) = euBP-Daten (FIBU) [?EBF0*.*] 0x00010000 (65536) = BEA-Arbeitsbescheinigungen [?ALG0*.*] 0x00100000 (1048576) = VSNR-Abfragen [?DSV*.*] 0x00400000 (4194304) = UV-Lohnnachweis [?UVL*.*] 0x00800000 (8388608) = Abfrage der UV-Stammdaten [?UVS*.*] 0x02000000 (33554432) = Rückmeldung der BV-Werte [?ARV*.*] 0x08000000 (134217728) = A1-Anträge [?A1A*.*]
• nAnst (IN) 1 = alle AOK-Annahmestellen (Datenversand bis Build 93) 2 = 15451439, vdek 3 = 37912580, IKK 4 = 35382142, BKK 5 = 47056789, LKK 6 = 99086875, SeeKK 7 = 98000006, BKN (Allgemein)
v3.90.161 PERFIDIA Toolkit Reference
83© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
8 = 17625773, DASBV 9 = 66667777, DSRV 10 = 77772222, ZSS 11 = 98094032, BKN (Knappschaft) 12 = 64672791, AOK Baden-Württemberg 13 = 87880235, AOK Bayern/Thüringen 14 = 05174740, AOK Sachsen 15 = 20158137, AOK Bremen/Bremerhaven 16 = 29720865, AOK Niedersachsen 17 = 47860681, AOK Hessen/Saarland 18 = 51605725, AOK Rheinland-Pfalz 19 = 01000251, AOK MV/Rheinland/HH/SH 20 = 34364249, AOK Rheinland/HH 21 = 01000262, AOK Berlin/BB/Sachsen-Anhalt 22 = 33526082, AOK Westfalen-Lippe 23 = 25942967, Mobil ISC 24 = 76665732, BA 25 = 95783331, DGUV 26 = 93121302, ITSG 27 = 93951443, AOK Sachsen-Anhalt 28 = 92111581, DAK-G 98 = 99300222, eVpT (neue Kernprüfung) 99 = 99300001, eVpT (normal)
• nTestmerker (IN) 0 = nur Echtdaten 1 = nur Testdaten
• lDatNumSend (IN) Dateinummer von 1 bis 999999.
• szTransferTicketBuffer (OUT) Der TransferTicket-Buffer sollte eine Größe von 65 Zeichen haben.
• nTransferTicketBufferSize (IN) Größe des TransferTicket-Buffers.
• szSendDateBuffer (OUT) Der SendDate-Buffer sollte eine Größe von 15 Zeichen haben.
• nSendDateBufferSize (IN) Größe des SendDate-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de84
perfidia_sv_dat_to_xml
Mit dieser Funktion können Sie A1-Anträge und rvBEA-Dateien vom ASCII-Format ins XML-Format konver-tieren. Diese Funktion sollte nur zu Testzwecken verwendet werden, da im normalen Betrieb PERFIDIA die Konvertierung automatisch durchführt.
long perfidia_sv_dat_to_xml ( const char *szDatFile, const char *szXmlFile, short nOverwrite );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_FILE_CREATE (80801) Fehler beim Erstellen der Datei.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_WRITE (80806) Schreibfehler in Datei.
• PE_FILE_EXISTS (80808) Die Datei existiert bereits.
Parameter
• szDatFile (IN) Name, der ASCII-Datei (TARV0*.*, EARV0*.*, TA1A0*.* und EA1A0*.*). Die Datei muss nicht in der Send-Queue stehen!
• szXmlFile (IN) Name, der XML-Datei.
• nOverwrite (IN) 0 = vorhandene Datei nie überschreiben 1 = vorhandene Datei immer überschreiben
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
85© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_sv_xml_to_dat
Mit dieser Funktion können Sie Antworten im A1- und rvBEA-Verfahren vom XML-Format ins ASCII-Format konvertieren. Diese Funktion sollte nur zu Testzwecken verwendet werden, da im normalen Betrieb PERFIDIA die Konvertierung automatisch durchführt.
long perfidia_sv_xml_to_dat ( const char *szXmlFile, const char *szDatFile, short nOverwrite );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_FILE_CREATE (80801) Fehler beim Erstellen der Datei.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_WRITE (80806) Schreibfehler in Datei.
• PE_FILE_EXISTS (80808) Die Datei existiert bereits.
Parameter
• szXmlFile (IN) Name, der XML-Datei (TARV0*.*, EARV0*.*, TRVA0*.*, ERVA0*.*, TA1A0*.*, EA1A0*.*, TA1S0*.* und EA1S0*.*). Die Datei muss nicht in der Send-Queue stehen!
• szDatFile (IN) Name, der ASCII-Datei.
• nOverwrite (IN) 0 = vorhandene Datei nie überschreiben 1 = vorhandene Datei immer überschreiben
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de86
perfidia_svmail_mailaddr_get
Hiermit lassen sich die in PERFIDIA festhinterlegten Email-Adressen der 7 Annahmestellen abfragen.
long perfidia_svmail_mailaddr_get ( short nAnnahmestelle, char *szEmailBuffer, short nEmailBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_WRONG_ANST (80109) Ungültige Annahmestellen-Nummer.
• PE_BUFSIZE (80110) Länge des Email-Buffers ist zu klein.
Parameter
• nAnnahmestelle (IN) 1 = alle AOK-Annahmestellen 2 = VdAK/AEV 3 = IKK BV 4 = BKK BV 5 = BV LKK 6 = See-KK 7 = BKN 8 = DASBV 9 = RV Bund
• szEmailBuffer (OUT) Der Email-Buffer sollte eine Größe von 51 Zeichen haben.
• nEmailBufferSize (IN) Größe des Email-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Die Email-Adressen können mit der Funktion perfidia_svmail_mailaddr_set temporär geändert werden.
v3.90.161 PERFIDIA Toolkit Reference
87© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_svmail_mailaddr_set
Hiermit lassen sich die in PERFIDIA festhinterlegten Email-Adressen der 7 Annahmestellen temporär ändern.
long perfidia_svmail_mailaddr_set ( short nAnnahmestelle, const char *szEmail );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_WRONG_ANST (80109) Ungültige Annahmestellen-Nummer.
• PE_TEXTSIZE (80111) Email-Adresse zu lang oder zu kurz.
Parameter
• nAnnahmestelle (IN) 1 = alle AOK-Annahmestellen 2 = VdAK/AEV 3 = IKK BV 4 = BKK BV 5 = BV LKK 6 = See-KK 7 = BKN 8 = DASBV 9 = RV Bund
• szEmail (IN) Neue Email-Adresse der Annahmestelle.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de88
perfidia_svmail_print
Druckt DEÜV-Meldungen und Beitragsnachweise.
long perfidia_svmail_print ( const char *szDatFile, short nCharset, short nRecordNumFrom, short nRecordNumTo, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_PRINT_NO_PRINTER (81001) Keinen Drucker gefunden.
• PE_PRINT_WINSPOOL (81002) Fehler beim Speichern des Druckauftrags in der Druckerwarteschlage.
• PE_PRINT_PAGE (81003) Fehler beim Erstellen des Druckauftrags.
• PE_PRINT_USER_ABORT (81004) Druck durch Benutzer abgebrochen.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann nicht gefunden werden.
Parameter
• szDatFile (IN) Name der Datendatei.
• nCharset (IN) Zeichensatz, in dem die Datendatei gespeichert ist: 0 = ISO-8859-15 1 = ISO-8859-1 2 = CP1252 (WIN ANSI) 3 = CP437 (MS-DOS US) 4 = CP850 (MS-DOS Latin 1)
• nRecordNumFrom (IN) Datensatznummer (00001-32000), bei der der Druck beginnen soll.
• nRecordNumFrom (IN) Datensatznummer (00001-32000), bei der der Druck enden soll.
v3.90.161 PERFIDIA Toolkit Reference
89© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• hwndParent (IN) Dieser Window-Handle muss gültig sein.
Betriebssysteme
Microsoft Windows
Anmerkungen
Bitte beachten Sie, dass nur die Daten im Ausdruck erscheinen können, die auch in den Datensätzen vorhan-den sind.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de90
perfidia_svmail_pdf
Druckt DEÜV-Meldungen und Beitragsnachweise in eine PDF-Datei.
long perfidia_svmail_pdf ( const char *szPdfFile, short nOverwrite, const char *szDatFile, short nCharset, short nRecordNumFrom, short nRecordNumTo, );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann nicht gefunden werden.
• PE_FILE_EXISTS (80808) Die PDF-Datei existiert bereits.
• PE_FILE_CREATE (80801) Fehler beim Erstellen der PDF-Datei.
• PE_FILE_WRITE (80806) Fehler beim Schreiben der PDF-Datei.
Parameter
• szPdfFile (IN) Dateiname der PDF-Datei.
• nOverwrite (IN) 0 = vorhandene PDF-Datei nie überschreiben 1 = vorhandene PDF-Datei immer überschreiben
• szDatFile (IN) Name der Datendatei.
• nCharset (IN) Zeichensatz, in dem die Datendatei gespeichert ist: 0 = ISO-8859-15 1 = ISO-8859-1 2 = CP1252 (WIN ANSI) 3 = CP437 (MS-DOS US) 4 = CP850 (MS-DOS Latin 1)
• nRecordNumFrom (IN) Datensatznummer (00001-32000), bei der der Druck beginnen soll.
v3.90.161 PERFIDIA Toolkit Reference
91© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• nRecordNumFrom (IN) Datensatznummer (00001-32000), bei der der Druck enden soll.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Bitte beachten Sie, dass nur die Daten im Ausdruck erscheinen können, die auch in den Datensätzen vorhan-den sind.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de92
perfidia_svmail_print_hdc_prepare
Mit den Funktionen perfidia_svmail_print_hdc_* können DEÜV-Meldungen und Beitragsnachweise auf einem Device-Kontext (DC-Object) gezeichnet werden. Dies kann zum einen zur Vorschau aber auch zum individuel-len Druck genutzt werden.
Die Funktion perfidia_svmail_print_hdc_prepare bereitet die Ausgabe vor, mit der Funktion perfidia_svmail_print_hdc_draw werden die einzelnen Seiten gezeichnet und die Funktion perfidia_svmail_print_hdc_cleanup gibt die verwendeten Resourcen wieder frei.
long perfidia_svmail_print_hdc_prepare ( const char *szDatFile, short nCharset, short nRecordNumFrom, short nRecordNumTo, short *pnPageCount );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NULL_POINTER (80136) Ungültiger NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_FILE_NOFILE (80802) Datendatei nicht gefunden.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
Parameter
• szDatFile (IN) Name der Datendatei.
• nCharset (IN) Zeichensatz, in dem die Datendatei gespeichert ist: 0 = ISO-8859-15 1 = ISO-8859-1 2 = CP1252 (WIN ANSI) 3 = CP437 (MS-DOS US) 4 = CP850 (MS-DOS Latin 1)
• nRecordNumFrom (IN) Datensatznummer (00001-32000), bei der die Ausgabe beginnen soll.
• nRecordNumTo (IN) Datensatznummer (00001-32000), bei der die Ausgabe enden soll.
v3.90.161 PERFIDIA Toolkit Reference
93© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• pnPageCount (OUT) Gibt die Anzahl der Seiten zurück.
Betriebssysteme
Microsoft Windows
Anmerkungen
Bitte beachten Sie, dass nur die Daten im Ausdruck erscheinen können, die auch in den Datensätzen vorhan-den sind.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de94
perfidia_svmail_print_hdc_cleanup
Gibt die verwendeten Resourcen wieder frei. Nähere Information unter der Funktion perfidia_svmail_print_hdc_prepare.
void perfidia_svmail_print_hdc_cleanup ();
Rückgabewerte
keine
Parameter
keine
Betriebssysteme
Microsoft Windows
v3.90.161 PERFIDIA Toolkit Reference
95© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_svmail_print_hdc_draw
Mit den Funktionen perfidia_svmail_print_hdc_* können DEÜV-Meldungen und Beitragsnachweise auf einem Device-Kontext (DC-Object) gezeichnet werden. Dies kann zum einen zur Vorschau aber auch zum individuel-len Druck genutzt werden.
Die Funktion perfidia_svmail_print_hdc_prepare bereitet die Ausgabe vor, mit der Funktion perfidia_svmail_print_hdc_draw werden die einzelnen Seiten gezeichnet und die Funktion perfidia_svmail_print_hdc_cleanup gibt die verwendeten Resourcen wieder frei.
long perfidia_svmail_print_hdc_draw ( HDC hDC, short nPage, long lLeftMargin, long lTopMargin, double dScaleFactor );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Ungültiger NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• hDC (IN) Handle auf einen Device-Kontext (DC-Object).
• nPage (IN) Seite (1 bis nPageCount), die gezeichnet werden soll.
• lLeftMargin (IN) Linker Rand in der Einheit HIMETRICS.
• lTopMargin (IN) Oberer Rand in der Einheit HIMETRICS.
• dScaleFactor (IN) Skalierungsfaktor (Standard: 1.0).
Betriebssysteme
Microsoft Windows
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de96
perfidia_itsg_cert_info_v2
Hiermit können Sie Informationen über das gültige ITSG-Zertifikat ermitteln.
long perfidia_itsg_cert_info_v2 ( short *pnDaysLeft, short *pnWaiting, char *szFirmBuffer, short nFirmBufferSize, char *szAnspBuffer, short nAnspBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keinen Schlüssel gefunden.
• PE_PEMKEY (80113) Schlüsselinformationen können nicht gelesen werden.
• PE_BUFSIZE (80110) Länge des Buffers ist zu klein.
Parameter
• pnDaysLeft (OUT) Gültigkeitsdauer in Tagen.
• pnWaiting (OUT) 0 = Kein Schlüssel wartet auf eine Zertifizierungsantwort der ITSG. 1 = Schlüssel wartet auf eine Zertifizierungsantwort der ITSG.
• szFirmBuffer (OUT) Firmenname aus dem Zertifikat. Dieser Buffer sollte eine Länge von 65 Zeichen haben.
• nFirmBufferSize (IN) Länge des Firm-Buffers.
• szAnspBuffer (OUT) Ansprechpartner aus dem Zertifikat. Dieser Buffer sollte eine Länge von 65 Zeichen haben.
• nAnspBufferSize (IN) Länge des Ansp-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
97© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_itsg_cert_info_v3
Hiermit können Sie Informationen über die ITSG-Zertifikate ermitteln.
long perfidia_itsg_cert_info_v3 ( short nKeyNum, short *pnKeyLength, short *pnDaysLeft, short *pnWaiting, char *szFirmBuffer, short nFirmBufferSize, char *szAnspBuffer, short nAnspBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keinen Schlüssel gefunden.
• PE_PEMKEY (80113) Schlüsselinformationen können nicht gelesen werden.
• PE_BUFSIZE (80110) Länge des Buffers ist zu klein.
Parameter
• nKeyNum (IN) Nur die Werte 1 und 2 sind möglich.
• pnKeyLength (OUT) Länge des Schlüssels in Bits.
• pnDaysLeft (OUT) Gültigkeitsdauer in Tagen.
• pnWaiting (OUT) 0 = Dieser Schlüssel wartet nicht auf eine Zertifizierungsantwort der ITSG. 1 = Dieser Schlüssel wartet auf eine Zertifizierungsantwort der ITSG.
• szFirmBuffer (OUT) Firmenname aus dem Zertifikat. Dieser Buffer sollte eine Länge von 65 Zeichen haben.
• nFirmBufferSize (IN) Länge des Firm-Buffers.
• szAnspBuffer (OUT) Ansprechpartner aus dem Zertifikat. Dieser Buffer sollte eine Länge von 65 Zeichen haben.
• nAnspBufferSize (IN) Länge des Ansp-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de98
perfidia_itsg_cert_info_v4
Hiermit können Sie Informationen über die ITSG-Zertifikate ermitteln.
long perfidia_itsg_cert_info_v4 ( short nKeyNum, short *pnKeyLength, short *pnDaysLeft, short *pnWaiting, short *pnFlags, long *plAuftragsnummer, char *szFirmBuffer, short nFirmBufferSize, char *szAnspBuffer, short nAnspBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keinen Schlüssel gefunden.
• PE_PEMKEY (80113) Schlüsselinformationen können nicht gelesen werden.
• PE_BUFSIZE (80110) Länge des Buffers ist zu klein.
Parameter
• nKeyNum (IN) Nur die Werte 1 und 2 sind möglich.
• pnKeyLength (OUT) Länge des Schlüssels in Bits.
• pnDaysLeft (OUT) Gültigkeitsdauer in Tagen.
• pnWaiting (OUT) 0 = Dieser Schlüssel wartet nicht auf eine Zertifizierungsantwort der ITSG. 1 = Dieser Schlüssel wartet auf eine Zertifizierungsantwort der ITSG.
• pnFlags (OUT) 0x01 = Wenn das erste Bit gesetzt ist, handelt es sich um einen Folgeantrag, ansonsten ist es ein Erst-antrag.
• plAuftragsnummer (OUT) Auftragsnummer, die bei der Verwendung der Online-Schnittstelle vom ITSG TrustCenter zurück gege-ben wurde.
• szFirmBuffer (OUT) Firmenname aus dem Zertifikat. Dieser Buffer sollte eine Länge von 65 Zeichen haben.
• nFirmBufferSize (IN) Länge des Firm-Buffers.
v3.90.161 PERFIDIA Toolkit Reference
99© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• szAnspBuffer (OUT) Ansprechpartner aus dem Zertifikat. Dieser Buffer sollte eine Länge von 65 Zeichen haben.
• nAnspBufferSize (IN) Länge des Ansp-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de100
perfidia_itsg_cert_info_v5
Hiermit können Sie Informationen über die ITSG-Zertifikate ermitteln.
long perfidia_itsg_cert_info_v5 ( short nKeyNum, short *pnKeyLength, short *pnDaysLeft, short *pnWaiting, short *pnFlags, long *plAuftragsnummer, char *szFirmBuffer, short nFirmBufferSize, char *szAnspBuffer, short nAnspBufferSize, long *plSerialNumber, char *szNotBeforeBuffer, short nNotBeforeBufferSize, char *szNotAfterBuffer, short nNotAfterBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keinen Schlüssel gefunden.
• PE_PEMKEY (80113) Schlüsselinformationen können nicht gelesen werden.
• PE_BUFSIZE (80110) Länge des Buffers ist zu klein.
Parameter
• nKeyNum (IN) Nur die Werte 1 und 2 sind möglich.
• pnKeyLength (OUT) Länge des Schlüssels in Bits.
• pnDaysLeft (OUT) Gültigkeitsdauer in Tagen.
• pnWaiting (OUT) 0 = Dieser Schlüssel wartet nicht auf eine Zertifizierungsantwort der ITSG. 1 = Dieser Schlüssel wartet auf eine Zertifizierungsantwort der ITSG.
• pnFlags (OUT) 0x01 = Wenn das erste Bit gesetzt ist, handelt es sich um einen Folgeantrag, ansonsten ist es ein Erst-antrag.
• plAuftragsnummer (OUT) Auftragsnummer, die bei der Verwendung der Online-Schnittstelle vom ITSG TrustCenter zurück gege-ben wurde.
v3.90.161 PERFIDIA Toolkit Reference
101© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• szFirmBuffer (OUT) Firmenname aus dem Zertifikat. Dieser Buffer sollte eine Länge von 65 Zeichen haben.
• nFirmBufferSize (IN) Länge des Firm-Buffers.
• szAnspBuffer (OUT) Ansprechpartner aus dem Zertifikat. Dieser Buffer sollte eine Länge von 65 Zeichen haben.
• nAnspBufferSize (IN) Länge des Ansp-Buffers.
• plSerialNumber (OUT) Seriennummer des Zertifikats.
• szNotBeforeBuffer (OUT) Der NotBefore-Buffer gibt an, ab wann das Zertifikat gültig ist, und sollte eine Größe von 15 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMDDhhmmss.
• nNotBeforeBufferSize (IN) Größe des NotBefore-Buffers.
• szNotAfterBuffer (OUT) Der NotAfter-Buffer gibt an, bis wann das Zertifikat gültig ist, und sollte eine Größe von 15 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMDDhhmmss.
• nNotAfterBufferSize (IN) Größe des NotAfter-Buffers .
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de102
perfidia_itsg_cert_create
Generiert eine Zertifikatsanfrage für das ITSG-Verfahren und verschickt diese per Email über den SMTP-Client. Aus technischen Gründen darf der Firmenname und Ansprechpartner keine Umlaute (ä, ü, etc.) oder Sonderzeichen (ß, +, &, Semikolon, Unterstrich, Komma, \\, Anführungszeichen, §, etc.) enthalten. Nur die folgenden Sonderzeichen können maschinell verarbeitet werden: Leerzeichen, /, Minus, Punkt, und (). In der Testumgebung (Betriebsnummer gleich 12345678) wird ein fertiges Zertifikat erstellt, so dass keine Zertifikats-anfrage per Email verschickt wird.
long perfidia_itsg_cert_create ( const char *szFirm, const char *szContact, long lBetrnr, short nRechenzentrum, const char *szSVPassword, short nOverwrite, const char *szSenderEmail, const char *szEmailServer, short nSmtpPort, const char *szEmailUser, const char *szEmailPassword );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PASSWORD (80106) Ungültiges Passwort.
• PE_BETRNR_NOT_VALID (80104) Ungültige Betriebsnummer.
• PE_CERTPARM (80114) - Passwort zu kurz/lang. (min. 6, max. 20 Zeichen) - Firma zu lang. (max. 64 Zeichen) - Ansprechpartner zu lang. (max. 64 Zeichen) - Firma oder Ansprechpartner enthält nicht erlaubte Sonderzeichen
• PE_AUIINIT (80116) Schlüsseldatei kann nicht gelesen werden.
• PE_AUIACTKEY (80117) Interner Fehler in Info-Datei.
• PE_AUIWRITE (80118) Fehler beim Schreiben der Schlüsseldatei.
• PE_KEYGEN (80119) Fehler bei der Schlüsselerzeugung.
• PE_KEYEXISTS (80120) Es existiert bereits ein Schlüssel.
• PE_SMTP_DATASEND (80301) Fehler bei der Datenübertragen an den Emailserver. Eventuell ist die Netzwerkverbindung unterbro-chen worden.
v3.90.161 PERFIDIA Toolkit Reference
103© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• PE_SMTP_DATARECV (80302) Fehler beim Datenempfang vom Emailserver. Eventuell ist die Netzwerkverbindung unterbrochen wor-den.
• PE_SMTP_READ_ATTACHMENTS (80304) Fehler beim Lesen der Email-Anlagen.
• PE_SMTP_STARTSTRING (80305) Der Emailserver antwortet nicht korrekt.
• PE_SMTP_MAILFROM (80306) Fehler in der Email-Adresse des Absenders.
• PE_SMTP_RCPTTO (80307) Fehler in der Email-Adresse des Empfängers.
• PE_SMTP_DATASTART (80308) Fehler beim Start der Emailübertragung.
• PE_SMTP_QUEUEMAIL (80309) Email konnte nicht in die Versand-Queue des Emailservers gestellt werden.
• PE_SMTP_UNKNOWNHOST (80310) Falsche IP-Adresse oder Hostname.
• PE_SMTP_SOCKETFAILED (80311) Fehler beim Anfordern eines Sockets.
• PE_SMTP_CONNECTFAILED (80312) Fehler beim Verbindungsaufbau zum Emailserver.
• PE_SMTP_AUTHLOGIN_START (80313) Abbruch beim Loginversuch über SMTP_AUTH_LOGIN.
• PE_SMTP_AUTHLOGIN_USER (80314) Benutzername vom Emailserver nicht akzeptiert.
• PE_SMTP_AUTHLOGIN_PASS (80315) Benutzername und/oder Passwort vom Emailserver nicht akzeptiert.
• PE_SMTP_AUTHPLAIN_START (80316) Abbruch beim Loginversuch über SMTP_AUTH_PLAIN.
• PE_SMTP_AUTHPLAIN_USERPASS (80317) Benutzername und/oder Passwort vom Emailserver nicht akzeptiert.
Parameter
• szFirm (IN) Firmenname des Absenders. (max. 64 Zeichen)
• szContact (IN) Ansprechpartner des Absenders. (max. 64 Zeichen)
• lBetrnr (IN) Betriebsnummer des Absenders. Im Leistungsbringerverfahren ist hier die IK-Nummer anzugeben.
• nRechenzentrum (IN) 0 = Arbeitgeber 1 = Rechenzentrum, Steuerberater, etc. 2 = sonstige Leistungserbringer
• szSVPassword (IN) Das SV-Passwort. (min. 6, max. 20 Zeichen)
• nOverwrite (IN) 0 = gültigen Schlüssel nicht überschreiben (empfohlen) 1 = gültigen Schlüssel überschreiben Hinweis: Dieser Parameter gilt nur für vom Trustcenter signierte Zertifikate. Zertifikate, die noch auf eine Zertifizierungsantwort vom Trustcenter warten, werden grundsätzlich überschrieben. (siehe auch perfidia_itsg_cert_info_v2 oder perfidia_itsg_cert_info_v3)
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de104
• szSenderEmail (IN) Email-Adresse des Absenders.
• szEmailServer (IN) IP-Adresse oder Hostname des Emailservers.
• nSmtpPort (IN) Der SMTP-Port des Emailservers. Dies ist fast immer Port 25.
• szEmailUser (IN) Benutzername beim Emailserver. Dies ist nur nötig, wenn beim Emailserver SMTP-Auth aktiviert ist.
• szEmailPassword (IN) Passwort beim Emailserver. Dies ist nur nötig, wenn beim Emailserver SMTP-Auth aktiviert ist.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Vor der Generierung einer Zertifikatsanfrage sollte zunächst die Funktionalität des Emailservers mit perfidia_test_email_send geprüft werden.
Aus rechtlichen Gründen muss der Anwender vor der Erstellung eines Zertifikats auf die Preise/AGB des ITSG TrustCenters (www.trustcenter.info) hingewiesen werden.
v3.90.161 PERFIDIA Toolkit Reference
105© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_itsg_cert_create_mapi
Generiert eine Zertifikatsanfrage für das ITSG-Verfahren und verschickt diese per Email über die MAPI-Schnittstelle. Aus technischen Gründen darf der Firmenname und Ansprechpartner keine Umlaute (ä, ü, etc.) oder Sonderzeichen (ß, +, &, Semikolon, Unterstrich, Komma, \\, Anführungszeichen, §, etc.) enthalten. Nur die folgenden Sonderzeichen können maschinell verarbeitet werden: Leerzeichen, /, Minus, Punkt, und (). In der Testumgebung (Betriebsnummer gleich 12345678) wird ein fertiges Zertifikat erstellt, so dass keine Zertifi-katsanfrage per Email verschickt wird.
long perfidia_itsg_cert_create_mapi ( const char *szFirm, const char *szContact, long lBetrnr, short nRechenzentrum, const char *szSVPassword, short nOverwrite, short nAutoMail, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PASSWORD (80106) Passwort ist falsch.
• PE_BETRNR_NOT_VALID (80104) Ungültige Betriebsnummer.
• PE_CERTPARM (80114) - Passwort zu kurz/lang. (min. 6, max. 20 Zeichen) - Firma zu lang. (max. 64 Zeichen) - Ansprechpartner zu lang. (max. 64 Zeichen) - Firma oder Ansprechpartner enthält nicht erlaubte Sonderzeichen
• PE_NO_MAPI (80108) Es ist kein MAPI-fähiges Email-Programm installiert.
• PE_MAPI_ERROR (80131) Fehler beim Email-Versenden.
• PE_AUIINIT (80116) Schlüsseldatei kann nicht gelesen werden.
• PE_AUIACTKEY (80117) Interner Fehler in Info-Datei.
• PE_AUIWRITE (80118) Fehler beim Schreiben der Schlüsseldatei.
• PE_KEYGEN (80119) Fehler bei der Schlüsselerzeugung.
• PE_KEYEXISTS (80120) Es existiert bereits ein Schlüssel.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de106
Parameter
• szFirm (IN) Firmenname des Absenders. (max. 64 Zeichen)
• szContact (IN) Ansprechpartner des Absenders. (max. 64 Zeichen)
• lBetrnr (IN) Betriebsnummer des Absenders. Im Leistungsbringerverfahren ist hier die IK-Nummer anzugeben.
• nRechenzentrum (IN) 0 = Arbeitgeber 1 = Rechenzentrum, Steuerberater, etc. 2 = sonstige Leistungserbringer
• szSVPassword (IN) Das SV-Passwort. (min. 6, max. 20 Zeichen)
• nOverwrite (IN) 0 = gültigen Schlüssel nicht überschreiben (empfohlen) 1 = gültigen Schlüssel überschreiben Hinweis: Dieser Parameter gilt nur für vom Trustcenter signierte Zertifikate. Zertifikate, die noch auf eine Zertifizierungsantwort vom Trustcenter warten, werden grundsätzlich überschrieben. (siehe auch perfidia_itsg_cert_info_v2 oder perfidia_itsg_cert_info_v3)
• nAutoMail (IN) 0 = Die Emails werden zum Versenden angezeigt. 1 = Die Emails werden automatisch im Postausgang gespeichert.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows
Anmerkungen
Da die MAPI-Schnittstelle bei einigen Email-Programmen nicht zuverlässig funktioniert, wird empfohlen, statt dessen den SMTP-Client zu verwenden (siehe perfidia_itsg_cert_create). Bei Verwendung der MAPI-Schnittstelle sollte zunächst die Funktionalität mit perfidia_test_email_send_mapi geprüft werden. Hierbei ist insbesondere darauf zu achten, daß die Anlagen nicht im Microsoft TNEF-Format gespeichert sind, da die Annahmestellen dieses Format nicht verarbeiten können.
Aus rechtlichen Gründen muss der Anwender vor der Erstellung eines Zertifikats auf die Preise/AGB des ITSG TrustCenters (www.trustcenter.info) hingewiesen werden.
v3.90.161 PERFIDIA Toolkit Reference
107© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_itsg_cert_create_v2
Generiert eine Zertifikatsanfrage für das ITSG-Verfahren und verschickt diese per Internet an das ITSG TrustCenter. Wenn die Config-Variable ‚TEST_ENVIRONMENT‘ auf ‚yes‘ steht, wird der Zertifizierungsantrag an das Testsystem vom ITSG TrustCenter geschickt.
long perfidia_itsg_cert_create_v2 ( const char *szItsgOstc, const char *szSVPassword, short nOverwrite, long *plAuftragsnummer, long *plReturnCode, long *plFehlerCode, short *pnFolgeantrag, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PASSWORD (80106) Passwort ist falsch.
• PE_AUIINIT (80116) Schlüsseldatei kann nicht gelesen werden.
• PE_AUIACTKEY (80117) Interner Fehler in Info-Datei.
• PE_AUIWRITE (80118) Fehler beim Schreiben der Schlüsseldatei.
• PE_KEYGEN (80119) Fehler bei der Schlüsselerzeugung.
• PE_KEYEXISTS (80120) Es existiert bereits ein Schlüssel.
• PE_SERVER_ERROR (80145) Details über den Fehler vom Server liefert der Wert von ‚plReturnCode‘. In diesem Fall kann mit der Funktion perfidia_get_last_error auch ein Fehlertext ermittelt werden.
Parameter
• szItsgOstc (IN) Dateiname mit Pfad der OSTC-Datei (siehe record_descriptions.pdf).
• szSVPassword (IN) Das SV-Passwort. (min. 6, max. 20 Zeichen)
• nOverwrite (IN) 0 = gültigen Schlüssel nicht überschreiben (empfohlen) 1 = gültigen Schlüssel überschreiben (siehe auch perfidia_itsg_cert_info_v4)
• plAuftragsnummer (OUT) Auftragsnummer, die vom ITSG TrustCenter vergeben wurde.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de108
• plReturnCode (OUT) 10, 11 und 12 = Zertifizierungsantrag angenommen, ansonsten ist ein Fehler aufgetreten.
• plFehlerCode (OUT) Fehlercode, der vom ITSG TrustCenter vergeben wurde.
• pnFolgeantrag (OUT) 0 = Erstantrag 1 = Folgeantrag
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows
Anmerkungen
Wichtig: Wenn es sich um einen Folgeantrag handelt, darf auf keinen Fall ein schriftlicher Antrag an das ITSG TrustCenter geschickt werden!
Bei einer Rezertifizierung (Folgeantrag) sollte vor dem Aufruf dieser Funktion mit der Funktion perfidia_itsg_agvcerts_info geprüft werden, ob ein gültiges Zertifikat für die Betriebsnummer 17046976 (ITSG TrustCenter) verfügbar ist.
Aus rechtlichen Gründen muss der Anwender vor der Erstellung eines Zertifikats auf die Preise/AGB des ITSG TrustCenters (www.trustcenter.info) hingewiesen werden.
Diese Funktion erzeugt einen Progress.
v3.90.161 PERFIDIA Toolkit Reference
109© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_itsg_cert_print
Druckt einen ITSG-Zertifizierungsantrag.
long perfidia_itsg_cert_print ( short nRechenzentrum, const char *szFirm, const char *szContact, const char *szStreet, const char *szPostcodeCity, const char *szPhone, const char *szFax, const char *szEmail, short nCertAnswer, short nIdentification, const char *szProductProducer, const char *szProductName, const char *szCodeWord, short nRevoke, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_PRINT_NO_PRINTER (81001) Keinen Drucker gefunden.
• PE_PRINT_WINSPOOL (81002) Fehler beim Speichern des Druckauftrages in der Druckerwarteschlange.
• PE_PRINT_PAGE (81003) Fehler beim Erstellen des Druckauftrags.
• PE_PRINT_USER_ABORT (81004) Druck durch Benutzer abgebrochen.
Parameter
• nRechenzentrum (IN) 0 = Arbeitgeber 1 = Rechenzentrum, Steuerberater, etc. 2 = sonstige Leistungserbringer
• pFirm (IN) Firmenname des Absenders.
• szContact (IN) Ansprechpartner des Absenders.
• szStreet (IN) Straße des Absenders.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de110
• szPostcodeCity (IN) PLZ und Ort des Absenders.
• szPhone (IN) Telefonnummer des Absenders.
• szFax (IN) Telefaxnumemr des Absenders.
• szEmail (IN) Emailadresse des Absenders.
• nCertAnswer (IN) 0 = Zertifizierungsantwort an die angegebene Email-Adresse schicken 1 = Zertifizierungsantwort per Diskette schicken
• nIdentification (IN) 0 = Liegt dem TrustCenter vor, da die Identifikation mit einem früher Antrag erfolgt ist. [Ab sofort wird diese Option vom ITSG TrustCenter nicht mehr unterstützt.] 1 = Kopie des Personalausweises 2 = Kopie des Reisepasses 3 = Kopie des Führerscheins 4 = Vergabebescheid für die IK-Nummer 5 = Zulassungsbescheid als Leistungserbringer
• szProductProducer (IN) Name des Softwarehauses.
• szProductName (IN) Name der Fachanwendung.
• szCodeWord (IN) Das Kundenkennwort wird für telefonische Auskünfte benötigt und kann ein beliebiges Wort mit maxi-mal 12 Zeichen sein. Da das Kundenkennwort öffentlich zu sehen ist, sollte es nicht mit dem SV-Pass-wort (Passwort für das Krankenkassen-Zertifikat) übereinstimmen.
• nRevoke (IN) 0 = Sperrung des Zertifikats ist auch ohne Kundenkennwort möglich. 1 = Sperrung des Zertifikats ist nur mit Kundenkennwort möglich.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Wenn Sie eine abweichende Rechnungsanschrift oder eine Bemerkung drucken möchten, rufen Sie vor die-ser Funktion die Funktion perfidia_itsg_cert_print_set auf.
v3.90.161 PERFIDIA Toolkit Reference
111© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_itsg_cert_pdf
Druckt einen ITSG-Zertifizierungsantrag in eine PDF-Datei.
long perfidia_itsg_cert_pdf ( const char *szPdfFile, short nOverwrite, short nRechenzentrum, const char *szFirm, const char *szContact, const char *szStreet, const char *szPostcodeCity, const char *szPhone, const char *szFax, const char *szEmail, short nCertAnswer, short nIdentification, const char *szProductProducer, const char *szProductName, const char *szCodeWord, short nRevoke, );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_FILE_EXISTS (80808) Die PDF-Datei existiert bereits.
• PE_FILE_CREATE (80801) Fehler beim Erstellen der PDF-Datei.
• PE_FILE_WRITE (80806) Fehler beim Schreiben der PDF-Datei.
Parameter
• szPdfFile (IN) Dateiname der PDF-Datei.
• nOverwrite (IN) 0 = vorhandene PDF-Datei nie überschreiben 1 = vorhandene PDF-Datei immer überschreiben
• nRechenzentrum (IN) 0 = Arbeitgeber 1 = Rechenzentrum, Steuerberater, etc. 2 = sonstige Leistungserbringer
• szFirm (IN) Firmenname des Absenders.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de112
• szContact (IN) Ansprechpartner des Absenders.
• szStreet (IN) Straße des Absenders.
• szPostcodeCity (IN) PLZ und Ort des Absenders.
• szPhone (IN) Telefonnummer des Absenders.
• szFax (IN) Telefaxnumemr des Absenders.
• szEmail (IN) Emailadresse des Absenders.
• nCertAnswer (IN) 0 = Zertifizierungsantwort an die angegebene Email-Adresse schicken 1 = Zertifizierungsantwort per Diskette schicken
• nIdentification (IN) 0 = Liegt dem TrustCenter vor, da die Identifikation mit einem früher Antrag erfolgt ist. [Ab sofort wird diese Option vom ITSG TrustCenter nicht mehr unterstützt.] 1 = Kopie des Personalausweises 2 = Kopie des Reisepasses 3 = Kopie des Führerscheins 4 = Vergabebescheid für die IK-Nummer 5 = Zulassungsbescheid als Leistungserbringer
• szProductProducer (IN) Name des Softwarehauses.
• szProductName (IN) Name der Fachanwendung.
• szCodeWord (IN) Das Kundenkennwort wird für telefonische Auskünfte benötigt und kann ein beliebiges Wort mit maxi-mal 12 Zeichen sein. Da das Kundenkennwort öffentlich zu sehen ist, sollte es nicht mit dem SV-Pass-wort (Passwort für das Krankenkassen-Zertifikat) übereinstimmen.
• nRevoke (IN) 0 = Sperrung des Zertifikats ist auch ohne Kundenkennwort möglich. 1 = Sperrung des Zertifikats ist nur mit Kundenkennwort möglich.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Wenn Sie eine abweichende Rechnungsanschrift oder eine Bemerkung drucken möchten, rufen Sie vor die-ser Funktion die Funktion perfidia_itsg_cert_print_set auf.
v3.90.161 PERFIDIA Toolkit Reference
113© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_itsg_cert_print_set
Setzt Parameter zum Druck eines ITSG-Zertifizierungsantrags.
long perfidia_itsg_cert_print_set ( const char *szAccountFirm, const char *szAccountStreet, const char *szAccountPostcodeCity, const char *szCommentLine1, const char *szCommentLine2, const char *szCommentLine3 );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
Parameter
• szAccountFirm (IN) Firmenname der Rechnungsanschrift. Nur anzugeben, wenn Rechnungsanschrift abweicht!
• szAccountStreet (IN) Straße der Rechnungsanschrift. Nur anzugeben, wenn Rechnungsanschrift abweicht!
• szAccountPostcodeCity (IN) PLZ und Ort der Rechnungsanschrift. Nur anzugeben, wenn Rechnungsanschrift abweicht!
• szCommentLine1 (IN) Bemerkungszeile 1 (max. 76 Zeichen)
• szCommentLine2 (IN) Bemerkungszeile 2 (max. 76 Zeichen)
• szCommentLine3 (IN) Bemerkungszeile 3 (max. 76 Zeichen)
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de114
perfidia_itsg_cert_import_info
Mit dieser Funktion können Informationen über Zertifikate vom ITSG TrustCenter ermittelt werden, die im For-mat PKCS#12 (*.p12 oder *.pfx) gespeichert sind.
long perfidia_itsg_cert_import_info ( const char *szCertFile, const char *szSvPassword, short *pnDaysLeft, short *pnWaiting, long *plBetrNr, char *szFirmBuffer, short nFirmBufferSize, char *szAnspBuffer, short nAnspBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PASSWORD (80106) Falsches Passwort.
• PE_AUIINIT (80116) Schlüsseldatei kann nicht gelesen werden.
• PE_AUIACTKEY (80117) Interner Fehler in Info-Datei.
• PE_AUIWRITE (80118) Fehler beim Schreiben in Zertifikatsdatei.
• PE_ACOPEN (80132) Kein Zugriff auf Empfänger-Schlüssel.
• PE_INVALID_FORMAT (80144) Ungültiges Format.
Parameter
• szCertFile (IN) Der Dateiname (mit Pfad) des Zertifikats vom ITSG TrustCenter.
• szSVPassword (IN) Das SV-Passwort.
• pnDaysLeft (OUT) Gültigkeitsdauer in Tagen.
• pnWaiting (OUT) 0 = Dieser Schlüssel wartet nicht auf eine Zertifizierungsantwort der ITSG. 1 = Dieser Schlüssel wartet auf eine Zertifizierungsantwort der ITSG.
• plBetrNr (IN) Betriebsnummer aus dem Zertifikat.
• szFirmBuffer (OUT) Firmenname aus dem Zertifikat. Dieser Buffer sollte eine Länge von 65 Zeichen haben.
v3.90.161 PERFIDIA Toolkit Reference
115© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• nFirmBufferSize (IN) Länge des Firm-Buffers.
• szAnspBuffer (OUT) Ansprechpartner aus dem Zertifikat. Dieser Buffer sollte eine Länge von 65 Zeichen haben.
• nAnspBufferSize (IN) Länge des Ansp-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de116
perfidia_itsg_cert_import
Mit dieser Funktion können Zertifikate vom ITSG TrustCenter importiert werden, die im Format PKCS#12 (*.p12 oder *.pfx) gespeichert sind. Unter anderem ist hiermit der Import von Zertifikaten aus dem Produkt dakota.ag möglich.
long perfidia_itsg_cert_import ( const char *szCertFile, const char *szSvPassword );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PASSWORD (80106) Falsches Passwort.
• PE_AUIINIT (80116) Schlüsseldatei kann nicht gelesen werden.
• PE_AUIACTKEY (80117) Interner Fehler in Info-Datei.
• PE_AUIWRITE (80118) Fehler beim Schreiben in Zertifikatsdatei.
• PE_ACOPEN (80132) Kein Zugriff auf Empfänger-Schlüssel.
• PE_INVALID_FORMAT (80144) Ungültiges Format.
Parameter
• szCertFile (IN) Der Dateiname (mit Pfad) des Zertifikats vom ITSG TrustCenter. • szSVPassword (IN) Das Passwort des Zertifikats.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
117© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_itsg_agvcerts_import
Liest die Zertifikate der Annahmestellen ein.
long perfidia_itsg_agvcerts_import ( const char *szAnnahmeAgv );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_SVMAIL_AGVIMPORT (70203) Beim Einlesen der Schlüsselliste ist ein Fehler aufgetreten.
Parameter
• szAnnahmeAgv (IN) Der Dateiname (mit Pfad) der Annahmestellen-Zertifikate (annahme.agv). Im Leistungsbringerverfahren ist hier die Datei ‚annahme.key‘ anzugeben.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de118
perfidia_itsg_agvcerts_import_http
Liest die aktuellen Zertifikate der Annahmestellen per Internet ein.
long perfidia_itsg_agvcerts_import_http ( HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_SVMAIL_AGVIMPORT (70203) Beim Einlesen der Schlüsselliste ist ein Fehler aufgetreten.
• PE_NO_INET (80107) Die Verbindung zum Internet konnte nicht hergestellt werden.
• PE_HTTP_OPEN (80501) Fehler beim Initialisieren der Internetverbindung. (1)
• PE_HTTP_CONNECT (80502) Fehler beim Initialisieren der Internetverbindung. (2)
• PE_HTTP_OPENREQUEST (80503) Fehler beim Initialisieren der Internetverbindung. (3)
• PE_HTTP_SENDREQUEST (80504) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_SENDREQUESTEX (80505) Fehler beim Verbindungsaufbau zum Server.
• PE_HTTP_WRITEFILE (80506) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_ENDREQUEST (80507) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_QUERYINFO (80508) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_READFILE (80509) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_PROXY_AUTH (80510) Proxy-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_AUTH (80511) Server-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_ERROR (80512) Interner Fehler beim Server.
Parameter
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
119© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Anmerkungen
Die aktuellen Annahmestellen-Zertifikate werden vom Server www2.perfidia.de heruntergeladen. Wenn die Config-Variable ‚HTTPS_PREFERRED‘ auf ‚yes‘ steht, wird eine geschützte Internetverbindung benutzt.
Diese Funktion erzeugt einen Progress.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de120
perfidia_itsg_agvcerts_info
Mit dieser Funktion kann die Gültigkeit der Annahmestellen-Zertifikate geprüft werden.
long perfidia_itsg_agvcerts_info ( short nIndex, long *plBetrnr, long *plSerial, short *pnValid, char *szNameBuffer, short nNameBufferSize, char *szNotBeforeBuffer, short nNotBeforeBufferSize, char *szNotAfterBuffer, short nNotAfterBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe eines Buffers ist zu klein.
Parameter
• nIndex (IN) Die Zertifikate sind nach Betriebsnummer sortiert gespeichert. Über den Index (1, 2, 3, ...) kann auf je-des Zertifikat zugegriffen werden. Um alle Zertifikate zu lesen, kann der Index so lange erhöht werden, bis der Rückgabewert gleich PE_NO_DATA ist.
• plBetrnr (IN / OUT) Betriebsnummer der Annahmestelle. Wenn der Index gleich 0 ist, kann hier die gesuchte Betriebsnum-mer angegeben werden.
• plSerial (OUT) Seriennummer des Zertifikats.
• pnValid (OUT) 0 = Zertifikat ist ungültig 1= Zertifikat ist gültig
• szNameBuffer (OUT) Name der Annahmestelle. Dieser Buffer sollte eine Größe von 129 Zeichen haben.
• nNameBufferSize (IN) Größe des Name-Buffers.
v3.90.161 PERFIDIA Toolkit Reference
121© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• szNotBeforeBuffer (OUT) Der NotBefore-Buffer gibt an, ab wann das Zertifikat gültig ist, und sollte eine Größe von 15 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMDDhhmmss.
• nNotBeforeBufferSize (IN) Größe des NotBefore-Buffers.
• szNotAfterBuffer (OUT) Der NotAfter-Buffer gibt an, bis wann das Zertifikat gültig ist, und sollte eine Größe von 15 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMDDhhmmss.
• nNotAfterBufferSize (IN) Größe des NotAfter-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Diese Funktion erzeugt einen Progress.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de122
perfidia_itsg_cert_crp_status
Bearbeitungsstatus einer Zertifizierungsanfrage per Internet ermitteln.
long perfidia_itsg_cert_crp_status ( long lAuftragsNr, short* pnStatus, char *szLastEditBuffer, short nLastEditBufferSize, HWND hwndParentLPSTR );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Unter der Auftragsnummer konnte keine Zertifizierungsanfrage gefunden werden.
• PE_NO_INET (80107) Die Verbindung zum Internet konnte nicht hergestellt werden.
• PE_HTTP_OPEN (80501) Fehler beim Initialisieren der Internetverbindung. (1)
• PE_HTTP_CONNECT (80502) Fehler beim Initialisieren der Internetverbindung. (2)
• PE_HTTP_OPENREQUEST (80503) Fehler beim Initialisieren der Internetverbindung. (3)
• PE_HTTP_SENDREQUEST (80504) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_SENDREQUESTEX (80505) Fehler beim Verbindungsaufbau zum Server.
• PE_HTTP_WRITEFILE (80506) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_ENDREQUEST (80507) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_QUERYINFO (80508) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_READFILE (80509) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_PROXY_AUTH (80510) Proxy-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_AUTH (80511) Server-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_ERROR (80512) Interner Fehler beim Server.
v3.90.161 PERFIDIA Toolkit Reference
123© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Parameter
• lAuftragsNr (IN) Die Auftragsnummer wird vom ITSG TrustCenter nach Erfassung der Zertifizierungsanfrage per Email mitgeteilt. Bei Verwendung der Online-Schnittstelle (perfidia_itsg_cert_create_v2) ist hier ein 0 zu über-geben.
• pnStatus (OUT) 1 = Zertifizierungsanfrage wird noch bearbeitet 2 = Zertifizierungsanfrage konnte aufgrund eines Fehlers nicht bearbeitet werden 3 = Zertifizierungsantwort (*.p7c) steht zum Download bereit. (siehe perfidia_itsg_cert_read_crp_http)
• szLastEditBuffer (OUT) In LastEdit-Buffer steht (falls verfügbar) das Datum der letzten Bearbeitung durch das ITSG Trustcen-ter. Dieser Buffer sollte eine Größe von 9 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMDD.
• nLastEditBufferSize (IN) Größe des LastEdit-Buffers.
• hwndParentLPSTR (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Der Bearbeitungsstatus der Zertifizierungsanfrage wird vom ITSG Trustcenter (trustcenter.atosorigin.de) her-untergeladen.
Diese Funktion erzeugt einen Progress.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de124
perfidia_itsg_cert_read_crp
Einlesen der ITSG-Zertifizierungsantwort.
long perfidia_itsg_cert_read_crp ( const char *szSVPassword, const char *szCrp );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PASSWORD (80106) Falsches Passwort.
• PE_AUIINIT (80116) Schlüsseldatei kann nicht gelesen werden.
• PE_AUIACTKEY (80117) Interner Fehler in Info-Datei.
• PE_AUIWRITE (80118) Fehler beim Schreiben in Zertifikatsdatei.
• PE_ACOPEN (80132) Kein Zugriff auf Empfänger-Schlüssel.
• PE_SVMAIL_CRPREAD (70201) Fehler beim Einlesen der Zertifizierungsantwort.
• PE_SVMAIL_NOPENDINGKEY (70202) Es gibt keinen Schlüssel, der auf eine Zertifizierungsantwort wartet.
Parameter
• szSVPassword (IN) Das SV-Passwort.
• szCrp (IN) Der Dateiname (mit Pfad) der ITSG-Zertifizierungsantwort.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
125© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_itsg_cert_read_crp_http
Einlesen der ITSG-Zertifizierungsantwort per Internet.
long perfidia_itsg_cert_read_crp_http ( const char *szSVPassword, long lAuftragsNr, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Unter der Auftragsnummer konnte keine Zertifizierungsantwort gefunden werden.
• PE_PASSWORD (80106) Falsches Passwort.
• PE_AUIINIT (80116) Schlüsseldatei kann nicht gelesen werden.
• PE_AUIACTKEY (80117) Interner Fehler in Info-Datei.
• PE_AUIWRITE (80118) Fehler beim Schreiben in Zertifikatsdatei.
• PE_ACOPEN (80132) Kein Zugriff auf Empfänger-Schlüssel.
• PE_SVMAIL_CRPREAD (70201) Fehler beim Einlesen der Zertifizierungsantwort.
• PE_SVMAIL_NOPENDINGKEY (70202) Es gibt keinen Schlüssel, der auf eine Zertifizierungsantwort wartet
• PE_HTTP_OPEN (80501) Fehler beim Initialisieren der Internetverbindung. (1)
• PE_HTTP_CONNECT (80502) Fehler beim Initialisieren der Internetverbindung. (2)
• PE_HTTP_OPENREQUEST (80503) Fehler beim Initialisieren der Internetverbindung. (3)
• PE_HTTP_SENDREQUEST (80504) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_SENDREQUESTEX (80505) Fehler beim Verbindungsaufbau zum Server.
• PE_HTTP_WRITEFILE (80506) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_ENDREQUEST (80507) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_QUERYINFO (80508) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_READFILE (80509) Übertragungsfehler beim Empfangen der Daten vom Server.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de126
• PE_HTTP_PROXY_AUTH (80510) Proxy-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_AUTH (80511) Server-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_ERROR (80512) Interner Fehler beim Server..
Parameter
• szSVPassword (IN) Das SV-Passwort.
• lAuftragsNr (IN) Die Auftragsnummer wird vom ITSG Trustcenter nach Erfassung der Zertifizierungsanfrage per Email mitgeteilt. Bei Verwendung der Online-Schnittstelle (perfidia_itsg_cert_create_v2) ist hier ein 0 zu über-geben.
• hwndParentLPSTR (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Die Zertifizierungsantwort wird vom ITSG Trustcenter (trustcenter.atosorigin.de) heruntergeladen.
Diese Funktion erzeugt einen Progress.
v3.90.161 PERFIDIA Toolkit Reference
127© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_itsg_cert_change_password
Ändert das SV-Passwort.
long perfidia_itsg_cert_change_password ( const char *szOldSVPassword, const char *szNewSVPassword );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_CERTPARM (80114) Neues Passwort zu lang. (max. 20 Zeichen)
• PE_PASSWORD (80106) Altes Passwort ist falsch. Passwort wird nicht geändert.
• PE_AUIINIT (80116) Schlüsseldatei kann nicht gelesen werden.
• PE_AUIACTKEY (80117) Interner Fehler in Info-Datei.
• PE_AUIWRITE (80118) Passwort-Änderung ist fehlgeschlagen.
Parameter
• szOldSVPassword (IN) Altes SV-Passwort.
• szNewSVPassword (IN) Neues SV-Passwort.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de128
perfidia_itsg_cert_verify_password
Prüft das SV-Passwort.
long perfidia_itsg_cert_verify_password ( const char *szSVPassword );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PASSWORD (80106) Passwort ist falsch.
• PE_AUIINIT (80116) Schlüsseldatei kann nicht gelesen werden.
• PE_AUIACTKEY (80117) Interner Fehler in Info-Datei.
Parameter
• szSVPassword (IN) SV-Passwort.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
129© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_itsg_ca_install
Prüft oder installiert die benötigten PCA- und CA-Zertifikate vom ITSG TrustCenter im Windows Zertifikats-speicher.
long perfidia_itsg_ca_install ( short nType );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NO_DATA (80129) Es sind nicht alle benötigten Zertifikate im Windows Zertifikatsspeicher.
Parameter
• nType (IN) 0 = nur prüfen 1 = PCA-Zertifikat prüfen und ggf. CA-Zertifikat unter dem aktuellen Benutzer installieren 2 = PCA-Zertifikat und CA-Zertifikat unter dem aktuellen Benutzer installieren 3 = PCA-Zertifikat und CA-Zertifikat für den gesamten Computer installieren
Betriebssysteme
Microsoft Windows
Anmerkungen
Parameter ‚nType‘ gleich 2: Wenn das benötigte PCA-Zertifikat vom ITSG-TrustCenter nicht installiert ist, erscheint vom Betriebssystem ein Dialog, der den Benutzer fragt, ob das PCA-Zertifkat akzeptiert werden soll. Parameter ‚nType‘ gleich 3: Für die Installation der ITSG-TrustCenter Zertifikate für den gesamten Computer werden Administrationrechte benötigt. Falls der aktuelle Benutzer keine Administrationsrechte hat, werden diese automatisch über das Windows UAC (User Access Control) angefordert.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de130
perfidia_sv_vsnrvfnr_read
Mit dieser Funktion kann der Status einer Versicherungs- oder Verfahrennummernanfrage (DEÜV und DSVV) ermittelt und ggf. die zurückgelieferte Versicherungs- oder Verfahrensnummer ermittelt werden.
long perfidia_sv_vsnrvfnr_read ( long lBetrNrVU, const char *szOrdnungsmerkmal, long *plStatus, long *plDataType, char *szVsnrVfnrBuffer, short nVsnrVfnrBufferSize, char *szDatensatzIdBuffer, short nDatensatzIdBufferSize, char *szErrorTextBuffer, short nErrorTextBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe eines Buffers ist zu klein.
Parameter
• lBetrNrVU (IN) Betriebsnummer des Verursachers.
• szOrdnungsmerkmal (IN) Aktenzeichen des Verursachers.
• plStatus (OUT) 0 = noch keine Antwort 1 = Versicherungs- oder Verfahrensnummer erhalten 2 = Fehler 3 = kein Ergebnis 4 = kein eindeutiges Ergebnis
• plDataType (OUT) 0x00000008 (8) = DEÜV-Meldungen [?DUA0*.*] 0x00000040 (64) = ELENA-Daten (DSVV) [?ENR0*.*] 0x00000400 (1024) = VSA-Rückmeldung [?VSA0*.*] 0x00100000 (1048576) = VSNR-Abfragen [?DSV*.*]
• szVsnrVfnrBuffer (OUT) Versicherungs- oder Verfahrensnummer. Der VsnrVfnr-Buffer sollte eine Größe von 13 Zeichen haben.
v3.90.161 PERFIDIA Toolkit Reference
131© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• nVsnrVfnrBufferSize (IN) Größe des VsnrVfnr-Buffers.
• szDatensatzIdBuffer (OUT) Beim Versand übermittelte Datensatz-Id. Der DatensatzId-Buffer sollte eine Größe von 21 Zeichen haben.
• nDatensatzIdBufferSize (IN) Größe des Address-Buffers.
• szErrorBuffer (OUT) Wenn der Paramter plStatus den Wert 2 hat, steht in diesem Buffer der Fehlertext. Der Error-Buffer sollte eine Größe von mindestens 73 Zeichen haben.
• nErrorTextBufferSize (IN) Größe des Error-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de132
perfidia_sv_vsnrvfnr_open_betrnr
Öffnet die Datenbank für die zurückgelieferten Versicherungs- und Verfahrensnummern für eine bestimmte Verursacher-Betriebsnummer.
long perfidia_sv_vsnrvfnr_open_betrnr ( long lBetrNrVU );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
Parameter
• lBetrNrVU (IN) Verursacherbetriebsnummer, für die Versicherungsnummern gelesen werden sollen.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Nach dem Lesen der Protokolleinträge mit der Funktion perfidia_sv_vsnrvfnr_next muss die Datei mit der Funktion perfidia_sv_vsnrvfnr_close geschlossen werden.
v3.90.161 PERFIDIA Toolkit Reference
133© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_sv_vsnrvfnr_open_datnum_recv
Öffnet die Datenbank für die zurückgelieferten Versicherungs- und Verfahrensnummern für eine bestimmte Antwortdatei.
long perfidia_sv_vsnrvfnr_open_datnum_recv ( long lDataType, short nAnst, short nTestmerker, long lDatNumRecv );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
Parameter
• lDataType (IN) 0x00000008 (8) = DEÜV-Meldungen [?DUA0*.*] 0x00000400 (1024) = VSA-Rückmeldung [?VSA0*.*] 0x00100000 (1048576) = VSNR-Abfragen [?DSV*.*]
• nAnnahmestelle (IN) 2 = nur 15451439, vdek 3 = nur 37912580, IKK 4 = nur 35382142, BKK 5 = nur 47056789, LKK 6 = nur 99086875, SeeKK 7 = nur 98000006, BKN (Allgemein) 8 = nur 17625773, DASBV 9 = nur 66667777, DSRV 10 = nur 77772222, ZSS 11 = nur 98094032, BKN (Knappschaft) 12 = nur 64672791, AOK Baden-Württemberg 13 = nur 87880235, AOK Bayern/Thüringen 14 = nur 05174740, AOK Sachsen 15 = nur 20158137, AOK Bremen/Bremerhaven 16 = nur 29720865, AOK Niedersachsen 17 = nur 47860681, AOK Hessen/Saarland 18 = nur 51605725, AOK Rheinland-Pfalz 19 = nur 01000251, AOK MV/Rheinland/HH/SH 20 = nur 34364249, AOK Rheinland/HH 21 = nur 01000262, AOK Berlin/BB/Sachsen-Anhalt 22 = nur 33526082, AOK Westfalen-Lippe 23 = nur 25942967, Mobil ISC 24 = nur 76665732, BA 25 = 95783331, DGUV 26 = 93121302, ITSG
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de134
27 = 93951443, AOK Sachsen-Anhalt 28 = nur 92111581, DAK-G 98 = 99300222, eVpT (neue Kernprüfung) 99 = 99300001, eVpT (normal)
• nTestmerker (IN) 0 = nur Echtdaten 1 = nur Testdaten
• lDatNumRecv (IN) Dateinummer der Antwort.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Nach dem Lesen der Protokolleinträge mit der Funktion perfidia_sv_vsnrvfnr_next muss die Datei mit der Funktion perfidia_sv_vsnrvfnr_close geschlossen werden.
v3.90.161 PERFIDIA Toolkit Reference
135© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_sv_vsnrvfnr_next
Nach einem erfolgreichen Aufruf der Funktion perfidia_sv_vsnrvfnr_open liefert diese Funktion solange den nächste Versicherungs- oder Verfahrensnummer, bis sie mit PE_NO_DATA zurückkommt.
long perfidia_sv_vsnrvfnr_next ( long *plBetrNrVU, char *szOrdnungsmerkmalBuffer, short nOrdnungsmerkmalBufferSize, long *plStatus, char *szVsnrVfnrBuffer, short nVsnrVfnrBufferSize, char *szDatensatzIdBuffer, short nDatensatzIdBufferSize, char *szErrorTextBuffer, short nErrorTextBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe eines Buffers ist zu klein.
Parameter
• lBetrNrVU (OUT) Betriebsnummer des Verursachers.
• szOrdnungsmerkmal (OUT) Aktenzeichen des Verursachers.
• plStatus (OUT) 0 = noch keine Antwort 1 = Versicherungs- oder Verfahrensnummer erhalten 2 = Fehler 3 = kein Ergebnis 4 = kein eindeutiges Ergebnis
• szVsnrVfnrBuffer (OUT) Versicherungs- oder Verfahrensnummer. Der VsnrVfnr-Buffer sollte eine Größe von 13 Zeichen haben.
• nVsnrVfnrBufferSize (IN) Größe des VsnrVfnr-Buffers.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de136
• szDatensatzIdBuffer (OUT) Beim Versand übermittelte Datensatz-Id. Der DatensatzId-Buffer sollte eine Größe von 21 Zeichen haben.
• nDatensatzIdBufferSize (IN) Größe des Address-Buffers.
• szErrorBuffer (OUT) Wenn der Paramter plStatus den Wert 2 hat, steht in diesem Buffer der Fehlertext. Der Error-Buffer sollte eine Größe von mindestens 73 Zeichen haben.
• nErrorTextBufferSize (IN) Größe des Error-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
137© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_sv_vsnrvfnr_close
Schließt die Datenbank für Versicherungs- und Verfahrensnummern.
void perfidia_sv_vsnrvfnr_close ();
Rückgabewerte
keine
Parameter
keine
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de138
perfidia_sv_protocol_open
Öffnet die SV-Protokolldatei.
long perfidia_sv_protocol_open ( short nYear, short nMonth, short nDay, long lDataType, short nAnst, short nTestmerker, short nAction, short nCompletion );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
Parameter
• nYear (IN) Jahr, ab dem Protokolleinträge gelesen werden.
• nMonth (IN) Monat (1-12), ab dem Protokolleinträge gelesen werden.
• nDay (IN) Tag (1-31), ab dem Protokolleinträge gelesen werden.
• lDataType (IN) 0x00000000 (0) = alle Datentypen 0x00000001 (1) = Beitragsnachweise [?BNA0*.*] 0x00000002 (2) = Zahlstellen-Beitragsnachweise [?BNZ0*.*] 0x00000004 (4) = Beitragserhebung [?BEA0*.*] 0x00000008 (8) = DEÜV-Meldungen [?DUA0*.*] 0x00000010 (16) = Entgeltersatzleistungen [?EEL0*.*] 0x00000020 (32) = ELENA-Daten (MVDS) [?ENA0*.*] 0x00000040 (64) = ELENA-Daten (DSVV) [?ENR0*.*] 0x00000080 (128) = Zahlstellenmeldeverfahren [?ZAV0*.*] 0x00000100 (256) = AAG-Erstattungsanträge [?AAG0*.*] 0x00000200 (512) = Entgeltbescheinigungen [?VBA0*.*] 0x00000400 (1024) = VSA-Rückmeldung [?VSA0*.*] 0x00000800 (2048) = euBP-Daten (LOHN) [?EBE0*.*] 0x00001000 (4096) = SAG-Daten [?SAG0*.*] 0x00002000 (8192) = ZAK-Daten [?ZAK0*.*] 0x00004000 (16384) = euBP-Daten (FIBU) [?EBF0*.*] 0x00008000 (32768) = euBP-Antworten [?EBR0*.*] 0x00010000 (65536) = BEA-Arbeitsbescheinigungen [?ALG0*.*] 0x00040000 (262144) = EEL-Rückmeldungen [?EEK*.*] 0x00080000 (524288) = AAG-Rückmeldungen [?AAK*.*]
v3.90.161 PERFIDIA Toolkit Reference
139© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
0x00100000 (1048576) = VSNR-Abfragen [?DSV*.*] 0x00200000 (2097152) = euBP-Dokumente [?0BP*.*] 0x00400000 (4194304) = UV-Lohnnachweis [?UVL*.*] 0x00800000 (8388608) = Abfrage der UV-Stammdaten [?UVS*.*] 0x01000000 (16777216) = UV-Stammdaten [?UVU*.*] 0x02000000 (33554432) = Rückmeldung der angeforderten EBV-Werte [?ARV*.*] 0x04000000 (67108864) = Anforderung der EBV-Werte [?RVA*.*] 0x08000000 (134217728) = A1-Anträge [?A1A*.*] 0x10000000 (268435456) = Bewilligung/Ablehnung der A1-Anträge [?A1S*.*]
• nAnnahmestelle (IN) 0 = alle 1 = nur alle AOK-Annahmestellen 2 = nur 15451439, vdek 3 = nur 37912580, IKK 4 = nur 35382142, BKK 5 = nur 47056789, LKK 6 = nur 99086875, SeeKK 7 = nur 98000006, BKN (Allgemein) 8 = nur 17625773, DASBV 9 = nur 66667777, DSRV 10 = nur 77772222, ZSS 11 = nur 98094032, BKN (Knappschaft) 12 = nur 64672791, AOK Baden-Württemberg 13 = nur 87880235, AOK Bayern/Thüringen 14 = nur 05174740, AOK Sachsen 15 = nur 20158137, AOK Bremen/Bremerhaven 16 = nur 29720865, AOK Niedersachsen 17 = nur 47860681, AOK Hessen/Saarland 18 = nur 51605725, AOK Rheinland-Pfalz 19 = nur 01000251, AOK MV/Rheinland/HH/SH 20 = nur 34364249, AOK Rheinland/HH 21 = nur 01000262, AOK Berlin/BB/Sachsen-Anhalt 22 = nur 33526082, AOK Westfalen-Lippe 23 = nur 25942967, Mobil ISC 24 = nur 76665732, BA 25 = nur 95783331, DGUV 26 = nur 93121302, ITSG 27 = nur 93951443, AOK Sachsen-Anhalt 28 = nur 92111581, DAK-G 98 = nur 99300222, eVpT (neue Kernprüfung) 99 = nur 99300001, eVpT (normal)
• nTestmerker (IN) 0 = nur Echtdaten 1 = nur Testdaten 2 = Echt- und Testdaten
• nAction (IN) 0 = alle Protokolleinträge 10 = Datenversand 11 = Datenempfang 12 = Quittung 13 = Datenbank-Einträge der Send- und Antwortdaten gelöscht 14 = Datenbank-Einträge der Antwortdaten gelöscht Wenn der Parameter ‚lDataType‘ den Wert 0 hat, unterstützt der Parameter ‚nAction‘ auch folgende Werte: 1 = Versenden des Zertifikatsantrags 2 = Einlesen der Zertifizierungsantwort
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de140
3 = Passwortänderung 4 = Einlesen der Annahmestellen-Zertifikate 6 = Zertifikat importieren 7 = Datenbank bereinigen (START) 8 = Datenbank bereinigen (ENDE)
• nCompletion (IN) 0 = alle Protokolleinträge 1 = nur Protokolleinträge mit ErrorCode ungleich 0 2 = nur Protokolleinträge mit ErrorCode gleich 0
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Nach dem Lesen der Protokolleinträge mit der Funktion perfidia_sv_protocol_next muß die Datei mit der Funktion perfidia_sv_protocol_close geschlossen werden.
v3.90.161 PERFIDIA Toolkit Reference
141© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_sv_protocol_next
Nach einem erfolgreichen Aufruf der Funktion perfidia_sv_protocol_open liefert diese Funktion solange den nächsten Protokolleintrag, bis sie mit PE_NO_DATA zurückkommt.
long perfidia_sv_protocol_next ( char *szDateTimeBuffer, short nDateTimeBufferSize, long *plDataType, short *pnAction, long *plErrorCode, long *plBetrNrAnst, short *pnAnst, short *pnTestmerker, long *plDatNumSend, long *plDatNumRecv, char *szFilenameBuffer, short nFilenameBufferSize, char *szAddressBuffer, short nAddressBufferSize, short *pnExtraServer );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe eines Buffers ist zu klein.
Parameter
• szDateTimeBuffer (OUT) DateTime-Buffer sollte eine Größe von 15 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMD-Dhhmmss.
• nDateTimeBufferSize (IN) Größe des DateTime-Buffers.
• plDataType (OUT) 0x00000001 (1) = Beitragsnachweise [?BNA0*.*] 0x00000002 (2) = Zahlstellen-Beitragsnachweise [?BNZ0*.*] 0x00000004 (4) = Beitragserhebung [?BEA0*.*] 0x00000008 (8) = DEÜV-Meldungen [?DUA0*.*] 0x00000010 (16) = Entgeltersatzleistungen [?EEL0*.*] 0x00000020 (32) = ELENA-Daten (MVDS) [?ENA0*.*]
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de142
0x00000040 (64) = ELENA-Daten (DSVV) [?ENR0*.*] 0x00000080 (128) = Zahlstellenmeldeverfahren [?ZAV0*.*] 0x00000100 (256) = AAG-Erstattungsanträge [?AAG0*.*] 0x00000200 (512) = Entgeltbescheinigungen [?VBA0*.*] 0x00000400 (1024) = VSA-Rückmeldung [?VSA0*.*] 0x00000800 (2048) = euBP-Daten (LOHN) [?EBE0*.*] 0x00001000 (4096) = SAG-Daten [?SAG0*.*] 0x00002000 (8192) = ZAK-Daten [?ZAK0*.*] 0x00004000 (16384) = euBP-Daten (FIBU) [?EBF0*.*] 0x00008000 (32768) = euBP-Antworten [?EBR0*.*] 0x00010000 (65536) = BEA-Arbeitsbescheinigungen [?ALG0*.*] 0x00040000 (262144) = EEL-Rückmeldungen [?EEK*.*] 0x00080000 (524288) = AAG-Rückmeldungen [?AAK*.*] 0x00100000 (1048576) = VSNR-Abfragen [?DSV*.*] 0x00200000 (2097152) = euBP-Dokumente [?0BP*.*] 0x00400000 (4194304) = UV-Lohnnachweis [?UVL*.*] 0x00800000 (8388608) = Abfrage der UV-Stammdaten [?UVS*.*] 0x01000000 (16777216) = UV-Stammdaten [?UVU*.*] 0x02000000 (33554432) = Rückmeldung der angeforderten EBV-Werte [?ARV*.*] 0x04000000 (67108864) = Anforderung der EBV-Werte [?RVA*.*] 0x08000000 (134217728) = A1-Anträge [?A1A*.*] 0x10000000 (268435456) = Bewilligung/Ablehnung der A1-Anträge [?A1S*.*]
• pnAction (OUT) 10 = Datenversand 11 = Datenempfang 12 = Quittung 13 = Datenbank-Einträge der Send- und Antwortdaten gelöscht 14 = Datenbank-Einträge der Antwortdaten gelöscht Wenn der Parameter ‚plDataType‘ den Wert 0 hat, hat der Parameter ‚pnAction‘ folgende Bedeutung: 1 = Versenden des Zertifikatsantrags 2 = Einlesen der Zertifizierungsantwort 3 = Passwortänderung 4 = Einlesen der Annahmestellen-Zertifikate 6 = Zertifikat importieren 7 = Datenbank bereinigen (START) 8 = Datenbank bereinigen (ENDE)
• plErrorCode (OUT) 0 = kein Fehler, sonst ErrorCode Wenn ‚nAction‘ den Wert 7 hat, steht in diesem Feld das Löschdatum (unix epoch).
• plBetrNrAnst (OUT) Betriebsnummer der Annahmestelle, wenn Action gleich 10, 11 oder 12.
• pnAnst (OUT) 1 = alle AOK-Annahmestellen (Datenversand bis Build 93) 2 = 15451439, vdek 3 = 37912580, IKK 4 = 35382142, BKK 5 = 47056789, LKK 6 = 99086875, SeeKK 7 = 98000006, BKN (Allgemein) 8 = 17625773, DASBV 9 = 66667777, DSRV 10 = 77772222, ZSS 11 = 98094032, BKN (Knappschaft) 12 = 64672791, AOK Baden-Württemberg 13 = 87880235, AOK Bayern/Thüringen
v3.90.161 PERFIDIA Toolkit Reference
143© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
14 = 05174740, AOK Sachsen 15 = 20158137, AOK Bremen/Bremerhaven 16 = 29720865, AOK Niedersachsen 17 = 47860681, AOK Hessen/Saarland 18 = 51605725, AOK Rheinland-Pfalz 19 = 01000251, AOK MV/Rheinland/HH/SH 20 = 34364249, AOK Rheinland/HH 21 = 01000262, AOK Berlin/BB/Sachsen-Anhalt 22 = 33526082, AOK Westfalen-Lippe 23 = 25942967, Mobil ISC 24 = 76665732, BA 25 = 95783331, DGUV 26 = nur 93121302, ITSG 27 = nur 93951443, AOK Sachsen-Anhalt 28 = nur 92111581, DAK-G 98 = 99300222, eVpT (neue Kernprüfung) 99 = 99300001, eVpT (normal)
• pnTestmerker (OUT) 0 = Echtdaten 1 = Testdaten
• plDatNumSend (OUT) Dateinummer, wenn vorhanden.
• plDatNumRecv (OUT) Dateinummer, wenn vorhanden.
• szFilenameBuffer (OUT) Dateiname, wenn vorhanden. Der Filename-Buffer sollte eine Größe von 65 Zeichen haben.
• nFilenameBufferSize (IN) Größe des Filename-Buffers.
• szAddressBuffer (OUT) Host- oder Email-Adresse der Annahmestelle, wenn Action gleich 10. Der Address-Buffer sollte eine Größe von 65 Zeichen haben.
• nAddressBufferSize (IN) Größe des Address-Buffers.
• npExtraServer (OUT) 0 = Email 1 = eXTra-Server
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de144
perfidia_sv_protocol_close
Schließt die SV-Protokolldatei.
void perfidia_sv_protocol_close ();
Rückgabewerte
keine
Parameter
keine
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
145© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_sv_komserver_status_http
Mit dieser Funktion kann der aktuelle Status des ITSG Kommunikationsservers geholt werden.
long perfidia_sv_komserver_status_http ( HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NO_INET (80107) Die Verbindung zum Internet konnte nicht hergestellt werden.
• PE_HTTP_OPEN (80501) Fehler beim Initialisieren der Internetverbindung. (1)
• PE_HTTP_CONNECT (80502) Fehler beim Initialisieren der Internetverbindung. (2)
• PE_HTTP_OPENREQUEST (80503) Fehler beim Initialisieren der Internetverbindung. (3)
• PE_HTTP_SENDREQUEST (80504) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_SENDREQUESTEX (80505) Fehler beim Verbindungsaufbau zum Server.
• PE_HTTP_WRITEFILE (80506) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_ENDREQUEST (80507) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_QUERYINFO (80508) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_READFILE (80509) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_PROXY_AUTH (80510) Proxy-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_AUTH (80511) Server-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_ERROR (80512) Interner Fehler beim Server.
Parameter
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Bei der Firewall muss der Port 80 (HTTP) für die folgenden Adressen freigeschaltet sein:
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de146
www.perfidia.de www1.perfidia.de www2.perfidia.de www3.perfidia.de
Wenn für die Internetverbindung eine Authentifizierung erforderlich ist, setzen Sie mit der Funktion perfi-dia_config_set die beiden Variablen HTTP_PROXY_USER und HTTP_PROXY_PASSWORD. Mit den beiden Variablen HTTP_PROXY_NAME und HTTP_PROXY_PORT können Sie die Einstellungen des Microsoft Internet Explorers überschreiben.
Diese Funktion erzeugt einen Progress.
v3.90.161 PERFIDIA Toolkit Reference
147© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_sv_komserver_status
Mit dieser Funktion kann der aktuelle Status des ITSG Kommunikationsservers für eine bestimmte Annahme-stelle ermittelt werden.
long perfidia_sv_komserver_status ( short nAnst, unsigned long *pulFlags, unsigned long *pulStatus, unsigned long *pulReserved );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NO_DATA (80129) Der Status des ITSG Kommunikationsservers ist nicht vorhanden. (siehe perfidia_sv_komserver_sta-tus_http)
Parameter
• nAnst (IN) 2 = nur 15451439, vdek 3 = nur 37912580, IKK 4 = nur 35382142, BKK 5 = nur 47056789, LKK 7 = nur 98000006, BKN (Allgemein) 8 = nur 17625773, DASBV 11 = nur 98094032, BKN (Knappschaft) 12 = nur 64672791, AOK Baden-Württemberg 13 = nur 87880235, AOK Bayern/Thüringen 14 = nur 05174740, AOK Sachsen 15 = nur 20158137, AOK Bremen/Bremerhaven 16 = nur 29720865, AOK Niedersachsen 17 = nur 47860681, AOK Hessen/Saarland 18 = nur 51605725, AOK Rheinland-Pfalz 19 = nur 01000251, AOK MV/Rheinland/HH/SH 20 = nur 34364249, AOK Rheinland/HH 21 = nur 01000262, AOK Berlin/BB/Sachsen-Anhalt 22 = nur 33526082, AOK Westfalen-Lippe 23 = nur 25942967, Mobil ISC
• pulFlags (OUT) 0x02 = Die Elster-Server können momentan Meldungen im ElsterLohn2-Verfahren annehmen. 0x04 = Der GKV-Kommunikationsserver unterstützt AES256. 0x08 = Der GKV-Kommunikationsserver unterstützt die Verwendung von GZIP. 0x10 = Der GKV-Kommunikationsserver unterstützt die Kommunikation über HTTPS.
• pulStatus (OUT) Der Status ergibt sich aus einer Kombination der folgenden Bits: 0x80000000 = AAG-Echtdaten empfangen 0x40000000 = AAG-Echtdaten senden 0x20000000 = AAG-Testdaten empfangen 0x10000000 = AAG-Testdaten senden 0x08000000 = BNA/BEA-Echtdaten empfangen
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de148
0x04000000 = BNA/BEA-Echtdaten senden 0x02000000 = BNA/BEA-Testdaten empfangen 0x01000000 = BNA/BEA-Testdaten senden 0x00800000 = BNZ-Echtdaten empfangen 0x00400000 = BNZ-Echtdaten senden 0x00200000 = BNZ-Testdaten empfangen 0x00100000 = BNZ-Testdaten senden 0x00080000 = DUA-Echtdaten empfangen 0x00040000 = DUA-Echtdaten senden 0x00020000 = DUA-Testdaten empfangen 0x00010000 = DUA-Testdaten senden 0x00008000 = EEL-Echtdaten empfangen 0x00004000 = EEL-Echtdaten senden 0x00002000 = EEL-Testdaten empfangen 0x00001000 = EEL-Testdaten senden 0x00000800 = ZAV-Echtdaten empfangen 0x00000400 = ZAV-Echtdaten senden 0x00000200 = ZAV-Testdaten empfangen 0x00000100 = ZAV-Testdaten senden
• pulReserved (OUT) Bei diesem Parameter muss ein NULL-Pointer übergeben werden.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Vor dieser Funktion muss die Funktion perfidia_sv_komserver_status_http erfolgreich aufgerufen worden sein.
Wenn nur der Status des Elster-Servers abgefragt werden soll, kann irgendeine gültige Annahmestelle ver-wendet werden.
v3.90.161 PERFIDIA Toolkit Reference
149© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_svafh_register
Mit dieser Funktion kann ein Absender beim PERFIDIA-Server registiert werden. Der Registierungscode wird nach erfolgreicher Registierung automatisch an die angegebene Email-Adresse geschickt.
long perfidia_svafh_register ( const char *szFirm, const char *szStreet, const char *szPostcodeCity, const char *szContact, const char *szPhone, const char *szEmail, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NO_INET (80107) Die Verbindung zum Internet konnte nicht hergestellt werden.
• PE_HTTP_OPEN (80501) Fehler beim Initialisieren der Internetverbindung. (1)
• PE_HTTP_CONNECT (80502) Fehler beim Initialisieren der Internetverbindung. (2)
• PE_HTTP_OPENREQUEST (80503) Fehler beim Initialisieren der Internetverbindung. (3)
• PE_HTTP_SENDREQUEST (80504) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_SENDREQUESTEX (80505) Fehler beim Verbindungsaufbau zum Server.
• PE_HTTP_WRITEFILE (80506) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_ENDREQUEST (80507) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_QUERYINFO (80508) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_READFILE (80509) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_PROXY_AUTH (80510) Proxy-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_AUTH (80511) Server-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_ERROR (80512) Interner Fehler beim Server.
Parameter
• szFirm (IN) Firmenname des Absenders.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de150
• szStreet (IN) Straße des Absenders. • szPostcodeCity (IN) PLZ und Ort des Absenders. • szContact (IN) Name des Absenders. • szPhone (IN) Telefon des Absenders. • szEmail (IN) Email des Absenders. • hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows
Anmerkungen
Bei der Firewall muß der Port 443 (HTTPS/SSL) für die Adresse www2.perfidia.de freigeschaltet sein.
Diese Funktion erzeugt einen Progress.
v3.90.161 PERFIDIA Toolkit Reference
151© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_svafh_regcode_check
Mit dieser Funktion kann der Registrierungscode auf Gültigkeit geprüft werden.
long perfidia_svafh_regcode_check ( const char *szEmail, const char *szRegcode, short nInternet, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NO_INET (80107) Die Verbindung zum Internet konnte nicht hergestellt werden.
• PE_HTTP_OPEN (80501) Fehler beim Initialisieren der Internetverbindung. (1)
• PE_HTTP_CONNECT (80502) Fehler beim Initialisieren der Internetverbindung. (2)
• PE_HTTP_OPENREQUEST (80503) Fehler beim Initialisieren der Internetverbindung. (3)
• PE_HTTP_SENDREQUEST (80504) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_SENDREQUESTEX (80505) Fehler beim Verbindungsaufbau zum Server.
• PE_HTTP_WRITEFILE (80506) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_ENDREQUEST (80507) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_QUERYINFO (80508) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_READFILE (80509) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_PROXY_AUTH (80510) Proxy-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_AUTH (80511) Server-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_ERROR (80512) Interner Fehler beim Server.
Parameter
• szEmail (IN) Email des Absenders.
• szRegcode (IN) Registrierungscode aus der Email.
• nInternet (IN) 0 = lokale Prüfung 1 = Überprüfung beim PERFIDIA Server
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de152
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows
Anmerkungen
Bei der Firewall muß der Port 443 (HTTPS/SSL) für die Adresse www2.perfidia.de freigeschaltet sind.
Diese Funktion erzeugt einen Progress, wenn die Überprüfung beim PERFIDIA Server stattfindet.
v3.90.161 PERFIDIA Toolkit Reference
153© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_svafh
Diese Funktion started die SV-Ausfüllhilfe.
long perfidia_svafh ( const char *szEmail, const char *szRegcode, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
Parameter
• szEmail (IN) Email des Absenders.
• szRegcode (IN) Registrierungscode aus der Email.
• hwndParent (IN) Dieser Window-Handle darf nicht NULL sein.
Betriebssysteme
Microsoft Windows
Anmerkungen
Bei der Firewall muß der Port 443 (HTTPS/SSL) für die Adresse www2.perfidia.de freigeschaltet sein.
Außerdem rufen Sie bitte vor dem Ausführen der Funkion perfidia_svafh folgende Betriebssystem-Funktion auf:
setlocale(LC_NUMERIC, ”English”);
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de154
Elster
Funktionsübersicht
Versandperfidia_elster_check perfidia_elster_send perfidia_elster_receive perfidia_elster_confirmation perfidia_elster_recv_open_statuscode perfidia_elster_recv_next perfidia_elster_recv_close perfidia_elster_status perfidia_elster_status_v2 perfidia_elster_recv_status perfidia_elster_recv_status_block perfidia_elster_block_error perfidia_elster_delete perfidia_elster_delete_recv perfidia_elster_highest_datnum perfidia_elster_transfer_ticket perfidia_elster_transfer_error perfidia_elster_transfer_error_v2 perfidia_elster_auth_info
Zertifikateperfidia_elster_cert_info perfidia_elster_cert_info_v2 perfidia_elster_cert_create perfidia_elster_cert_change_password perfidia_elster_cert_verify_password
Druckperfidia_elster_print perfidia_elster_pdf perfidia_elster_print_selection perfidia_elster_pdf_selection perfidia_elster_print_hdc_prepare perfidia_elster_print_hdc_prepare_selection perfidia_elster_print_hdc_cleanup
Protokollperfidia_elster_protocol_open_v2 perfidia_elster_protocol_next_v2 perfidia_elster_protocol_close
Hilfsfunktionen perfidia_elster_create_th perfidia_elster_info_v2 perfidia_elster_xml_build perfidia_elster_dat_build perfidia_elster_xml_send perfidia_elster_auth perfidia_elster_auth_test perfidia_elster_pfx_info perfidia_elster_pfx_info_v2 perfidia_elster_check_steuernummer
v3.90.161 PERFIDIA Toolkit Reference
155© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_check_idnr perfidia_lstb_etin
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de156
perfidia_elster_check
Mit dieser Funktion werden die Daten in der Send-Queue auf doppelte Dateinummer, etc. geprüft.
long perfidia_elster_check ( long lDataType, short nTestmerker, long lHiDatNumSend, unsigned long ulLowDatNumSend, long *plFilesFound, long *plFilesOK );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_DATNUM_USED (80135) Dateinummer bereits benutzt.
• PE_EMPTY_QUEUE (80134) Die Warteschlange ist leer.
Parameter
• lDataType (IN) 0x0001 (1) = Lohnsteuerbescheinigungen [?LSTB0_*.*] 0x0002 (2) = Lohnsteueranmeldungen [?LSTA0_*.*] 0x0004 (4) = Umsatzsteuervoranmeldungen [?USTA0_*.*] 0x0008 (8) = ELO2-Anmeldungen [?ELAN0_*.*] 0x0010 (16) = ELO2-Abmeldungen [?ELAB0_*.*] 0x0020 (32) = ELO2-Ummeldungen [?ELUM0_*.*] 0x0040 (64) = ELO2-Anfrage [?ELAF0_*.*] 0x0080 (128) = Umsatzsteuerjahreserklärung [?USTJ0_*.*]
• nTestmerker (IN) 0 = nur Echtdaten 1 = nur Testdaten 2 = Echt- und Testdaten
• lHiDatNumSend (IN) 0 = alle, sonst nur die angegebene Dateinummer
• ulLowDatNumSend (IN) 0 = alle, sonst nur die angegebene Dateinummer
• plFilesFound (OUT) Anzahl der Dateien die in der Send-Queue gefunden wurden.
• plFilesOK (OUT) Anzahl der Dateien die erfolgreich geprüft wurden.
v3.90.161 PERFIDIA Toolkit Reference
157© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de158
perfidia_elster_connect_test
Mit dieser Funktion kann ein Verbindungstest über eine geschützte Verbindung mit den ELSTER Servern durchgeführt werden.
long perfidia_elster_connect_test ( long lReserved, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_SERVER_BUSY (80163) Der Server ist momentan überlastet.
• PE_TOO_MANY_REQUESTS (80165) Die Kommunikation wurde vom Server wegen zu vielen Anfragen abgebrochen.
• PE_CERTSTORE_MISSING_CERT (80169) Im Windows-Zertifikatsspeicher fehlt ein benötigtes ELSTER PCA- oder CA-Zertifikat.
Parameter
• plReserved (IN) Dieser Parameter muss den Wert 0 haben.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Diese Funktion erzeugt einen Progress und läuft immer über eine geschützte Internetverbindung.
Wichtiger Hinweis: Um die ELSTER Server nicht unnötig zu belasten, darf diese Funktion nicht regelmäßig bzw. automatisiert aufgerufen werden. Diese Funktion sollte nur manuell vom Anwender ausgeführt werden können.
v3.90.161 PERFIDIA Toolkit Reference
159© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_send
Mit dieser Funktion können die Daten aus der Send-Queue ‚ofd‘ verschlüsselt und an die Clearingstellen der OFD versendet werden.
long perfidia_elster_send ( const char *szElsterPassword, long lDataType, short nTestmerker, long lHiDatNumSend, unsigned long ulLowDatNumSend, long *plFilesFound, long *plFilesSent, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PASSWORD (80106) Ungültiges Passwort.
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_DATNUM_USED (80135) Dateinummer bereits benutzt.
• PE_PEMKEY (80113) Es existiert kein gültiger Schlüssel.
• PE_EMPTY_QUEUE (80134) Die Warteschlange ist leer.
• PE_SERVER_BUSY (80163) Der Server ist momentan überlastet.
• PE_NEW_PERFIDIA (80167) Für den Versand der Daten wird eine neuere PERFIDIA Version benötigt.
• PE_SERVER_MAINTENANCE (80168) Der Versand der Daten ist momentan nicht möglich, da die Server gewartet werden.
• PE_CERTSTORE_MISSING_CERT (80169) Im Windows-Zertifikatsspeicher fehlt ein benötigtes ELSTER PCA- oder CA-Zertifikat.
Parameter
• szElsterPassword (IN) Passwort des ELSTER-Zertifikats.
• lDataType (IN) 0x0001 (1) = Lohnsteuerbescheinigungen [?LSTB0_*.*] 0x0002 (2) = Lohnsteueranmeldungen [?LSTA0_*.*] 0x0004 (4) = Umsatzsteuervoranmeldungen [?USTA0_*.*] 0x0008 (8) = ELO2-Anmeldungen [?ELAN0_*.*] 0x0010 (16) = ELO2-Abmeldungen [?ELAB0_*.*]
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de160
0x0020 (32) = ELO2-Ummeldungen [?ELUM0_*.*] 0x0040 (64) = ELO2-Anfrage [?ELAF0_*.*] 0x0080 (128) = Umsatzsteuerjahreserklärung [?USTJ0_*.*] 0x0200 (512) = ELO2-AZVU [?ELAZ0_*.*]
• nTestmerker (IN) 0 = nur Echtdaten 1 = nur Testdaten 2 = Echt- und Testdaten
• lHiDatNumSend (IN) 0 = alle, sonst nur die angegebene Dateinummer
• ulLowDatNumSend (IN) 0 = alle, sonst nur die angegebene Dateinummer
• plFilesFound (OUT) Anzahl der Dateien die in der Send-Queue gefunden wurden.
• plFilesSent (OUT) Anzahl der Dateien die erfolgreich versendet wurden.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Diese Funktion erzeugt einen Progress. Die Kommunikation mit den Clearingstellen der OFD erfolgt über HTTP.
v3.90.161 PERFIDIA Toolkit Reference
161© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_receive
Mit dieser Funktion können Antworten für die versendeten Daten abgeholt werden. Neben dem ELSTER XML-Format werden die Antworten auch in einem fixen Datenformat (siehe docs/record_descriptions.pdf) gespei-chert.
Die Datenarten Lohnsteueranmeldung, Umsatzsteuervoranmeldung und ELO2-Anfrage laufen im sogenann-ten Online-Verfahren. Da bei diesem Verfahren die Antwort schon direkt nach dem Versand zur Verfügung steht, werden diese Datenarten in dieser Funktion nicht unterstützt.
long perfidia_elster_receive ( const char *szElsterPassword, long lDataType, short nTestmerker, long lHiDatNumSend, unsigned long ulLowDatNumSend, long *plFilesFound, long *plFilesRecv, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PASSWORD (80106) Ungültiges Passwort.
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_NO_DATA (80129) Es sind keine Daten vorhanden, die auf eine Protokollantwort warten.
• PE_PEMKEY (80113) Es existiert kein gültiger Schlüssel.
• PE_EMPTY_QUEUE (80134) Die Warteschlange ist leer.
• PE_INVALID_FORMAT (80144) Ungültiges Format.
• PE_SERVER_BUSY (80163) Der Server ist momentan überlastet.
• PE_NEW_PERFIDIA (80167) Für den Versand der Daten wird eine neuere PERFIDIA Version benötigt.
• PE_SERVER_MAINTENANCE (80168) Der Versand der Daten ist momentan nicht möglich, da die Server gewartet werden.
• PE_CERTSTORE_MISSING_CERT (80169) Im Windows-Zertifikatsspeicher fehlt ein benötigtes ELSTER PCA- oder CA-Zertifikat.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de162
Parameter
• szElsterPassword (IN) Passwort des ELSTER-Zertifikats.
• lDataType (IN) 0x0001 (1) = Lohnsteuerbescheinigungen [?LSTB0_*.*] 0x0008 (8) = ELO2-Anmeldungen [?ELAN0_*.*] 0x0010 (16) = ELO2-Abmeldungen [?ELAB0_*.*] 0x0020 (32) = ELO2-Ummeldungen [?ELUM0_*.*]
• nTestmerker (IN) 0 = nur Echtdaten 1 = nur Testdaten 2 = Echt- und Testdaten
• lHiDatNumSend (IN) 0 = alle, sonst nur die angegebene Dateinummer
• ulLowDatNumSend (IN) 0 = alle, sonst nur die angegebene Dateinummer
• plFilesFound (OUT) Anzahl der Dateien für die eine Antwort gesucht wurde.
• plFilesRecv (OUT) Anzahl der Dateien die erfolgreich empfangen wurden.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Diese Funktion erzeugt einen Progress. Die Kommunikation mit den Clearingstellen der OFD erfolgt über HTTP
v3.90.161 PERFIDIA Toolkit Reference
163© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_confirmation
Mit dieser Funktion können alle im Ordner ‚ofd/sendq‘ befindlichen Quittungen versendet werden.
long perfidia_elster_confirmation ( const char *szElsterPassword, long *plConfirmFound, long *plConfirmSent, HWND hwndParent)
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_EMPTY_QUEUE (80134) Keine Quittungen in der Send-Queue gefunden.
• PE_PASSWORD (80106) Ungültiges Passwort.
• PE_SERVER_BUSY (80163) Der Server ist momentan überlastet.
• PE_NEW_PERFIDIA (80167) Für den Versand der Daten wird eine neuere PERFIDIA Version benötigt.
• PE_SERVER_MAINTENANCE (80168) Der Versand der Daten ist momentan nicht möglich, da die Server gewartet werden.
• PE_CERTSTORE_MISSING_CERT (80169) Im Windows-Zertifikatsspeicher fehlt ein benötigtes ELSTER PCA- oder CA-Zertifikat.
Parameter
• szElsterPassword (IN) Passwort des ELSTER-Zertifikats.
• plConfirmFound (OUT) Anzahl der Quittungen, die in der Send-Queue gefunden wurden.
• plConfirmSent (OUT) Anzahl der Quittungen, die erfolgreich versendet wurden.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Diese Funktion erzeugt einen Progress.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de164
perfidia_elster_recv_open_statuscode
Öffnet die Protokolldatei der empfangenen Antworten.
long perfidia_elster_recv_open_statuscode ( short nQuittung, long lDataType, short nReserved, );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
Parameter
• nQuittung (IN) 0 = nur nicht quittierte Antworten lesen 1 = nur quittierte Antworten lesen
• lDataType (IN) 0x0001 (1) = Lohnsteuerbescheinigungen [?LSTB0_*.*] 0x0002 (2) = Lohnsteueranmeldungen [?LSTA0_*.*] 0x0004 (4) = Umsatzsteuervoranmeldungen [?USTA0_*.*] 0x0008 (8) = ELO2-Anmeldungen [?ELAN0_*.*] 0x0010 (16) = ELO2-Abmeldungen [?ELAB0_*.*] 0x0020 (32) = ELO2-Ummeldungen [?ELUM0_*.*] 0x0040 (64) = ELO2-Anfrage [?ELAF0_*.*]
• nReserved (IN) Hier muss der Wert Null übergeben werden.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Nach dem Lesen der Protokolleinträge mit der Funktion perfidia_elster_recv_next_v2 muss die Datei mit der Funktion perfidia_elster_recv_close geschlossen werden.
v3.90.161 PERFIDIA Toolkit Reference
165© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_recv_next_v2
Nach einem erfolgreichen Aufruf der Funktion perfidia_elster_recv_open_statuscode liefert diese Funktion solange den nächsten Protokolleintrag, bis sie mit PE_NO_DATA zurückkommt.
long perfidia_elster_recv_next ( char *szDateTimeBuffer, short nDateTimeBufferSize, long *plDataType, short *pnTestmerker, long *plHiDatNumSend, unsigned long *pulLowDatNumSend, short *pnStatusCode, long *plDatNumRecv, short *pnNutzdatenBlockCount, short *pnElsterInfoCount, long *plTotalErrorCount, char szFilenameBuffer, short nFilenameBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe eines Buffers ist zu klein.
Parameter
• szDateTimeBuffer (OUT) DateTime-Buffer sollte eine Größe von 15 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMD-Dhhmmss.
• nDateTimeBufferSize (IN) Größe des DateTime-Buffers.
• plDataType (OUT) 0x0001 (1) = Lohnsteuerbescheinigungen [?LSTB0_*.*] 0x0002 (2) = Lohnsteueranmeldungen [?LSTA0_*.*] 0x0004 (4) = Umsatzsteuervoranmeldungen [?USTA0_*.*] 0x0008 (8) = ELO2-Anmeldungen [?ELAN0_*.*] 0x0010 (16) = ELO2-Abmeldungen [?ELAB0_*.*] 0x0020 (32) = ELO2-Ummeldungen [?ELUM0_*.*] 0x0040 (64) = ELO2-Anfrage [?ELAF0_*.*]
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de166
• pnTestmerker (OUT) 0 = Echtdaten 1 = Testdaten
• plHiDatNumSend (OUT) Dateinummer, wenn vorhanden.
• pulLowDatNumSend (OUT) Dateinummer, wenn vorhanden.
• pnStatusCode (OUT) 0 = keine Fehler, nicht quittiert 1 = Datenfehler, nicht quittiert 2 = Übertragungsfehler, nicht quittiert 10 = keine Fehler, quittiert 11 = Datenfehler, quittiert 12 = Übertragungsfehler, quittiert
• plDatNumRecv (OUT) Dateinummer, wenn vorhanden.
• pnNutzdatenBlockCount (OUT) Anzahl der enthaltenen Nutzdatenblöcke.
• pElsterInfoCount(OUT) Anzahl der enthaltenen ELSTER-Info-Tags, sofern vorhanden Diese können mit der Funktione perfi-dia_elster_info_v2 ausgelesen werden.
• plTotalErrorCount (OUT) Anzahl der enthaltenen Fehler.
• szFilenameBuffer (OUT) Enthält den Dateinamen der Antwort. Der Buffer sollte ein Größe von 65 Zeichen haben.
• nFilenameBufferSize (IN) Größe des Filename-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
167© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_recv_close
Schließt die Protokolldatei.
void perfidia_elster_recv_close ();
Rückgabewerte
keine
Parameter
keine
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de168
perfidia_elster_status
Mit dieser Funktion kann der Status zu einem Datenversand ermittelt werden.
long perfidia_elster_status ( long lDataType, short nTestmerker, long lHiDatNumSend, unsigned long ulLowDatNumSend, short *pnStatusCode, long *plDatNumRecv, short *pnNutzdatenblockCount, short *pnElsterInfoCount, long *plTotalErrorCount long *plFlags );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDataType (IN) 0x0001 (1) = Lohnsteuerbescheinigungen [?LSTB0_*.*] 0x0002 (2) = Lohnsteueranmeldungen [?LSTA0_*.*] 0x0004 (4) = Umsatzsteuervoranmeldungen [?USTA0_*.*] 0x0008 (8) = ELO2-Anmeldungen [?ELAN0_*.*] 0x0010 (16) = ELO2-Abmeldungen [?ELAB0_*.*] 0x0020 (32) = ELO2-Ummeldungen [?ELUM0_*.*] 0x0040 (64) = ELO2-Anfrage [?ELAF0_*.*]
• nTestmerker (IN) 0 = Echtdaten 1 = Testdaten
• lHiDatNumSend (IN) Dateinummer (High)
• ulLowDatNumSend (IN) Dateinummer (Low)
• pnStatusCode (OUT) 0 = noch keine Antwort vorhanden 1 = Antworten fehlen noch 2 = Übertragungsfehler 3 = Antworten vollständig, keine Fehler 4 = Antworten vollständig, einige Datensätze fehlerhaft 5 = Antworten vollständig, alle Datensätze fehlerhaft
v3.90.161 PERFIDIA Toolkit Reference
169© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• plDatNumRecv (OUT) Dateinummer der Antwort, wenn verfügbar. (0 bis 9.999.999)
• pnNutzdatenBlockCount (OUT) Anzahl der Nutzdatenblöcke.
• pnElsterInfoCount (OUT) Anzahl der ELSTER-Info-Tags. Diese können mit der Funktione perfidia_elster_info_v2 ausgelesen werden.
• plTotalErrorCount (OUT) Anzahl der gefundenen Fehler, wenn StatusCode gleich 1, 2, 4 oder 5 ist.
• plFlags (OUT) 0x01 (1) = Dateiname im alten Format. (lb??????.dat, la??????.dat oder ua??????.dat) 0x100000000 (4294967296) = partielle Verarbeitung
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de170
perfidia_elster_status_v2
Mit dieser Funktion kann der Status zu einem Datenversand ermittelt werden.
long perfidia_elster_status_v2 ( long lDataType, short nTestmerker, long lHiDatNumSend, unsigned long ulLowDatNumSend, short *pnStatusCode, long *plDatNumRecv, short *pnNutzdatenblockCount, short *pnElsterInfoCount, long *plTotalErrorCount long *plFlags long *plLastDatNumRecv );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDataType (IN) 0x0001 (1) = Lohnsteuerbescheinigungen [?LSTB0_*.*] 0x0002 (2) = Lohnsteueranmeldungen [?LSTA0_*.*] 0x0004 (4) = Umsatzsteuervoranmeldungen [?USTA0_*.*] 0x0008 (8) = ELO2-Anmeldungen [?ELAN0_*.*] 0x0010 (16) = ELO2-Abmeldungen [?ELAB0_*.*] 0x0020 (32) = ELO2-Ummeldungen [?ELUM0_*.*] 0x0040 (64) = ELO2-Anfrage [?ELAF0_*.*]
• nTestmerker (IN) 0 = Echtdaten 1 = Testdaten
• lHiDatNumSend (IN) Dateinummer (High)
• ulLowDatNumSend (IN) Dateinummer (Low)
• pnStatusCode (OUT) 0 = noch keine Antwort vorhanden 1 = Antworten fehlen noch 2 = Übertragungsfehler 3 = Antworten vollständig, keine Fehler 4 = Antworten vollständig, einige Datensätze fehlerhaft 5 = Antworten vollständig, alle Datensätze fehlerhaft
v3.90.161 PERFIDIA Toolkit Reference
171© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• plDatNumRecv (OUT) Dateinummer der Antwort, wenn verfügbar. (0 bis 9.999.999)
• pnNutzdatenBlockCount (OUT) Anzahl der Nutzdatenblöcke.
• pnElsterInfoCount (OUT) Anzahl der ELSTER-Info-Tags. Diese können mit der Funktione perfidia_elster_info_v2 ausgelesen werden.
• plTotalErrorCount (OUT) Anzahl der gefundenen Fehler, wenn StatusCode gleich 1, 2, 4 oder 5 ist.
• plFlags (OUT) 0x01 (1) = Dateiname im alten Format. (lb??????.dat, la??????.dat oder ua??????.dat) 0x100000000 (4294967296) = partielle Verarbeitung
• plLastDatNumRecv (OUT) Bei den Datenarten LStB, LStA und UStVA ist diese Dateinummer immer identisch mit dem Wert der Variablen ‚plDatNumRecv‘. Beim ElsterLohn2-Verfahren können jedoch für eine versendete Datei meh-rere Antwortdateien zurückgeliefert werden.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de172
perfidia_elster_recv_status
Mit dieser Funktion kann der Status zu einer empfangenen Antwort ermittelt werden.
long perfidia_elster_recv_status ( long lDataType, short nTestmerker, long lDatNumRecv, short *pnStatusCode, short *pnNutzdatenBlockCount, short *pnElsterInfoCount, long *plTotalErrorCount, );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDataType (IN) 0x0001 (1) = Lohnsteuerbescheinigungen [?LSTB0_*.*] 0x0002 (2) = Lohnsteueranmeldungen [?LSTA0_*.*] 0x0004 (4) = Umsatzsteuervoranmeldungen [?USTA0_*.*] 0x0008 (8) = ELO2-Anmeldungen [?ELAN0_*.*] 0x0010 (16) = ELO2-Abmeldungen [?ELAB0_*.*] 0x0020 (32) = ELO2-Ummeldungen [?ELUM0_*.*] 0x0040 (64) = ELO2-Anfrage [?ELAF0_*.*]
• nTestmerker (IN) 0 = Echtdaten 1 = Testdaten
• lDatNumRecv (IN) Dateinummer von 1 bis 9.999.999.
• pnStatusCode (OUT) 0 = keine Fehler, nicht quittiert 1 = Datenfehler, nicht quittiert 2 = Übertragungsfehler, nicht quittiert 10 = keine Fehler, quittiert 11 = Datenfehler, quittiert 12 = Übertragungsfehler, quittiert
• pnNutzdatenBlockCount (OUT) Anzahl der Nutzdatenblöcke.
• pnElsterInfoCount (OUT) Anzahl der ELSTER-Info-Tags. Diese können mit der Funktione perfidia_elster_info_v2 ausgelesen werden.
• plTotalErrorCount (OUT) Anzahl der gefundenen Fehler, wenn StatusCode gleich 1, 2, 11 oder 12 ist.
v3.90.161 PERFIDIA Toolkit Reference
173© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de174
perfidia_elster_recv_status_block
Mit dieser Funktion kann der Status und Fehlertext zu einem bestimmten Nutzdatenblock in einer empfange-nen Antwort ermittelt werden.
long perfidia_elster_recv_status_block ( long lDataType, short nTestmerker, long lDatNumRecv, short nNutzdatenBlockNum, short *pnStatusCode, long *plErrorCount, char *szNutzdatenTicketBuffer, short nNutzdatenTicketBufferSize, long *plErrorCode, char *szErrorTextBuffer, short nErrorTextBufferSize, );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDataType (IN) 0x0001 (1) = Lohnsteuerbescheinigungen [?LSTB0_*.*] 0x0002 (2) = Lohnsteueranmeldungen [?LSTA0_*.*] 0x0004 (4) = Umsatzsteuervoranmeldungen [?USTA0_*.*] 0x0008 (8) = ELO2-Anmeldungen [?ELAN0_*.*] 0x0010 (16) = ELO2-Abmeldungen [?ELAB0_*.*] 0x0020 (32) = ELO2-Ummeldungen [?ELUM0_*.*] 0x0040 (64) = ELO2-Anfrage [?ELAF0_*.*]
• nTestmerker (IN) 0 = Echtdaten 1 = Testdaten
• lDatNumRecv (IN) Dateinummer von 1 bis 9.999.999.
• nNutzdatenBlockNum (IN) Nutzdatenblock, dessen Status ermittelt werden soll 1 - 32.000.
• pnStatusCode (OUT) 0 = keine Fehler, nicht quittiert 1 = Datenfehler, nicht quittiert 2 = Übertragungsfehler, nicht quittiert 10 = keine Fehler, quittiert 11 = Datenfehler, quittiert 12 = Übertragungsfehler, quittiert
v3.90.161 PERFIDIA Toolkit Reference
175© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• plErrorCount (OUT) Anzahl der Fehler im Nutzdatenblock, wenn Statuscode gleich 1, 2, 11 oder 12 ist.
• szNutzdatenTicketBuffer (OUT) Enthält das Nutzdaten-Ticket des Datenblocks. Dieser Buffer sollte eine Länge von 21 Zeichen haben.
• nNutzdatenTicketSize (OUT) Länge des NutzdatenTicketBuffers.
• plErrorCode (OUT) Enthält einen 9-Stelligen Fehlercode zum Fehlertext, wenn Statuscode gleich 1, 2, 11 oder 12 ist.
• szErrorTextBuffer (OUT) Enthält den Fehlertext. Dieser Buffer sollte eine Länge von 2049 Zeichen haben.
• nErrorTextBufferSize (OUT) Länge des ErrorTextBuffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de176
perfidia_elster_recv_status_block_v2
Mit dieser Funktion kann der Status und Fehlertext zu einem bestimmten Nutzdatenblock in einer empfange-nen Antwort ermittelt werden.
long perfidia_elster_recv_status_block ( long lDataType, short nTestmerker, long lDatNumRecv, short nNutzdatenBlockNum, short *pnStatusCode, long *plErrorCount, char *szNutzdatenTicketBuffer, short nNutzdatenTicketBufferSize, long *plErrorCode, char *szErrorTextBuffer, short nErrorTextBufferSize, long *plVerarbeiteteNds, long *plNichtVerarbeiteteNds );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDataType (IN) 0x0001 (1) = Lohnsteuerbescheinigungen [?LSTB0_*.*] 0x0002 (2) = Lohnsteueranmeldungen [?LSTA0_*.*] 0x0004 (4) = Umsatzsteuervoranmeldungen [?USTA0_*.*] 0x0008 (8) = ELO2-Anmeldungen [?ELAN0_*.*] 0x0010 (16) = ELO2-Abmeldungen [?ELAB0_*.*] 0x0020 (32) = ELO2-Ummeldungen [?ELUM0_*.*] 0x0040 (64) = ELO2-Anfrage [?ELAF0_*.*]
• nTestmerker (IN) 0 = Echtdaten 1 = Testdaten
• lDatNumRecv (IN) Dateinummer von 1 bis 9.999.999.
• nNutzdatenBlockNum (IN) Nutzdatenblock, dessen Status ermittelt werden soll 1 - 32.000.
• pnStatusCode (OUT) 0 = keine Fehler, nicht quittiert 1 = Datenfehler, nicht quittiert 2 = Übertragungsfehler, nicht quittiert
v3.90.161 PERFIDIA Toolkit Reference
177© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
10 = keine Fehler, quittiert 11 = Datenfehler, quittiert 12 = Übertragungsfehler, quittiert
• plErrorCount (OUT) Anzahl der Fehler im Nutzdatenblock, wenn Statuscode gleich 1, 2, 11 oder 12 ist.
• szNutzdatenTicketBuffer (OUT) Enthält das Nutzdaten-Ticket des Datenblocks. Dieser Buffer sollte eine Länge von 21 Zeichen haben.
• nNutzdatenTicketSize (OUT) Länge des NutzdatenTicketBuffers.
• plErrorCode (OUT) Enthält einen 9-Stelligen Fehlercode zum Fehlertext, wenn Statuscode gleich 1, 2, 11 oder 12 ist.
• szErrorTextBuffer (OUT) Enthält den Fehlertext. Dieser Buffer sollte eine Länge von 2049 Zeichen haben.
• nErrorTextBufferSize (OUT) Länge des ErrorTextBuffers.
• plVerarbeiteteNds (OUT) Anzahl der verarbeiteten Datensätze.
• plNichtVerarbeiteteNds (OUT) Anzahl der nicht verarbeiteten Datensätze.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de178
perfidia_elster_block_error
Mit dieser Funktion können Fehlertexte und Fehlercodes zu einem bestimmten Nutzdatenblock in einer emp-fangenen Antwort ermittelt werden.
long perfidia_elster_block_error ( long lDataType, short nTestmerker, long lDatNumRecv, short nNutzdatenBlockNum, long lErrorNum, short *pnErrorType, long *plErrorCode, char *szErrorTextBuffer, short nErrorTextBufferSize, long *plReturn1, long *plReturn2, char *szReturn3Buffer, short nReturn3BufferSize, char *szReturn4Buffer, short nReturn4BufferSize, );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDataType (IN) 0x0001 (1) = Lohnsteuerbescheinigungen [?LSTB0_*.*] 0x0002 (2) = Lohnsteueranmeldungen [?LSTA0_*.*] 0x0004 (4) = Umsatzsteuervoranmeldungen [?USTA0_*.*] 0x0008 (8) = ELO2-Anmeldungen [?ELAN0_*.*] 0x0010 (16) = ELO2-Abmeldungen [?ELAB0_*.*] 0x0020 (32) = ELO2-Ummeldungen [?ELUM0_*.*] 0x0040 (64) = ELO2-Anfrage [?ELAF0_*.*]
• nTestmerker (IN) 0 = Echtdaten 1 = Testdaten
• lDatNumRecv (IN) Dateinummer von 1 bis 9.999.999.
• nNutzdatenBlockNum (IN) Nutzdatenblock, dessen Status ermittelt werden soll 1- 32.000.
• lErrorNum (IN) Die Fehlernummer, zu der ein Fehlertext ermittelt werden soll.
v3.90.161 PERFIDIA Toolkit Reference
179© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• pnErrorType (OUT) 1 = Datenfehler 2 = Übertragungsfehler
• plErrorCode (OUT) Enthält den Fehlercode zum Fehlertext.
• szErrorTextBuffer (OUT) Enthält den Fehlertext. Dieser Buffer sollte eine Länge von 2049 Zeichen haben.
• nErrorTextBufferSize (OUT) Länge des ErrorTextBuffers.
• plReturn1 (OUT) Derzeit nur bei LStB verwendet. Hier wird die laufende Nummer zurückgegeben.
• plReturn2 (OUT) Zur Zeit nicht verwendet.
• szReturn3Buffer (OUT) Derzeit nur bei LStB und ELO2 verwendet. Hier wird das Ordnungsmerkmal zurückgegeben. Der Buffer sollte eine Länge von 21 Bytes haben.
• nReturn3BufferSize (OUT) Länge des Return3Buffers.
• szReturn4Buffer (OUT) Derzeit nur bei LStB und ELO2 verwendet. Hier wird die IDNr zurückgegeben. Der Buffer sollte eine Länge von 13 Bytes haben.
• nReturn4BufferSize (OUT) Länge des Return4Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de180
perfidia_elster_delete
Löscht alle Protokolleinträge zu einer bestimmten Dateinummer aus den PERFIDIA-Log-Dateien, so dass die Dateinummer erneut zum Versenden benutzt werden kann. Das erfolgreiche Löschen wird protokolliert. (siehe perfidia_elster_protocol_open_v2)
long perfidia_elster_delete ( long lDataType, short nTestmerker, long lHiDatNumSend, unsigned long ulLowDatNumSend );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDataType (IN) 0x0001 (1) = Lohnsteuerbescheinigungen [?LSTB0_*.*] 0x0002 (2) = Lohnsteueranmeldungen [?LSTA0_*.*] 0x0004 (4) = Umsatzsteuervoranmeldungen [?USTA0_*.*] 0x0008 (8) = ELO2-Anmeldungen [?ELAN0_*.*] 0x0010 (16) = ELO2-Abmeldungen [?ELAB0_*.*] 0x0020 (32) = ELO2-Ummeldungen [?ELUM0_*.*] 0x0040 (64) = ELO2-Anfrage [?ELAF0_*.*]
• nTestmerker (IN) 0 = Echtdaten 1 = Testdaten
• lHiDatNumSend (IN) Die Sende-Dateinummer (High).
• ulLowDatNumSend (IN) Die Sende-Dateinummer (Low).
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkung
Da bereits übermittelte Datensätze nicht erneut übermittelt werden können, sollte diese Funktion nur benutzt werden, wenn bei der Datenübermittlung ein Übertragungsfehler aufgetreten ist. (siehe Parameter ‚pnStatus-Code‘ in der perfidia_elster_status)
v3.90.161 PERFIDIA Toolkit Reference
181© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_delete_recv
Mit dieser Funktion können Antworten, die noch nicht quittiert wurden, gelöscht werden, damit in Sonderfällen ein erneutes Empfangen der Antwort möglich ist. Das erfolgreiche Löschen wird protokolliert. (siehe perfidia_elster_protocol_open_v2)
long perfidia_elster_delete_recv ( long lDataType, short nTestmerker, long lDatNumRecv, long lReserved );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDataType (IN) 0x0001 (1) = Lohnsteuerbescheinigungen [?LSTB0_*.*] 0x0002 (2) = Lohnsteueranmeldungen [?LSTA0_*.*] 0x0004 (4) = Umsatzsteuervoranmeldungen [?USTA0_*.*] 0x0008 (8) = ELO2-Anmeldungen [?ELAN0_*.*] 0x0010 (16) = ELO2-Abmeldungen [?ELAB0_*.*] 0x0020 (32) = ELO2-Ummeldungen [?ELUM0_*.*] 0x0040 (64) = ELO2-Anfrage [?ELAF0_*.*]
• nTestmerker (IN) 0 = Echtdaten 1 = Testdaten
• lDatNumRecv (IN) Die Antwort-Dateinummer 1- 9.999.999.
• lReserved (IN) Hier muss der Wert Null übergeben werden.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkung
Da bereits übermittelte Datensätze nicht erneut übermittelt werden können, sollte diese Funktion nur benutzt werden, wenn bei der Datenübermittlung ein Übertragungsfehler aufgetreten ist. (siehe Parameter ‚pnStatus-Code‘ in der perfidia_elster_status)
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de182
perfidia_elster_delete_all
Mit dieser Funktion werden unwideruflich sowohl alle Datenbankeinträge sowie die dazugehörigen Sende- und Antwortdateien löscht, die vor dem angebenen Zeitpunkt versendet bzw. empfangen wurden.
Wichtiger Hinweis: Abhängig von der Datenmenge kann diese Funktion einige Minuten bis einige Stunden dauern. Nach dem Start kann diese Funktion nicht mehr abgebrochen werden!
long perfidia_elster_delete_all ( long lDateDeleteTo, long lDataTypes, short nTestmerker, HWND hwndParent )
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_FILE_RENAMED (80809) Eine Datei konnte nicht umbenannt werden.
• PE_FILE_OPEN (80803) Fehler beim Öffnen der Datei.
• PE_FILE_NOFILE (80802) Die Datei existiert nicht.
• PE_FILE_SIZE (80810) Ungültige Dateilänge.
• PE_ISAM_IDX (80706) Fehler beim Erstellen der Index-Datei.
• PE_PARAMETER (80114) Der Wert für den Parameter ,szDateDeteleTo‘ oder ‚nTestmerker‘ ist nicht gültig.
Parameter
• lDateDeleteTo (IN) Datum, bis zu dem alle Daten gelöscht werden sollen (Format: JJJJMMTT). Das Löschdatum muss mindestens 2 Jahre vor dem aktuellen Tagesdatum liegen. Zum Beispiel: 20171231
• lDataTypes (IN) 0x0001 (1) = Lohnsteuerbescheinigungen [?LSTB0_*.*] 0x0002 (2) = Lohnsteueranmeldungen [?LSTA0_*.*] 0x0004 (4) = Umsatzsteuervoranmeldungen [?USTA0_*.*] 0x0008 (8) = ELO2-Anmeldungen [?ELAN0_*.*] 0x0010 (16) = ELO2-Abmeldungen [?ELAB0_*.*] 0x0020 (32) = ELO2-Ummeldungen [?ELUM0_*.*] 0x0040 (64) = ELO2-Anfrage [?ELAF0_*.*]
• nTestmerker (IN) 0 = Echtdaten 1 = Testdaten 2 = Echt- und Testdaten
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
v3.90.161 PERFIDIA Toolkit Reference
183© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkung
Diese Funktion erzeugt einen Progress.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de184
perfidia_elster_highest_datnum
Liefert die höchste Sende- bzw. Antwort-Dateinummer.
long perfidia_elster_highest_datnum ( short nType, long lDataType, short nTestmerker, long *plHiDatNum, unsigned long *pulLowDatNum );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• nType 0 = höchste versendete Dateinummer 1 = höchste empfangene Dateinummer 2 = höchste empfangene Dateinummer, die quittiert wurde.
• lDataType (IN) 0x0001 (1) = Lohnsteuerbescheinigungen [?LSTB0_*.*] 0x0002 (2) = Lohnsteueranmeldungen [?LSTA0_*.*] 0x0004 (4) = Umsatzsteuervoranmeldungen [?USTA0_*.*] 0x0008 (8) = ELO2-Anmeldungen [?ELAN0_*.*] 0x0010 (16) = ELO2-Abmeldungen [?ELAB0_*.*] 0x0020 (32) = ELO2-Ummeldungen [?ELUM0_*.*] 0x0040 (64) = ELO2-Anfrage [?ELAF0_*.*] 0x0200 (512) = ELO2-AZVU [?ELAZ0_*.*]
• nTestmerker (IN) 0 = Echtdaten 1 = Testdaten
• plHiDatNum (OUT) Die Sende (High-Wert)- bzw. Antwort-Dateinummer. Bei nType gleich 1 oder 2 wird hier die Antwortda-teinummer zurückgegeben.
• pulLowDatNum (OUT) Die Sende (Low-Wert)- Dateinummer.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
185© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_transfer_ticket
Mit dieser Funktion kann das TransferTicket zu einem Datenversand ermittelt werden.
long perfidia_elster_transfer_ticket ( long lDataType, short nTestmerker, long lHiDatNumSend, unsigned long ulLowDatNumSend, char *szTransferTicketBuffer, short nTransferTicketBufferSize, char *szSendDateBuffer, short nSendDateBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDataType (IN) 0x0001 (1) = Lohnsteuerbescheinigungen [?LSTB0_*.*] 0x0002 (2) = Lohnsteueranmeldungen [?LSTA0_*.*] 0x0004 (4) = Umsatzsteuervoranmeldungen [?USTA0_*.*] 0x0008 (8) = ELO2-Anmeldungen [?ELAN0_*.*] 0x0010 (16) = ELO2-Abmeldungen [?ELAB0_*.*] 0x0020 (32) = ELO2-Ummeldungen [?ELUM0_*.*] 0x0040 (64) = ELO2-Anfrage [?ELAF0_*.*]
• nTestmerker (IN) 0 = nur Echtdaten 1 = nur Testdaten
• lHiDatNumSend (IN) Die Sende-Dateinummer (High-Wert)
• ulLowDatNumSend (IN) Die Sende-Dateinummer (Low-Wert)
• szTransferTicketBuffer (OUT) Der TransferTicket-Buffer sollte eine Größe von 65 Zeichen haben.
• nTransferTicketBufferSize (IN) Größe des TransferTicket-Buffers.
• szSendDateBuffer (OUT) Der SendDate-Buffer sollte eine Größe von 15 Zeichen haben.
• nSendDateBufferSize (IN) Größe des SendDate-Buffers.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de186
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
187© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_transfer_error
Liefert die Fehlerinformationen, falls bei der Übertragung oder bei einer Protokollanforderung ein Fehler in der Clearingstelle auftritt.
long perfidia_elster_transfer_error ( long lDataType, short nTestMerker, long lHiDatNumSend, unsigned long ulLowDatNumSend, long *plReturnCode, char *szReturnTextBuffer, short nReturnTextBufferSize, char *szStackCodeBuffer, short nStackCodeBufferSize, char *szStackTextBuffer, short nStackTextBufferSize, char *szTransferTicketBuffer, short nTransferTicketBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe eines Buffers ist zu klein.
Parameter
• lDataType (IN) 0x0001 (1) = Lohnsteuerbescheinigungen [?LSTB0_*.*] 0x0002 (2) = Lohnsteueranmeldungen [?LSTA0_*.*] 0x0004 (4) = Umsatzsteuervoranmeldungen [?USTA0_*.*] 0x0008 (8) = ELO2-Anmeldungen [?ELAN0_*.*] 0x0010 (16) = ELO2-Abmeldungen [?ELAB0_*.*] 0x0020 (32) = ELO2-Ummeldungen [?ELUM0_*.*] 0x0040 (64) = ELO2-Anfrage [?ELAF0_*.*]
• nTestmerker (IN) 0 = nur Echtdaten 1 = nur Testdaten
• lHiDatNumSend (IN) Die Sende-Dateinummer.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de188
• ulLowDatNumSend (IN) Die Sende-Dateinummer.
• plReturnCode (OUT) ReturnCode der Clearingstelle.
• szReturnTextBuffer (OUT) ReturnText der Clearingstelle. Der ReturnText-Buffer sollte eine Länge von 2049 Zeichen haben.
• nReturnTextBufferSize (IN) Größe des ReturnText-Buffers.
• szStackCodeBuffer (OUT) StackCode der Clearingstelle. Der StackCode-Buffer sollte eine Länge von 513 Zeichen haben.
• nStackCodeBufferSize (IN) Größe des StackCode-Buffers.
• szStackTextBuffer (OUT) StackText der Clearingstelle. Der StackText-Buffer sollte eine Länge von 2049 Zeichen haben.
• nStackTextBufferSize (IN) Größe des StackText-Buffers.
• szTransferTicketBuffer (OUT) Der TransferTicket-Buffer sollte eine Größe von 65 Zeichen haben.
• nTransferTicketBufferSize (IN) Größe des TransferTicket-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
189© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_transfer_error_v2
Liefert die Fehlerinformationen, falls bei der Übertragung oder bei einer Protokollanforderung ein Fehler in der Clearingstelle auftritt.
long perfidia_elster_transfer_error_v2 ( char const *szFilename, long *plReturnCode, char *szReturnTextBuffer, short nReturnTextBufferSize, char *szStackCodeBuffer, short nStackCodeBufferSize, char *szStackTextBuffer, short nStackTextBufferSize, char *szTransferTicketBuffer, short nTransferTicketBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe eines Buffers ist zu klein.
Parameter
• szFilename (IN) Enthält den Dateinamen der Antwort, aus dem die Informationen gelesen werden sollen.
• plReturnCode (OUT) ReturnCode der Clearingstelle.
• szReturnTextBuffer (OUT) ReturnText der Clearingstelle. Der ReturnText-Buffer sollte eine Länge von 2049 Zeichen haben.
• nReturnTextBufferSize (IN) Größe des ReturnText-Buffers.
• szStackCodeBuffer (OUT) StackCode der Clearingstelle. Der StackCode-Buffer sollte eine Länge von 513 Zeichen haben.
• nStackCodeBufferSize (IN) Größe des StackCode-Buffers.
• szStackTextBuffer (OUT) StackText der Clearingstelle. Der StackText-Buffer sollte eine Länge von 2049 Zeichen haben.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de190
• nStackTextBufferSize (IN) Größe des StackText-Buffers.
• szTransferTicketBuffer (OUT) Der TransferTicket-Buffer sollte eine Größe von 65 Zeichen haben.
• nTransferTicketBufferSize (IN) Größe des TransferTicket-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
191© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_auth_info
Liefert Informationen über das Authentifizierungsverfahren zu einer übertragenen Datenlieferung.
long perfidia_elster_auth_info ( long lDataType, short nTestmerker, long lHiDatNumSend, unsigned long ulLowDatNumSend, short *pnAuthType, char *szTokenLabelBuffer, short nTokenLabelBufferSize, char *szCertCommonNameBuffer, short nCertCommonNameBufferSize, long *plCertSernr );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da der TransferTicket-Buffer zu klein ist.
Parameter
• lDataType (IN) 0x0001 (1) = Lohnsteuerbescheinigungen [?LSTB0_*.*] 0x0002 (2) = Lohnsteueranmeldungen [?LSTA0_*.*] 0x0004 (4) = Umsatzsteuervoranmeldungen [?USTA0_*.*] 0x0008 (8) = ELO2-Anmeldungen [?ELAN0_*.*] 0x0010 (16) = ELO2-Abmeldungen [?ELAB0_*.*] 0x0020 (32) = ELO2-Ummeldungen [?ELUM0_*.*] 0x0040 (64) = ELO2-Anfrage [?ELAF0_*.*]
• nTestmerker (IN) 0 = Echtdaten 1 = Testdaten
• lHiDatNumSend (OUT) Die Sende Dateinummer.
• ulLowDatNumSend (OUT) Die Sende Dateinummer.
• pnAuthType (OUT) 0 = keine
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de192
1 = ElsterBasis (Software-Zertifikat) 2 = ElsterSpezial (ELSTER Stick) 3 = ElsterPlus (Signaturkarte)
• szTokenLabelBuffer (OUT) Der TokenLabel-Buffer sollte eine Größe von 33 Zeichen haben.
• nTransferTicketBufferSize (IN) Größe des TokenLabel-Buffers.
• szCertCommonNameBuffer (OUT) Der CertCommonName-Buffer sollte eine Größe von 129 Zeichen haben.
• nCertCommonNameBufferSize (IN) Größe des CertCommonName-Buffers.
• plCertSernr (OUT) Seriennummer des bei der Authentifizierung verwendeten Zertifikats.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
193© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_answer_rebuild
Mit Hilfe dieser Funktionen können beim Empfang von Elsterlohn2-Daten erzeugten PERFIDIA DAT-Dateien erneut aufgebaut werden.
long perfidia_elster_answer_rebuild ( long lDataType, short nTestmerker, long lDatNumRecv );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_FILE_NOFILE (80802) Die Datendatei konnte nicht gefunden werden.
Parameter
• lDataType (IN) 0x0008 (8) = ELO2-Anmeldungen [?ELAN0_*.*] 0x0010 (16) = ELO2-Abmeldungen [?ELAB0_*.*] 0x0020 (32) = ELO2-Ummeldungen [?ELUM0_*.*] 0x0040 (64) = ELO2-Anfrage [?ELAF0_*.*]
• nTestmerker (IN) 0 = Echtdaten 1 = Testdaten
• lDatNumRecv (IN) Die Dateinummer der empfangenen Daten.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de194
perfidia_elster_print
Mit dieser Funktion können LStB, LStA und UStVA, die im PERFIDIA Datenformat vorliegen, gedruckt werden.
long perfidia_elster_print ( const char *szDatFile, const char *szEmpfaenger, const char *szOrdnungsmerkmal, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_PRINT_NO_PRINTER (81001) Keinen Drucker gefunden.
• PE_PRINT_WINSPOOL (81002) Fehler beim Speichern des Druckauftrags in der Druckerwarteschlage.
• PE_PRINT_PAGE (81003) Fehler beim Erstellen des Druckauftrags.
• PE_PRINT_USER_ABORT (81004) Druck durch Benutzer abgebrochen.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann nicht gefunden werden.
Parameter
• szDatFile (IN) Name der Datendatei.
• szEmpfaenger (IN) Empfaenger des Datenteils.
• szOrdnungsmerkmal (IN) Nur LStB: Druckt die Lohnsteuerbescheinigung mit dem angegebenen Ordnungsmerkmal.
• hwndParent (IN) Dieser Window-Handle muss gültig sein.
Betriebssysteme
Microsoft Windows
v3.90.161 PERFIDIA Toolkit Reference
195© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Anmerkungen
Bitte beachten Sie, dass nur die Daten im Ausdruck erscheinen können, die auch in den Datensätzen vorhan-den sind.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de196
perfidia_elster_pdf
Mit dieser Funktion können LStB, LStA und UStVA, die im PERFIDIA Datenformat vorliegen, als PDF gedruckt werden.
long perfidia_elster_pdf ( const char *szPdfFile, short nOverwrite, const char *szDatFile, const char *szEmpfaenger, const char *szOrdnungsmerkmal, );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_LSTB_EMPFAENGER (70302) Empfänger ungültig.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann nicht gefunden werden.
• PE_FILE_EXISTS (80808) Die PDF-Datei existiert bereits.
• PE_FILE_CREATE (80801) Fehler beim Erstellen der PDF-Datei.
• PE_FILE_WRITE (80806) Fehler beim Schreiben der PDF-Datei.
Parameter
• szPdfFile (IN) Dateiname der PDF-Datei.
• nOverwrite (IN) 0 = vorhandene PDF-Datei nie überschreiben 1 = vorhandene PDF-Datei immer überschreiben
• szDatFile (IN) Name der Datendatei.
• szEmpfaenger (IN) Empfaenger des Datenteils.
v3.90.161 PERFIDIA Toolkit Reference
197© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• szOrdnungsmerkmal (IN) Druckt die Lohnsteuerbescheinigung mit dem angegebenen Ordnungsmerkmal.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de198
perfidia_elster_print_selection
Mit dieser Funktion können LStB, LStA und UStVA, die im PERFIDIA Datenformat vorliegen, gedruckt werden.
long perfidia_elster_print_selection ( const char *szDatFile, const char *szSelection, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_PRINT_NO_PRINTER (81001) Keinen Drucker gefunden.
• PE_PRINT_WINSPOOL (81002) Fehler beim Speichern des Druckauftrags in der Druckerwarteschlage.
• PE_PRINT_PAGE (81003) Fehler beim Erstellen des Druckauftrags.
• PE_PRINT_USER_ABORT (81004) Druck durch Benutzer abgebrochen.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann im Ordner ‘ofd/sent’ nicht gefunden werden.
Parameter
• szPdfFile (IN) Dateiname der PDF-Datei.
• nOverwrite (IN) 0 = vorhandene PDF-Datei nie überschreiben 1 = vorhandene PDF-Datei immer überschreiben
• szDatFile (IN) Name der Datendatei.
v3.90.161 PERFIDIA Toolkit Reference
199© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• szSelection (IN) In dieser Zeichenkette wird angegeben, welche Datensätze gedruckt werden sollen. Hierbei werden die Positionen der Sätze durch Komma getrennt hintereinander geschrieben. Die Positionen der Sätze entsprechen der Reihenfolge aus der Datendatei und beginnen mit 1.
Beispiel: Es sollen die Datensätze 2., 7., 9. und 12. gedruckt werden. Ergebnis: 2,7,9,12
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de200
perfidia_elster_pdf_selection
Mit dieser Funktion können LStB, LStA und UStVA, die im PERFIDIA Datenformat vorliegen, als PDF gedruckt werden.
long perfidia_elster_print_selection ( const char *szPdfFile, short nOverwrite, const char *szDatFile, const char *szSelection, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_PRINT_NO_PRINTER (81001) Keinen Drucker gefunden.
• PE_PRINT_WINSPOOL (81002) Fehler beim Speichern des Druckauftrags in der Druckerwarteschlage.
• PE_PRINT_PAGE (81003) Fehler beim Erstellen des Druckauftrags.
• PE_PRINT_USER_ABORT (81004) Druck durch Benutzer abgebrochen.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann im Ordner ‘ofd/sent’ nicht gefunden werden.
Parameter
• szDatFile (IN) Name der Datendatei.
• szSelection (IN) In dieser Zeichenkette wird angegeben, welche Datensätze gedruckt werden sollen. Hierbei werden die Positionen der Sätze durch Komma getrennt hintereinander geschrieben. Die Positionen der Sätze entsprechen der Reihenfolge aus der Datendatei und beginnen mit 1.
v3.90.161 PERFIDIA Toolkit Reference
201© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Beispiel: Es sollen die Datensätze 2., 7., 9. und 12. gedruckt werden. Ergebnis: 2,7,9,12
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de202
perfidia_elster_print_hdc_prepare
Mit den Funktionen perfidia_elster_print_hdc_* können LStB, LStA und UStVA, die im PERFIDIA Datenformat vorliegen, auf einem Device-Kontext (DC-Object) gezeichnet werden. Dies kann zum einen zur Vorschau aber auch zum individuellen Druck genutzt werden.
Die Funktion perfidia_elster_print_hdc_prepare bzw. perfidia_elster_print_hdc_prepare_selection bereitet die Ausgabe vor, mit der Funktion perfidia_elster_print_hdc_draw werden die einzelnen Seiten gezeichnet und die Funktion perfidia_elster_print_hdc_cleanup gibt die verwendeten Resourcen wieder frei.
long perfidia_elster_print_hdc_prepare ( const char *szDatFile, const char *szEmpfaenger, const char *szOrdnungsmerkmal, short *pnPageCount );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NULL_POINTER (80136) Ungültiger NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_FILE_NOFILE (80802) Datendatei nicht gefunden.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann nicht gefunden werden.
Parameter
• szDatFile (IN) Name der Datendatei.
• szEmpfaenger (IN) Empfaenger des Datenteils.
• szOrdnungsmerkmal (IN) Nur LStB: Druckt die Lohnsteuerbescheinigung mit dem angegebenen Ordnungsmerkmal.
• pnPageCount (OUT) Gibt die Anzahl der Seiten zurück.
v3.90.161 PERFIDIA Toolkit Reference
203© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Betriebssysteme
Microsoft Windows
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de204
perfidia_elster_print_hdc_prepare_selection
Mit den Funktionen perfidia_lstb_print_hdc_* können LStB, LStA und UStVA, die im PERFIDIA Datenformat vorliegen, auf einem Device-Kontext (DC-Object) gezeichnet werden. Dies kann zum einen zur Vorschau aber auch zum individuellen Druck genutzt werden.
Die Funktion perfidia_elster_print_hdc_prepare bzw. perfidia_elster_print_hdc_prepare_selection bereitet die Ausgabe vor, mit der Funktion perfidia_elster_print_hdc_draw werden die einzelnen Seiten gezeichnet und die Funktion perfidia_elster_print_hdc_cleanup gibt die verwendeten Resourcen wieder frei.
long perfidia_elster_print_hdc_prepare_selection ( const char *szDatFile, const char *szSelection, short *pnPageCount );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NULL_POINTER (80136) Ungültiger NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_FILE_NOFILE (80802) Datendatei nicht gefunden.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann nicht gefunden werden.
Parameter
• szDatFile (IN) Name der Datendatei.
• szSelection (IN) In dieser Zeichenkette wird angegeben, welche Datensätze gedruckt werden sollen. Hierbei werden die Positionen der Sätze durch Komma getrennt hintereinander geschrieben. Die Positionen der Sätze entsprechen der Reihenfolge aus der Datendatei und beginnen mit 1.
Beispiel: Es sollen der 2., 7., 9. und 12. Datensatz gedruckt werden. Ergebnis: 2,7,9,12
• pnPageCount (OUT) Gibt die Anzahl der Seiten zurück.
v3.90.161 PERFIDIA Toolkit Reference
205© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Betriebssysteme
Microsoft Windows
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de206
perfidia_elster_print_hdc_cleanup
Gibt die verwendeten Resourcen wieder frei. Nähere Information unter der Funktion perfidia_elster_print_hdc_prepare.
void perfidia_elster_print_hdc_cleanup ();
Rückgabewerte
keine
Parameter
keine
Betriebssysteme
Microsoft Windows
v3.90.161 PERFIDIA Toolkit Reference
207© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_print_hdc_draw
Mit den Funktionen perfidia_elster_print_hdc_* können LStB, LStA und UStVA, die im PERFIDIA Datenformat vorliegen, auf einem Device-Kontext (DC-Object) gezeichnet werden. Dies kann zum einen zur Vorschau aber auch zum individuellen Druck genutzt werden.
Die Funktion perfidia_elster_print_hdc_prepare bzw. perfidia_elster_print_hdc_prepare_selection bereitet die Ausgabe vor, mit der Funktion perfidia_elster_print_hdc_draw werden die einzelnen Seiten gezeichnet und die Funktion perfidia_elster_print_hdc_cleanup gibt die verwendeten Resourcen wieder frei.
long perfidia_elster_print_hdc_draw ( HDC hDC, short nPage, long lLeftMargin, long lTopMargin, double dScaleFactor );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Ungültiger NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• hDC (IN) Handle auf einen Device-Kontext (DC-Object).
• nPage (IN) Seite (1 bis nPageCount), die gezeichnet werden soll.
• lLeftMargin (IN) Linker Rand in der Einheit HIMETRICS.
• lTopMargin (IN) Oberer Rand in der Einheit HIMETRICS.
• dScaleFactor (IN) Skalierungsfaktor (Standard: 1.0).
Betriebssysteme
Microsoft Windows
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de208
perfidia_elster_create_th
Generiert einen ELSTER-Transport-Header.
long perfidia_elster_create_th ( const char *szDatFile, short nOverwrite, const char *szNutzdatenXml, const char *szVerfahren, const char *szDatenart, const char *szVorgang, const char *szEmpfaengerId, const char *szEmpfaenger, long lTestmerker, long lHerstellerId, const char *szDatenLieferant );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NULL_POINTER (80136) Ungültiger NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_FILE_NOFILE (80802) Datendatei nicht gefunden.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann nicht gefunden werden.
Parameter
• szDatFile (IN) Name der Datendatei.
• nOverwrite (IN) 0 = vorhandene PDF-Datei nie überschreiben 1 = vorhandene PDF-Datei immer überschreiben
• szNutzdatenXML (IN) Name der Nutzdaten-XML.
• szVerfahren (IN) Name des Verfahrens. z.B.: ‚ElsterLohn‘ oder ‚ElsterAnmeldung‘
v3.90.161 PERFIDIA Toolkit Reference
209© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• szDatenart (IN) Name der Datenart. z.B.: ‚LStB‘ oder UStVA‘
• szVorgang (IN) Name der Übertragungsart. z.B.: ‚send-NoSig-Offline‘
• szEmpfeangerId (IN) Epfänger-Id
• szEmpfaenger (IN) Empfänger
• szTestmerker (IN) Elster-Testmerker.
• szHerstellerId (IN) Angabe der HerstellerId.
• szDatenLieferant (IN) Angaben zum Datenlieferanten.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Bitte beachten Sie das Dokument ‚ERiC-DTK.pdf‘ (ELSTER-Online)
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de210
perfidia_elster_cert_info
Gibt die Gültigkeitsdauer des Elster-Zertifikats an.
long perfidia_elster_cert_info ( short *pnDaysLeft );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keinen Schlüssel gefunden.
• PE_PEMKEY (80113) Schlüsselinformationen können nicht gelesen werden.
Parameter
• pnDaysLeft (OUT) Gültigkeitsdauer in Tagen.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
211© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_cert_info_v2
Hiermit können Sie Informationen über das ELSTER-Zertifikat ermitteln.
long perfidia_elster_cert_info_v2 ( short *pnDaysLeft, char *szFirmBuffer, short nFirmBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keinen Schlüssel gefunden.
• PE_PEMKEY (80113) Schlüsselinformationen können nicht gelesen werden.
• PE_BUFSIZE (80110) Länge des Buffers ist zu klein.
Parameter
• pnDaysLeft (OUT) Gültigkeitsdauer in Tagen.
• szFirmBuffer (OUT) Firmenname aus dem Zertifikat. Dieser Buffer sollte eine Länge von 65 Zeichen haben.
• nFirmBufferSize (IN) Länge des Firm-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de212
perfidia_elster_cert_create
Generiert ein Zertifikat für das Elster-Verfahren. Aus technischen Gründen darf der Firmenname keine Um-laute (ä, ü, etc.) oder Sonderzeichen (ß, +, &, Semikolon, Unterstrich, Komma, \\, Anführungszeichen, §, etc.) enthalten. Nur die folgenden Sonderzeichen können maschinell verarbeitet werden: Leerzeichen, /, Minus, Punkt, und ().
long perfidia_elster_cert_create ( const char *szFirm, long lBetrNr, const char *szElsterPassword, short nOverwrite );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PASSWORD (80106) Ungültiges Passwort.
• PE_BETRNR_NOT_VALID (80104) Ungültige Betriebsnummer.
• PE_CERTPARM (80114) - Passwort zu kurz/lang. (min. 6, max. 20 Zeichen) - Firma zu lang. (max. 64 Zeichen) - Firma enthält nicht erlaubte Sonderzeichen.
• PE_KEYEXISTS (80120) Es existiert bereits ein gültiger Schlüssel.
• PE_KEYGEN (80119) Es ist ein Fehler beim Generieren des Zertifikats aufgetreten. Einen genaueren Fehlertext erhält man mit der Funktion perfidia_get_last_error.
• PE_AUIINIT (80116) Schlüsseldatei kann nicht bearbeitet werden.
• PE_AUIACTKEY (80117) Interner Fehler in Info-Datei.
• PE_AUIWRITE (80118) Fehler beim Schreiben des Schlüssels.
Parameter
• szFirm (IN) Firmenname des Absenders. (max. 64 Zeichen)
• lBetrNr (IN) Betriebsnummer des Absenders.
• szElsterPassword (IN) Das Elster-Passwort (min. 6, max. 20 Zeichen).
• nOverwrite (IN) 0 = Falls ein gültiges Zertifikat existiert, wird es nicht überschrieben. 1 = Auch ein gültiges Zertifikat wird überschrieben.
v3.90.161 PERFIDIA Toolkit Reference
213© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de214
perfidia_elster_cert_change_password
Ändert das ELSTER-Passwort.
long perfidia_elster_cert_change_password ( const char *szOldElsterPassword, const char *szNewElsterPassword );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_CERTPARM (80114) Neues Passwort zu lang. (max. 20 Zeichen)
• PE_PASSWORD (80106) Altes Passwort ist falsch. Passwort wird nicht geändert.
• PE_AUIINIT (80116) Schlüsseldatei kann nicht gelesen werden.
• PE_AUIACTKEY (80117) Interner Fehler in Info-Datei.
• PE_AUIWRITE (80118) Passwort-Änderung ist fehlgeschlagen.
Parameter
• szOldElsterPassword (IN) Altes Elster-Passwort.
• szNewElsterPassword (IN) Neues Elster-Passwort.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
215© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_cert_verify_password
Prüft das Elster-Passwort.
long perfidia_elster_cert_verify_password ( const char *szElsterPassword );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PASSWORD (80106) Passwort ist falsch.
• PE_AUIINIT (80116) Schlüsseldatei kann nicht gelesen werden.
• PE_AUIACTKEY (80117) Interner Fehler in Info-Datei.
Parameter
• szElsterPassword (IN) Elster-Passwort.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de216
perfidia_elster_ca_install
Prüft oder installiert die benötigten ELSTER PCA- und CA-Zertifikate im Windows Zertifikatsspeicher.
long perfidia_elster_ca_install ( short nType );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NO_DATA (80129) Es sind nicht alle benötigten Zertifikate im Windows Zertifikatsspeicher.
Parameter
• nType (IN) 0 = nur prüfen 1 = PCA-Zertifikat prüfen und ggf. CA-Zertifikat unter dem aktuellen Benutzer installieren 2 = PCA-Zertifikat und CA-Zertifikat unter dem aktuellen Benutzer installieren 3 = PCA-Zertifikat und CA-Zertifikat für den gesamten Computer installieren
Betriebssysteme
Microsoft Windows
Anmerkungen
Parameter ‚nType‘ gleich 2: Wenn das benötigte ELSTER PCA-Zertifikat nicht installiert ist, erscheint vom Betriebssystem ein Dialog, der den Benutzer fragt, ob das PCA-Zertifkat akzeptiert werden soll. Parameter ‚nType‘ gleich 3: Für die Installation der ELSTER Zertifikate für den gesamten Computer werden Administrationrechte benötigt. Falls der aktuelle Benutzer keine Administrationsrechte hat, werden diese auto-matisch über das Windows UAC (User Access Control) angefordert.
v3.90.161 PERFIDIA Toolkit Reference
217© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_protocol_open_v2
Öffnet die Protokolldatei für Elster.
long perfidia_elster_protocol_open_v2 ( short nYear, short nMonth, short nDay, long lDataType, short nTestmerker, short nAction, short nCompletion );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
Parameter
• nYear (IN) Jahr, ab dem Protokolleinträge gelesen werden.
• nMonth (IN) Monat (1-12), ab dem Protokolleinträge gelesen werden.
• nDay (IN) Tag (1-31), ab dem Protokolleinträge gelesen werden.
• lDataType (IN) 0x0001 (1) = Lohnsteuerbescheinigungen [?LSTB0_*.*] 0x0002 (2) = Lohnsteueranmeldungen [?LSTA0_*.*] 0x0004 (4) = Umsatzsteuervoranmeldungen [?USTA0_*.*] 0x0008 (8) = ELO2-Anmeldungen [?ELAN0_*.*] 0x0010 (16) = ELO2-Abmeldungen [?ELAB0_*.*] 0x0020 (32) = ELO2-Ummeldungen [?ELUM0_*.*] 0x0040 (64) = ELO2-Anfrage [?ELAF0_*.*]
• nTestmerker (IN) 0 = Echtdaten 1 = Testdaten
• nAction (IN) 0 = alle Protokolleinträge 10 = Datenversand 11 = Datenempfang 12 = Quittung 13 = Datenbank-Einträge der Send- und Antwortdaten gelöscht 14 = Datenbank-Einträge der Antwortdaten gelöscht Wenn der Parameter ‚lDataType‘ den Wert 0 hat, hat der Parameter ‚nAction‘ folgende Bedeutung: 1 = Zertifikat erstellt
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de218
3 = Passwortänderung 7 = Datenbank bereinigen (START) 8 = Datenbank bereinigen (ENDE)
• nCompletion (IN) 0 = alle Protokolleinträge 1 = nur Protokolleinträge mit ErrorCode ungleich 0 2 = nur Protokolleinträge mit ErrorCode gleich 0
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Nach dem Lesen der Protokolleinträge mit der Funktion perfidia_elster_protocol_next_v2 muß die Datei mit der Funktion perfidia_elster_protocol_close geschlossen werden.
v3.90.161 PERFIDIA Toolkit Reference
219© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_protocol_next_v2
Nach einem erfolgreichen Aufruf der Funktion perfidia_elster_protocol_open_v2 liefert diese Funktion solange den nächsten Protokolleintrag, bis sie mit PE_NO_DATA zurückkommt.
long perfidia_elster_protocol_next_v2 ( char *szDateTimeBuffer, short nDateTimeBufferSize, short *pnAction, long *plErrorCode, long *plDataType, short *pnTestmerker, long *plHiDatNumSend, unsigned long *pulLowDatNumSend, long *plDatNumRecv, char *szFilenameBuffer, short nFilenameBufferSize, char *szIPAddressBuffer, short nIPAddressBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe eines Buffers ist zu klein.
Parameter
• szDateTimeBuffer (OUT) DateTime-Buffer sollte eine Größe von 15 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMD-Dhhmmss.
• nDateTimeBufferSize (IN) Größe des DateTime-Buffers.
• pnAction (OUT) 10 = Datenversand 11 = Datenempfang 12 = Quittung 13 = Datenbank-Einträge der Send- und Antwortdaten gelöscht 14 = Datenbank-Einträge der Antwortdaten gelöscht Wenn der Parameter ‚plDataType‘ den Wert 0 hat, hat der Parameter ‚pnAction‘ folgende Bedeutung: 1 = Zertifikat erstellt
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de220
3 = Passwortänderung 7 = Datenbank bereinigen (START) 8 = Datenbank bereinigen (ENDE)
• plErrorCode (OUT) 0 = kein Fehler, sonst ErrorCode Wenn ‚nAction‘ den Wert 7 hat, steht hier das Löschdatum (unix epoch).
• plDataType (OUT) 0x0001 (1) = Lohnsteuerbescheinigungen [?LSTB0_*.*] 0x0002 (2) = Lohnsteueranmeldungen [?LSTA0_*.*] 0x0004 (4) = Umsatzsteuervoranmeldungen [?USTA0_*.*] 0x0008 (8) = ELO2-Anmeldungen [?ELAN0_*.*] 0x0010 (16) = ELO2-Abmeldungen [?ELAB0_*.*] 0x0020 (32) = ELO2-Ummeldungen [?ELUM0_*.*] 0x0040 (64) = ELO2-Anfrage [?ELAF0_*.*]
• pnTestmerker (OUT) -1 = Bei der Konvertierung von alten Datensätzen konnte der Testmerker nicht ermittelt werden. 0 = Echtdaten 1 = Testdaten
• plHiDatNumSend (OUT) Dateinummer der Sendedatei
• plLowDatNumSend (OUT) Dateinummer der Sendedatei
• plDatNumRecv (OUT) Dateinummer der Antwortdatei.
• szFilenameBuffer (OUT) Dateiname, wenn vorhanden. Der Filename-Buffer sollte eine Größe von 65 Zeichen haben.
• nFilenameBufferSize (IN) Größe des Filename-Buffers.
• szIPAddressBuffer (OUT) IP-Adresse der Elster-Clearingstelle, wenn vorhanden. Der IPAddress-Buffer sollte eine Größe von 65 Zeichen haben.
• nIPAddressBufferSize (IN) Größe des IPAddress-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
221© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_protocol_close
Schließt die Protokolldatei für Elster.
void perfidia_elster_protocol_close ();
Rückgabewerte
keine
Parameter
keine
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de222
perfidia_elster_info_v2
Mit dieser Funktion läßt sich der Inhalt des Tags ‚ElsterInfo‘ aus dem zurückgelieferten Transfer- bzw. Nutzda-ten-Header ermitteln.
long perfidia_elster_info_v2 ( long lDataType, short nTestmerker, long lDatNumRecv, short nElsterInfoNum, char *szInfoBuffer, short nInfoBufferSize, char *szNutzdatenTicketBuffer, short nNutzdatenTicketBufferSize, long *plReserved );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe eines Buffers ist zu klein.
Parameter
• lDataType (IN) 0x0001 (1) = Lohnsteuerbescheinigungen [?LSTB0_*.*] 0x0002 (2) = Lohnsteueranmeldungen [?LSTA0_*.*] 0x0004 (4) = Umsatzsteuervoranmeldungen [?USTA0_*.*] 0x0008 (8) = ELO2-Anmeldungen [?ELAN0_*.*] 0x0010 (16) = ELO2-Abmeldungen [?ELAB0_*.*] 0x0020 (32) = ELO2-Ummeldungen [?ELUM0_*.*] 0x0040 (64) = ELO2-Anfrage [?ELAF0_*.*]
• nTestmerker (IN) 0 = Echtdaten 1 = Testdaten
• lDatNumRecv (IN) Die Antwort-Dateinummer, für die der Info-Text ermittelt werden soll 1- 9.999.999.
• nElsterInfoNum (IN) Bei einer Datenlieferung können mehrere ‚ElsterInfo‘-Tags geliefert werden. Jeder Tags wird einer aufsteigenden Nummer (ElsterInfoNum) beginnend mit 1 zugeordnet. Die Anzahl der enthaltenen Info-Tags lässt sich mit der Funktion perfidia_elster_status emitteln.
• szInfoBuffer (OUT) Der Info-Buffer sollte eine Größe von 2049 Zeichen haben.
v3.90.161 PERFIDIA Toolkit Reference
223© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• nInfoBufferSize (IN) Größe des Info-Buffers.
• szNutzdatenTicketBuffer (OUT) Der NutzdatenTicket-Buffer sollte eine Größe von 21 Zeichen haben.
• nNutzdatenTicketSize (IN) Größe des NutzdatenTicket-Buffers.
• plReserved (OUT) Bei diesem Parameter muss ein NULL-Pointer übergeben werden.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de224
perfidia_elster_xml_build
Mit dieser Funktion können Sie LStB-, LStA- und UStA-Dateien vom ASCII-Format ins XML-Format konvertie-ren. Die XML-Dateien können dann gegen die Elster-Schemata validiert werden.
long perfidia_elster_xml_build ( const char *szDatFile, const char *szXmlFile, short nDatenTeil, short nOverwrite );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_FILE_CREATE (80801) Fehler beim Erstellen der Datei.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_WRITE (80806) Schreibfehler in Datei.
• PE_FILE_EXISTS (80808) Die Datei existiert bereits.
• Fehlercodes von 1000 bis 3999 Diese stehen für Fehler im Dateiformat. (siehe Datensatzbeschreibung)
Parameter
• szDatFile (IN) Name, der ASCII-Datei. Die Datei muss nicht in der Send-Queue stehen!
• szXmlFile (IN) Name, der XML-Datei.
• nDatenTeil (IN) 0 = vollständige XML 1 = nur DatenTeil
• nOverwrite (IN) 0 = vorhandene Datei nie überschreiben 1 = vorhandene Datei immer überschreiben
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
225© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Anmerkungen
Bei einem Fehler im Dateiformat (Fehlercode 1000 bis 3999) läßt sich mit der Funktion perfidia_get_last_er-ror_v2 herausfinden, an welcher Stelle der Fehler aufgetreten ist.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de226
perfidia_elster_dat_build
Mit dieser Funktion können Elster-XML-Dateien in das PERFIDIA-ASCII-Format konvertiert werden.
long perfidia_elster_dat_build ( const char *szXmlFile, const char *szDatFile, const char *szFileContent, short Overwrite );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_FILE_CREATE (80801) Fehler beim Erstellen der Datei.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_WRITE (80806) Schreibfehler in Datei.
• PE_FILE_EXISTS (80808) Die Datei existiert bereits.
• PE_ELSTER_XML_READ (70317) Fehler beim Lesen der XML-Datei.
• PE_ELSTER_XML_WRITE (70318) Fehler beim Schreiben der XML-Datei.
• PE_ELSTER_XML_NOT_VALID (70303) Fehler in der XML-Datei. Nähere Informationen mit der Funktion perfidia_get_last_error_v2.
Parameter
• szXmlFile (IN) Name, der XML-Datei.
• szDatFile (IN) Name, der ASCII-Datei. Die Datei muss nicht in der Send-Queue stehen!
• szFileContent (IN) Inhalt des Feldes ‘FILE_CONTENT’ für den Vorlaufsatz. Bei diesem Parameter darf ein NULL-Pointer übergeben werden.
• nOverwrite (IN) 0 = vorhandene Datei nie überschreiben 1 = vorhandene Datei immer überschreiben
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
227© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Anmerkungen
Bei einem Fehler in der XML-Datei läßt sich mit der Funktion perfidia_get_last_error_v2 herausfinden, bei welchem Datensatz der Fehler aufgetreten ist.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de228
perfidia_elster_xml_send
Die XML-Dateien aus ‘ofd/xml/sendq’ werden verschlüsselt und an eine Clearingstelle versendet. Die XML-Antworten der Clearingstelle werden entschlüsselt und in ‘ofd/xml/recvq’ unter dem gleichen Dateinamen gespeichert. Die Dateinamen dürfen inklusive Endung nicht länger als 64 Zeichen sein!
long perfidia_elster_xml_send ( const char *szElsterPassword, long *plFilesFound, long *plFilesSent, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PASSWORD (80106) Ungültiges Passwort.
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_EMPTY_QUEUE (80134) Die Send-Queue ist leer.
• PE_SCANSENDQ (80133) Fehler beim Scannen der Send-Queue.
• PE_ELSTER_CERT (70301) Fehler beim Lesen des Zertifikats.
• PE_ELSTER_PARSE_PROT (70302) Fehler beim Parsen der Protokollantwort.
• PE_ELSTER_XML_NOT_VALID (70303) XML-Datei hat ein ungültiges Format.
• PE_ELSTER_UNKNOWN_PROC (70304) Unbekanntes Verfahren: Antwort kann nicht ausgewertet werden.
• PE_ELSTER_XML_READ (70317) Fehler beim Lesen der XML-Datei.
• PE_ELSTER_XML_WRITE (70318) Fehler beim Schreiben der XML-Datei.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80803) Fehler beim Lesen der Datei.
• PE_FILE_WRITE (80806) Fehler beim Schreiben der Datei.
• PE_LSTB_XML1 (70402) XML-Fehler 1 beim Erstellen der Daten.
v3.90.161 PERFIDIA Toolkit Reference
229© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• PE_LSTB_XML2 (70403) XML-Fehler 2 beim Erstellen der Daten.
• PE_LSTB_XML3 (70404) XML-Fehler 3 beim Erstellen der Daten.
• PE_LSTB_XML4 (70405) XML-Fehler 4 beim Erstellen der Daten.
• PE_LSTB_XML5 (70406) XML-Fehler 5 beim Erstellen der Daten.
• PE_LSTB_XML6 (70407) XML-Fehler 6 beim Erstellen der Daten.
• PE_LSTB_XML7 (70408) XML-Fehler 7 beim Erstellen der Daten.
• PE_LSTB_XML8 (70409) XML-Fehler 8 beim Erstellen der Daten.
• PE_LSTB_XML9 (70410) XML-Fehler 9 beim Erstellen der Daten.
• PE_LSTB_XML10 (70411) XML-Fehler 10 beim Erstellen der Daten.
• PE_NEW_PERFIDIA (80167) Für den Versand der Daten wird eine neuere PERFIDIA Version benötigt.
• PE_SERVER_MAINTENANCE (80168) Für den Versand der Daten wird eine neuere PERFIDIA Version benötigt.
Parameter
• szElsterPassword (IN) Das Elster-Passwort.
• plFilesFound (OUT) Anzahl der in der Send-Queue gefundenen Dateien.
• plFilesSent (OUT) Anzahl der erfolgreich versendeten Dateien.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Neben der XML-Erstellung muß bei dieser Funktion auch die XML-Auswertung selbst übernommen werden. Anstelle dieser Funktion können Sie auch die speziellen Funktionen wie zum Beispiel perfidia_lstb_send, perfidia_lsta_send oder perfidia_usta_send verwenden.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de230
perfidia_elster_xml_send_v2
Die XML-Dateien aus ‘ofd/xml/sendq’ werden verschlüsselt und an eine Clearingstelle versendet. Die XML-Antworten der Clearingstelle werden entschlüsselt und in ‘ofd/xml/recvq’ unter dem gleichen Dateinamen gespeichert. Die Dateinamen dürfen inklusive Endung nicht länger als 64 Zeichen sein!
long perfidia_elster_xml_send ( const char *szElsterPassword, const char *szFilenamePattern long *plFilesFound, long *plFilesSent, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PASSWORD (80106) Ungültiges Passwort.
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_EMPTY_QUEUE (80134) Die Send-Queue ist leer.
• PE_SCANSENDQ (80133) Fehler beim Scannen der Send-Queue.
• PE_ELSTER_CERT (70301) Fehler beim Lesen des Zertifikats.
• PE_ELSTER_PARSE_PROT (70302) Fehler beim Parsen der Protokollantwort.
• PE_ELSTER_XML_NOT_VALID (70303) XML-Datei hat ein ungültiges Format.
• PE_ELSTER_UNKNOWN_PROC (70304) Unbekanntes Verfahren: Antwort kann nicht ausgewertet werden.
• PE_ELSTER_XML_READ (70317) Fehler beim Lesen der XML-Datei.
• PE_ELSTER_XML_WRITE (70318) Fehler beim Schreiben der XML-Datei.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80803) Fehler beim Lesen der Datei.
• PE_FILE_WRITE (80806) Fehler beim Schreiben der Datei.
• PE_LSTB_XML1 (70402) XML-Fehler 1 beim Erstellen der Daten.
v3.90.161 PERFIDIA Toolkit Reference
231© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• PE_LSTB_XML2 (70403) XML-Fehler 2 beim Erstellen der Daten.
• PE_LSTB_XML3 (70404) XML-Fehler 3 beim Erstellen der Daten.
• PE_LSTB_XML4 (70405) XML-Fehler 4 beim Erstellen der Daten.
• PE_LSTB_XML5 (70406) XML-Fehler 5 beim Erstellen der Daten.
• PE_LSTB_XML6 (70407) XML-Fehler 6 beim Erstellen der Daten.
• PE_LSTB_XML7 (70408) XML-Fehler 7 beim Erstellen der Daten.
• PE_LSTB_XML8 (70409) XML-Fehler 8 beim Erstellen der Daten.
• PE_LSTB_XML9 (70410) XML-Fehler 9 beim Erstellen der Daten.
• PE_LSTB_XML10 (70411) XML-Fehler 10 beim Erstellen der Daten.
• PE_NEW_PERFIDIA (80167) Für den Versand der Daten wird eine neuere PERFIDIA Version benötigt.
• PE_SERVER_MAINTENANCE (80168) Für den Versand der Daten wird eine neuere PERFIDIA Version benötigt.
Parameter
• szElsterPassword (IN) Das Elster-Passwort.
• szFilenamePattern (IN) Zu versendende Datei. Der Wert kann Platzhalter enthalten (z.B.: validate_bilanz_*.xml).
• plFilesFound (OUT) Anzahl der in der Send-Queue gefundenen Dateien.
• plFilesSent (OUT) Anzahl der erfolgreich versendeten Dateien.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Neben der XML-Erstellung muß bei dieser Funktion auch die XML-Auswertung selbst übernommen werden. Anstelle dieser Funktion können Sie auch die speziellen Funktionen wie zum Beispiel perfidia_lstb_send, perfidia_lsta_send oder perfidia_usta_send verwenden.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de232
perfidia_elster_auth
Um Daten an die OFD authentifiziert zu übertragen, muss diese Funktion direkt vor dem Aufruf einer der fol-genden Versandfunktionen aufgerufen werden:
perfidia_lstb_send, perfidia_lsta_send, perfidia_usta_send, perfidia_elster_xml_send und perfidia_els-ter_xml_send_2
Wichtiger Hinweis: Nach jedem Aufruf einer Versandfunktion wird automatisch auf die Grundeinstellung ‚keine Authentifizierung‘ zurückgestellt.
long perfidia_elster_auth ( short nType, const char *szPin, const char *szParam1, const char *szParam2, const char *szParam3, const char *szParam4, const char *szParam5 );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_PASSWORD (80106) Ungültiges Passwort.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80803) Fehler beim Lesen der Datei.
• PE_INVALID_FORMAT (80143) Ungültiges Format.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_PKCS11_GENERAL (81101) Fehlerhafte Kommunikation über die PKCS#11-Schnittstelle.
• PE_PKCS11_LOAD_MODULE (81102) Die PKCS#11-Bibliothek konnte nicht geladen werden.
• PE_PKCS11_FUNCTION_NOT_SUPPORTED (81103) Der Funktionsaufruf wird nicht unterstützt.
• PE_PKCS11_NOT_INITIALIZED (81104) Die PKCS#11-Bibliothek ist nicht initialisiert.
• PE_PKCS11_NOT_FOUND (81105) PKCS#11-Objekt nicht gefunden.
• PE_PKCS11_DEVICE (81106) Kommunikationsfehler mit dem Device-Slot oder Token.
v3.90.161 PERFIDIA Toolkit Reference
233© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• PE_PKCS11_DEVICE_MEMORY (81107) Der Token hat nicht genügend Arbeitsspeicher.
• PE_PKCS11_DEVICE_REMOVED (81108) Der Token wurde während der Benutzung entfernt.
• PE_PKCS11_TOKEN_NOT_PRESENT (81109) Der Token ist nicht mehr verfügbar.
• PE_PKCS11_TOKEN_NOT_RECOGNIZED (81110) Der Token konnte nicht gefunden werden.
• PE_PIN_INCORRECT (81111) Die PIN ist nicht korrekt.
• PE_PIN_INVALID (81112) Die PIN enthält ungültige Zeichen.
• PE_PIN_EXPIRED (81113) Die PIN ist abgelaufen.
• PE_PIN_LOCKED (81114) Die PIN ist gesperrt.
• PE_USER_PIN_NOT_INITIALIZED (81115) Die PIN ist nicht initialisiert.
Parameter
• nType (IN) 0 = keine Authentifizierung 1 = ElsterBasis (Software-Zertifikat) 2 = ElsterSpezial (ELSTER Stick) über PKCS11 Treiber 3 = ElsterPlus (Signaturkarte) über PKCS11 Treiber 4 = ElsterSpezial (ELSTER Stick) über PERFIDIA Signaturkarten Treiber (empfohlen) 5 = ElsterPlus (Signaturkarte) über PERFIDIA Signaturkarten Treiber (empfohlen)
• szPin (IN) Bei den Verfahren ElsterBasis und ElsterSpezial ist die PIN immer anzugeben. Wenn die PIN nicht über das PINpad des Kartenlesers eingegeben wird, gilt dies auch für ElsterPlus.
• szParam1 (IN) ElsterBasis: PFX-Datei inkl. Pfad. PKCS11 Treiber: Name der PKCS#11-Bibliothek (optional mit Pfad) PERFIDIA Signaturkarten Treiber: NULL-Pointer
• szParam2 (IN) ElsterBasis: Hier ist ein NULL-Pointer zu übergeben. ElsterSpezial und ElsterPlus: Label des zuverwendenen Token (siehe perfidia_pkcs11_info bzw. perfi-dia_scard_info)
• szParam3 (IN) ElsterBasis: Hier ist ein NULL-Pointer zu übergeben. ElsterSpezial und ElsterPlus: Seriennummer des zuverwendenen Token (siehe perfidia_pkcs11_info bzw. perfidia_scard_info)
• szParam4 (IN) ElsterBasis und PKCS11: Hier ist ein NULL-Pointer zu übergeben. PERFIDIA Signaturkarten Treiber: Hier kann ein Pointer auf Ihre Callback-Funktion (siehe Callback-Funktion für PINPAD) übergeben werden. Ansonsten muss ein NULL-Pointer übergeben werden.
• szParam5 (IN) ElsterBasis und PKCS11: Hier ist ein NULL-Pointer zu übergeben. PERFIDIA Signaturkarten Treiber: Dieser Parameter wird bei jedem Aufruf der Callback-Funktion über-geben. Er wird nicht von PERFIDIA benutzt, sondern kann frei für Ihre Anwendung verwendet werden.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de234
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
In dem Kapitel ‚Elster/Authentifizierte Übertragung‘ des Dokuments ‚toolkit_getting_started.pfd‘ finden Sie nähere Informationen.
v3.90.161 PERFIDIA Toolkit Reference
235© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_auth_v2
Um Daten an die OFD authentifiziert zu übertragen, muss diese Funktion direkt vor dem Aufruf einer der fol-genden Versandfunktionen aufgerufen werden:
perfidia_lstb_send, perfidia_lsta_send, perfidia_usta_send, perfidia_elster_xml_send und perfidia_els-ter_xml_send_v2
Wichtiger Hinweis: Nach jedem Aufruf einer Versandfunktion wird automatisch auf die Grundeinstellung ‚keine Authentifizierung‘ zurückgestellt.
long perfidia_elster_auth ( short nType, const char *szPin, const char *szParam1, const char *szParam2, const char *szParam3, const char *szParam4, const char *szParam5 const char *szPfxFile2 const char *szPfxPin2 );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_PASSWORD (80106) Ungültiges Passwort.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80803) Fehler beim Lesen der Datei.
• PE_INVALID_FORMAT (80143) Ungültiges Format.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_PKCS11_GENERAL (81101) Fehlerhafte Kommunikation über die PKCS#11-Schnittstelle.
• PE_PKCS11_LOAD_MODULE (81102) Die PKCS#11-Bibliothek konnte nicht geladen werden.
• PE_PKCS11_FUNCTION_NOT_SUPPORTED (81103) Der Funktionsaufruf wird nicht unterstützt.
• PE_PKCS11_NOT_INITIALIZED (81104) Die PKCS#11-Bibliothek ist nicht initialisiert.
• PE_PKCS11_NOT_FOUND (81105) PKCS#11-Objekt nicht gefunden.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de236
• PE_PKCS11_DEVICE (81106) Kommunikationsfehler mit dem Device-Slot oder Token.
• PE_PKCS11_DEVICE_MEMORY (81107) Der Token hat nicht genügend Arbeitsspeicher.
• PE_PKCS11_DEVICE_REMOVED (81108) Der Token wurde während der Benutzung entfernt.
• PE_PKCS11_TOKEN_NOT_PRESENT (81109) Der Token ist nicht mehr verfügbar.
• PE_PKCS11_TOKEN_NOT_RECOGNIZED (81110) Der Token konnte nicht gefunden werden.
• PE_PIN_INCORRECT (81111) Die PIN ist nicht korrekt.
• PE_PIN_INVALID (81112) Die PIN enthält ungültige Zeichen.
• PE_PIN_EXPIRED (81113) Die PIN ist abgelaufen.
• PE_PIN_LOCKED (81114) Die PIN ist gesperrt.
• PE_USER_PIN_NOT_INITIALIZED (81115) Die PIN ist nicht initialisiert.
Parameter
• nType (IN) 0 = keine Authentifizierung 1 = ElsterBasis (Software-Zertifikat) 2 = ElsterSpezial (ELSTER Stick) über PKCS11 Treiber 3 = ElsterPlus (Signaturkarte) über PKCS11 Treiber 4 = ElsterSpezial (ELSTER Stick) über PERFIDIA Signaturkarten Treiber (empfohlen) 5 = ElsterPlus (Signaturkarte) über PERFIDIA Signaturkarten Treiber (empfohlen)
• szPin (IN) Bei den Verfahren ElsterBasis und ElsterSpezial ist die PIN immer anzugeben. Wenn die PIN nicht über das PINpad des Kartenlesers eingegeben wird, gilt dies auch für ElsterPlus.
• szParam1 (IN) ElsterBasis: PFX-Datei inkl. Pfad. PKCS11 Treiber: Name der PKCS#11-Bibliothek (optional mit Pfad) PERFIDIA Signaturkarten Treiber: NULL-Pointer
• szParam2 (IN) ElsterBasis: Hier ist ein NULL-Pointer zu übergeben. ElsterSpezial und ElsterPlus: Label des zuverwendenen Token (siehe perfidia_pkcs11_info bzw. perfi-dia_scard_info)
• szParam3 (IN) ElsterBasis: Hier ist ein NULL-Pointer zu übergeben. ElsterSpezial und ElsterPlus: Seriennummer des zuverwendenen Token (siehe perfidia_pkcs11_info bzw. perfidia_scard_info)
• szParam4 (IN) ElsterBasis und PKCS11: Hier ist ein NULL-Pointer zu übergeben. PERFIDIA Signaturkarten Treiber: Hier kann ein Pointer auf Ihre Callback-Funktion (siehe Callback-Funktion für PINPAD) übergeben werden. Ansonsten muss ein NULL-Pointer übergeben werden.
• szParam5 (IN) ElsterBasis und PKCS11: Hier ist ein NULL-Pointer zu übergeben. PERFIDIA Signaturkarten Treiber: Dieser Parameter wird bei jedem Aufruf der Callback-Funktion über-geben. Er wird nicht von PERFIDIA benutzt, sondern kann frei für Ihre Anwendung verwendet werden.
v3.90.161 PERFIDIA Toolkit Reference
237© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• szPfxFile2 (IN) Hier kann eine 2. PFX-Datei zur Entschlüsselung von Daten hinterlegt werden. Die PFX-Datei ist inkl. Pfad anzugeben.
• szPfxPin2 (IN) PIN für die 2. PFX-Datei.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
In dem Kapitel ‚Elster/Authentifizierte Übertragung‘ des Dokuments ‚toolkit_getting_started.pfd‘ finden Sie nähere Informationen.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de238
perfidia_elster_auth_test
Mit dieser Funktion kann die Signatur für die authentifizierte Übertragung im Elster-Verfahren getestet werden.
long perfidia_elster_auth ( short nReserved, );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_INVALID_FORMAT (80143) Ungültiges Format.
• PE_PKCS11_GENERAL (81101) Fehlerhafte Kommunikation über die PKCS#11-Schnittstelle.
• PE_PKCS11_DEVICE (81106) Kommunikationsfehler mit dem Device-Slot oder Token.
• PE_PKCS11_DEVICE_MEMORY (81107) Der Token hat nicht genügend Arbeitsspeicher.
• PE_PKCS11_DEVICE_REMOVED (81108) Der Token wurde während der Benutzung entfernt.
• PE_PKCS11_TOKEN_NOT_PRESENT (81109) Der Token ist nicht mehr verfügbar.
• PE_PKCS11_TOKEN_NOT_RECOGNIZED (81110) Der Token konnte nicht gefunden werden.
• PE_PIN_INCORRECT (81111) Die PIN ist nicht korrekt.
• PE_PIN_INVALID (81112) Die PIN enthält ungültige Zeichen.
• PE_PIN_EXPIRED (81113) Die PIN ist abgelaufen.
• PE_PIN_LOCKED (81114) Die PIN ist gesperrt.
• PE_USER_PIN_NOT_INITIALIZED (81115) Die PIN ist nicht initialisiert.
Parameter
• nReserved (IN) Der Wert dieses Parameters muss 0 sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Direkt vor dem Aufruf dieser Funktion ist die Funktion perfidia_elster_auth aufzurufen.
v3.90.161 PERFIDIA Toolkit Reference
239© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_pfx_info
Mit dieser Funktion kann die PIN bzw. das Passwort überprüft und Informationen zu einem bestimmten Zertifi-kat in der PFX-Datei ausgelesen werden.
long perfidia_elster_pfx_info ( const char *szPfxFile, const char *szPin, short nCert, long *plSerialNumber, char *szIssuerBuffer, short nIssuerBufferSize, char *szSubjectBuffer, short nSubjectBufferSize, char *szNotBeforeBuffer, short nNotBeforeBufferSize, char *szNotAfterBuffer, short nNotAfterBufferSize, unsigned long *pulKeyUsage );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_PASSWORD (80106) Ungültiges Passwort.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80803) Fehler beim Lesen der Datei.
• PE_INVALID_FORMAT (80143) Ungültiges Format.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• szPfxFile (IN) ELSTER PFX-Datei.
• szPin (IN) PIN bzw. Password mit dem die PFX-Datei verschlüsselt ist.
• nCert (IN) 0 = Zertifikat ‚signaturekey‘ 1 = Zertifikat ‚encryptionkey ‘
• plSerialNumber (OUT) Seriennummer des Zertifikats.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de240
• szIssuerBuffer (OUT) Herausgeber des Zertifikats. Der Issuer-Buffer sollte eine Größe von 513 Zeichen haben.
• nIssuerBufferSize (IN) Größe des Issuer-Buffers.
• szSubjectBuffer (OUT) Subjekt des Zertifikats. Der Subject-Buffer sollte eine Größe von 513 Zeichen haben.
• nSubjectBufferSize (IN) Größe des Subject-Buffers.
• szNotBeforeBuffer (OUT) Der NotBefore-Buffer gibt an, ab wann das Zertifikat gültig ist, und sollte eine Größe von 15 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMDDhhmmss.
• nNotBeforeBufferSize (IN) Größe des NotBefore-Buffers.
• szNotAfterBuffer (OUT) Der NotAfter-Buffer gibt an, bis wann das Zertifikat gültig ist, und sollte eine Größe von 15 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMDDhhmmss.
• nNotAfterBufferSize (IN) Größe des NotAfter-Buffers .
• pulKeyUsage (OUT) 0x0001 = digital signature 0x0002 = non repudiation 0x0004 = key encipherment 0x0008 = data encipherment 0x0010 = key agreement 0x0020 = key certsign 0x0040 = crl sign 0x0080 = encipher only 0x0100 = decipher only
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
241© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_pfx_info_v2
Mit dieser Funktion kann die PIN bzw. das Passwort überprüft und Informationen zu einem bestimmten Zertifi-kat in der PFX-Datei ausgelesen werden.
long perfidia_elster_pfx_info ( const char *szPfxFile, const char *szPin, short nCert, long *plSerialNumber, char *szIssuerBuffer, short nIssuerBufferSize, char *szSubjectBuffer, short nSubjectBufferSize, char *szNotBeforeBuffer, short nNotBeforeBufferSize, char *szNotAfterBuffer, short nNotAfterBufferSize, unsigned long *pulKeyUsage, short *pnKeyLength );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_PASSWORD (80106) Ungültiges Passwort.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80803) Fehler beim Lesen der Datei.
• PE_INVALID_FORMAT (80143) Ungültiges Format.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• szPfxFile (IN) ELSTER PFX-Datei.
• szPin (IN) PIN bzw. Password mit dem die PFX-Datei verschlüsselt ist.
• nCert (IN) 0 = Zertifikat ‚signaturekey‘ 1 = Zertifikat ‚encryptionkey ‘
• plSerialNumber (OUT) Seriennummer des Zertifikats.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de242
• szIssuerBuffer (OUT) Herausgeber des Zertifikats. Der Issuer-Buffer sollte eine Größe von 513 Zeichen haben.
• nIssuerBufferSize (IN) Größe des Issuer-Buffers.
• szSubjectBuffer (OUT) Subjekt des Zertifikats. Der Subject-Buffer sollte eine Größe von 513 Zeichen haben.
• nSubjectBufferSize (IN) Größe des Subject-Buffers.
• szNotBeforeBuffer (OUT) Der NotBefore-Buffer gibt an, ab wann das Zertifikat gültig ist, und sollte eine Größe von 15 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMDDhhmmss.
• nNotBeforeBufferSize (IN) Größe des NotBefore-Buffers.
• szNotAfterBuffer (OUT) Der NotAfter-Buffer gibt an, bis wann das Zertifikat gültig ist, und sollte eine Größe von 15 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMDDhhmmss.
• nNotAfterBufferSize (IN) Größe des NotAfter-Buffers .
• pulKeyUsage (OUT) 0x0001 = digital signature 0x0002 = non repudiation 0x0004 = key encipherment 0x0008 = data encipherment 0x0010 = key agreement 0x0020 = key certsign 0x0040 = crl sign 0x0080 = encipher only 0x0100 = decipher only
• nKeyLength (IN) Länge des Schlüssels in Bits.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
243© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_check_steuernummer
Prüft die Elster-Steuernummer.
long perfidia_elster_check_steuernummer ( const char *szSteuernummer );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ELSTER_STNR1 (70305) Ungültige Steuernummer! [Steuernummer ist nicht 13 Stellen lang]
• PE_ELSTER_STNR2 (70306) Ungültige Steuernummer! [Steuernummer enthält nicht nur Ziffern]
• PE_ELSTER_STNR3 (70307) Ungültige Steuernummer! [5. Stelle der Steuernummer ist nicht 0]
• PE_ELSTER_STNR4 (70308) Ungültige Steuernummer! [ungültige Bundesfinanzamtsnummer]
• PE_ELSTER_STNR5 (70309) Ungültige Steuernummer! [ungültiger Bezirk 0]
• PE_ELSTER_STNR6 (70310) Ungültige Steuernummer! [ungültiger Bezirk (Bezirk < 100)]
• PE_ELSTER_STNR7 (70311) Ungültige Steuernummer! [ungültige Finanzamtsnummer]
• PE_ELSTER_STNR8 (70312) Ungültige Steuernummer! [ungültige Prüfziffer]
Parameter
• szSteuernummer Die 13-stellige Steuernummer im bundeseinheitlichen “Elster-Format”. (siehe ElsterLohn->SST_Arbeit-geber)
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de244
perfidia_elster_check_steuernummer_v2
Prüft die Elster-Steuernummer.
long perfidia_elster_check_steuernummer_v2 ( const char *szSteuernummer, short nFlags );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ELSTER_STNR1 (70305) Ungültige Steuernummer! [Steuernummer ist nicht 13 Stellen lang]
• PE_ELSTER_STNR2 (70306) Ungültige Steuernummer! [Steuernummer enthält nicht nur Ziffern]
• PE_ELSTER_STNR3 (70307) Ungültige Steuernummer! [5. Stelle der Steuernummer ist nicht 0]
• PE_ELSTER_STNR4 (70308) Ungültige Steuernummer! [ungültige Bundesfinanzamtsnummer]
• PE_ELSTER_STNR5 (70309) Ungültige Steuernummer! [ungültiger Bezirk 0]
• PE_ELSTER_STNR6 (70310) Ungültige Steuernummer! [ungültiger Bezirk (Bezirk < 100)]
• PE_ELSTER_STNR7 (70311) Ungültige Steuernummer! [ungültige Finanzamtsnummer]
• PE_ELSTER_STNR8 (70312) Ungültige Steuernummer! [ungültige Prüfziffer]
Parameter
• szSteuernummer Die 13-stellige Steuernummer im bundeseinheitlichen “Elster-Format”. (siehe ElsterLohn->SST_Arbeit-geber)
• nFlags 0x1 = Testfinanzämter erlauben
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
245© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_change_steuernummer
Wenn ein Arbeitgeber vom Finanzamt eine neue Steuernummer zugeteilt bekommt und die Betriebsstätte nicht in ein neues Bundesland umgezogen ist, sind im ElsterLohn2-Verfahren keine Neuanmeldungen der Arbeitnehmer nötig. Mit Hilfe dieser Funktion kann in PERFIDIA eine Verknüpfung dieser beiden Steuernum-mern erstellt werden, so dass die Ordnungsmerkmal für Antworten aus dem ElsterLohn2-Verfahren auch unter der neuen Steuernummer gefunden werden.
long perfidia_elster_change_steuernummer ( const char *szSteuernummerAlt, const char *szSteuernummerNeu );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PARAMETER (70114) Die angegebene Steuernummer ist ungültig.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_ISAM_WRITE (80704) Schreibfehler in ISAM-Datei.
Parameter
• szSteuernummerAlt Bisherige 13-stellige Steuernummer im bundeseinheitlichen “Elster-Format”. (siehe ElsterLohn->SST_Arbeitgeber)
• szSteuernummerNeu Neue 13-stellige Steuernummer im bundeseinheitlichen “Elster-Format”. (siehe ElsterLohn->SST_Ar-beitgeber)
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de246
perfidia_elster_get_link_steuernummer
Diese Funktion liefert nach einem Steuernummernwechsel die alte Steuernummer.
long perfidia_elster_get_link_steuernummer ( const char *szSteuernummerNeu, char *szSteuernummerAltBuffer, int *nSteuernummerAltBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PARAMETER (70114) Die angegebene Steuernummer ist ungültig.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_ISAM_WRITE (80704) Schreibfehler in ISAM-Datei.
Parameter
• szSteuernummerNeu (IN) Neue 13-stellige Steuernummer im bundeseinheitlichen “Elster-Format”. (siehe ElsterLohn->SST_Ar-beitgeber)
• szSteuernummerAlt (OUT) Bisherige 13-stellige Steuernummer im bundeseinheitlichen “Elster-Format”. (siehe ElsterLohn->SST_Arbeitgeber)
• nSteuernummerAltBufferSize (IN) Größe des SteuernummerAlt-Buffers in Bytes. Der Buffer sollte Größe von 14 Bytes haben.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
247© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_check_idnr
Prüft die Identifikationsnummer (IdNr).
long perfidia_elster_check_idnr ( const char *szIdentifikationsnummer, const char *szReserved, short nReserved );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_INVALID_FORMAT (80143) Ungültiges Format.
Parameter
• szIdentifikationsnummer Identifikationsnummer (IdNr) inkl. Prüfziffer.
• szReserved Reserviert. Hier muss ein NULL-Pointer oder Leerstring übergeben werden.
• nReserved Reserviert. Hier muss der Wert 0 übergeben werden.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de248
perfidia_lstb_etin
Erzeugt aus Vor- und Nachnamen sowie dem Geburtsdatum den 14-stelligen Ordnungsbegriff eTIN.
long perfidia_lstb_etin ( char *szEtinBuffer, short nEtinBufferSize, const char *szSurname, const char *szFirstname, short nDay, short nMonth, short nYear );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_BUFSIZE (80110) Der eTIN-Buffer ist zu klein.
Parameter
• szEtinBuffer (OUT) Der eTIN-Buffer muß eine Größe von 15 Zeichen haben.
• nEtinBufferSize (IN) Größe des eTIN-Buffers.
• szSurname (IN) Maßgeblich ist der Familienname ohne Namensbestandteile (von, zu, etc.) und Titel.
• szFirstname (IN) Maßgeblich ist nur der Vorname.
• nDay (IN) Geburtstag (1-31)
• nMonth (IN) Geburtsmonat (1-12)
• nYear (IN) Beim Geburtsjahr werden nur die beiden letzten Ziffern berücksichtigt. (00-99)
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
249© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Statistische Ämter
Funktionsübersicht
Versandperfidia_statis_check perfidia_statis_send perfidia_statis_protocol_receive perfidia_statis_status perfidia_statis_error perfidia_statis_transfer_error perfidia_statis_delete perfidia_statis_transfer_ticket perfidia_statis_highest_datnum
Protokollperfidia_statis_protocol_open perfidia_statis_protocol_next perfidia_statis_protocol_close
Hilfsfunktionen perfidia_statis_xml_build perfidia_statis_xml_send
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de250
perfidia_statis_check
Prüft die in der Send-Queue gespeicherten Dateien (ASCII-Format).
long perfidia_statis_check( short nDatenArt, long lDatnum, long *plFilesFound, long *plFilesOK );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_EMPTY_QUEUE (80134) Die Send-Queue ist leer.
• PE_SCANSENDQ (80133) Fehler beim Scannen der Send-Queue.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_DATNUM_USED (80135) Dateinummer bereits benutzt.
• Fehlercodes von 1000 bis 3999 Diese stehen für Fehler im Dateiformat. (siehe Datensatzbeschreibung)
Parameter
• nDatenArt (IN) 1 = Vierteljährliche Verdiensterhebung (lve?????.dat) 20 = Jährliche Ergänzungserhebung im Bauhauptgewerbe (s020????.dat) 36 = Monatsbericht und Auftragseingang im Bauhauptgewerbe (s036????.dat) 65 = Verdienststrukturerhebung (vse?????.dat) 161 = Arbeitskosten 2008 (s161????.dat)
• lDatnum (IN) Nummer der Datei, die geprüft werden soll. Wenn 0 angegeben ist, werden alle Dateien in der Send-Queue geprüft.
• plFilesFound (OUT) Anzahl der in der Send-Queue gefundenen Dateien.
• plFilesOK (OUT) Anzahl der erfolgreich geprüften Dateien.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
251© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Anmerkungen
Bei einem Fehler im Dateiformat (Fehlercode 1000 bis 3999) läßt sich mit der Funktion perfidia_get_last_er-ror_v2 herausfinden, in welcher Datei und an welcher Stelle der Fehler aufgetreten ist.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de252
perfidia_statis_send
Versendet alle in der Send-Queue gespeicherten Dateien.
long perfidia_statis_send ( short nDatenArt, long *lDatNum, const char *szStatisUser, const char *szStatisPassword, long *plFilesFound, long *plFilesSent HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_LOGIN (80141) Ungültiger Benutzername und/oder ungültiges Passwort.
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_EMPTY_QUEUE (80134) Die Send-Queue ist leer.
• PE_SCANSENDQ (80133) Fehler beim Scannen der Send-Queue.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80803) Fehler beim Lesen der Datei.
• PE_FILE_WRITE (80806) Fehler beim Schreiben der Datei.
• PE_DATNUM_USED (80135) Dateinummer bereits benutzt.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_ISAM_WRITE (80704) Schreibfehler in ISAM-Datei.
• PE_STATIS_TRANSFER (71010) In der Clearingstelle ist ein Fehler aufgetreten. Nähere Informationen mit der Funktion perfidia_sta-tis_vse_transfer_error.
• PE_STATIS_XML1 (71001) XML-Fehler 1 beim Erstellen der Daten.
• PE_STATIS_XML2 (71002) XML-Fehler 2 beim Erstellen der Daten.
v3.90.161 PERFIDIA Toolkit Reference
253© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• PE_STATIS_XML3 (71003) XML-Fehler 3 beim Erstellen der Daten.
• PE_STATIS_XML4 (71004) XML-Fehler 4 beim Erstellen der Daten.
• PE_STATIS_XML5 (71005) XML-Fehler beim Erstellen der Daten.
• PE_STATIS_XML6 (71006) XML-Fehler 6 beim Erstellen der Daten.
• PE_STATIS_XML7 (71007) XML-Fehler 7 beim Erstellen der Daten.
• PE_STATIS_XML (71008) XML-Fehler 8 beim Erstellen der Daten.
• PE_STATIS_XML (71009) XML-Fehler 9 beim Erstellen der Daten.
• Fehlercodes von 1000 bis 3999 Diese stehen für Fehler im Dateiformat. (siehe Datensatzbeschreibung)
• PE_NEW_PERFIDIA (80167) Für den Versand der Daten wird eine neuere PERFIDIA Version benötigt.
• PE_SERVER_MAINTENANCE (80168) Der Versand der Daten ist momentan nicht möglich, da die Server gewartet werden.
Parameter
• nDatenArt (IN) 1 = Vierteljährliche Verdiensterhebung (lve?????.dat) 20 = Jährliche Ergänzungserhebung im Bauhauptgewerbe (s020????.dat) 36 = Monatsbericht und Auftragseingang im Bauhauptgewerbe (s036????.dat) 65 = Verdienststrukturerhebung (vse?????.dat) 161 = Arbeitskosten 2008 (s161????.dat)
• lDatnum (IN) Nummer der Datei, die versendet werden soll. Wenn 0 angegeben ist, werden alle Dateien in der Send-Queue versendet.
• szStatisUser (IN) Der von den Statistischen Ämtern zugewiesene Benutzername.
• szStatisPassword (IN) Das von den Statistischen Ämtern zugewiesene Passwort.
• plFilesFound (OUT) Anzahl der in der Send-Queue gefundenen Dateien.
• plFilesSent (OUT) Anzahl der erfolgreich versendeten Dateien.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Bei den Fehlercodes 1000 bis 3999 läßt sich mit der Funktion perfidia_get_last_error_v2 herausfinden, in welcher Datei und an welcher Stelle der Fehler aufgetreten ist.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de254
Beim Fehlercode PE_STATIS_TRANSFER (71010) läßt sich mit der Funktion perfidia_get_last_error heraus-finden, bei welcher Datei der Fehler aufgetreten ist. (Format: DATEINAME).
Diese Funktion erzeugt einen Progress.
v3.90.161 PERFIDIA Toolkit Reference
255© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_statis_protocol_receive
Erfragt bei der Statistik den Protokollstatus für eine bzw. mehrere Datenlieferungen.
long perfidia_statis_protocol_receive ( short nDatenArt, long lDatNum, const char *szStatisUser, const char *szStatisPassword, long *plFilesFound, long *plFilesReceived, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_LOGIN (80141) Ungültiger Benutzername und/oder ungültiges Passwort.
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NO_DATA (80129) - Zur angegebenen Dateinummer existiert kein Eintrag in der Transferdatei. - Für die angegebene Dateinummer haben Sie bereits ein Antwortprotokoll erhalten. - Für die angegebene Dateinummer kann noch kein Antwortprotokoll abgeholt werden, da seit dem Versand der Daten noch keine 24 Stunden vergangen sind.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80803) Fehler beim Lesen der Datei.
• PE_FILE_WRITE (80806) Fehler beim Schreiben der Datei.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_ISAM_WRITE (80704) Schreibfehler in ISAM-Datei.
• PE_STATIS_TRANSFER (71010) In der Clearingstelle ist ein Fehler aufgetreten. Nähere Informationen mit der Funktion perfidia_sta-tis_vse_transfer_error.
• PE_STATIS_PARSE_PROT (71011) Fehler beim Parsen der Protokollantwort.
• PE_STATIS_XML_NOT_VALID (71012) Die XML-Antwort der Clearingstelle ist in einem ungültigen Format.
• PE_STATIS_UNKNOWN_PROC (71013) Unbekanntes Verfahren: Antwort kann nicht ausgewertet werden.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de256
• PE_STATIS_XML1 (71001) XML-Fehler 1 beim Erstellen der Daten.
• PE_STATIS_XML2 (71002) XML-Fehler 2 beim Erstellen der Daten.
• PE_STATIS_XML3 (71003) XML-Fehler 3 beim Erstellen der Daten.
• PE_STATIS_XML4 (71004) XML-Fehler 4 beim Erstellen der Daten.
• PE_STATIS_XML5 (71005) XML-Fehler beim Erstellen der Daten.
• PE_STATIS_XML6 (71006) XML-Fehler 6 beim Erstellen der Daten.
• PE_STATIS_XML7 (71007) XML-Fehler 7 beim Erstellen der Daten.
• PE_STATIS_XML (71008) XML-Fehler 8 beim Erstellen der Daten.
• PE_STATIS_XML (71009) XML-Fehler 9 beim Erstellen der Daten.
• PE_NEW_PERFIDIA (80167) Für den Versand der Daten wird eine neuere PERFIDIA Version benötigt.
• PE_SERVER_MAINTENANCE (80168) Der Versand der Daten ist momentan nicht möglich, da die Server gewartet werden.
Parameter
• nDatenArt (IN) 1 = Vierteljährliche Verdiensterhebung (lve?????.dat) 20 = Jährliche Ergänzungserhebung im Bauhauptgewerbe (s020????.dat) 36 = Monatsbericht und Auftragseingang im Bauhauptgewerbe (s036????.dat) 65 = Verdienststrukturerhebung (vse?????.dat) 161 = Arbeitskosten 2008 (s161????.dat)
• lDatNum (IN) Wenn lDatNum gleich 0 ist, wird für alle Datenlieferungen, die noch keinen entgültigen Status haben, der aktuelle Status nachgefragt. Ansonsten nur für die angegebene Dateinummer.
• szStatisUser (IN) Der von den Statistischen Ämtern zugewiesene Benutzername.
• szStatisPassword (IN) Das von den Statistischen Ämtern zugewiesene Passwort.
• plFilesFound (OUT) Anzahl der gefundenen Dateien.
• plFilesReceived (OUT) Anzahl der erfolgreich empfangenen Dateien.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Beim Fehlercode PE_STATIS_TRANSFER (71010) läßt sich mit der Funktion perfidia_get_last_error heraus-finden, bei welcher Datei der Fehler aufgetreten ist. (Format: DATEINAME).
v3.90.161 PERFIDIA Toolkit Reference
257© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Diese Funktion erzeugt einen Progress.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de258
perfidia_statis_status
Liefert den Status einer Datenlieferung.
long perfidia_statis_status ( short nDatenArt, long lDatNum, long *plStatusCode, short *pnErrorCount, short *pnPruefStatusSyntax, short *pnPruefStatusSemantik, short *pnPruefStatusAutorisierung, short *pnPruefStatusDaten, short *pnPruefStatusDokument );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• nDatenArt (IN) 1 = Vierteljährliche Verdiensterhebung (lve?????.dat) 20 = Jährliche Ergänzungserhebung im Bauhauptgewerbe (s020????.dat) 36 = Monatsbericht und Auftragseingang im Bauhauptgewerbe (s036????.dat) 65 = Verdienststrukturerhebung (vse?????.dat) 161 = Arbeitskosten 2008 (s161????.dat)
• lDatNum (IN) Dateinummer, von der ein Status abgefragt werden soll.
• plStatusCode (OUT) 0 = noch kein Protokoll angefordert 1 = Datenlieferung noch nicht verarbeitet 2 = Datenlieferung wurde akzeptiert 3 = Datenlieferung wurde abgewiesen 4 = Datenlieferung wurde nicht geprüft 5 = Prüfprotokoll ist nicht mehr verfügbar
• pnErrorCount (OUT) Falls der StatusCode 3 ist, wird ErrorCount auf die Anzahl der aufgetretenden Fehler gesetzt.
• pnPruefStatusSyntax (OUT) pnPruefStatusSemantik (OUT) pnPruefStatusAutorisierung (OUT) pnPruefStatusDaten (OUT) pnPruefStatusDokument (OUT)
v3.90.161 PERFIDIA Toolkit Reference
259© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
0 = fehlerfrei 1 = ungeprüft 2 = fehlerhaft Wenn die Informationen nicht benötigt werden, dürfen bei diesen Parametern NULL-Pointer übergeben werden.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Die Fehlerinformationen lassen sich mit der Funktion perfidia_statis_error abfragen.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de260
perfidia_statis_error
Liefert Fehlerinformationen über einen Datenlieferung.
long perfidia_statis_error ( short nDatenArt, long lDatNum, short nErrorNum, short *pnRecordNum, char *szMerkmalBuffer, short nMerkmalBufferSize, char *szSchluesselBuffer, short nSchluesselBufferSize, char *szTextBuffer, short nTextBufferSize, char *szPositionFormatBuffer, short nPositionFormatBufferSize, char *szPositionBuffer, short nPositionBufferSize, char *szGewichtBuffer, short nGewichtBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da ein Buffer zu klein ist.
Parameter
• nDatenArt (IN) 1 = Vierteljährliche Verdiensterhebung (lve?????.dat) 20 = Jährliche Ergänzungserhebung im Bauhauptgewerbe (s020????.dat) 36 = Monatsbericht und Auftragseingang im Bauhauptgewerbe (s036????.dat) 65 = Verdienststrukturerhebung (vse?????.dat) 161 = Arbeitskosten 2008 (s161????.dat)
• lDatNum (IN) Dateinummer, der fehlerhaften Datenlieferung.
• nErrorNum (IN) Fortlaufende Nummer von 1 bis einschließlich ErrorCount. (ErrorCount siehe perfidia_statis_vse_sta-tus)
• pnRecordNum (OUT) Datensatznummer (0001-9999), der fehlerhaften Datenlieferung.
v3.90.161 PERFIDIA Toolkit Reference
261© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• szMerkmalBuffer (OUT) Der Name eines Merkmals, bei dem der Fehler aufgetreten ist. Dieser Buffer sollte eine Länge von 65 Zeichen haben.
• nMerkmalBufferSize (IN) Größe des Merkmal-Buffers.
• szSchluesselBuffer (OUT) Der Buffer des Fehlerschlüssels sollte eine Länge von 65 Zeichen haben.
• nSchluesselBufferSize (IN) Größe des Schluessel-Buffers.
• szTextBuffer (OUT) Der Buffer des Fehlertextes sollte eine Länge von 513 Zeichen haben.
• nTextBufferSize (IN) Größe des Text-Buffers.
• szPositionFormatBuffer (OUT) Format der Position der fehlerverursachenden Stelle (XPath-Ausdruck, Byte-, Zeichen- oder Satz-Off-set). Dieser Buffer sollte eine Länge von 33 Zeichen haben.
• nPositionFormatBufferSize (IN) Größe des PositionFormat-Buffers.
• szPositionBuffer (OUT) Position der fehlerverursachenden Stelle. Dieser Buffer sollte eine Länge von 129 Zeichen haben.
• nPositionBufferSize (IN) Größe des Position-Buffers.
• szGewichtBuffer (OUT) Der Buffer des Fehlergewichts sollte eine Länge von 65 Zeichen haben.
• nGewichtBufferSize (IN) Größe des Gewicht-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Wenn bei dem Funktionsaufruf von perfidia_statis_status der zurückgegebene Status 3 ist, gibt der Error-Count die Anzahl der Fehler an. Die Informationen zu den einzelnen Fehlern lassen sich dann mit dieser Funktion (perfidia_statis_error) abfragen.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de262
perfidia_statis_transfer_error
Liefert die Fehlerinformationen, falls bei der Übertragung der VSE-Datei ein Fehler in der Clearingstelle auf-tritt.
long perfidia_statis_transfer_error ( short nDatenArt, long lDatNum, long *plXStatus, char *szErrorBuffer, short nErrorBufferSize, );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe eines Buffers ist zu klein.
Parameter
• nDatenArt (IN) 1 = Vierteljährliche Verdiensterhebung (lve?????.dat) 20 = Jährliche Ergänzungserhebung im Bauhauptgewerbe (s020????.dat) 36 = Monatsbericht und Auftragseingang im Bauhauptgewerbe (s036????.dat) 65 = Verdienststrukturerhebung (vse?????.dat) 161 = Arbeitskosten 2008 (s161????.dat)
• lDatNum (IN) Dateinummer, bei der ein Fehler in der Clearingstelle aufgetreten ist.
• plXStatus (OUT) X-Status von der Clearingstelle.
• szErrorBuffer (OUT) Error-Buffer von der Clearingstelle. Der Error-Buffer sollte eine Länge von 513 Zeichen haben.
• nErrorBufferSize (IN) Größe des Error-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
263© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_statis_delete
Löscht alle Protokolleinträge zu einer bestimmten Dateinummer aus den PERFIDIA-Log-Dateien, so dass die Dateinummer erneut zum Versenden benutzt werden kann. Das erfolgreiche Löschen wird protokolliert. (siehe perfidia_statis_protocol_open)
long perfidia_statis_delete ( short nDatenArt, long lDatNum );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• nDatenArt (IN) 1 = Vierteljährliche Verdiensterhebung (lve?????.dat) 20 = Jährliche Ergänzungserhebung im Bauhauptgewerbe (s020????.dat) 36 = Monatsbericht und Auftragseingang im Bauhauptgewerbe (s036????.dat) 65 = Verdienststrukturerhebung (vse?????.dat) 161 = Arbeitskosten 2008 (s161????.dat)
• lDatNum (IN) Dateinummer
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de264
perfidia_statis_highest_datnum
Liefert die höchste benutzte Dateinummer.
long perfidia_statis_highest_datnum ( short nDatenArt, long *plDatNum );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• nDatenArt (IN) 1 = Vierteljährliche Verdiensterhebung (lve?????.dat) 20 = Jährliche Ergänzungserhebung im Bauhauptgewerbe (s020????.dat) 36 = Monatsbericht und Auftragseingang im Bauhauptgewerbe (s036????.dat) 65 = Verdienststrukturerhebung (vse?????.dat) 161 = Arbeitskosten 2008 (s161????.dat)
• plDatNum (OUT) Dateinummer
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
265© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_statis_transfer_ticket
Liefert das Transfer-Ticket zu einer übertragenen Datenlieferung.
long perfidia_statis_transfer_ticket ( short nDatenArt, long lDatNum, char *szTransferTicketBuffer, short nTransferTicketBufferSize, long *plTestmerker char *szSendDateBuffer, short nSendDateBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da der TransferTicket-Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe des TransferTicket-Buffers ist zu klein.
Parameter
• nDatenArt (IN) 1 = Vierteljährliche Verdiensterhebung (lve?????.dat) 20 = Jährliche Ergänzungserhebung im Bauhauptgewerbe (s020????.dat) 36 = Monatsbericht und Auftragseingang im Bauhauptgewerbe (s036????.dat) 65 = Verdienststrukturerhebung (vse?????.dat) 161 = Arbeitskosten 2008 (s161????.dat)
• lDatNum (IN) Dateinummer.
• szTransferTicketBuffer (OUT) Der TransferTicket-Buffer sollte eine Größe von 65 Zeichen haben.
• nTransferTicketBufferSize (IN) Größe des TransferTicket-Buffers.
• plTestmerker (OUT) Testmerker der Datenlieferung. Hier darf ein NULL-Pointer übergeben werden.
• szSendDateBuffer (OUT) Der SendDate-Buffer sollte eine Größe von 15 Zeichen haben.
• nSendDateBufferSize (IN) Größe des SendDate-Buffers.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de266
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
267© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_statis_protocol_open
Öffnet die Statistik-Protokolldatei.
long perfidia_statis_protocol_open ( short nYear, short nMonth, short nDay, short nAction, short nCompletion );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
Parameter
• nYear (IN) Jahr, ab dem Protokolleinträge gelesen werden.
• nMonth (IN) Monat (1-12), ab dem Protokolleinträge gelesen werden.
• nDay (IN) Tag (1-31), ab dem Protokolleinträge gelesen werden.
• nAction (IN) 0 = alle Protokolleinträge 10 = LVE versenden 11 = Protokollanforderungen für LVE 12 = LVE-Protokolleinträge gelöscht 20 = BJV versenden 21 = Protokollanforderungen für BJV 22 = BJV-Protokolleinträge gelöscht 30 = VSE versenden 31 = Protokollanforderungen für VSE 32 = VSE-Protokolleinträge gelöscht 40 = S036 versenden 41 = Protokollanforderungen für S036 42 = S036-Protokolleinträge gelöscht 50 = S020 versenden 51 = Protokollanforderungen für S020 52 = S020-Protokolleinträge gelöscht 60 = S161 versenden 61 = Protokollanforderungen für S161 62 = S161-Protokolleinträge gelöscht 110 = LVE über direkte XML-Kommunikation versenden 111 = Protokollanforderung für LVE über direkte XML-Kommunikation versenden 120 = BJV über direkte XML-Kommunikation versenden
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de268
121 = Protokollanforderung für BJV über direkte XML-Kommunikation versenden 130 = VSE über direkte XML-Kommunikation versenden 131 = Protokollanforderung für VSE über direkte XML-Kommunikation versenden
• nCompletion (IN) 0 = alle Protokolleinträge 1 = nur Protokolleinträge mit ErrorCode ungleich 0 2 = nur Protokolleinträge mit ErrorCode gleich 0
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSDAnmerkungen
Nach dem Lesen der Protokolleinträge mit der Funktion perfidia_statis_protocol_next muss die Datei mit der Funktion perfidia_statis_protocol_close geschlossen werden.
v3.90.161 PERFIDIA Toolkit Reference
269© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_statis_protocol_next
Nach einem erfolgreichen Aufruf der Funktion perfidia_statis_protocol_open liefert diese Funktion solange den nächsten Protokolleintrag, bis sie mit PE_NO_DATA zurückkommt.
long perfidia_statis_protocol_next ( char *szDateTimeBuffer, short nDateTimeBufferSize, short *pnAction, long *plErrorCode, long *plDatNum, char *szFilenameBuffer, short nFilenameBufferSize, char *szIPAddressBuffer, short nIPAddressBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe eines Buffers ist zu klein.
Parameter
• szDateTimeBuffer (OUT) DateTime-Buffer sollte eine Größe von 15 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMD-Dhhmmss.
• nDateTimeBufferSize (IN) Größe des DateTime-Buffers.
• pnAction (OUT) 10 = LVE versenden 11 = Protokollanforderungen für LVE 12 = LVE-Protokolleinträge gelöscht 20 = BJV versenden 21 = Protokollanforderungen für BJV 22 = BJV-Protokolleinträge gelöscht 30 = VSE versenden 31 = Protokollanforderungen für VSE 32 = VSE-Protokolleinträge gelöscht 40 = S036 versenden 41 = Protokollanforderungen für S036 42 = S036-Protokolleinträge gelöscht 50 = S020 versenden
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de270
51 = Protokollanforderungen für S020 52 = S020-Protokolleinträge gelöscht 60 = S161 versenden 61 = Protokollanforderungen für S161 62 = S161-Protokolleinträge gelöscht 110 = LVE über direkte XML-Kommunikation versenden 111 = Protokollanforderung für LVE über direkte XML-Kommunikation versenden 120 = BJV über direkte XML-Kommunikation versenden 121 = Protokollanforderung für BJV über direkte XML-Kommunikation versenden 130 = VSE über direkte XML-Kommunikation versenden 131 = Protokollanforderung für VSE über direkte XML-Kommunikation versenden 140 = S036 über direkte XML-Kommunikation versenden 141 = Protokollanforderung für S036 über direkte XML-Kommunikation versenden
• plErrorCode (OUT) 0 = kein Fehler, sonst ErrorCode
• plDatNum (OUT) Dateinummer der Datenlieferung
• szFilenameBuffer (OUT) Dateiname der Datenlieferung.
• nFilenameBufferSize (IN) Größe des Filename-Buffers.
• szIPAddressBuffer (OUT) IP-Adresse der Statistik-Clearingstelle. Der IPAddress-Buffer sollte eine Größe von 17 Zeichen haben.
• nIPAddressBufferSize (IN) Größe des IPAddress-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
271© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_statis_protocol_close
Schließt die Statistik-Protokolldatei.
void perfidia_statis_protocol_close ();
Rückgabewerte
keine
Parameter
keine
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de272
perfidia_statis_xml_build
Mit dieser Funktion können Sie LVE- und BJV-Dateien vom ASCII-Format ins XML-Format konvertieren. Die XML-Dateien können dann gegen die Schemata validiert werden.
long perfidia_statis_xml_build ( const char *szDatFile, const char *szXmlFile, short nOverwrite );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_FILE_CREATE (80801) Fehler beim Erstellen der Datei.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_WRITE (80806) Schreibfehler in Datei.
• PE_FILE_EXISTS (80808) Die Datei existiert bereits.
• Fehlercodes von 1000 bis 3999 Diese stehen für Fehler im Dateiformat. (siehe Datensatzbeschreibung)
Parameter
• szDatFile (IN) Name, der ASCII-Datei. Die Datei muss nicht in der Send-Queue stehen!
• szXmlFile (IN) Name, der XML-Datei.
• nOverwrite (IN) 0 = vorhandene Datei nie überschreiben 1 = vorhandene Datei immer überschreiben
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Bei einem Fehler im Dateiformat (Fehlercode 1000 bis 3999) läßt sich mit der Funktion perfidia_get_last_er-ror_v2 herausfinden, an welcher Stelle der Fehler aufgetreten ist.
v3.90.161 PERFIDIA Toolkit Reference
273© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_statis_xml_send
Mit dieser Funktionen können die Statistik-XML-Dateien aus dem Ordner ‘statis/xml/sendq’ versendet werden. Die Dateinamen dürfen inklusive Endung nicht länger als 64 Zeichen sein! Bei erfolgreichem Versand wird die versendete Datei in den Ordner ‚statis/xml/sent‘ verschoben und die Antwort der Clearingstelle wird unter dem selben Dateinamen in dem Ordner ‚statis/xml/recvq‘ gespeichert.
Wenn die Clearingstelle einen ‚X-Status‘ ungleich 0 zurückliefert, wird als Antwort eine XML-Datei mit folgen-dem Aufbau erzeugt.
<?xml version=”1.0” encoding=”ISO-8859-1”?> <PERFIDIA_STATIS_RES> <XSTATUS>200</XSTATUS> <CONTENT>Das Protokoll ist noch nicht vorhanden.</CONTENT> </PERFIDIA_STATIS_RES>
Ein Protokoll kann mit der folgenden XML-Datei angefordert werden.
<?xml version=”1.0” encoding=”ISO-8859-1”?> <PERFIDIA_STATIS_PROT> <STAID>99</STAID> <ERHID>0002</ERHID> <TRANSFERTICKET>abc123</TRANSFERTICKET> <TESTMERKER>100</TESTMERKER> </PERFIDIA_STATIS_PROT>
Wenn kein Testmerker benutzt wird, darf der Tag ‚TESTMERKER‘ weggelassen werden. Alle anderen Tags sind immer anzugeben.
long perfidia_statis_xml_send ( const char *szStatisUser, const char *szStatisPassword, long *plFilesFound, long *plFilesSent, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_LOGIN (80141) Ungültiges Passwort.
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_EMPTY_QUEUE (80134) Die Send-Queue ist leer.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de274
• PE_SCANSENDQ (80133) Fehler beim Scannen der Send-Queue.
• PE_STATIS_XML_NOT_VALID (71012) XML-Datei hat ein ungültiges Format.
• PE_STATIS_UNKNOWN_PROC (71013) Unbekanntes Verfahren.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80803) Fehler beim Lesen der Datei.
• PE_FILE_WRITE (80806) Fehler beim Schreiben der Datei.
• PE_STATIS_XML1 (71001) XML-Fehler 1 beim Erstellen der Daten.
• PE_STATIS_XML2 (71002) XML-Fehler 2 beim Erstellen der Daten.
• PE_STATIS_XML3 (71003) XML-Fehler 3 beim Erstellen der Daten.
• PE_STATIS_XML4 (71004) XML-Fehler 4 beim Erstellen der Daten.
• PE_STATIS_XML5 (71005) XML-Fehler 5 beim Erstellen der Daten.
• PE_STATIS_XML6 (71006) XML-Fehler 6 beim Erstellen der Daten.
• PE_STATIS_XML7 (71007) XML-Fehler 7 beim Erstellen der Daten.
• PE_STATIS_XML8 (71008) XML-Fehler 8 beim Erstellen der Daten.
• PE_STATIS_XML9 (71009) XML-Fehler 9 beim Erstellen der Daten.
• PE_NEW_PERFIDIA (80167) Für den Versand der Daten wird eine neuere PERFIDIA Version benötigt.
• PE_SERVER_MAINTENANCE (80168) Der Versand der Daten ist momentan nicht möglich, da die Server gewartet werden.
Parameter
• szStatisUser (IN) Der Statistik-Benutzer.
• szElsterPassword (IN) Das Statistik-Passwort.
• plFilesFound (OUT) Anzahl der in der Send-Queue gefundenen Dateien.
• plFilesSent (OUT) Anzahl der erfolgreich versendeten Dateien.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
275© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Anmerkungen
Neben der XML-Erstellung muss bei dieser Funktion auch die XML-Auswertung selbst übernommen werden. Anstelle dieser Funktion können Sie auch die spezielle Funktion perfidia_statis_send verwenden.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de276
ELMA5
Funktionsübersicht
Versandperfidia_elma5_pfx_info perfidia_elma5_test perfidia_elma5_check perfidia_elma5_send perfidia_elma5_protocol_receive perfidia_elma5_status perfidia_elma5_error perfidia_elma5_delete perfidia_elma5_transfer_ticket perfidia_elma5_highest_datnum
Protokollperfidia_elma5_protocol_open perfidia_elma5_protocol_next perfidia_elma5_protocol_close
v3.90.161 PERFIDIA Toolkit Reference
277© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elma5_pfx_info
Mit dieser Funktion kann die PIN bzw. das Passwort überprüft und Informationen zu einem bestimmten Zertifi-kat in der PFX-Datei ausgelesen werden.
long perfidia_elma5_pfx_info ( const char *szPfxFile, const char *szPin, short nCert, long *plSerialNumber, char *szIssuerBuffer, short nIssuerBufferSize, char *szSubjectBuffer, short nSubjectBufferSize, char *szNotBeforeBuffer, short nNotBeforeBufferSize, char *szNotAfterBuffer, short nNotAfterBufferSize, unsigned long *pulKeyUsage );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_PASSWORD (80106) Ungültiges Passwort.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80803) Fehler beim Lesen der Datei.
• PE_INVALID_FORMAT (80143) Ungültiges Format.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• szPfxFile (IN) ELSTER PFX-Datei.
• szPin (IN) PIN bzw. Password mit dem die PFX-Datei verschlüsselt ist.
• nCert (IN) 0 = Zertifikat ‚signaturekey‘
• plSerialNumber (OUT) Seriennummer des Zertifikats.
• szIssuerBuffer (OUT) Herausgeber des Zertifikats. Der Issuer-Buffer sollte eine Größe von 513 Zeichen haben.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de278
• nIssuerBufferSize (IN) Größe des Issuer-Buffers.
• szSubjectBuffer (OUT) Subjekt des Zertifikats. Der Subject-Buffer sollte eine Größe von 513 Zeichen haben.
• nSubjectBufferSize (IN) Größe des Subject-Buffers.
• szNotBeforeBuffer (OUT) Der NotBefore-Buffer gibt an, ab wann das Zertifikat gültig ist, und sollte eine Größe von 15 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMDDhhmmss.
• nNotBeforeBufferSize (IN) Größe des NotBefore-Buffers.
• szNotAfterBuffer (OUT) Der NotAfter-Buffer gibt an, bis wann das Zertifikat gültig ist, und sollte eine Größe von 15 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMDDhhmmss.
• nNotAfterBufferSize (IN) Größe des NotAfter-Buffers .
• pulKeyUsage (OUT) 0x0001 = digital signature 0x0002 = non repudiation 0x0004 = key encipherment 0x0008 = data encipherment 0x0010 = key agreement 0x0020 = key certsign 0x0040 = crl sign 0x0080 = encipher only 0x0100 = decipher only
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
279© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elma5_test
Mit dieser Funktion läßt sich die Verbindung und der Login beim ELMA5 testen.
long perfidia_elma5_test( const char *szBZStNr, const char *szPfxFile, const char *szPfxPin, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
Parameter
• szBZStNr (IN) Die 11-stellige Nummer beginnt immer mit ‚bz‘.
• szPfxFile (IN) ELSTER BZSt PFX-Datei inkl. Pfad.
• szPfxPin (IN) PIN der PFX-Datei.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Diese Funktion erzeugt einen Progress.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de280
perfidia_elma5_check
Prüft die in der Send-Queue gespeicherten Dateien.
long perfidia_elma5_check( short nDatenArt, long lDatnum, long *plFilesFound, long *plFilesOK );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_EMPTY_QUEUE (80134) Die Send-Queue ist leer.
• PE_SCANSENDQ (80133) Fehler beim Scannen der Send-Queue.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_DATNUM_USED (80135) Dateinummer bereits benutzt.
• Fehlercodes von 1000 bis 3999 Diese stehen für Fehler im Dateiformat. (siehe Datensatzbeschreibung)
Parameter
• nDatenArt (IN) 0x1 (1) = Zusammenfassende Meldungen (zm??????.dat) 0x2 (2) = KIStAM (km??????.dat)
• lDatnum (IN) Nummer der Datei, die geprüft werden soll. Wenn 0 angegeben ist, werden alle Dateien in der Send-Queue geprüft.
• plFilesFound (OUT) Anzahl der in der Send-Queue gefundenen Dateien.
• plFilesOK (OUT) Anzahl der erfolgreich geprüften Dateien.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
281© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Anmerkungen
Bei einem Fehler im Dateiformat (Fehlercode 1000 bis 3999) läßt sich mit der Funktion perfidia_get_last_er-ror_v2 herausfinden, in welcher Datei und an welcher Stelle der Fehler aufgetreten ist.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de282
perfidia_elma5_send
Versendet alle in der Send-Queue gespeicherten Dateien.
long perfidia_elma5_send ( short nDatenArt, long lDatNum, const char *szBZStNr, const char *szPfxFile, const char *szPfxPin, long *plFilesFound, long *plFilesSent, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_EMPTY_QUEUE (80134) Die Send-Queue ist leer.
• PE_SCANSENDQ (80133) Fehler beim Scannen der Send-Queue.
• PE_DATNUM_USED (80135) Dateinummer bereits benutzt.
• Fehlercodes von 1000 bis 3999 Diese stehen für Fehler im Dateiformat. (siehe Datensatzbeschreibung)
• PE_NEW_PERFIDIA (80167) Für den Versand der Daten wird eine neuere PERFIDIA Version benötigt.
• PE_SERVER_MAINTENANCE (80168) Der Versand der Daten ist momentan nicht möglich, da die Server gewartet werden.
Parameter
• nDatenArt (IN) 0x1 (1) = Zusammenfassende Meldungen (zm??????.dat) 0x2 (2) = KIStAM (km??????.dat)
• lDatnum (IN) Nummer der Datei, die versendet werden soll. Wenn 0 angegeben ist, werden alle Dateien in der Send-Queue versendet.
• szBZStNr (IN) Die 11-stellige Nummer beginnt immer mit ‚bz‘.
• szPfxFile (IN) ELSTER BZSt PFX-Datei inkl. Pfad.
• szPfxPin (IN) PIN der PFX-Datei.
v3.90.161 PERFIDIA Toolkit Reference
283© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• plFilesFound (OUT) Anzahl der in der Send-Queue gefundenen Dateien.
• plFilesSent (OUT) Anzahl der erfolgreich versendeten Dateien.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Bei den Fehlercodes 1000 bis 3999 läßt sich mit der Funktion perfidia_get_last_error_v2 herausfinden, in welcher Datei und an welcher Stelle der Fehler aufgetreten ist.
Diese Funktion erzeugt einen Progress.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de284
perfidia_elma5_protocol_receive
Erfragt bei der Statistik den Protokollstatus für eine bzw. mehrere Datenlieferungen.
long perfidia_elma5_protocol_receive ( short nDatenArt, long lDatNum, const char *szBZStNr, const char *szPfxFile, const char *szPfxPin, long *plFilesFound, long *plFilesReceived, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_LOGIN (80141) Ungültiger Benutzername und/oder ungültiges Passwort.
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NO_DATA (80129) - Zur angegebenen Dateinummer existiert kein Eintrag in der Transferdatei. - Für die angegebene Dateinummer haben Sie bereits ein Antwortprotokoll erhalten. - Für die angegebene Dateinummer kann noch kein Antwortprotokoll abgeholt werden, da seit dem Versand der Daten noch keine 24 Stunden vergangen sind.
• PE_NEW_PERFIDIA (80167) Für den Versand der Daten wird eine neuere PERFIDIA Version benötigt.
• PE_SERVER_MAINTENANCE (80168) Der Versand der Daten ist momentan nicht möglich, da die Server gewartet werden.
Parameter
• nDatenArt (IN) 0x1 (1) = Zusammenfassende Meldungen (zm??????.dat) 0x2 (2) = KIStAM (km??????.dat)
• lDatNum (IN) Wenn lDatNum gleich 0 ist, wird für alle Datenlieferungen, die noch keinen entgültigen Status haben, der aktuelle Status nachgefragt. Ansonsten nur für die angegebene Dateinummer.
• szBZStNr (IN) Die 11-stellige Nummer beginnt immer mit ‚bz‘.
• szPfxFile (IN) ELSTER BZSt PFX-Datei inkl. Pfad.
• szPfxPin (IN) PIN der PFX-Datei.
• plFilesFound (OUT) Anzahl der gefundenen Dateien.
v3.90.161 PERFIDIA Toolkit Reference
285© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• plFilesReceived (OUT) Anzahl der erfolgreich empfangenen Dateien.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Diese Funktion erzeugt einen Progress.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de286
perfidia_elma5_status
Liefert den Status einer Datenlieferung.
long perfidia_elma5_status ( short nDatenArt, long lDatNum, long *plStatusCode, short *pnErrorCount );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• nDatenArt (IN) 0x1 (1) = Zusammenfassende Meldungen (zm??????.dat) 0x2 (2) = KIStAM (km??????.dat)
• lDatNum (IN) Dateinummer, von der ein Status abgefragt werden soll.
• plStatusCode (OUT) 0 = noch kein Protokoll angefordert 1 = Datenlieferung noch nicht verarbeitet 2 = Datenlieferung wurde vollständig verarbeitet 3 = Datenlieferung wurde teilweise verarbeitet 4 = Datenlieferung wurde gar nicht verarbeitet 5 = Es fehlen noch Antworten.
• pnErrorCount (OUT) Falls der StatusCode 3 oder 4 ist, wird ErrorCount auf die Anzahl der aufgetretenden Fehler gesetzt.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Die Fehlerinformationen lassen sich mit der Funktion perfidia_elma5_error abfragen.
v3.90.161 PERFIDIA Toolkit Reference
287© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elma5_status_v2
Liefert den Status einer Datenlieferung.
long perfidia_elma5_status_v2 ( short nDatenArt, long lDatNum, long *plStatusCode, short *pnErrorCount short *pnAnswerCount );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• nDatenArt (IN) 0x1 (1) = Zusammenfassende Meldungen (zm??????.dat) 0x2 (2) = KIStAM (km??????.dat)
• lDatNum (IN) Dateinummer, von der ein Status abgefragt werden soll.
• plStatusCode (OUT) 0 = noch kein Protokoll angefordert 1 = Datenlieferung noch nicht verarbeitet 2 = Datenlieferung wurde vollständig verarbeitet 3 = Datenlieferung wurde teilweise verarbeitet 4 = Datenlieferung wurde gar nicht verarbeitet 5 = Antworten fehlen noch
• pnErrorCount (OUT) Falls der StatusCode 3 oder 4 ist, wird ErrorCount auf die Anzahl der aufgetretenden Fehler gesetzt.
• pnAnswerCount (OUT) Liefert die Anzahl der empfangenen Antwortdateien.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Die Fehlerinformationen lassen sich mit der Funktion perfidia_elma5_error abfragen.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de288
perfidia_elma5_error
Liefert Fehlerinformationen über einen Datenlieferung.
long perfidia_elma5_error ( short nDatenArt, long lDatNum, short nErrorNum, char *szErrorRecordBuffer, short nErrorRecordBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• nDatenArt (IN) 0x1 (1) = Zusammenfassende Meldungen (zm??????.dat) 0x2 (2) = KIStAM (km??????.dat)
• lDatNum (IN) Dateinummer, der fehlerhaften Datenlieferung.
• nErrorNum (IN) Fortlaufende Nummer von 1 bis einschließlich ErrorCount. (ErrorCount siehe perfidia_elma5_status)
• szErrorRecordBuffer (OUT) Der Buffer muss mindestens eine Länge von 81 Zeichen haben.
• nMerkmalBufferSize (IN) Größe des ErrorRecord-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Wenn bei dem Funktionsaufruf von perfidia_elma5_status der zurückgegebene Status 3 ist, gibt der Error-Count die Anzahl der Fehler an. Die Informationen zu den einzelnen Fehlern lassen sich dann mit dieser Funktion (perfidia_elam5_error) abfragen.
v3.90.161 PERFIDIA Toolkit Reference
289© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elma5_delete
Löscht alle Protokolleinträge zu einer bestimmten Dateinummer aus den PERFIDIA-Log-Dateien, so dass die Dateinummer erneut zum Versenden benutzt werden kann. Das erfolgreiche Löschen wird protokolliert. (siehe perfidia_elma5_protocol_open)
long perfidia_elma5_delete ( short nDatenArt, long lDatNum );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• nDatenArt (IN) 0x1 (1) = Zusammenfassende Meldungen (zm??????.dat) 0x2 (2) = KIStAM (km??????.dat)
• lDatNum (IN) Dateinummer
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de290
perfidia_elma5_highest_datnum
Liefert die höchste benutzte Dateinummer.
long perfidia_elma5_highest_datnum ( short nDatenArt, long *plDatNum );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
Parameter
• nDatenArt (IN) 0x1 (1) = Zusammenfassende Meldungen (zm??????.dat) 0x2 (2) = KIStAM (km??????.dat)
• plDatNum (OUT) Dateinummer
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
291© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elma5_transfer_ticket
Liefert das Transfer-Ticket zu einer übertragenen Datenlieferung.
long perfidia_elma5_transfer_ticket ( short nDatenArt, long lDatNum, char *szTransferTicketBuffer, short nTransferTicketBufferSize, long *plTestmerker char *szSendDateBuffer, short nSendDateBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da der TransferTicket-Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe des TransferTicket-Buffers ist zu klein.
Parameter
• nDatenArt (IN) 0x1 (1) = Zusammenfassende Meldungen (zm??????.dat) 0x2 (2) = KIStAM (km??????.dat)
• lDatNum (IN) Dateinummer.
• szTransferTicketBuffer (OUT) Der TransferTicket-Buffer sollte eine Größe von 65 Zeichen haben.
• nTransferTicketBufferSize (IN) Größe des TransferTicket-Buffers.
• plTestmerker (OUT) Testmerker der Datenlieferung. Hier darf ein NULL-Pointer übergeben werden.
• szSendDateBuffer (OUT) Der SendDate-Buffer sollte eine Größe von 15 Zeichen haben.
• nSendDateBufferSize (IN) Größe des SendDate-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de292
perfidia_elma5_print
Druckt Zusammenfassende Meldungen.
long perfidia_elma5_print ( const char *szDatFile, short nRecordNumFrom, short nRecordNumTo, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_PRINT_NO_PRINTER (81001) Keinen Drucker gefunden.
• PE_PRINT_WINSPOOL (81002) Fehler beim Speichern des Druckauftrags in der Druckerwarteschlage.
• PE_PRINT_PAGE (81003) Fehler beim Erstellen des Druckauftrags.
• PE_PRINT_USER_ABORT (81004) Druck durch Benutzer abgebrochen.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann nicht gefunden werden.
Parameter
• szDatFile (IN) Name der Datendatei.
• nRecordNumFrom (IN) Datensatznummer (00001-32000), bei der der Druck beginnen soll.
• nRecordNumFrom (IN) Datensatznummer (00001-32000), bei der der Druck enden soll.
• hwndParent (IN) Dieser Window-Handle muss gültig sein.
Betriebssysteme
Microsoft Windows
v3.90.161 PERFIDIA Toolkit Reference
293© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elma5_pdf
Druckt Zusammenfassende Meldungen in eine PDF-Datei.
long perfidia_elma5_pdf ( const char *szPdfFile, short nOverwrite, const char *szDatFile, short nRecordNumFrom, short nRecordNumTo, );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann nicht gefunden werden.
• PE_FILE_EXISTS (80808) Die PDF-Datei existiert bereits.
• PE_FILE_CREATE (80801) Fehler beim Erstellen der PDF-Datei.
• PE_FILE_WRITE (80806) Fehler beim Schreiben der PDF-Datei.
Parameter
• szPdfFile (IN) Dateiname der PDF-Datei.
• nOverwrite (IN) 0 = vorhandene PDF-Datei nie überschreiben 1 = vorhandene PDF-Datei immer überschreiben
• szDatFile (IN) Name der Datendatei.
• nRecordNumFrom (IN) Datensatznummer (00001-32000), bei der der Druck beginnen soll.
• nRecordNumTo (IN) Datensatznummer (00001-32000), bei der der Druck enden soll.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de294
perfidia_elma5_print_hdc_prepare
Mit den Funktionen perfidia_elma5_print_hdc_* können Zusammenfassende Meldungen auf einem Device-Kontext (DC-Object) gezeichnet werden. Dies kann zum einen zur Vorschau aber auch zum individuellen Druck genutzt werden.
Die Funktion perfidia_elma5_print_hdc_prepare bereitet die Ausgabe vor, mit der Funktion perfidia_elma5_print_hdc_draw werden die einzelnen Seiten gezeichnet und die Funktion perfidia_elma5_print_hdc_cleanup gibt die verwendeten Resourcen wieder frei.
long perfidia_elma5_print_hdc_prepare ( const char *szDatFile, short nRecordNumFrom, short nRecordNumTo, short *pnPageCount );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NULL_POINTER (80136) Ungültiger NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_FILE_NOFILE (80802) Datendatei nicht gefunden.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
Parameter
• szDatFile (IN) Name der Datendatei.
• nRecordNumFrom (IN) Datensatznummer (00001-32000), bei der die Ausgabe beginnen soll.
• nRecordNumTo (IN) Datensatznummer (00001-32000), bei der die Ausgabe enden soll.
• pnPageCount (OUT) Gibt die Anzahl der Seiten zurück.
Betriebssysteme
Microsoft Windows
v3.90.161 PERFIDIA Toolkit Reference
295© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elma5_print_hdc_cleanup
Gibt die verwendeten Resourcen wieder frei. Nähere Information unter der Funktion perfidia_elma5_print_hdc_prepare.
void perfidia_elma5_print_hdc_cleanup ();
Rückgabewerte
keine
Parameter
keine
Betriebssysteme
Microsoft Windows
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de296
perfidia_elma5_print_hdc_draw
Mit den Funktionen perfidia_elma5_print_hdc_* können Zusammenfassende Meldungen auf einem Device-Kontext (DC-Object) gezeichnet werden. Dies kann zum einen zur Vorschau aber auch zum individuellen Druck genutzt werden.
Die Funktion perfidia_elma5_print_hdc_prepare bereitet die Ausgabe vor, mit der Funktion perfidia_elma5_print_hdc_draw werden die einzelnen Seiten gezeichnet und die Funktion perfidia_elma5_print_hdc_cleanup gibt die verwendeten Resourcen wieder frei.
long perfidia_elma5_print_hdc_draw ( HDC hDC, short nPage, long lLeftMargin, long lTopMargin, double dScaleFactor );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Ungültiger NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• hDC (IN) Handle auf einen Device-Kontext (DC-Object).
• nPage (IN) Seite (1 bis nPageCount), die gezeichnet werden soll.
• lLeftMargin (IN) Linker Rand in der Einheit HIMETRICS.
• lTopMargin (IN) Oberer Rand in der Einheit HIMETRICS.
• dScaleFactor (IN) Skalierungsfaktor (Standard: 1.0).
Betriebssysteme
Microsoft Windows
v3.90.161 PERFIDIA Toolkit Reference
297© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elma5_protocol_open
Öffnet die ELMA5-Protokolldatei.
long perfidia_statis_protocol_open ( short nYear, short nMonth, short nDay, short nAction, short nCompletion );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
Parameter
• nYear (IN) Jahr, ab dem Protokolleinträge gelesen werden.
• nMonth (IN) Monat (1-12), ab dem Protokolleinträge gelesen werden.
• nDay (IN) Tag (1-31), ab dem Protokolleinträge gelesen werden.
• nAction (IN) 0 = alle Protokolleinträge 10 = ZM versenden 11 = Protokollanforderungen für ZM 12 = ZM-Protokolleinträge gelöscht
• nCompletion (IN) 0 = alle Protokolleinträge 1 = nur Protokolleinträge mit ErrorCode ungleich 0 2 = nur Protokolleinträge mit ErrorCode gleich 0
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSDAnmerkungen
Nach dem Lesen der Protokolleinträge mit der Funktion perfidia_elma5_protocol_next muss die Datei mit der Funktion perfidia_elma5_protocol_close geschlossen werden.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de298
perfidia_elma5_protocol_next
Nach einem erfolgreichen Aufruf der Funktion perfidia_elma5_protocol_open liefert diese Funktion solange den nächsten Protokolleintrag, bis sie mit PE_NO_DATA zurückkommt.
long perfidia_elma5_protocol_next ( char *szDateTimeBuffer, short nDateTimeBufferSize, short *pnAction, long *plErrorCode, long *plDatNum, char *szFilenameBuffer, short nFilenameBufferSize, char *szIPAddressBuffer, short nIPAddressBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe eines Buffers ist zu klein.
Parameter
• szDateTimeBuffer (OUT) DateTime-Buffer sollte eine Größe von 15 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMD-Dhhmmss.
• nDateTimeBufferSize (IN) Größe des DateTime-Buffers.
• pnAction (OUT) 10 = ZM versenden 11 = Protokollanforderungen für ZM 12 = ZM-Protokolleinträge gelöscht
• plErrorCode (OUT) 0 = kein Fehler, sonst ErrorCode
• plDatNum (OUT) Dateinummer der Datenlieferung
• szFilenameBuffer (OUT) Dateiname der Datenlieferung.
• nFilenameBufferSize (IN) Größe des Filename-Buffers.
v3.90.161 PERFIDIA Toolkit Reference
299© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• szIPAddressBuffer (OUT) IP-Adresse der Statistik-Clearingstelle. Der IPAddress-Buffer sollte eine Größe von 17 Zeichen haben.
• nIPAddressBufferSize (IN) Größe des IPAddress-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de300
perfidia_elma5_protocol_close
Schließt die ELMA5-Protokolldatei.
void perfidia_elma5_protocol_close ();
Rückgabewerte
keine
Parameter
keine
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
301© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
GoBD
Funktionsübersicht
perfidia_gdpdu_datfile_check perfidia_gdpdu_table_check perfidia_gdpdu_iso_create
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de302
perfidia_gdpdu_datfile_check
Hiermit können die folgenden GoBD-Dateien geprüft werden:
• Mandantendaten (MANDANT.DAT) • Status-Informationen (STATUS.DAT) • Feld-Beschreibungen (*.DSC) • ForeignKey-Beschreibungen (*.FKY) • MAP-Einträge (*.MAP) • Export-Informationen (EXPORT.INF)
long perfidia_gdpdu_datfile_check ( const char *szDatFile, short nMode, );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann nicht gefunden werden.
• Fehlercodes von 1000 bis 3999 Diese stehen für Fehler im Dateiformat. (siehe Datensatzbeschreibung)
Parameter
• szDatFile (IN) Dateiname der zu prüfenden Datei.
• nMode (IN) Dieser Parameter wird momentan nur beim Prüfen von Feldbeschreibungen (*.DSC) benutzt und sollte ansonsten immer 0 sein. 0 = Nur die Feldbeschreibungsdatei prüfen 1 = Feldbeschreinungs- und Datendatei prüfen (z.B. PERSONAL.DSC und PERSONAL.DAT)
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
303© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_gdpdu_table_check
Diese Funktion prüft die Feldbeschreibungsdatei (Tabellenname.DSC) und soweit vorhanden auch die For-eignKey-Beschreibung (Tabellenname.FKY) und MAP-Einträge (Tabellenname.MAP). Außerdem läßt sich optional auch die dazugehörige Datendatei (Tabellenname.DAT) hiermit prüfen.
long perfidia_gdpdu_table_check ( short nCategory, const char *szMandFolderName, const char *szTableName, short nYear, short nMonth, short nMode );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann nicht gefunden werden.
• Fehlercodes von 1000 bis 3999 Diese stehen für Fehler im Dateiformat. (siehe Datensatzbeschreibung)
Parameter
• nCategory (IN) 1 = LOHN 2 = FIBU
• szMandFolderName (IN) Name des Mandantenordner. (z.B.: mandant.007)
• plTableName (IN) Name der zu prüfenden Tabelle. (z.B.: PERSONAL)
• nYear (IN) Jahr im Format JJJJ
• nMonat (IN) Monat (1-12) oder 0, falls sich die Tabelle auf das ganze Jahr bezieht.
• nMode (IN) 0 = Nur die Feldbeschreibungs-, ForeignKey- und MAP-Datei prüfen 1 = Datendatei zusätzlich prüfen (z.B. PERSONAL.DSC, PERSONAL.FKY und PERSONAL.DAT)
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de304
perfidia_gdpdu_iso_create
Mit dieser Funktion werden die zu exportierenden Daten aufbereitet und in ein ISO-Image geschrieben. Hier-bei können die Daten auch komprimiert und mit dem Rijndeal-Algorithmus (AES-256Bit) verschlüsselt werden.
Sobald die Daten außer Haus gegeben werden, sollten diese aufgrund des Datenschutzes grundsätzlich ver-schlüsselt werden. Das hierbei verwendete Passwort sollte mindestens eine Länge von 10 Zeichen haben und neben Buchstaben und Zahlen auch Sonderzeichen (#, ?, @, +, ...) enthalten.
long perfidia_gdpdu_iso_create ( long lMode, const char *szPassword, short nCategory, const char *szMandFolderName, const char *szExportInf, const char *szIsoImage, short nOverwrite, const char *szTempFolder, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PARAMETER (80114) Ungültiger Parameter.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann nicht gefunden werden.
• PE_FILE_EXISTS (80808) Die PDF-Datei existiert bereits.
• PE_FILE_CREATE (80801) Fehler beim Erstellen der PDF-Datei.
• PE_FILE_WRITE (80806) Fehler beim Schreiben der PDF-Datei.
• Fehlercodes von 1000 bis 3999 Diese stehen für Fehler im Dateiformat. (siehe Datensatzbeschreibung)
Parameter
• lMode (IN) 0 = keine Komprimierung und Verschlüsselung 1 = nur Komprimierung 3 = Komprimierung und Verschlüsselung
v3.90.161 PERFIDIA Toolkit Reference
305© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• szMandFolderName (IN) Name des Mandantenordner. (z.B.: mandant.007)
• szPassword (IN) Das Passwort, mit dem die Daten verschlüsselt werden.
• nCategory (IN) 1 = LOHN 2 = FIBU
• szMandFolderName (IN) Name des Mandantenordner. (z.B.: mandant.007)
• szExportInf (IN) Name der Datei mit den Exportinformationen. (.../export.inf)
• szIsoImage (IN) Name des ISO-Images.
• nOverwrite (IN) 0 = vorhandene ISO-Image nie überschreiben 1 = vorhandene ISO-Image immer überschreiben
• szTempFolder (IN) Leeres Verzeichnis zum Zwischenspeichern der zu exportierenden Daten. Bitte beachten Sie, dass auf der Festplatte/Volume ausreichend freier Speicherplatz zur Verfügung steht.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Diese Funktion erzeugt einen Progress.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de306
Hilfsfunktionen
Funktionsübersicht
Fehlerbehandlung perfidia_get_last_error perfidia_get_last_error_v2 perfidia_get_error_text
Verbindungstestsperfidia_test_email_connect perfidia_test_email_send perfidia_test_email_send_mapi perfidia_test_internet_v3
Callback für Progressperfidia_progress_callback_set perfidia_progress_callback_clear perfidia_progress_info Callback-Funktion für Progressinformationen
PKCS#11perfidia_pkcs11_search perfidia_pkcs11_info perfidia_pkcs11_cert_info
PERFIDIA Signaturkarten Treiberperfidia_scard_search perfidia_scard_info perfidia_scard_cert_info
Verschiedenes perfidia_permission_check perfidia_system_info perfidia_isam_repair perfidia_get_version perfidia_get_version_v2
v3.90.161 PERFIDIA Toolkit Reference
307© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_get_last_error
Hiermit kann der Fehlercode und ggf. auch ein Fehlertext des letzten Funktionsaufrufs abgefragt werden.
long perfidia_get_last_error ( long *plErrorCode, char *szErrorTextBuffer, short nErrorTextBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_BUFSIZE (80110) Der ErrorText-Buffer ist zu klein.
• PE_TEXT_TRUNC (80112) Der Fehlertext wurde abgeschnitten, da der ErrorText-Buffer zu klein ist.
Parameter
• plErrorCode (OUT) Fehlercode des letzten Funktionsaufrufs.
• szErrorTextBuffer (OUT) Der Fehlertext kann höchstens eine Länge von 2048 Zeichen haben. In der Regel ist er allerdings deut-lich kürzer, so daß eine Buffergröße von etwa 512 Zeichen im Normalfall ausreichen sollte.
• nErrorTextBufferSize (IN) Größe des ErrorText-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de308
perfidia_get_last_error_v2
Hiermit kann der Fehlercode und ggf. auch ein Fehlertext des letzten Funktionsaufrufs abgefragt werden. Nach allen *_check und *_send Funktionsaufrufen kann zusätzlich noch der Dateiname bzw. die Datensatz-nummer erfragt werden.
long perfidia_get_last_error_v2 ( long *plErrorCode, char *szErrorTextBuffer, short nErrorTextBufferSize, char *szFilenameBuffer, short nFilenameBufferSize, short *pnRecordNum );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_BUFSIZE (80110) Der ErrorText-Buffer ist zu klein.
• PE_TEXT_TRUNC (80112) Der Fehlertext wurde abgeschnitten, da der ErrorText-Buffer zu klein ist.
Parameter
• plErrorCode (OUT) Fehlercode des letzten Funktionsaufrufs.
• szErrorTextBuffer (OUT) Der Fehlertext kann höchstens eine Länge von 2048 Zeichen haben. In der Regel ist er allerdings deut-lich kürzer, so daß eine Buffergröße von etwa 512 Zeichen im Normalfall ausreichen sollte.
• nErrorTextBufferSize (IN) Größe des ErrorText-Buffers.
• szFilenameBuffer (OUT) Liefert den Dateinamen (falls vorhanden), bei dem der Fehler aufgetreten ist. der Filename-Buffer sollte mindestens ein Zeichen größer sein als der längste Dateiname. Wenn Sie diese Information nicht benö-tigen, darf hier auch ein NULL-Pointer übergeben werden.
• nFilenameBufferSize (IN) Größe des Filename-Buffers
• pnRecordNum (OUT) Liefert die Datensatznummer (falls vorhanden), bei der der Fehler aufgetreten ist. Wenn Sie diese Infor-mation nicht benötigen, darf hier auch ein NULL-Pointer übergeben werden.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
309© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_get_error_text
Hiermit kann zu einer Fehlernummer der allgemeine Fehlertext abgefragt werden.
long perfidia_get_error_text ( long lErrorCode, char *szErrorTextBuffer, short nErrorTextBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_BUFSIZE (80110) Der ErrorText-Buffer ist zu klein.
• PE_TEXT_TRUNC (80112) Der Fehlertext wurde abgeschnitten, da der ErrorText-Buffer zu klein ist.
Parameter
• lErrorCode (IN) Fehlercode für den der allgemeine Fehlertext abgefragt werden soll.
• szErrorTextBuffer (OUT) Der ErrorText-Buffer sollte eine Größe von 257 Zeichen haben.
• nErrorTextBufferSize (IN) Größe des ErrorText-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de310
perfidia_permission_check
Mir dieser Funktion wird im PERFIDIA Datenordner geprüft, ob auf die benötigten Unterordner sowohl Lese- als auch Schreibrechte bestehen.
long perfidia_permission_check ( const char *szRootPath, long lModules, long lReserved );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ROOTPATH_NOT_VALID (70140) Der PERFIDIA Datenordner kann nicht gefunden werden.
• PE_FILE_CREATE (80801) Die Datei ‚_accchk.dat‘ kann nicht erstellt werden.
• PE_FILE_WRITE (80806) Die Datei ‚_accchk.dat‘ kann nicht geschrieben werden.
• PE_PATH_NOPERMISSION (70111) Auf einen benötigten Unterordner besteht kein Lese- und Schreibrecht.
Parameter
• szRootPath (IN) Dies ist das Arbeitsverzeichnis von PERFIDIA.
• lModules (IN) Hier darf eine Kombination der folgenden Werte übergeben werden: 1 = LOHN-SV 2 = LOHN-ELSTER 4 = FIBU-ELSTER 8 = LOHN-STATIS 16 = LOHN-GOBD 32 = FIBU-GOBD 64 = FIBU-ELMA5 128 = LOHN-ZVE
• lReserved (IN) Hier muss der Wert 0 übergeben werden.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
311© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_system_info
Mit dieser Funktion können Systeminformationen abgefragt werden.
long perfidia_system_info ( const char *szInfoName, char *szSystemInfoBuffer, short nSystemInfoBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PARAMETER (80138) Die Variable ‚InfoName‘ hat einen ungültigen Inhalt.
• PE_TEXT_TRUNC (80112) Der Inhalt von ‚SystemInfoBuffer‘ wurde abgeschnitten.
Parameter
• szInfoName (IN) Die gültigen Werte sind in der folgenden Tabelle aufgelistet.
• szSystemInfoBuffer (OUT) Der Buffer sollte min. eine Größe von 2 haben.
• nSystemInfoBufferSize (IN) Größe des SystemInfo-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
InfoName SystemInfoBufferOS Name und Version des BetriebssystemsIE_VERSION (nur Windows)
Version des Internet Explorers
IE_TLS_V1 (nur Windows)
„yes“ oder „no“
MAPI_INSTALLED (nur Windows)
„yes“ oder „no“
MAPI_DEFAULT_CLIENT (nur Windows)
Name des Standard-Email-Clients z.B.: „Outlook Express“
LIBCURL_VERSION (nur Linux, macOS und FreeBSD)
Zeichenkette, z.B.: 7.13.2
LIBCURL_VERSION_NUM (nur Linux, macOS und FreeBSD)
HEX-Wert, z.B.: 070D02
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de312
InfoName SystemInfoBufferLIBCURL_SSL_SUPPORTED (nur Linux, macOS und FreeBSD)
„yes“ oder „no“
LIBCURL_SSL_VERSION (nur Linux, macOS und FreeBSD)
Zeichenkette, z.B.: OpenSSL/1.0.1l
SVCHK_MIN_BUILD (nur Windows)
Liefert den Build, den das Toolkit mindestens von PERFIDIA SV-Check benötigt. (beispielsweise 34)
SVCHK_BUILD (nur Windows)
Liefert den Build von PERFIDIA SV-Check zu-rück. (beispielsweise 35)
SVCHK_VERSION (nur Windows)
Liefert die komplette Version von PERFIDIA SV-Check zurück. (beispielsweise 1.40.35 Beta 2)
SV-ABSBETR Liefert die SV-Absenderbetriebsnummer des Datenordners zurück
DATFOLDER-ID Liefert die Id des Datenordners zurück. (bei-spielsweise 12345678-11223344)
v3.90.161 PERFIDIA Toolkit Reference
313© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_test_email_connect_v2
Überprüft die Verbindung zum Emailserver per SMTP-Client ohne eine Email zu versenden.
long perfidia_test_email_connect_v2 (void);
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_SMTP_DATASEND (80301) Fehler bei der Datenübertragen an den Emailserver. Eventuell ist die Netzwerkverbindung unterbro-chen worden.
• PE_SMTP_DATARECV (80302) Fehler beim Datenempfang vom Emailserver. Eventuell ist die Netzwerkverbindung unterbrochen wor-den.
• PE_SMTP_STARTSTRING (80305) Der Emailserver antwortet nicht korrekt.
• PE_SMTP_UNKNOWNHOST (80310) Falsche IP-Adresse oder Hostname.
• PE_SMTP_SOCKETFAILED (80311) Fehler beim Anfordern eines Sockets.
• PE_SMTP_CONNECTFAILED (80312) Fehler beim Verbindungsaufbau zum Emailserver.
• PE_SMTP_AUTHLOGIN_START (80313) Abbruch beim Loginversuch über SMTP_AUTH_LOGIN.
• PE_SMTP_AUTHLOGIN_USER (80314) Benutzername vom Emailserver nicht akzeptiert.
• PE_SMTP_AUTHLOGIN_PASS (80315) Benutzername und/oder Passwort vom Emailserver nicht akzeptiert.
• PE_SMTP_AUTHPLAIN_START (80316) Abbruch beim Loginversuch über SMTP_AUTH_PLAIN.
• PE_SMTP_AUTHPLAIN_USERPASS (80317) Benutzername und/oder Passwort vom Emailserver nicht akzeptiert.
Parameter
keine
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkung
Die Emailkonfiguration wird über die Config-Parameter gesteuert.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de314
perfidia_test_email_send_v2
Hiermit läßt sich die Funktionalität des SMTP-Clients bzw. der MAPI-Schnittstelle testen.
long perfidia_test_email_send_v2 ( const char *szRecipientEmail, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_SMTP_DATASEND (80301) Fehler bei der Datenübertragen an den Emailserver. Eventuell ist die Netzwerkverbindung unterbro-chen worden.
• PE_SMTP_DATARECV (80302) Fehler beim Datenempfang vom Emailserver. Eventuell ist die Netzwerkverbindung unterbrochen wor-den.
• PE_SMTP_READ_ATTACHMENTS (80304) Fehler beim Lesen der Email-Anlagen.
• PE_SMTP_STARTSTRING (80305) Der Emailserver antwortet nicht korrekt.
• PE_SMTP_MAILFROM (80306) Fehler in der Email-Adresse des Absenders.
• PE_SMTP_RCPTTO (80307) Fehler in der Email-Adresse des Empfängers.
• PE_SMTP_DATASTART (80308) Fehler beim Start der Emailübertragung.
• PE_SMTP_QUEUEMAIL (80309) Email konnte nicht in die Versand-Queue des Emailservers gestellt werden.
• PE_SMTP_UNKNOWNHOST (80310) Falsche IP-Adresse oder Hostname.
• PE_SMTP_SOCKETFAILED (80311) Fehler beim Anfordern eines Sockets.
• PE_SMTP_CONNECTFAILED (80312) Fehler beim Verbindungsaufbau zum Emailserver.
• PE_SMTP_AUTHLOGIN_START (80313) Abbruch beim Loginversuch über SMTP_AUTH_LOGIN.
• PE_SMTP_AUTHLOGIN_USER (80314) Benutzername vom Emailserver nicht akzeptiert.
• PE_SMTP_AUTHLOGIN_PASS (80315) Benutzername und/oder Passwort vom Emailserver nicht akzeptiert.
• PE_SMTP_AUTHPLAIN_START (80316) Abbruch beim Loginversuch über SMTP_AUTH_PLAIN.
• PE_SMTP_AUTHPLAIN_USERPASS (80317) Benutzername und/oder Passwort vom Emailserver nicht akzeptiert.
v3.90.161 PERFIDIA Toolkit Reference
315© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• PE_NO_MAPI (80108) Es ist kein MAPI-fähiges Email-Programm installiert.
• PE_MAPI_ERROR (80131) Fehler beim Email-Versenden.
Parameter
• szRecipientEmail (IN) Email-Adresse des Empfängers der Testmail.
• hwndParent (IN) Bei der Verwendung der MAPI-Schnittstelle sollte dieser Window-Handle möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkung
Die Emailkonfiguration wird über die Config-Parameter gesteuert.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de316
perfidia_test_internet_v3
Diese Funktion testet, ob eine Verbindung zum Internet (HTTP oder HTTPS) besteht.
long perfidia_test_internet_v3 ( short nType, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NO_INET (80107) Die Verbindung zum Internet konnte nicht hergestellt werden.
• PE_HTTP_OPEN (80501) Fehler beim Initialisieren der Internetverbindung. (1)
• PE_HTTP_CONNECT (80502) Fehler beim Initialisieren der Internetverbindung. (2)
• PE_HTTP_OPENREQUEST (80503) Fehler beim Initialisieren der Internetverbindung. (3)
• PE_HTTP_SENDREQUEST (80504) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_SENDREQUESTEX (80505) Fehler beim Verbindungsaufbau zum Server.
• PE_HTTP_WRITEFILE (80506) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_ENDREQUEST (80507) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_QUERYINFO (80508) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_READFILE (80509) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_PROXY_AUTH (80510) Proxy-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_AUTH (80511) Server-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_ERROR (80512) Interner Fehler beim Server.
Parameter
• nType (IN) 0 = HTTP 1 = HTTPS (SSL-Verbindung)
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
317© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Anmerkungen
Bei der Firewall muß der Port 80 (HTTP) für die folgenden IP-Adressen freigeschaltet sein:
www.perfidia.de www1.perfidia.de www2.perfidia.de www3.perfidia.de
Wenn für die Internetverbindung eine Authentifizierung erforderlich ist, setzen Sie mit der Funktion perfi-dia_config_set die beiden Variablen HTTP_PROXY_USER und HTTP_PROXY_PASSWORD. Mit den beiden Variablen HTTP_PROXY_NAME und HTTP_PROXY_PORT können Sie die Einstellungen des Microsoft Internet Explorers überschreiben.
Diese Funktion erzeugt einen Progress.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de318
perfidia_test_rzproxy
Diese Funktion testet, ob eine Verbindung zum PERFIDIA - Rechenzentrum (HTTPS) besteht. Vor Aufruf dieser Funktion muss die Funktion perfidia_elster_auth oder perfidia_eslter_auth_v2 erfolgreich aufgerufen werden.
long perfidia_test_rzproxy ( short nReserved, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NO_INET (80107) Die Verbindung zum Internet konnte nicht hergestellt werden.
• PE_HTTP_OPEN (80501) Fehler beim Initialisieren der Internetverbindung. (1)
• PE_HTTP_CONNECT (80502) Fehler beim Initialisieren der Internetverbindung. (2)
• PE_HTTP_OPENREQUEST (80503) Fehler beim Initialisieren der Internetverbindung. (3)
• PE_HTTP_SENDREQUEST (80504) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_SENDREQUESTEX (80505) Fehler beim Verbindungsaufbau zum Server.
• PE_HTTP_WRITEFILE (80506) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_ENDREQUEST (80507) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_QUERYINFO (80508) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_READFILE (80509) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_PROXY_AUTH (80510) Proxy-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_AUTH (80511) Server-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_ERROR (80512) Interner Fehler beim Server.
Parameter
• nReserved (IN) Reserviert, hier muss 0 übergeben werden. • hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
319© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Anmerkungen
Bei der Firewall muß der Port 443 (HTTPS) für die folgenden IP-Adressen freigeschaltet sein:
rz1.perfidia.de rz2.perfidia.de rz3.perfidia.de rz4.perfidia.de
Wenn für die Internetverbindung eine Authentifizierung erforderlich ist, setzen Sie mit der Funktion perfidia_config_set die beiden Variablen HTTPS_PROXY_USER und HTTPS_PROXY_PASSWORD. Mit den beiden Variablen HTTPS_PROXY_NAME und HTTPS_PROXY_PORT können Sie die Einstellungen des Microsoft Internet Explorers überschreiben.
Diese Funktion erzeugt einen Progress.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de320
perfidia_progress_callback_set
Mit dieser Funktion können Sie eine Callback-Funktion setzen, um die Progressinformationen zu erhalten.
long perfidia_progress_callback_set ( PERFIDIA_PROGRESS_PROC lpCallbackFunc, LPARAM lParam );
Bei folgenden Funktionen ist die Callback-Funktion benutzbar:
perfidia_test_internet_v2 perfidia_test_internet_v3 perfidia_svmail_send perfidia_svmail_send_v2 perfidia_svmail_send_mapi perfidia_itsg_cert_crp_status perfidia_itsg_cert_crp_http perfidia_itsg_agvcerts_import_http perfidia_svmail_send_mapi_v2 perfidia_lstb_send perfidia_lstb_protocol_receive perfidia_lsta_send perfidia_usta_send perfidia_elster_xml_send perfidia_statis_lve_send perfidia_statis_bjv_send perfidia_statis_xml_send
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
Parameter
• lpCallbackFunc (IN) Der Pointer auf Ihre Callback-Funktion.
• lParam (IN) Dieser Parameter wird bei jedem Aufruf der Callback-Funktion übergeben. Er wird nicht von PERFIDIA benutzt, sondern kann frei für Ihre Anwendung verwendet werden.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Wenn eine Funktionen einen Progress erzeugen, steht dies bei der jeweiligen Funktion unter Anmerkungen.
v3.90.161 PERFIDIA Toolkit Reference
321© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_progress_callback_clear
Hiermit wird der Verweis auf die Callback-Funktion gelöscht.
long perfidia_progress_callback_clear ();
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
Parameter
keine
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de322
perfidia_progress_info
Wenn mit der Funktion perfidia_progress_callback_set eine Callback-Funktion gesetzt wurde, können Sie mit dieser Funktion die Progressinformationen lesen.
long perfidia_progress_info ( char *szTitleBuffer, short nTitleBufferSize, char *szAction1Buffer, short Action1BufferSize, short *pnProgress1, char *szAction2Buffer, short nAction2BufferSize, short *pnProgress2, long *plFilesDone, long *plFilesTotal, char *szFilenameBuffer, short nFilenameBufferSize, char *szExtraInfoBuffer, short nExtraInfoBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_TEXT_TRUNC (80112) Mindestens ein Text wurde abgeschnitten.
Parameter
• szTitleBuffer (OUT) Der Title-Buffer muß eine Größe von 65 Zeichen haben.
• nTitleBufferSize (IN) Größe des Title-Buffers.
• szAction1Buffer (OUT) Der Action1-Buffer muß eine Größe von 65 Zeichen haben.
• nAction1BufferSize (IN) Größe des Action1-Buffers.
• pnProgress1 (OUT) Fortschrittsanzeige 1 im Breich von 0 bis 100.
• szAction2Buffer (OUT) Der Action2-Buffer muß eine Größe von 65 Zeichen haben.
• nAction2BufferSize (IN) Größe des Action2-Buffers.
• pnProgress2 (OUT) Fortschrittsanzeige 2 im Breich von 0 bis 100.
• plFilesDone (OUT) Abgearbeitete Dateien.
v3.90.161 PERFIDIA Toolkit Reference
323© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• plFilesTotal (OUT) Gesamte Anzahl an abzuarbeitenden Dateien.
• szFilenameBuffer (OUT) Der Filename-Buffer muß eine Größe von 65 Zeichen haben.
• nFilenameBufferSize (IN) Größe des Filename-Buffers.
• szExtraInfoBuffer (OUT) Der ExtraInfo-Buffer muß eine Größe von 65 Zeichen haben.
• nExtraInfoBufferSize (IN) Größe des ExtraInfo-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de324
Callback-Funktion für Progressinformationen
Die Callback-Funktion für die Progressinformationen muss folgendes Format haben:
long MyCallbackFunktion ( short nChanged, LPARAM lParam );
Sie sollten in der Callback-Funktion keine zeitintensiven Operationen durchführen, da PERFIDIA immer auf den Rückgabewert der Callback-Funktion wartet. Mit dem Rückgabewert der Callback-Funktion können Sie steuern, ob die Verarbeitung fortgefahren oder abgebrochen werden soll.
Rückgabewerte
• 0 = Verarbeitung fortfahren.• 1 = Verarbeitung sofort abbrechen.
Parameter
• nChanged (IN) 0 = Keine Änderung. 1 = Die Progressinformationen haben sich geändert.
• lParam (IN) Bei perfidia_progress_callback_set übergebener Wert.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
325© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_pkcs11_search
Mit dieser Funktion können Informationen zu alle Token, die über die angegebene PKCS#11-Bibliothek gefun-den werden, ermittelt werden. In Abhängigkeit von der verwendeten PKCS#11-Bibliothek kann eine einzelne Signaturkarte auch durch mehrere Token dargestellt werden.
long perfidia_pkcs11_search ( const char *szPkcs11Lib, short *pnCryptoKiVersion, char *szManufacturerBuffer, short nManufacturerBufferSize, short *pnTokenCount );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NO_DATA (80129) Keinen Token gefunden.
• PE_PKCS11_GENERAL (81101) Fehlerhafte Kommunikation über die PKCS#11-Schnittstelle.
• PE_PKCS11_LOAD_MODULE (81102) Die PKCS#11-Bibliothek konnte nicht geladen werden.
• PE_PKCS11_FUNCTION_NOT_SUPPORTED (81103) Der Funktionsaufruf wird nicht unterstützt.
• PE_PKCS11_NOT_INITIALIZED (81104) Die PKCS#11-Bibliothek ist nicht initialisiert.
• PE_PKCS11_NOT_FOUND (81105) PKCS#11-Objekt nicht gefunden.
• PE_PKCS11_DEVICE (81106) Kommunikationsfehler mit dem Device-Slot oder Token.
• PE_PKCS11_DEVICE_MEMORY (81107) Der Token hat nicht genügend Arbeitsspeicher.
• PE_PKCS11_DEVICE_REMOVED (81108) Der Token wurde während der Benutzung entfernt.
• PE_PKCS11_TOKEN_NOT_PRESENT (81109) Der Token ist nicht mehr verfügbar.
• PE_PKCS11_TOKEN_NOT_RECOGNIZED (81110) Der Token konnte nicht gefunden werden.
• PE_PIN_INCORRECT (81111) Die PIN ist nicht korrekt.
• PE_PIN_INVALID (81112) Die PIN enthält ungültige Zeichen.
• PE_PIN_EXPIRED (81113) Die PIN ist abgelaufen.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de326
• PE_PIN_LOCKED (81114) Die PIN ist gesperrt.
• PE_USER_PIN_NOT_INITIALIZED (81115) Die PIN ist nicht initialisiert.
Parameter
• szPkcs11Lib (IN) PKCS#11-Bibliothek (optional mit Pfad)
• pnCryptoKiVersion (OUT) Versionsnummer der angegebenen PKCS#11-Bibliothek (z.B. 211 = v2.11)
• szManufacturerBuffer (OUT) Hersteller der angegebenen PKCS#11-Bibliothek. Der Manufacturer-Buffer sollte eine Größe von 33 Zeichen haben.
• nManufacturerBufferSize (IN) Größe des Manufacturer-Buffers.
• pnTokenCount (OUT) Anzahl der gefundenen Token.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
In dem Kapitel ‚Elster/Authentifizierte Übertragung‘ des Dokuments ‚toolkit_getting_started.pfd‘ finden Sie nähere Informationen.
v3.90.161 PERFIDIA Toolkit Reference
327© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_pkcs11_info
Nach dem Aufruf der Funktion perfidia_pkcs11_search können mit dieser Funktion die gefundenen Token ausgewertet werden.
long perfidia_pkcs11_info ( short nTokenNum, short *pnCertCount, char *szLabelBuffer, short nLabelBufferSize, char *szManufacturerBuffer, short nManufacturerBufferSize, char *szModelBuffer, short nModelBufferSize, char *szSerialBuffer, short nSerialBufferSize, unsigned long *pulFlags, unsigned long *pulSupportedMethods );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PARAMETER (80114) Ungültiger Parameter.
• PE_NO_DATA (80129) Zertifikat nicht gefunden.
• PE_TEXT_TRUNC (80112) Mindestens ein Text wurde abgeschnitten.
Parameter
• nTokenNum (IN) Fortlaufende Tokennummer (1 bis nTokenCount von perfidia_pkcs11_search)
• pnCertCount (OUT) Anzahl der gefundenen Zertifikate.
• szLabelBuffer (OUT) Label des Token. Der Label-Buffer sollte eine Größe von 33 Zeichen haben.
• nLabelBufferSize (IN) Größe des Label-Buffers.
• szManufacturerBuffer (OUT) Hersteller des Token. Der Manufacturer-Buffer sollte eine Größe von 33 Zeichen haben.
• nManufacturerBufferSize (IN) Größe des Manufacturer-Buffers.
• szModelBuffer (OUT) Model des Token. Der Model-Buffer sollte eine Größe von 17 Zeichen haben.
• nModelBufferSize (IN) Größe des Model-Buffers.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de328
• szSerialBuffer (OUT) Seriennummer des Token. Der Serial-Buffer sollte eine Größe von 17 Zeichen haben.
• nSerialBufferSize (IN) Größe des Serial-Buffers.
• pulFlags (OUT) Dieser Parameter ist identisch mit dem Parameter ‚flags‘ der Struktur ‚CK_TOKEN_INFO‘ der PKCS#11-Beschreibung (siehe http://www.rsasecurity.com/rsalabs/node.asp?id=2133). Für die Benutzung der Signatur-Funktionen sind folgende Parameter interessant. 0x00000008 = CKF_USER_PIN_INITIALIZED 0x00000100 = CKF_PROTECTED_AUTHENTICATION_PATH 0x00000400 = CKF_TOKEN_INITIALIZED 0x00010000 = CKF_USER_PIN_COUNT_LOW 0x00020000 = CKF_USER_PIN_FINAL_TRY 0x00040000 = CKF_USER_PIN_LOCKED
• pulSupportedMethods (OUT) Mindestens eine der folgenden Methoden muss unterstützt werden, damit Signaturen mit RSA-Schlüs-seln erstellt werden können. 0x0001 = RSA_PKCS 0x0002 = SHA1_RSA_PKCS 0x0004 = SHA256_RSA_PKCS 0x0008 = RSA_PKCS_PSS 0x0010 = SHA256_RSA_PKCS_PSS 0x0020 = RSA_PKCS_OAEP 0x0040 = RSA_X_509
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
In dem Kapitel ‚Elster/Authentifizierte Übertragung‘ des Dokuments ‚toolkit_getting_started.pfd‘ finden Sie nähere Informationen.
v3.90.161 PERFIDIA Toolkit Reference
329© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_pkcs11_cert_info
Mit dieser Funktion können Informationen zu einem Zertifikat ermittelt werden.
long perfidia_pkcs11_cert_info ( short nTokenNum, short nCertNum, long *plSerialNumber, char *szIssuerBuffer, short nIssuerBufferSize, char *szSubjectBuffer, short nSubjectBufferSize, char *szNotBeforeBuffer, short nNotBeforeBufferSize, char *szNotAfterBuffer, short nNotAfterBufferSize, unsigned long *pulKeyUsage );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PARAMETER (80114) Ungültiger Parameter.
• PE_NO_DATA (80129) Zertifikat nicht gefunden.
• PE_TEXT_TRUNC (80112) Mindestens ein Text wurde abgeschnitten.
Parameter
• nTokenNum (IN) Fortlaufende Tokennummer (1 bis nTokenCount von perfidia_pkcs11_search)
• nCertNum (IN) Fortlaufende Zertifikatsnummer (1 bis nCertCount von perfidia_pkcs11_info)
• plSerialNumber (OUT) Seriennummer des Zertifikats.
• szIssuerBuffer (OUT) Herausgeber des Zertifikats. Der Issuer-Buffer sollte eine Größe von 513 Zeichen haben.
• nIssuerBufferSize (IN) Größe des Issuer-Buffers.
• szSubjectBuffer (OUT) Subjekt des Zertifikats. Der Subject-Buffer sollte eine Größe von 513 Zeichen haben.
• nSubjectBufferSize (IN) Größe des Subject-Buffers.
• szNotBeforeBuffer (OUT) Der NotBefore-Buffer gibt an, ab wann das Zertifikat gültig ist, und sollte eine Größe von 15 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMDDhhmmss.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de330
• nNotBeforeBufferSize (IN) Größe des NotBefore-Buffers.
• szNotAfterBuffer (OUT) Der NotAfter-Buffer gibt an, bis wann das Zertifikat gültig ist, und sollte eine Größe von 15 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMDDhhmmss.
• nNotAfterBufferSize (IN) Größe des NotAfter-Buffers .
• pulKeyUsage (OUT) 0x0001 = digital signature 0x0002 = non repudiation 0x0004 = key encipherment 0x0008 = data encipherment 0x0010 = key agreement 0x0020 = key certsign 0x0040 = crl sign 0x0080 = encipher only 0x0100 = decipher only
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
In dem Kapitel ‚Elster/Authentifizierte Übertragung‘ des Dokuments ‚toolkit_getting_started.pfd‘ finden Sie nähere Informationen.
v3.90.161 PERFIDIA Toolkit Reference
331© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_scard_search
Mit dieser Funktion können alle am Computer registierten Signaturkartenleser ermittelt werden.
long perfidia_scard_search ( short *pnCryptoKiVersion, short *pnReaderCount );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NO_DATA (80129) Keinen Kartenleser gefunden.
Parameter
• pnCryptoKiVersion (OUT) Versionsnummer des PERFIDIA Signaturkarten Treibers (z.B. 105 = v1.05)
• pnReaderCount (OUT) Anzahl der gefundenen Signaturkartenleser.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
In dem Kapitel ‚Elster/Authentifizierte Übertragung‘ des Dokuments ‚toolkit_getting_started.pfd‘ finden Sie nähere Informationen.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de332
perfidia_scard_info
Nach dem Aufruf der Funktion perfidia_scard_search können mit dieser Funktion die gefundenen Signatur-kartenleser ausgewertet werden. Wenn der Parameter ‚pnKeyLength‘ den Wert 0 hat, steckt entweder keine Signaturkarte im Kartenleser oder die SmartCard wird nicht unterstützt.
Der PERFIDIA Signaturkarten Treiber kommuniziert direkt mit dem Kartenleser und dem Signaturkartenbe-triebssystem. Momentan werden die folgenden Signatursticks bzw. -karten unterstützt:
• ELSTER Stick (1. Generation, 1024 Bit)• ELSTER Stick (2. Generation, 2048 Bit)• Sparkassen Card (1728 Bit)• S-TRUST (1024 Bit)• SignTrust (2048 Bit)
Bei allen unterstützten Signaturkarten ist eine sichere PIN-Eingabe über die Tastatur des Kartenlesers mög-lich.
long perfidia_scard_info ( short nReaderNum, char *szReaderNameBuffer, hort nReaderNameBufferSize, short nSearchCerts, short *pnCertCount, char *szLabelBuffer, short nLabelBufferSize, char *szManufacturerBuffer, short nManufacturerBufferSize, char *szModelBuffer, short nModelBufferSize, char *szSerialBuffer, short nSerialBufferSize, unsigned long *pulFlags, unsigned long *pulSupportedMethode, short *pnKeyLength );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PARAMETER (80114) Ungültiger Parameter.
• PE_NO_DATA (80129) Zertifikat nicht gefunden.
• PE_TEXT_TRUNC (80112) Mindestens ein Text wurde abgeschnitten.
v3.90.161 PERFIDIA Toolkit Reference
333© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Parameter
• nReaderNum (IN) Fortlaufende Tokennummer (1 bis nReaderCount von perfidia_scard_search)
• szReaderNameBuffer (OUT) Name des Kartenlesers. Der ReaderName-Buffer sollte eine Größe von 257 Zeichen haben.
• nReaderNameBufferSize (IN) Größe des ReaderName-Buffers.
• nSearchCerts (IN) 0 = Zertifikate auf der Signaturkarte nicht suchen. 1 = Zertifikate auf der Signaturkarte suchen
• pnCertCount (OUT) Anzahl der gefundenen Zertifikate.
• szLabelBuffer (OUT) Label des Token. Der Label-Buffer sollte eine Größe von 33 Zeichen haben.
• nLabelBufferSize (IN) Größe des Label-Buffers.
• szManufacturerBuffer (OUT) Hersteller des Token. Der Manufacturer-Buffer sollte eine Größe von 33 Zeichen haben.
• nManufacturerBufferSize (IN) Größe des Manufacturer-Buffers.
• szModelBuffer (OUT) Model des Token. Der Model-Buffer sollte eine Größe von 17 Zeichen haben.
• nModelBufferSize (IN) Größe des Model-Buffers.
• szSerialBuffer (OUT) Seriennummer des Token. Der Serial-Buffer sollte eine Größe von 17 Zeichen haben.
• nSerialBufferSize (IN) Größe des Serial-Buffers.
• pulFlags (OUT) Dieser Parameter ist identisch mit dem Parameter ‚flags‘ der Struktur ‚CK_TOKEN_INFO‘ der PKCS#11-Beschreibung (siehe http://www.rsasecurity.com/rsalabs/node.asp?id=2133). Für die Benutzung der Signatur-Funktionen sind folgende Parameter interessant. 0x00000008 = CKF_USER_PIN_INITIALIZED 0x00000100 = CKF_PROTECTED_AUTHENTICATION_PATH 0x00000400 = CKF_TOKEN_INITIALIZED 0x00010000 = CKF_USER_PIN_COUNT_LOW 0x00020000 = CKF_USER_PIN_FINAL_TRY 0x00040000 = CKF_USER_PIN_LOCKED
• pulSupportedMethods (OUT) Mindestens eine der folgenden Methoden muss unterstützt werden, damit Signaturen mit RSA-Schlüs-seln erstellt werden können. 0x0001 = RSA_PKCS 0x0002 = SHA1_RSA_PKCS 0x0004 = SHA256_RSA_PKCS 0x0008 = RSA_PKCS_PSS 0x0010 = SHA256_RSA_PKCS_PSS 0x0020 = RSA_PKCS_OAEP 0x0040 = RSA_X_509
• pnKeyLength (OUT) Länge des Schlüssels in Bits.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de334
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
In dem Kapitel ‚Elster/Authentifizierte Übertragung‘ des Dokuments ‚toolkit_getting_started.pfd‘ finden Sie nähere Informationen.
v3.90.161 PERFIDIA Toolkit Reference
335© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_scard_cert_info
Mit dieser Funktion können Informationen zu einem Zertifikat ermittelt werden.
long perfidia_scard_cert_info ( short nReaderNum, short nCertNum, long *plSerialNumber, char *szIssuerBuffer, short nIssuerBufferSize, char *szSubjectBuffer, short nSubjectBufferSize, char *szNotBeforeBuffer, short nNotBeforeBufferSize, char *szNotAfterBuffer, short nNotAfterBufferSize, unsigned long *pulKeyUsage );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PARAMETER (80114) Ungültiger Parameter.
• PE_NO_DATA (80129) Zertifikat nicht gefunden.
• PE_TEXT_TRUNC (80112) Mindestens ein Text wurde abgeschnitten.
Parameter
• nReaderNum (IN) Fortlaufende Readernummer (1 bis nReaderCount von perfidia_scard_search)
• nCertNum (IN) Fortlaufende Zertifikatsnummer (1 bis nCertCount von perfidia_scard_info)
• plSerialNumber (OUT) Seriennummer des Zertifikats.
• szIssuerBuffer (OUT) Herausgeber des Zertifikats. Der Issuer-Buffer sollte eine Größe von 513 Zeichen haben.
• nIssuerBufferSize (IN) Größe des Issuer-Buffers.
• szSubjectBuffer (OUT) Subjekt des Zertifikats. Der Subject-Buffer sollte eine Größe von 513 Zeichen haben.
• nSubjectBufferSize (IN) Größe des Subject-Buffers.
• szNotBeforeBuffer (OUT) Der NotBefore-Buffer gibt an, ab wann das Zertifikat gültig ist, und sollte eine Größe von 15 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMDDhhmmss.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de336
• nNotBeforeBufferSize (IN) Größe des NotBefore-Buffers.
• szNotAfterBuffer (OUT) Der NotAfter-Buffer gibt an, bis wann das Zertifikat gültig ist, und sollte eine Größe von 15 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMDDhhmmss.
• nNotAfterBufferSize (IN) Größe des NotAfter-Buffers .
• pulKeyUsage (OUT) 0x0001 = digital signature 0x0002 = non repudiation 0x0004 = key encipherment 0x0008 = data encipherment 0x0010 = key agreement 0x0020 = key certsign 0x0040 = crl sign 0x0080 = encipher only 0x0100 = decipher only
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
In dem Kapitel ‚Elster/Authentifizierte Übertragung‘ des Dokuments ‚toolkit_getting_started.pfd‘ finden Sie nähere Informationen.
v3.90.161 PERFIDIA Toolkit Reference
337© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Callback-Funktion für PINPAD
Die Callback-Funktion für das PINPAD des Signaturkartenlesers muss folgendes Format haben:
long MyCallbackFunktion ( long lLastChar, short nPinCount, LPARAM lParam );
Sie sollten in der Callback-Funktion keine zeitintensiven Operationen durchführen, da PERFIDIA immer auf den Rückgabewert der Callback-Funktion wartet.
Rückgabewerte
• Der Rückgabewert muss immer 0 sein.
Parameter
• lLastChar (IN) 0 = keine Taste 1 = Ziffer 2 = Backspace 3 = Clear 4 = Cancel 5 = OK 10 = Start der PIN-Eingabe 11 = ERROR 12 = ABORT 13 = TIMEOUT
• nPinCount (IN) Anzahl der eingegebenen Ziffern.
• lParam (IN) Bei perfidia_elster_auth übergebener Wert.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Mit Hilfe der Konfigurationsvariablen ‚PINPAD_DATA2SIGN‘ (siehe perfidia_config_get) kann die zu signieren-de Datei ermittelt werden.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de338
perfidia_isam_check
Mit dieser Funktion kann geprüft werden, ob eine PERFIDIA ISAM-Datei defekt ist.
long perfidia_isam_check ( short nIsamFile );
Rückgabewerte
• PE_NO_ERROR (0) Die ISAM-Datei ist fehlerfrei.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_FILE_OPEN (80803) Fehler beim Öffnen der Datei.
• PE_FILE_NOFILE (80802) Die Datei existiert nicht.
• PE_FILE_SIZE (80810) Ungültige Dateilänge.
• PE_ISAM_IDX (80706) Die Index-Datei der ISAM-Datei ist defekt.
• PE_PARAMETER (80114) Der Wert für den Parameter ‚nIsamFile‘ ist nicht gültig.
Parameter
• nIsamFile (IN) 1 = log/pemprot (seit Build 93 nicht mehr verwendet) 2 = log/elstprot 3 = log/transerr 4 = log/lstb_tt 5 = log/lstb_err 6 = log/lsta_tt 7 = log/lsta_err 8 = log/usta_tt 9 = log/usta_err 10 = log/sv_err 11 = log/sv_mvds 12 = log/sv_prot 13 = log/sv_send2 14 = log/sv_recv2 15 = log/sv_vsnr 16 = log/statprot 17 = log/stat_tt 18 = log/stat_err 19 = log/st_trerr 20 = log/lve_tt 21 = log/lve_err 22 = log/vse_tt 23 = log/vse_err 24 = log/elmaprot 25 = log/elma5err 26 = log/elma5_tt 27 = log/elster_prot2 28 = log/elster_trans
v3.90.161 PERFIDIA Toolkit Reference
339© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
29 = log/elster_send 30 = log/elster_recv 31 = log/elster_block 32 = log/elster_err 33 = log/elster_info 34 = log/elo2azvu 35 = pem/svafh/aag (nur Windows) 36 = pem/svafh/alg (nur Windows) 37 = pem/svafh/bnw (nur Windows) 38 = pem/svafh/dbfe (nur Windows) 39 = pem/svafh/deuev (nur Windows) 40 = pem/svafh/dsbd (nur Windows) 41 = pem/svafh/eel (nur Windows) 42 = pem/svafh/mandant (nur Windows) 43 = pem/svafh/personal (nur Windows) 44 = pem/svafh/rueckmeldungen (nur Windows) 45 = pem/svafh/sag (nur Windows) 46 = pem/svafh/svnr (nur Windows) 47 = pem/svafh/zav (nur Windows)
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de340
perfidia_isam_repair
Mit dieser Funktion können defekte PERFIDIA ISAM-Dateien reorganisiert werden.
long perfidia_isam_repair ( short nIsamFile );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt. Es war keine Reparatur notwendig.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_FILE_OPEN (80803) Fehler beim Öffnen der Datei.
• PE_FILE_NOFILE (80802) Die Datei existiert nicht.
• PE_FILE_SIZE (80810) Ungültige Dateilänge.
• PE_ISAM_IDX (80706) Fehler beim Erstellen der Index-Datei.
• PE_ISAM_REPAIRED (80711) Die ISAM-Datei wurde repariert.
• PE_PARAMETER (80114) Der Wert für den Parameter ‚nIsamFile‘ ist nicht gültig.
Parameter
• nIsamFile (IN) 1 = log/pemprot (seit Build 93 nicht mehr verwendet) 2 = log/elstprot 3 = log/transerr 4 = log/lstb_tt 5 = log/lstb_err 6 = log/lsta_tt 7 = log/lsta_err 8 = log/usta_tt 9 = log/usta_err 10 = log/sv_err 11 = log/sv_mvds 12 = log/sv_prot 13 = log/sv_send2 14 = log/sv_recv2 15 = log/sv_vsnr 16 = log/statprot 17 = log/stat_tt 18 = log/stat_err 19 = log/st_trerr 20 = log/lve_tt 21 = log/lve_err 22 = log/vse_tt 23 = log/vse_err 24 = log/elmaprot 25 = log/elma5err
v3.90.161 PERFIDIA Toolkit Reference
341© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
26 = log/elma5_tt 27 = log/elster_prot2 28 = log/elster_trans 29 = log/elster_send 30 = log/elster_recv 31 = log/elster_block 32 = log/elster_err 33 = log/elster_info 34 = log/elo2azvu 35 = pem/svafh/aag (nur Windows) 36 = pem/svafh/alg (nur Windows) 37 = pem/svafh/bnw (nur Windows) 38 = pem/svafh/dbfe (nur Windows) 39 = pem/svafh/deuev (nur Windows) 40 = pem/svafh/dsbd (nur Windows) 41 = pem/svafh/eel (nur Windows) 42 = pem/svafh/mandant (nur Windows) 43 = pem/svafh/personal (nur Windows) 44 = pem/svafh/rueckmeldungen (nur Windows) 45 = pem/svafh/sag (nur Windows) 46 = pem/svafh/svnr (nur Windows) 47 = pem/svafh/zav (nur Windows)
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de342
perfidia_get_version
Liefert die Versionsnummer von PERFIDIA.
void perfidia_get_version ( short *pnMajor, short *pnMinor, short *pnBuild );
Rückgabewerte
keine
Parameter
• pnMajor (OUT) z.B. 2
• pnMinor (OUT) z.B. 12
• pnBuild (OUT) z.B. 41
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Diese Funktion kann auch benutzt werden, wenn vorher perfidia_init nicht aufgerufen wurde.
v3.90.161 PERFIDIA Toolkit Reference
343© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_get_version_v2
Liefert die Versionsnummer von PERFIDIA.
long perfidia_get_version_v2 ( short *pnMajor, short *pnMinor, short *pnBuild, char *szSpecialBuildBuffer, short nSpecialBuildBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_BUFSIZE (80110) Länge des Buffers ist zu klein.
Parameter
• pnMajor (OUT) z.B. 2
• pnMinor (OUT) z.B. 12
• pnBuild (OUT) z.B. 41
• szSpecialBuildBuffer (OUT) In einer endgültigen Version ist dieser Buffer leer. In einer Testversion könnte beispielsweise ‘Beta 2’ zurückgeliefert werden. Der Buffer sollte eine Größe von 21 Zeichen haben.
• nSpecialBuildBufferSize (IN) Größe des Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Diese Funktion kann auch benutzt werden, wenn vorher perfidia_init nicht aufgerufen wurde.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de344
perfidia_ustidnr_bestaetigung
Das Bestätigungsverfahren erleichtert deutschen Unternehmern die Prüfung, ob zum Zeitpunkt der Leistungs-erbringung die Lieferung oder sonstige Leistung an einen in einem anderen Mitgliedstaat der EU registrierten Unternehmer ausgeführt wird.
Die Unternehmereigenschaft des Leistungsempfängers ist nachzuweisen, um eine Lieferung - bei Vorliegen der weiteren Voraussetzungen - als steuerfrei behandeln zu können. Bei sonstigen Leistungen ist durch Nach-weis der Unternehmereigenschaft des Leistungsempfängers eine Verlagerung der Steuerschuldnerschaft auf den Leistungsempfänger möglich.
Bei einer einfachen Bestätigung erhalten Sie Auskunft darüber, ob eine ausländische USt-IdNr. zum Zeitpunkt der Anfrage in dem Mitgliedstaat, der sie erteilt hat, gültig ist.
Bei einer qualifizierten Bestätigung können Sie darüber hinaus abfragen, ob die von Ihnen mitgeteilten Anga-ben zu Firmenname (einschließlich der Rechtsform), Firmenort, Postleitzahl und Straße mit den in der Unter-nehmerdatei des jeweiligen EU-Mitgliedstaates registrierten Daten übereinstimmen.
long perfidia_ustidnr_bestaetigung ( const char *szEigeneUStIdNr, const char *szAbzufragendeUStIdNr, const char *szFirm, const char *szStreet, const char *szPostcode, const char *szCity, short nAmtlicheBestaetigung, long *plBZStReturnCode, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_PARAMETER (80114) Der Wert für den Parameter ‚nAmtlicheBestaetigung‘ ist ungültig.
• PE_NO_INET (80107) Die Verbindung zum Internet konnte nicht hergestellt werden.
• PE_HTTP_OPEN (80501) Fehler beim Initialisieren der Internetverbindung. (1)
• PE_HTTP_CONNECT (80502) Fehler beim Initialisieren der Internetverbindung. (2)
• PE_HTTP_OPENREQUEST (80503) Fehler beim Initialisieren der Internetverbindung. (3)
• PE_HTTP_SENDREQUEST (80504) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_SENDREQUESTEX (80505) Fehler beim Verbindungsaufbau zum Server.
• PE_HTTP_WRITEFILE (80506) Übertragungsfehler beim Senden der Daten zum Server.
v3.90.161 PERFIDIA Toolkit Reference
345© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• PE_HTTP_ENDREQUEST (80507) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_QUERYINFO (80508) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_READFILE (80509) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_PROXY_AUTH (80510) Proxy-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_AUTH (80511) Server-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_ERROR (80512) Interner Fehler beim Server.
Parameter
• szEigeneUStIdNr (IN) Eigene USt-IdNr (muss mit DE beginnen).
• szAbzufragendeUStIdNr (IN) Abzufragende USt-IdNr.
• szFirm (IN) Firma inkl. Rechtsform
• szStreet (IN) Strasse der Firmenanschrift.
• szPostcode (IN) Postleitzahl der Firmenanschrift.
• szCity (IN) Ort der Firmenanschrift.
• nAmtlicheBestaetigung (IN) 0 = nein 1 = ja
• plBZStReturnCode (OUT) 200 oder 218 = USt-IdNr. gültig. 201, 202 oder 219 = USt-IdNr. ungültig. 203 oder 204 = USt-IdNr. ungültig. (Zeitraum) 206 oder 214 = Eigene USt-IdNr. ist ungültig. 207 = Ihnen wurde die deutsche USt-IdNr. ausschliesslich zu Zwecken der Besteuerung des innerge-meinschaftlichen Erwerbs erteilt. 209 = Die angefragte USt-IdNr. ist ungültig. (Aufbau) 210 = Die angefragte USt-IdNr. ist ungültig. 211 = Die angefragte USt-IdNr. ist ungültig. (unzulässiges Zeichen) 212 = Die angefragte USt-IdNr. ist ungültig. (Länderkennung) 213 = Die Abfrage einer deutschen USt-IdNr. ist nicht möglich. 220 = Bei der Anforderung der amtlichen Bestätigungsmitteilung ist ein Fehler aufgetreten.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de346
perfidia_ustidnr_bestaetigung_v2
Das Bestätigungsverfahren erleichtert deutschen Unternehmern die Prüfung, ob zum Zeitpunkt der Leistungs-erbringung die Lieferung oder sonstige Leistung an einen in einem anderen Mitgliedstaat der EU registrierten Unternehmer ausgeführt wird.
Die Unternehmereigenschaft des Leistungsempfängers ist nachzuweisen, um eine Lieferung - bei Vorliegen der weiteren Voraussetzungen - als steuerfrei behandeln zu können. Bei sonstigen Leistungen ist durch Nach-weis der Unternehmereigenschaft des Leistungsempfängers eine Verlagerung der Steuerschuldnerschaft auf den Leistungsempfänger möglich.
Bei einer einfachen Bestätigung erhalten Sie Auskunft darüber, ob eine ausländische USt-IdNr. zum Zeitpunkt der Anfrage in dem Mitgliedstaat, der sie erteilt hat, gültig ist.
Bei einer qualifizierten Bestätigung können Sie darüber hinaus abfragen, ob die von Ihnen mitgeteilten Anga-ben zu Firmenname (einschließlich der Rechtsform), Firmenort, Postleitzahl und Straße mit den in der Unter-nehmerdatei des jeweiligen EU-Mitgliedstaates registrierten Daten übereinstimmen.
long perfidia_ustidnr_bestaetigung ( const char *szEigeneUStIdNr, const char *szAbzufragendeUStIdNr, const char *szFirm, const char *szStreet, const char *szPostcode, const char *szCity, short nAmtlicheBestaetigung, long *plBZStReturnCode, short *pnErgName, short *pnErgStr, short *pnErgPlz, short *pnErgOrt, char *szGueltigAbBuffer, short nGueltigAbBufferSize, char *szGueltigBisBuffer, short nGueltigBisBufferSize, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_PARAMETER (80114) Der Wert für den Parameter ‚nAmtlicheBestaetigung‘ ist ungültig.
• PE_NO_INET (80107) Die Verbindung zum Internet konnte nicht hergestellt werden.
• PE_HTTP_OPEN (80501) Fehler beim Initialisieren der Internetverbindung. (1)
• PE_HTTP_CONNECT (80502) Fehler beim Initialisieren der Internetverbindung. (2)
v3.90.161 PERFIDIA Toolkit Reference
347© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• PE_HTTP_OPENREQUEST (80503) Fehler beim Initialisieren der Internetverbindung. (3)
• PE_HTTP_SENDREQUEST (80504) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_SENDREQUESTEX (80505) Fehler beim Verbindungsaufbau zum Server.
• PE_HTTP_WRITEFILE (80506) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_ENDREQUEST (80507) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_QUERYINFO (80508) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_READFILE (80509) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_PROXY_AUTH (80510) Proxy-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_AUTH (80511) Server-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_ERROR (80512) Interner Fehler beim Server.
Parameter
• szEigeneUStIdNr (IN) Eigene USt-IdNr (muss mit DE beginnen).
• szAbzufragendeUStIdNr (IN) Abzufragende USt-IdNr.
• szFirm (IN) Firma inkl. Rechtsform
• szStreet (IN) Strasse der Firmenanschrift.
• szPostcode (IN) Postleitzahl der Firmenanschrift.
• szCity (IN) Ort der Firmenanschrift.
• nAmtlicheBestaetigung (IN) 0 = nein 1 = ja
• plBZStReturnCode (OUT) 200 oder 218 = USt-IdNr. gültig. 201, 202 oder 219 = USt-IdNr. ungültig. 203 oder 204 = USt-IdNr. ungültig. (Zeitraum) 206 oder 214 = Eigene USt-IdNr. ist ungültig. 207 = Ihnen wurde die deutsche USt-IdNr. ausschliesslich zu Zwecken der Besteuerung des innerge-meinschaftlichen Erwerbs erteilt. 209 = Die angefragte USt-IdNr. ist ungültig. (Aufbau) 210 = Die angefragte USt-IdNr. ist ungültig. 211 = Die angefragte USt-IdNr. ist ungültig. (unzulässiges Zeichen) 212 = Die angefragte USt-IdNr. ist ungültig. (Länderkennung) 213 = Die Abfrage einer deutschen USt-IdNr. ist nicht möglich. 220 = Bei der Anforderung der amtlichen Bestätigungsmitteilung ist ein Fehler aufgetreten.
• pnErgName (OUT) Hier darf ein NULL-Pointer übergeben werden.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de348
0 = Status ist unbekannt. 1 = Daten stimmen überein. 2 = Daten stimmen nicht überein. 3 = Daten wurden nicht angefragt. 4 = Daten wurden vom EU-Mitgliedsstaat nicht übermittelt.
• pnErgStr (OUT) Hier darf ein NULL-Pointer übergeben werden. 0 = Status ist unbekannt. 1 = Daten stimmen überein. 2 = Daten stimmen nicht überein. 3 = Daten wurden nicht angefragt. 4 = Daten wurden vom EU-Mitgliedsstaat nicht übermittelt.
• pnErgPlz (OUT) Hier darf ein NULL-Pointer übergeben werden. 0 = Status ist unbekannt. 1 = Daten stimmen überein. 2 = Daten stimmen nicht überein. 3 = Daten wurden nicht angefragt. 4 = Daten wurden vom EU-Mitgliedsstaat nicht übermittelt.
• pnErgOrt (OUT) Hier darf ein NULL-Pointer übergeben werden. 0 = Status ist unbekannt. 1 = Daten stimmen überein. 2 = Daten stimmen nicht überein. 3 = Daten wurden nicht angefragt. 4 = Daten wurden vom EU-Mitgliedsstaat nicht übermittelt.
• szGueltigAbBuffer (OUT) Dieser Buffer sollte eine Größe von 11 Zeichen haben.
• nGueltigAbBufferSize (IN) Größe des Buffers.
• szGueltigBisBuffer (OUT) Dieser Buffer sollte eine Größe von 11 Zeichen haben.
• nGueltigBisBufferSize (IN) Größe des Buffers.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
349© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_dguv_mnr_check
Mit dieser Funktion wird die ZMNRV-REST-Schnittstelle der DGUV zum Prüfen der UV-Mitgliedsnummer angesprochen.
long perfidia_dguv_mnr_check ( long lBetrNr, const char *szMnr, short *pnGueltig, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_PARAMETER (80114) Der Wert für den Parameter ‚lBetrNr‘ oder ‚szMnr‘ ist ungültig.
• PE_NO_INET (80107) Die Verbindung zum Internet konnte nicht hergestellt werden.
• PE_HTTP_OPEN (80501) Fehler beim Initialisieren der Internetverbindung. (1)
• PE_HTTP_CONNECT (80502) Fehler beim Initialisieren der Internetverbindung. (2)
• PE_HTTP_OPENREQUEST (80503) Fehler beim Initialisieren der Internetverbindung. (3)
• PE_HTTP_SENDREQUEST (80504) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_SENDREQUESTEX (80505) Fehler beim Verbindungsaufbau zum Server.
• PE_HTTP_WRITEFILE (80506) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_ENDREQUEST (80507) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_QUERYINFO (80508) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_READFILE (80509) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_PROXY_AUTH (80510) Proxy-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_AUTH (80511) Server-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_ERROR (80512) Interner Fehler beim Server.
Parameter
• lBetrNr (IN) UV-Betriebsnummer
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de350
• szMnr (IN) UV-Mitgliedsnummer
• pnGueltig (IN) 0 = ungültige Mitgliedsnummer (HTTP-Statuscode: 404) 1 = gültige Mitgliedsnummer (HTTP-Statuscode: 200) 2 = Mitgliedsnummer wird nicht geprüft. (HTTP-Statuscode: 409) 3 = Mitgliedsnummer enthält unzulässige Zeichen oder hat falsche Länge. (HTTP-Statuscode: 422)
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Diese Funktion sollte möglichst nur einmal je UV-Mitgliedsnummer verwendet werden, da die Server der DGUV nicht für Massenanfragen ausgelegt sind.
v3.90.161 PERFIDIA Toolkit Reference
351© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_uuid_v4_create
Mit dieser Funktion kann eine UUID generiert werden.
long perfidia_uuid_v4_create ( char *szUuidBuffer, short nUuidBufferLength, );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_BUFSIZE (80110) Der Buffer ist zu klein.
• PE_NO_DATA (80129) Es konnten keine Zufallszahlen erzeugt werden.
Parameter
• szUuidBuffer (OUT) Der UuidBuffer muss mindestens 37 Zeichen lang sein.
• nUuidBufferLength (IN) Die Länge des UuidBuffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de352
perfidia_stamm_info
Mit dieser Funktion können die Versionen der Stammdatendateien ermittelt werden.
long perfidia_stamm_info ( short nStammIndex, char *szStammName, short nStammNameLength, char *szStammVersion, short nStammVersionLength );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NO_DATA (80129) Ungültiger Index.
• PE_BUFSIZE (80110) Der Buffer ist zu klein.
Parameter
• nStammIndex (IN) 1 = SSL-CA Bundle 2 = ITSG Annahmestellen-Zertifikate 3 = Krankenkassen-Betriebsnummerndatei 4 = BV-Datei für berufsständige Versorgungswerke 5 = Tätigkeitsschlüssel 6 = UV-Stammdaten 7 = UV-Gefahrtarifstellen
• szStammName (OUT) Der Buffer ‚StammName‘ muss mindestens 65 Zeichen lang sein.
• nStammNameLength (IN) Die Länge des Buffers ‚StammName‘.
• szStammVersion (OUT) Der Buffer ‚StammVersion‘ muss mindestens 33 Zeichen lang sein. Sollte die Stammdatendatei nicht vorhanden sein, wird der Wert ‚nicht vorhanden‘ zurückgeliefert.
• nStammVersionLength (IN) Die Länge des Buffers ‚StammVersion‘.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
353© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_stamm_update_info
Mit dieser Funktion ermittelt werden, wann zuletzt erfolgreich ein Stammdaten-Update durchgeführt wurde.
long perfidia_stamm_update_info ( short *pnDaysSinceLastUpdate, char *szDateTimeBuffer, short nDateTimeBufferLength, long *plBnrVersion, long *plBvVersion, long *plTtscVersion, long *plUvgtVersion, long *plUvsdVersion, long *plSslCaBundleVersion, long *plAnnahmeAgv, long *plReserved1, long *plReserved2, long *plReserved3 );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_BUFSIZE (80110) Der Buffer ist zu klein.
Parameter
• pnDaysSinceLastUpdate (OUT) Anzahl der Tage seit dem letzten erfolgreichen Stammdaten-Update. Falls noch nie ein Update durch-geführt wurde, steht der Wert auf 9999. Hier darf ein NULL-Pointer übergeben werden.
• szDateTimeBuffer (OUT) Der DateTimeBuffer muss mindestens 15 Zeichen lang sein. Format: JJJJMMTTssmmss Fall noch nie ein Update durchgeführt wurde, steht der Wert auf „00000000000000“. Hier darf ein NULL-Pointer übergeben werden.
• nDateTimeBufferLength (IN) Die Länge des DateTimeBuffers.
• plBnrVersion (OUT) Die Version der Betriebsnummerndatei im Format JJJJMMTT. Falls die Datei nicht vorhanden ist, steht der Wert auf 0. Hier darf ein NULL-Pointer übergeben werden.
• plBvVersion (OUT) Die Version der BV-Datei im Format JJJJMMTT. Falls die Datei nicht vorhanden ist, steht der Wert auf 0. Hier darf ein NULL-Pointer übergeben werden.
• plTtscVersion (OUT) Die Version der Tätigkeitsschlüssel im Format JJJJMMTT. Falls die Datei nicht vorhanden ist, steht der Wert auf 0. Hier darf ein NULL-Pointer übergeben werden.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de354
• plUvgtVersion (OUT) Die Version der UV-Gefahrtarife im Format JJJJMMTT. Falls die Datei nicht vorhanden ist, steht der Wert auf 0. Hier darf ein NULL-Pointer übergeben werden.
• plUvsdVersion (OUT) Die Version der UV-Stammdaten im Format JJJJMMTT. Falls die Datei nicht vorhanden ist, steht der Wert auf 0. Hier darf ein NULL-Pointer übergeben werden.
• plSslCaBundleVersion (OUT) Die Version der SSL CA Bundle-Datei im Format JJJJMMTT. Falls die Datei nicht vorhanden ist, steht der Wert auf 0. Hier darf ein NULL-Pointer übergeben werden.
• plAnnahmeAgv (OUT) Die Version der Annahmestellen-Datei im Format JJJJMMTT. Falls die Datei nicht vorhanden ist, steht der Wert auf 0. Hier darf ein NULL-Pointer übergeben werden.
• plReserved1 (OUT) Hier muss ein NULL-Pointer übergeben werden.
• plReserved2 (OUT) Hier muss ein NULL-Pointer übergeben werden.
• plReserved3 (OUT) Hier muss ein NULL-Pointer übergeben werden.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
355© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_stamm_update
Mit dieser Funktion werden PERFIDIA Stammdaten über das Internet aktualisiert. Diese Funktion sollte regel-mäßig aufgerufen werden. Mit Hilfe der Funktion perfidia_stamm_update_info kann geprüft werden, wie viele Tage das letzte erfolgreiche Update her ist.
long perfidia_stamm_update ( HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NO_DATA (80129) Die Stammdaten waren aktuell.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NO_INET (80107) Die Verbindung zum Internet konnte nicht hergestellt werden.
• PE_HTTP_OPEN (80501) Fehler beim Initialisieren der Internetverbindung. (1)
• PE_HTTP_CONNECT (80502) Fehler beim Initialisieren der Internetverbindung. (2)
• PE_HTTP_OPENREQUEST (80503) Fehler beim Initialisieren der Internetverbindung. (3)
• PE_HTTP_SENDREQUEST (80504) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_SENDREQUESTEX (80505) Fehler beim Verbindungsaufbau zum Server.
• PE_HTTP_WRITEFILE (80506) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_ENDREQUEST (80507) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_QUERYINFO (80508) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_READFILE (80509) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_PROXY_AUTH (80510) Proxy-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_AUTH (80511) Server-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_ERROR (80512) Interner Fehler beim Server.
Parameter
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de356
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
357© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Funktionen für die Erstellung von ASCII-Datensätzen
Funktionsübersicht
perfidia_write_records_open perfidia_write_records_close perfidia_write_records_next perfidia_write_records_set_string perfidia_write_records_set_integer perfidia_write_records_set_float perfidia_write_records_skip
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de358
perfidia_write_records_open
Öffnet eine Datei und bereitet sie zum Schreiben des ersten Datensatzes vor. Die Datensätze werden grund-sätzlich mit Leerstellen (0x20) initialisiert.
long perfidia_write_records_open ( const char *szFilename, long lRecordLength, short nOverwrite );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_FILE_CREATE (80801) Fehler beim Erstellen der Datei.
• PE_FILE_EXISTS (80808) Die Datei existiert bereits.
Parameter
• szFilename (IN) Name, der zu erstellenden Datei.
• lRecordLength (IN) Länge des ersten Datensatzes.
• nOverwrite (IN) 0 = vorhandene Datei nie überschreiben 1 = vorhandene Datei immer überschreiben
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Nach einem erfolgreichen Öffnen der Datei kann gleich mit dem Schreiben der Daten begonnen werden. Die Funktion perfidia_write_records_next muß erst vor jedem weiteren Datensatz aufgerufen werden.
v3.90.161 PERFIDIA Toolkit Reference
359© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_write_records_close
Schreibt den letzten Datensatz und schließt die Datei.
long perfidia_write_records_close ();
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_FILE_NOTOPEN (80807) Es ist keine Datei geöffnet.
• PE_FILE_WRITE (80806) Schreibfehler in Datei.
Parameter
keine
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de360
perfidia_write_records_next
Schreibt den letzten Datensatz und bereitet das Schreiben für den nächsten Datensatzes vor. Die Datensätze werden grundsätzlich mit Leerstellen (0x20) initialisiert.
long perfidia_write_records_next ( long lRecordLength );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_FILE_NOTOPEN (80807) Es ist keine Datei geöffnet.
• PE_FILE_WRITE (80806) Schreibfehler in Datei.
Parameter
• lRecordLength (IN) Länge des nächsten Datensatzes.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
361© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_write_records_set_string
Schreibt den mitgegebenen String in den Datensatz und füllt den Rest des Feldes mit Leerzeichen (0x20).
long perfidia_write_records_set_string ( const char *szString, short nLength );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_FILE_NOTOPEN (80807) Es ist keine Datei geöffnet.
• PE_BUFSIZE (80110) Die Datensatzlänge ist zu klein. (perfidia_write_records_next vergessen?)
Parameter
• szString (IN) Zeichenkette, die geschrieben werden soll.
• nLength (IN) Länge des Feldes im Datensatz. (Nicht die Länge der Zeichenkette!)
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de362
perfidia_write_records_set_integer
Schreibt die mitgegebene Ganzzahl mit führenden Nullen in den Datensatz.
long perfidia_write_records_set_integer( long lValue, short nLength );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_FILE_NOTOPEN (80807) Es ist keine Datei geöffnet.
• PE_BUFSIZE (80110) Die Datensatzlänge ist zu klein. (perfidia_write_records_next vergessen?)
Parameter
• lValue (IN) Die zu schreibende Ganzzahl.
• nLength (IN) Länge des Feldes im Datensatz.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
363© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_write_records_set_float
Schreibt die mitgegebene Fließkommazahl mit führenden Nullen und ohne Dezimaltrennzeichen in den Da-tensatz.
long perfidia_write_records_set_float ( double dValue, short nLength, short nDigits );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_FILE_NOTOPEN (80807) Es ist keine Datei geöffnet.
• PE_BUFSIZE (80110) Die Datensatzlänge ist zu klein. (perfidia_write_records_next vergessen?)
Parameter
• dValue (IN) Die zu schreibende Fließkommazahl.
• nLength (IN) Länge des Feldes im Datensatz.
• nDigits (IN) Anzahl der zu schreibenden Nachkommastellen.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de364
perfidia_write_records_skip
Übersprint die angegebene Anzahl an Bytes. Dies ist gleichbedeutend mit dem Schreiben von Leerzeichen (0x20).
long perfidia_write_records_skip ( short nCount );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_FILE_NOTOPEN (80807) Es ist keine Datei geöffnet.
• PE_BUFSIZE (80110) Die Datensatzlänge ist zu klein. (perfidia_write_records_next vergessen?)
Parameter
• nCount (IN) Anzahl der zu überspringenden Bytes im Datensatz.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
365© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
‘Alte’ Funktionen
Die folgenden Funktionen sollten in Neuentwicklungen nicht mehr verwendet werden!
FunktionsübersichtDEÜV-Meldungen, Beitragsnachweise und Entgeltbescheinigungen
perfidia_svmail_send perfidia_svmail_send_mapi perfidia_itsg_cert_info
Hilfsfunktionenperfidia_test_internet perfidia_test_internet_v2
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de366
perfidia_init oder perfidia_init_thread_safe
Verwenden Sie in Neuentwicklungen die Funktion perfidia_init_v2 bzw. perfidia_init_thread_safe_v2!
Bevor irgendeine andere Function von PERFIDIA benutzt werden kann, muß einmal die Funktion perfidia_init oder perfidia_init_thread_safe erfolgreich aufgerufen werden.
Wenn Sie als Betriebsnummer 12345678 übergeben, wird eine Testumgebung gestartet. In der Testumgebung können beim Krankenkassenverfahren Daten ohne ITSG-Zertifikat versendet werden. Diese Daten werden in der Krankenkassen-Annahmestelle automatisch gelöscht. Beim Elster-Verfahren wird bei allen Datenlieferun-gen ein Testmerker gesetzt, falls nicht schon einer gesetzt ist.
long perfidia_init ( short nMinBuild, const char *szRootPath, long lBetrNr, long lLicenseCode, short nDebugLevel ); long perfidia_init_thread_safe ( short nMinBuild, const char *szRootPath, long lBetrNr, long lLicenseCode, short nDebugLevel );
Rückgabewerte
• PE_NO_ERROR (0)Funktion wurde erfolgreich ausgeführt.• PE_NULL_POINTER (80136)Unerlaubter NULL-Pointer.• PE_WRONG_DLL (70101)Die PERFIDIA-DLL ist zu alt.• PE_BETRNR_NOT_VALID (80104)Die Betriebsnummer ist ungültig.• PE_LICENSECODE (80105)Der Lizenzcode ist ungültig.• PE_ROOTPATH_NOT_VALID (70140)Das PERFIDIA-Datenverzeichnis ist nicht vorhanden.• PE_ROOTPATH_NOPERMISSION (70110)Kein Zugriff auf PERFIDIA-Datenverzeichnis.• PE_PATH_CREATION (70141)Ein Unterverzeichnis kann nicht angelegt werden. Nähere Informationen mit perfidia_get_last_error.• PE_PATH_NOPERMISSION (70111)Kein Zugriff auf ein Unterverzeichnis. Nähere Informationen mit perfidia_get_last_error.
v3.90.161 PERFIDIA Toolkit Reference
367© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Parameter
• nMinBuild (IN) Die letzte Zahl der PERFIDIA-Versionsnummer (z.B. 2.12.41) gibt immer den Build an. Um nicht aus-versehen mit einer alten DLL zu arbeiten, kann hier angegeben werden, welchen Build die ‘perfidia.dll’ mindestens haben muß.
• szRootPath (IN) Dies ist das Arbeitsverzeichnis von PERFIDIA. Um keine Konfikte mit Verzeichnis- und Dateinamen anderer Programme zu bekommen, sollte dieses Verzeichnis nur für PERFIDIA genutzt werden.
• lBetrNr (IN) Die Betriebsnummer des Absenders (Datenlieferanten). Wenn der Arbeitgeber seine Daten nicht selbst verschickt, kann dies z.B. die Betriebsnummer eines Rechenzentrums oder Steuerberaters sein. Im Leistungsbringerverfahren ist hier die IK-Nummer anzugeben.
• lLicenseCode (IN) Jeder Hersteller erhält von uns pro Produkt einen Lizenzcode, um PERFIDIA freizuschalten. Dieser Lizenzcode ist geheim und darf auf keinen Fall an Dritte weitergegeben werden.
• nDebugLevel (IN) In der Regel hat dieser Parameter den Wert 0. Nur bei der Fehlersuche sollte nDebugLevel eine Kom-bination (z.B. 1+4) aus den folgenden Werten sein: 1 = temporäre Dateien werden nicht gelöscht 2 = Funktionsaufrufe und deren Parameter werden in ‘log/debug.txt’ protokolliert 4 = SMTP-Kommunikation wird in ‘log/debug.txt’ protokolliert 8 = HTTP-Kommunikation wird in ‘log/debug.txt’ protokolliert 16 = SSH-Kommunikation wird in ‘log/debug.txt’ protokolliert
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de368
perfidia_svmail_kern_check
Verwenden Sie in Neuentwicklungen die Funktion perfidia_svchk_file!
Mit dieser Funktion können DEÜV-Meldungen auf Fehler geprüft werden. Die Prüfungen basieren auf dem C-Quellcode des KERN-Prüfprogramms der Annahmestellen.
long perfidia_svmail_kern_check ( short nDataType, const char *szDatFile, short nCharset, const char *szDatum, short *pnFaultyRecords );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PARAMETER (80114) Ungültiger Parameter.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann nicht gefunden werden.
• PE_INVALID_FORMAT (80143) Die Datei hat ein ungültiges Format.
Parameter
• nDataType (IN) 1 = DEÜV-Meldungen
• szDatFile (IN) Name der Datendatei.
• nCharset (IN) Zeichensatz, in dem die Datendatei gespeichert ist: 0 = ISO-8859-15 1 = ISO-8859-1 2 = CP1252 (WIN ANSI) 3 = CP437 (MS-DOS US) 4 = CP850 (MS-DOS Latin 1)
• szDatum (IN) Datum, das bei der Prüfung der Daten zugrunde gelegt werden soll. Wenn hier eine leere Zeichenkette oder ein NULL-Pointer übergeben wird, wird das aktuelle Datum vom Betriebssystem benutzt. (FORMAT: JJJJMMDDhhmmss)
• pnFaultyRecords (OUT) Liefert die Anzahl der fehlerhaften Datensätze.
v3.90.161 PERFIDIA Toolkit Reference
369© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Betriebssysteme
Microsoft Windows
Anmerkungen
Nur wenn diese Funktion den Rückgabewert 0 (PE_NO_ERROR) zurückliefert, konnten alle Daten geprüft werden.
Falls der Parameter pnFaultyRecords ungleich 0 ist, können nähere Fehlerdetails mit den Funktionen perfi-dia_svmail_kern_record und perfidia_svmail_kern_error abgefragt werden.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de370
perfidia_svmail_kern_record
Verwenden Sie in Neuentwicklungen die Funktion perfidia_svchk_record!
Falls die Funktion perfidia_svmail_kern_check fehlerhafte Datensätze (pnFaultyRecords ungleich 0) erkannt hat, kann mit dieser Funktion der fehlerhafte Datensatz und die Anzahl der darin enthaltenen Fehler ermittelt werden.
long perfidia_svmail_kern_record ( short nFaultyRecord, short *pnErrorCount, short *pnRecordNum, short *pnErrorCode, char *szRecordBuffer, short nRecordBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_BUFSIZE (80110) Länge des Record-Buffers ist zu klein.
Parameter
• nFaultyRecord (IN) Fortlaufende Nummer von 1 bis einschließlich pnFaultyRecords. (pnFaultyRecords siehe perfidia_svmail_kern_check)
• pnErrorCount (OUT) Liefert die Anzahl der Fehlertexte in diesem Datensatz.
• pnRecordNum (OUT) Liefert die Position in der Datendatei.
• pnErrorCode (OUT) 1000 = Fehler 1001 = Verfahrensmerkmal nicht DEÜV 1002 = Kennung nicht DSME/DSAE 1100 = Datensatz wurde nicht geprüft, da bereits Fehlerkennzeichen gesetzt war 1200 = Im Datensatz wurden sowohl Fehler als auch Hinweise festgestellt 2000 = Hinweis 9000 = Technischer Fehler
• szRecordBuffer (OUT) Der Record-Buffer sollte mindestens drei Zeichen größer sein, als der längste Datensatz in der Datei. Wenn der Datensatz nicht benötigt wird, darf hier auch ein NULL-Pointer übergeben werden.
• nRecordBufferSize (IN) Größe des Record-Buffers.
v3.90.161 PERFIDIA Toolkit Reference
371© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Betriebssysteme
Microsoft Windows
Anmerkungen
Vor dem Aufruf dieser Funktion muss die Funktion perfidia_svmail_kern_check erfolgreich ausgeführt worden sein.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de372
perfidia_svmail_kern_error
Verwenden Sie in Neuentwicklungen die Funktion perfidia_svchk_error!
Falls die Funktion perfidia_svmail_kern_check fehlerhafte Datensätze (pnFaultyRecords ungleich 0) erkannt hat, können mit dieser Funktion die einzelnen Fehlertexte je fehlerhaftem Datensatz abgefragt werden.
long perfidia_svmail_kern_error ( short nFaultyRecord, short nErrorNum, char *szErrorBuffer, short nErrorBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_BUFSIZE (80110) Länge des Error-Buffers ist zu klein.
Parameter
• nFaultyRecord (IN) Fortlaufende Nummer von 1 bis einschließlich pnFaultyRecords. (pnFaultyRecords siehe perfidia_svmail_kern_check)
• nErrorNum (IN) Fortlaufende Nummer von 1 bis einschließlich pnErrorCount. (pnErrorCount siehe perfidia_svmail_kern_record)
• szErrorBuffer (OUT) Der Error-Buffer sollte eine Größe von 81 Zeichen haben.
• nErrorBufferSize (IN) Größe des Error-Buffers.
Betriebssysteme
Microsoft Windows
Anmerkungen
Vor dem Aufruf dieser Funktion muss die Funktion perfidia_svmail_kern_check erfolgreich ausgeführt worden sein.
v3.90.161 PERFIDIA Toolkit Reference
373© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_svmail_send
Verwenden Sie in Neuentwicklungen die Funktion perfidia_svmail_send_v2!
Es werden alle DEÜV-Meldungen, Beitragsnachweise und Entgeltbescheinigungen aus der Send-Queue ver-schlüsselt und per SMTP-Client versendet.
long perfidia_svmail_send ( const char *szSVPassword, long *plFilesFound, long *plFilesSent, const char *szFirm, const char *szContact, const char *szPhone, const char *szSenderEmail, const char *szEmailServer, short nSmtpPort, const char *szEmailUser, const char *szEmailPassword, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PASSWORD (80106) Ungültiges Passwort
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_PEMKEY (80113) Es existiert kein gültiger Schlüssel.
• PE_SVMAIL_INIT (70204) Fehler bei der Initialisierung von SVEmail.
• PE_SVMAIL_EMPTY_QUEUE (70205) Die Warteschlange ist leer.
• PE_SVMAIL_PROC (70206) Fehler beim Verarbeiten. Nähere Informationen mit der Funktion perfidia_get_last_error.
• PE_SMTP_DATASEND (80301) Fehler bei der Datenübertragen an den Emailserver. Eventuell ist die Netzwerkverbindung unterbro-chen worden.
• PE_SMTP_DATARECV (80302) Fehler beim Datenempfang vom Emailserver. Eventuell ist die Netzwerkverbindung unterbrochen wor-den.
• PE_SMTP_READ_ATTACHMENTS (80304) Fehler beim Lesen der Email-Anlagen.
• PE_SMTP_STARTSTRING (80305) Der Emailserver antwortet nicht korrekt.
• PE_SMTP_MAILFROM (80306) Fehler in der Email-Adresse des Absenders.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de374
• PE_SMTP_RCPTTO (80307) Fehler in der Email-Adresse des Empfängers.
• PE_SMTP_DATASTART (80308) Fehler beim Start der Emailübertragung.
• PE_SMTP_QUEUEMAIL (80309) Email konnte nicht in die Versand-Queue des Emailservers gestellt werden.
• PE_SMTP_UNKNOWNHOST (80310) Falsche IP-Adresse oder Hostname.
• PE_SMTP_SOCKETFAILED (80311) Fehler beim Anfordern eines Sockets.
• PE_SMTP_CONNECTFAILED (80312) Fehler beim Verbindungsaufbau zum Emailserver.
• PE_SMTP_AUTHLOGIN_START (80313) Abbruch beim Loginversuch über SMTP_AUTH_LOGIN.
• PE_SMTP_AUTHLOGIN_USER (80314) Benutzername vom Emailserver nicht akzeptiert.
• PE_SMTP_AUTHLOGIN_PASS (80315) Benutzername und/oder Passwort vom Emailserver nicht akzeptiert.
• PE_SMTP_AUTHPLAIN_START (80316) Abbruch beim Loginversuch über SMTP_AUTH_PLAIN.
• PE_SMTP_AUTHPLAIN_USERPASS (80317) Benutzername und/oder Passwort vom Emailserver nicht akzeptiert.
Parameter
• szSVPassword (IN) Passwort des SV-Zertifikats.
• plFilesFound (OUT) Anzahl der Dateien die in der Send-Queue gefunden wurden.
• plFilesSent (OUT) Anzahl der Dateien die erfolgreich versendet wurden.
• szFirm (IN) Firmenname des Absenders.
• szContact (IN) Ansprechpartner des Absenders.
• szPhone (IN) Telefonnummer mit Durchwahl des Ansprechpartners.
• szSenderEmail (IN) Email-Adresse des Absenders.
• szEmailServer (IN) IP-Adresse oder Hostname des Emailservers.
• nSmtpPort (IN) Der SMTP-Port des Emailservers. Dies ist fast immer Port 25.
• szEmailUser (IN) Benutzername beim Emailserver. Dies ist nur nötig, wenn beim Emailserver SMTP-Auth aktiviert ist.
• szEmailPassword (IN) Passwort beim Emailserver. Dies ist nur nötig, wenn beim Emailserver SMTP-Auth aktiviert ist.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
v3.90.161 PERFIDIA Toolkit Reference
375© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_svmail_send_mapi
Verwenden Sie in Neuentwicklungen die Funktion perfidia_svmail_send_mapi_v2!
Es werden alle DEÜV-Meldungen, Beitragsnachweise und Entgeltbescheinigungen aus der Send-Queue ver-schlüsselt und per Email über die MAPI-Schnittstelle versendet.
long perfidia_svmail_send_mapi ( const char *szSVPassword, long *plFilesFound, long *plFilesSent, const char *szFirm, const char *szContact, const char *szPhone, const char *szEmail, short nAutoMail, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PASSWORD (80106) Ungültiges Passwort.
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_PEMKEY (80113) Es existiert kein gültiger Schlüssel.
• PE_SVMAIL_INIT (70204) Fehler bei der Initialisierung von SVEmail.
• PE_SVMAIL_EMPTY_QUEUE (70205) Die Warteschlange ist leer.
• PE_SVMAIL_PROC (70206) Fehler beim Verarbeiten. Nähere Informationen mit der Funktion perfidia_get_last_error.
• PE_NO_MAPI (80108) Es ist kein MAPI-fähiges Email-Programm installiert.
• PE_MAPI_ERROR (80131) Fehler beim Email-Versenden.
Parameter
• szSVPassword (IN) Passwort des SV-Zertifikats.
• plFilesFound (OUT) Anzahl der Dateien die in der Send-Queue gefunden wurden.
• plFilesSent (OUT) Anzahl der Dateien die erfolgreich versendet wurden.
• szFirm (IN) Firmenname des Absenders.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de376
• szContact (IN) Ansprechpartner des Absenders.
• szPhone (IN) Telefonnummer mit Durchwahl des Ansprechpartners.
• szEmail (IN) Email-Adresse des Ansprechpartners.
• nAutoMail (IN) 0 = Die Emails werden zum Versenden angezeigt. 1 = Die Emails werden automatisch im Postausgang gespeichert.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows
Anmerkungen
Da die MAPI-Schnittstelle bei einigen Email-Programmen nicht zuverlässig funktioniert, wird empfohlen, statt dessen den SMTP-Client zu verwenden (siehe perfidia_svmail_send).
Bei Verwendung der MAPI-Schnittstelle sollte zunächst die Funktionalität mit perfidia_test_email_send_mapi geprüft werden. Hierbei ist insbesondere darauf zu achten, daß die Anlagen nicht im Microsoft TNEF-Format gespeichert sind, da die Annahmestellen dieses Format nicht verarbeiten können.
v3.90.161 PERFIDIA Toolkit Reference
377© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_svmail_send_v2
Verwenden Sie in Neuentwicklungen die Funktion perfidia_sv_send!
Mit dieser Funktion können DEÜV-Meldungen, Beitragsnachweise und/oder Entgeltbescheinigungen aus der Send-Queue verschlüsselt und per SMTP-Client versendet werden.
long perfidia_svmail_send_v2 ( short nDataType, const char *szSvPassword, long *plFilesFound, long *plFilesSent, const char *szFirm, const char *szContact, const char *szPhone, const char *szSenderEmail, const char *szEmailServer, short nSmtpPort, const char *szEmailUser, const char *szEmailPassword, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PASSWORD (80106) Ungültiges Passwort.
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_PEMKEY (80113) Es existiert kein gültiger Schlüssel.
• PE_SVMAIL_INIT (70204) Fehler bei der Initialisierung von SVEmail.
• PE_SVMAIL_EMPTY_QUEUE (70205) Die Warteschlange ist leer.
• PE_SVMAIL_PROC (70206) Fehler beim Verarbeiten. Nähere Informationen mit der Funktion perfidia_get_last_error.
• PE_SMTP_DATASEND (80301) Fehler bei der Datenübertragen an den Emailserver. Eventuell ist die Netzwerkverbindung unterbro-chen worden.
• PE_SMTP_DATARECV (80302) Fehler beim Datenempfang vom Emailserver. Eventuell ist die Netzwerkverbindung unterbrochen wor-den.
• PE_SMTP_READ_ATTACHMENTS (80304) Fehler beim Lesen der Email-Anlagen.
• PE_SMTP_STARTSTRING (80305) Der Emailserver antwortet nicht korrekt.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de378
• PE_SMTP_MAILFROM (80306) Fehler in der Email-Adresse des Absenders.
• PE_SMTP_RCPTTO (80307) Fehler in der Email-Adresse des Empfängers.
• PE_SMTP_DATASTART (80308) Fehler beim Start der Emailübertragung.
• PE_SMTP_QUEUEMAIL (80309) Email konnte nicht in die Versand-Queue des Emailservers gestellt werden.
• PE_SMTP_UNKNOWNHOST (80310) Falsche IP-Adresse oder Hostname.
• PE_SMTP_SOCKETFAILED (80311) Fehler beim Anfordern eines Sockets.
PE_SMTP_CONNECTFAILED (80312) Fehler beim Verbindungsaufbau zum Emailserver.
• PE_SMTP_AUTHLOGIN_START (80313) Abbruch beim Loginversuch über SMTP_AUTH_LOGIN.
• PE_SMTP_AUTHLOGIN_USER (80314) Benutzername vom Emailserver nicht akzeptiert.
• PE_SMTP_AUTHLOGIN_PASS (80315) Benutzername und/oder Passwort vom Emailserver nicht akzeptiert.
• PE_SMTP_AUTHPLAIN_START (80316) Abbruch beim Loginversuch über SMTP_AUTH_PLAIN.
• PE_SMTP_AUTHPLAIN_USERPASS (80317) Benutzername und/oder Passwort vom Emailserver nicht akzeptiert.
Parameter
• nDataType (IN) Arbeitgeberverfahren: 0 = alle 1 = DEÜV-Meldungen (EDUA0*.*, TDUA0*.*, EZVA0*.*, TZVA0*.*) 2 = Beitragsnachweise (EBNA0*.*, TBNA0*.*, EBNZ0*.*, TBNZ0*.*, EBEA0*.*, TBEA0*.*) 4 = Entgeltbescheinigungen (EVBA0*.*, TVBA0*.*) Leistungsbringerverfahren: 0 = alle 1 = Pflege (EPFL0*.*, TPFL0*.*)
• szSVPassword (IN) Passwort des SV-Zertifikats.
• plFilesFound (OUT) Anzahl der Dateien die in der Send-Queue gefunden wurden.
• plFilesSent (OUT) Anzahl der Dateien die erfolgreich versendet wurden.
• szFirm (IN) Firmenname des Absenders.
• szContact (IN) Ansprechpartner des Absenders.
• szPhone (IN) Telefonnummer mit Durchwahl des Ansprechpartners.
• szSenderEmail (IN) Email-Adresse des Absenders.
• szEmailServer (IN) IP-Adresse oder Hostname des Emailservers.
v3.90.161 PERFIDIA Toolkit Reference
379© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• nSmtpPort (IN) Der SMTP-Port des Emailservers. Dies ist fast immer Port 25.
• szEmailUser (IN) Benutzername beim Emailserver. Dies ist nur nötig, wenn beim Emailserver SMTP-Auth aktiviert ist.
• szEmailPassword (IN) Passwort beim Emailserver. Dies ist nur nötig, wenn beim Emailserver SMTP-Auth aktiviert ist.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Diese Funktion erzeugt einen Progress.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de380
perfidia_svmail_send_mapi_v2
Verwenden Sie in Neuentwicklungen die Funktion perfidia_sv_send!
Mit dieser Funktion können DEÜV-Meldungen, Beitragsnachweise und/oder Entgeltbescheinigungen aus der Send-Queue verschlüsselt und per Email über die MAPI-Schnittstelle versendet werden.
long perfidia_svmail_send_mapi_v2 ( short nDataType, const char *szSVPassword, long plFilesFound, long *plFilesSent, const char *szFirm, const char *szContact, const char *szPhone, const char *szEmail, short nAutoMail, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PASSWORD (80106) Ungültiges Passwort.
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_PEMKEY (80113) Es existiert kein gültiger Schlüssel.
• PE_SVMAIL_INIT (70204) Fehler bei der Initialisierung von SVEmail.
• PE_SVMAIL_EMPTY_QUEUE (70205) Die Warteschlange ist leer.
• PE_SVMAIL_PROC (70206) Fehler beim Verarbeiten. Nähere Informationen mit der Funktion perfidia_get_last_error.
• PE_NO_MAPI (80108) Es ist kein MAPI-fähiges Email-Programm installiert.
• PE_MAPI_ERROR (80131) Fehler beim Email-Versenden.
Parameter
• nDataType (IN) Arbeitgeberverfahren: 0 = alle 1 = DEÜV-Meldungen (EDUA0*.*, TDUA0*.*, EZVA0*.*, TZVA0*.*) 2 = Beitragsnachweise (EBNA0*.*, TBNA0*.*, EBNZ0*.*, TBNZ0*.*, EBEA0*.*, TBEA0*.*) 4 = Entgeltbescheinigungen (EVBA0*.*, TVBA0*.*)
v3.90.161 PERFIDIA Toolkit Reference
381© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Leistungsbringerverfahren: 0 = alle 1 = Pflege (EPFL0*.*, TPFL0*.*)
• szSVPassword (IN) Passwort des SV-Zertifikats.
• plFilesFound (OUT) Anzahl der Dateien die in der Send-Queue gefunden wurden.
• plFilesSent (OUT) Anzahl der Dateien die erfolgreich versendet wurden.
• szFirm (IN) Firmenname des Absenders.
• szContact (IN) Ansprechpartner des Absenders.
• szPhone (IN) Telefonnummer mit Durchwahl des Ansprechpartners.
• szEmail (IN) Email-Adresse des Ansprechpartners.
• nAutoMail (IN) 0 = Die Emails werden zum Versenden angezeigt. 1 = Die Emails werden automatisch im Postausgang gespeichert.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows
Anmerkungen
Da die MAPI-Schnittstelle bei einigen Email-Programmen nicht zuverlässig funktioniert, wird empfohlen, statt dessen den SMTP-Client zu verwenden (siehe perfidia_svmail_send_v2). Bei Verwendung der MAPI-Schnittstelle sollte zunächst die Funktionalität mit perfidia_test_email_send_mapi geprüft werden. Hierbei ist insbesondere darauf zu achten, daß die Anlagen nicht im Microsoft TNEF-Format gespeichert sind, da die Annahmestellen dieses Format nicht verarbeiten können.
Diese Funktion erzeugt einen Progress.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de382
perfidia_svmail_decrypt
Mit dieser Funktion können die verschlüsselten Antworten aus dem Krankenkassen-Verfahren entschlüsselt werden. Die verschlüsselten Antworten müssen hierzu in dem Ordner ‚pem/recvq‘ des PERFIDIA Datenord-ners gespeichert sein.
long perfidia_svmail_decrypt ( short nDataType, const char *szSvPassword, const char *szFileName, long *plFilesFound, long *plFilesDecrypted, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PASSWORD (80106) Ungültiges Passwort.
• PE_PEMKEY (80113) Es existiert kein gültiger Schlüssel.
• PE_SVMAIL_EMPTY_QUEUE (70205) Die Warteschlange ist leer.
• PE_INVALID_FORMAT (80144) Ungültiges Format.
Parameter
• nDataType (IN) 0 = alle 1 = DEÜV-Meldungen (EDUA0*.*, TDUA0*.*)
• szSVPassword (IN) Passwort des SV-Zertifikats.
• szFileName (IN) Wenn eine bestimmte Datei aus der Warteschlange entschlüsselt werden soll, kann hier der Dateiname angegeben werden. Ansonsten ist ein Null-Pointer oder Leerstring zu übergeben.
• plFilesFound (OUT) Anzahl der Dateien die in der Receive-Queue gefunden wurden.
• plFilesDecrypted (OUT) Anzahl der Dateien die erfolgreich entschlüsselt wurden.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
383© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Anmerkungen
Die entschlüsselten Dateien werden in den Unterordnern des Ordners ‚pem/recv‘ gespeichert. Mit der Funk-tion perfidia_config_vector_get und dem Vektornamen ‚INVOLVED_FILES‘ kann nach der Entschlüsselung ermittelt werden, welche Dateien verarbeitet wurden.
Diese Funktion erzeugt einen Progress.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de384
perfidia_itsg_cert_info
Verwenden Sie in Neuentwicklungen die Funktion perfidia_itsg_cert_info_v2!
Gibt den Status und die Gültigkeitsdauer des ITSG-Zertifikats an.
long perfidia_itsg_cert_info ( short *pnStatus, short *pnDaysLeft );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keinen Schlüssel gefunden.
• PE_PEMKEY (80113) Schlüsselinformationen können nicht gelesen werden.
Parameter
• pnStatus (OUT) 0 = Der Schlüssel ist gültig oder wartet auf eine Zertifizierungsantwort der ITSG. 1 = Die Gütigkeit des Schlüssels ist fast abgelaufen. 2 = Der Schlüssel ist nicht mehr gültig. 3 = Es existiert kein Schlüssel. 4 = Fehler in der Schlüsseldatei.
• pnDaysLeft (OUT) Gültigkeitsdauer in Tagen.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
385© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_svmail_protocol_open
Verwenden Sie in Neuentwicklungen die Funktion perfidia_sv_protocol_open!
Öffnet die Protokolldatei für die DEÜV-Meldungen und Beitragsnachweise.
long perfidia_svmail_protocol_open ( short nYear, short nMonth, short nDay, short nAction, long lBetrnr, short nAnnahmestelle, short nCompletion );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_BETRNR_NOT_VALID (80104) Die Betriebsnummer ist ungültig.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
Parameter
• nYear (IN) Jahr, ab dem Protokolleinträge gelesen werden.
• nMonth (IN) Monat (1-12), ab dem Protokolleinträge gelesen werden.
• nDay (IN) Tag (1-31), ab dem Protokolleinträge gelesen werden.
• nAction (IN) 0 = alle Protokolleinträge 1 = nur Versenden des Zertifikatsantrags 2 = nur Einlesen der Zertifizierungsantwort 3 = nur Passwortänderungen 4 = nur Einlesen der Annahmestellen-Zertifikate 6 = nur Zertifikat importieren 10 = nur Versand der Beitragsnachweise 11 = nur Versand der DEÜV-Meldungen 12 = nur Versand der Entgeltbescheinigungen
• lBetrnr (IN) 0 = alle Protokolleinträge sonst nur Protokolleinträge mit dieser Betriebsnummer
• nAnnahmestelle (IN) 0 = alle 1 = nur alle AOK-Annahmestellen 2 = nur 15451439, vdek 3 = nur 37912580, IKK
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de386
4 = nur 35382142, BKK 5 = nur 47056789, LKK 6 = nur 99086875, SeeKK 7 = nur 98000006, BKN (Allgemein) 8 = nur 17625773, DASBV 9 = nur 66667777, DSRV 10 = nur 77772222, ZSS 11 = nur 98094032, BKN (Knappschaft) 12 = nur 64672791, AOK Baden-Württemberg 13 = nur 87880235, AOK Bayern/Thüringen 14 = nur 05174740, AOK Sachsen 15 = nur 20158137, AOK Bremen/Bremerhaven 16 = nur 29720865, AOK Niedersachsen 17 = nur 47860681, AOK Hessen/Saarland 18 = nur 51605725, AOK Rheinland-Pfalz 19 = nur 01000251, AOK MV/Rheinland/HH/SH 20 = nur 34364249, AOK Rheinland/HH 21 = nur 01000262, AOK Berlin/BB/Sachsen-Anhalt 22 = nur 33526082, AOK Westfalen-Lippe 23 = nur 25942967, Mobil ISC 24 = nur 76665732, BA 25 = nur 95783331, DGUV 26 = nur 93121302, ITSG 27 = nur 93951443, AOK Sachsen-Anhalt 28 = nur 92111581, DAK-G 98 = nur 99300222, eVpT (neue Kernprüfung) 99 = nur 99300001, eVpT (normal)
• nCompletion (IN) 0 = alle Protokolleinträge 1 = nur Protokolleinträge mit ErrorCode ungleich 0 2 = nur Protokolleinträge mit ErrorCode gleich 0
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Nach dem Lesen der Protokolleinträge mit der Funktion perfidia_svmail_protocol_next muß die Datei mit der Funktion perfidia_svmail_protocol_close geschlossen werden.
v3.90.161 PERFIDIA Toolkit Reference
387© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_svmail_protocol_next
Verwenden Sie in Neuentwicklungen die Funktion perfidia_sv_protocol_next!
Nach einem erfolgreichen Aufruf der Funktion perfidia_svmail_protocol_open liefert diese Funktion solange den nächsten Protokolleintrag, bis sie mit PE_NO_DATA zurückkommt.
long perfidia_svmail_protocol_next ( char *szDateTimeBuffer, short nDateTimeBufferSize, short *pnAction, long *plBetrnr, long *plErrorCode, long *plDatNum, char *szFilenameBuffer, short nFilenameBufferSize, short *pnAnnahmestelle, char *szEmailBuffer, short nEmailBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe eines Buffers ist zu klein.
Parameter
• szDateTimeBuffer (OUT) DateTime-Buffer sollte eine Größe von 15 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMD-Dhhmmss.
• nDateTimeBufferSize (IN) Größe des DateTime-Buffers.
• pnAction (OUT) 1 = Versenden des Zertifikatsantrags 2 = Einlesen der Zertifizierungsantwort 3 = Passwortänderung 4 = Einlesen der Annahmestellen-Zertifikate 6 = Zertifikat importieren 10 = Versand der Beitragsnachweise 11 = Versand der DEÜV-Meldungen 12 = Versand der Entgeltbescheinigungen
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de388
• plBetrnr (OUT) Betriebsnummer der Annahmestelle, wenn Action gleich 10 oder 11.
• plErrorCode (OUT) 0 = kein Fehler 101 = Schlüsseldatei kann nicht bearbeitet werden. 102 = Interner Fehler in Schlüssel-Info-Datei. 103 = Schreibfehler in Schlüsseldatei. 104 = Kein Schlüssel vorhanden, der auf eine Zertifizierungsantwort wartet. 105 = Funktion durch Benutzer abgebrochen. 106 = Zu viele Versuche! 107 = Falsches Passwort. 108 = Kein Zugriff auf Empfänger-Schlüssel. 111 = Die PCS ist ungültig. 112 = Fehler beim Einlesen der Zertifizierungsantwort. 121 = Fehler beim Generieren eines Schlüssels. 123 = Fehler beim Versenden der Email. 125 = Änderung des Passworts ist fehlgeschlagen. 140 = Annahme.agv kann nicht gefunden/geöffnet werden. 141 = Fehler beim Öffen der Annahmestellen-Zertifikatsdatei. 142 = Lesefehler in der Annahmestellen-Zertifikatsdatei. 143 = Fehler beim Einlesen eines Annahmestellen-Zertifikats. 144 = Fehler beim Konvertieren eines Annahmestellen-Zertifikats. 145 = Schreibfehler in der Annahmestellen-Zertifikatsdatei.
• plDatNum (OUT) Dateinummer, wenn Action gleich 10 oder 11.
• szFilenameBuffer (OUT) Kurzer Dateiname, wenn Action gleich 10 oder 11. Der Filename-Buffer sollte eine Größe von 14 Zei-chen haben.
• nFilenameBufferSize (IN) Größe des Filename-Buffers.
• pnAnnahmestelle (OUT) 1 = alle AOK-Annahmestellen (Datenversand bis Build 93) 2 = 15451439, vdek 3 = 37912580, IKK 4 = 35382142, BKK 5 = 47056789, LKK 6 = 99086875, SeeKK 7 = 98000006, BKN (Allgemein) 8 = 17625773, DASBV 9 = 66667777, DSRV 10 = 77772222, ZSS 11 = 98094032, BKN (Knappschaft) 12 = 64672791, AOK Baden-Württemberg 13 = 87880235, AOK Bayern/Thüringen 14 = 05174740, AOK Sachsen 15 = 20158137, AOK Bremen/Bremerhaven 16 = 29720865, AOK Niedersachsen 17 = 47860681, AOK Hessen/Saarland 18 = 51605725, AOK Rheinland-Pfalz 19 = 01000251, AOK MV/Rheinland/HH/SH 20 = 34364249, AOK Rheinland/HH 21 = 01000262, AOK Berlin/BB/Sachsen-Anhalt 22 = 33526082, AOK Westfalen-Lippe 23 = 25942967, Mobil ISC 24 = 76665732, BA
v3.90.161 PERFIDIA Toolkit Reference
389© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
25 = 95783331, DGUV 26 = 93121302, ITSG 27 = 93951443, AOK Sachsen-Anhalt 28 = 92111581, DAK-G 98 = 99300222, eVpT (neue Kernprüfung) 99 = 99300001, eVpT (normal)
• szEmailBuffer (OUT) Emailadresse der Annahmestelle, wenn Action gleich 10 oder 11. Der Email-Buffer sollte eine Größe von 51 Zeichen haben.
• nEmailBufferSize (IN) Größe des Email-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de390
perfidia_sv_recv_next
Verwenden Sie in Neuentwicklungen die Funktion perfidia_sv_recv_next_v2!
Nach einem erfolgreichen Aufruf der Funktion perfidia_sv_recv_open_statuscode liefert diese Funktion solan-ge den nächsten Protokolleintrag, bis sie mit PE_NO_DATA zurückkommt.
long perfidia_sv_recv_next ( char *szDateTimeBuffer, short nDateTimeBufferSize, long *plDataType, short *pnAnst, short *pnTestmerker, long *plDatNumSend, long *plDatNumRecv, short *pnStatusCode );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe eines Buffers ist zu klein.
Parameter
• szDateTimeBuffer (OUT) DateTime-Buffer sollte eine Größe von 15 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMD-Dhhmmss.
• nDateTimeBufferSize (IN) Größe des DateTime-Buffers.
• plDataType (OUT) 0x00000001 (1) = Beitragsnachweise [?BNA0*.*] 0x00000002 (2) = Zahlstellen-Beitragsnachweise [?BNZ0*.*] 0x00000004 (4) = Beitragserhebung [?BEA0*.*] 0x00000008 (8) = DEÜV-Meldungen [?DUA0*.*] 0x00000010 (16) = Entgeltersatzleistungen [?EEL0*.*] 0x00000020 (32) = ELENA-Daten (MVDS) [?ENA0*.*] 0x00000040 (64) = ELENA-Daten (DSVV) [?ENR0*.*] 0x00000080 (128) = Zahlstellenmeldeverfahren [?ZAV0*.*] 0x00000100 (256) = AAG-Erstattungsanträge [?AAG0*.*] 0x00000400 (1024) = VSA-Rückmeldung [?VSA0*.*]
v3.90.161 PERFIDIA Toolkit Reference
391© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
0x00000800 (2048) = euBP-Daten (LOHN) [?EBE0*.*] 0x00001000 (4096) = SAG-Daten [?SAG0*.*] 0x00002000 (8192) = ZAK-Daten [?ZAK0*.*] 0x00004000 (16384) = euBP-Daten (FIBU) [?EBF0*.*] 0x00008000 (32768) = euBP-Antworten [?EBR0*.*] 0x00010000 (65536) = BEA-Arbeitsbescheinigungen [?ALG0*.*] 0x00040000 (262144) = EEL-Rückmeldungen [?EEK*.*] 0x00080000 (524288) = AAG-Rückmeldungen [?AAK*.*] 0x00100000 (1048576) = VSNR-Abfragen [?DSV*.*] 0x00200000 (2097152) = euBP-Dokumente [?0BP*.*]
• pnAnst (OUT) 1 = alle AOK-Annahmestellen (Datenversand bis Build 93) 2 = 15451439, vdek 3 = 37912580, IKK 4 = 35382142, BKK 5 = 47056789, LKK 6 = 99086875, SeeKK 7 = 98000006, BKN (Allgemein) 8 = 17625773, DASBV 9 = 66667777, DSRV 10 = 77772222, ZSS 11 = 98094032, BKN (Knappschaft) 12 = 64672791, AOK Baden-Württemberg 13 = 87880235, AOK Bayern/Thüringen 14 = 05174740, AOK Sachsen 15 = 20158137, AOK Bremen/Bremerhaven 16 = 29720865, AOK Niedersachsen 17 = 47860681, AOK Hessen/Saarland 18 = 51605725, AOK Rheinland-Pfalz 19 = 01000251, AOK MV/Rheinland/HH/SH 20 = 34364249, AOK Rheinland/HH 21 = 01000262, AOK Berlin/BB/Sachsen-Anhalt 22 = 33526082, AOK Westfalen-Lippe 23 = 25942967, Mobil ISC 24 = 76665732, BA 25 = 95783331, DGUV 26 = 93121302, ITSG 27 = 93951443, AOK Sachsen-Anhalt 28 = 92111581, DAK-G 98 = 99300222, eVpT (neue Kernprüfung) 99 = 99300001, eVpT (normal)
• pnTestmerker (OUT) 0 = Echtdaten 1 = Testdaten
• plDatNumSend (OUT) Dateinummer, wenn vorhanden.
• plDatNumRecv (OUT) Dateinummer, wenn vorhanden.
• pnStatusCode (OUT) 0 = keine Fehler, nicht quittiert 1 = Datenfehler, nicht quittiert 2 = Übertragungsfehler, nicht quittiert 10 = keine Fehler, quittiert
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de392
11 = Datenfehler, quittiert 12 = Übertragungsfehler, quittiert
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
393© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_svmail_protocol_close
Verwenden Sie in Neuentwicklungen die Funktion perfidia_sv_protocol_close!
Schließt die Protokolldatei für die DEÜV-Meldungen und Beitragsnachweise.
void perfidia_svmail_protocol_close ();
Rückgabewerte
keine
Parameter
keine
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de394
perfidia_lstb_check
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_check!
Prüft die in der Send-Queue gespeicherten Lohnsteuerbescheinigungen (ASCII-Format).
long perfidia_lstb_check( long lDatnum, long *plFilesFound, long *plFilesOK );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_EMPTY_QUEUE (80134) Die Send-Queue ist leer.
• PE_SCANSENDQ (80133) Fehler beim Scannen der Send-Queue.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_DATNUM_USED (80135) Dateinummer bereits benutzt.
• Fehlercodes von 1000 bis 3999 Diese stehen für Fehler im Dateiformat. (siehe Datensatzbeschreibung)
Parameter
• lDatnum (IN) Nummer der Datei, die geprüft werden soll. Wenn 0 angegeben ist, werden alle Dateien in der Send-Queue geprüft.
• plFilesFound (OUT) Anzahl der in der Send-Queue gefundenen Dateien.
• plFilesOK (OUT) Anzahl der erfolgreich geprüften Dateien.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Bei einem Fehler im Dateiformat (Fehlercode 1000 bis 3999) läßt sich mit der Funktion perfidia_get_last_er-ror_v2 herausfinden, in welcher Datei und an welcher Stelle der Fehler aufgetreten ist.
v3.90.161 PERFIDIA Toolkit Reference
395© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_lstb_send
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_send!
Versendet alle in der Send-Queue gespeicherten Lohnsteuerbescheinigungen.
long perfidia_lstb_send ( const char *szElsterPassword, long *plFilesFound, long *plFilesSent HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PASSWORD (80106) Ungültiges Passwort.
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_EMPTY_QUEUE (80134) Die Send-Queue ist leer.
• PE_SCANSENDQ (80133) Fehler beim Scannen der Send-Queue.
• PE_LSTB_EMPFAENGER (70401) Ungültiger Empfänger.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80803) Fehler beim Lesen der Datei.
• PE_FILE_WRITE (80806) Fehler beim Schreiben der Datei.
• PE_DATNUM_USED (80135) Dateinummer bereits benutzt.
• PE_LSTB_XML1 (70402) XML-Fehler 1 beim Erstellen der Daten.
• PE_LSTB_XML2 (70403) XML-Fehler 2 beim Erstellen der Daten.
• PE_LSTB_XML3 (70404) XML-Fehler 3 beim Erstellen der Daten.
• PE_LSTB_XML4 (70405) XML-Fehler 4 beim Erstellen der Daten.
• PE_LSTB_XML5 (70406) XML-Fehler 5 beim Erstellen der Daten.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de396
• PE_LSTB_XML6 (70407) XML-Fehler 6 beim Erstellen der Daten.
• PE_LSTB_XML7 (70408) XML-Fehler 7 beim Erstellen der Daten.
• PE_LSTB_XML8 (70409) XML-Fehler 8 beim Erstellen der Daten.
• PE_LSTB_XML9 (70410) XML-Fehler 9 beim Erstellen der Daten.
• PE_LSTB_XML10 (70411) XML-Fehler 10 beim Erstellen der Daten.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_ISAM_WRITE (80704) Schreibfehler in ISAM-Datei.
• PE_ELSTER_CERT (70301) Fehler beim Lesen des Zertifikats.
• PE_ELSTER_PARSE_PROT (70302) Fehler beim Parsen der Protokollantwort.
• PE_ELSTER_XML_NOT_VALID (70303) Die XML-Antwort der Clearingstelle ist in einem ungültigen Format.
• PE_ELSTER_UNKNOWN_PROC (70304) Unbekanntes Verfahren: Antwort kann nicht ausgewertet werden.
• PE_ELSTER_TRANSFER (70319) In der Clearingstelle der OFD ist ein Fehler aufgetreten. Nähere Informationen mit der Funktion perfi-dia_lstb_transfer_error.
• PE_PIN_INCORRECT (81111) Die PIN ist nicht korrekt.
• PE_PIN_INVALID (81112) Die PIN enthält ungültige Zeichen.
• PE_PIN_EXPIRED (81113) Die PIN ist abgelaufen.
• PE_PIN_LOCKED (81114) Die PIN ist gesperrt.
• PE_USER_PIN_NOT_INITIALIZED (81115) Die PIN ist nicht initialisiert.
• Fehlercodes von 1000 bis 3999 Diese stehen für Fehler im Dateiformat. (siehe Datensatzbeschreibung)
Parameter
• szElsterPassword (IN) Das Elster-Passwort.
• plFilesFound (OUT) Anzahl der in der Send-Queue gefundenen Dateien.
• plFilesSent (OUT) Anzahl der erfolgreich versendeten Dateien.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
v3.90.161 PERFIDIA Toolkit Reference
397© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Bei den Fehlercodes 1000 bis 3999 läßt sich mit der Funktion perfidia_get_last_error_v2 herausfinden, in welcher Datei und an welcher Stelle der Fehler aufgetreten ist. Alte Methode: Bei den Fehlercodes 1000 bis 3999 läßt sich mit der Funktion perfidia_get_last_error herausfin-den, in welcher Datei und an welcher Stelle der Fehler aufgetreten ist. (Format: DATEINAME?LSTBCOUNT)
Beim Fehlercode PE_ELSTER_TRANSFER (70319) läßt sich mit der Funktion perfidia_get_last_error heraus-finden, bei welcher Datei der Fehler aufgetreten ist. (Format: DATEINAME).
Diese Funktion erzeugt einen Progress.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de398
perfidia_lstb_protocol_receive
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_receive!
Erfragt bei der OFD den Protokollstatus für eine bzw. mehrere Datenlieferungen.
long perfidia_lstb_protocol_receive ( const char *szElsterPassword, long *plFilesFound, long *plFilesReceived, long lDatNum, long lHerstellerID, const char *szProductName, const char *szProductVersion, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_PASSWORD (80106) Ungültiges Passwort.
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NO_DATA (80129) - Zur angegebenen Dateinummer existiert kein Eintrag in der Transferdatei. - Für die angegebene Dateinummer haben Sie bereits ein Antwortprotokoll erhalten. - Für die angegebene Dateinummer kann noch kein Antwortprotokoll abgeholt werden, da seit dem Versand der Daten noch keine 24 Stunden vergangen sind.
• PE_LSTB_EMPFAENGER (70401) Ungültiger Empfänger.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80803) Fehler beim Lesen der Datei.
• PE_FILE_WRITE (80806) Fehler beim Schreiben der Datei.
• PE_LSTB_XML1 (70402) XML-Fehler 1 beim Erstellen der Daten.
• PE_LSTB_XML2 (70403) XML-Fehler 2 beim Erstellen der Daten.
• PE_LSTB_XML3 (70404) XML-Fehler 3 beim Erstellen der Daten.
• PE_LSTB_XML4 (70405) XML-Fehler 4 beim Erstellen der Daten.
• PE_LSTB_XML5 (70406) XML-Fehler 5 beim Erstellen der Daten.
v3.90.161 PERFIDIA Toolkit Reference
399© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• PE_LSTB_XML6 (70407) XML-Fehler 6 beim Erstellen der Daten.
• PE_LSTB_XML7 (70408) XML-Fehler 7 beim Erstellen der Daten.
• PE_LSTB_XML8 (70409) XML-Fehler 8 beim Erstellen der Daten.
• PE_LSTB_XML9 (70410) XML-Fehler 9 beim Erstellen der Daten.
• PE_LSTB_XML10 (70411) XML-Fehler 10 beim Erstellen der Daten.
• PE_ELSTER_CERT (70301) Fehler beim Lesen des Zertifikats.
• PE_ELSTER_PARSE_PROT (70302) Fehler beim Parsen der Protokollantwort.
• PE_ELSTER_XML_NOT_VALID (70303) Die XML-Antwort der Clearingstelle ist in einem ungültigen Format.
• PE_ELSTER_UNKNOWN_PROC (70304) Unbekanntes Verfahren: Antwort kann nicht ausgewertet werden.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_ISAM_WRITE (80704) Schreibfehler in ISAM-Datei.
• PE_ELSTER_TRANSFER (70319) In der Clearingstelle der OFD ist ein Fehler aufgetreten. Nähere Informationen mit der Funktion perfi-dia_lstb_transfer_error.
• PE_PIN_INCORRECT (81111) Die PIN ist nicht korrekt.
• PE_PIN_INVALID (81112) Die PIN enthält ungültige Zeichen.
• PE_PIN_EXPIRED (81113) Die PIN ist abgelaufen.
• PE_PIN_LOCKED (81114) Die PIN ist gesperrt.
• PE_USER_PIN_NOT_INITIALIZED (81115) Die PIN ist nicht initialisiert.
Parameter
• szElsterPassword (IN) Das Elster-Passwort.
• plFilesFound (OUT) Anzahl der gefundenen Dateien.
• plFilesReceived (OUT) Anzahl der erfolgreich empfangenen Dateien.
• lDatNum (IN) Wenn lDatNum gleich 0 ist, wird für alle Datenlieferungen, die noch keinen entgültigen Status haben, der aktuelle Status nachgefragt. Ansonsten nur für die angegebene Dateinummer.
• lHerstellerID (IN) Von der OFD vergebene HerstellerID. Zu Testzwecken kann 74931 verwendet werden.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de400
• szProductName (IN) Name Ihres Produktes.
• szProductVersion (IN) Aktuelle Versionsnummer Ihres Produktes.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Beim Fehlercode PE_ELSTER_TRANSFER (70319) läßt sich mit der Funktion perfidia_get_last_error heraus-finden, bei welcher Datei der Fehler aufgetreten ist. (Format: DATEINAME).
Diese Funktion erzeugt einen Progress.
v3.90.161 PERFIDIA Toolkit Reference
401© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_lstb_protocol_status
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_status!
Liefert den Protokollstatus bei gegebener Dateinummer und Empfänger.
long perfidia_lstb_protocol_status ( long lDatNum, const char *szEmpfaenger, long *plStatusCode, short *pnErrorCount );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_LSTB_EMPFAENGER (70302) Empfänger ungültig.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDatNum (IN) Dateinummer (000001-999999), von der ein Status abgefragt werden soll.
• szEmpfaenger (IN) “SH” = Schleswig-Holstein “HH” = Hamburg “ND” = Niedersachsen “HB” = Bremen “NW” = Nordrhein-Westfalen “HE” = Hessen “RP” = Rheinland-Pfalz “BW” = Baden-Wuerttemberg “BY” = Bayern “SL” = Saarland “BE” = Berlin “BB” = Brandenburg “MV” = Mecklenburg-Vorpommern “SN” = Sachsen “ST” = Sachsen-Anhalt “TH” = Thüringen
• plStatusCode (OUT) -1 = Noch nie ein Protokoll angefordert. 0 = Komplette Datenlieferung ist OK. 1 oder 2 = Es sind Fehler aufgetreten. Datenblock wurde gar nicht verarbeitet. (weiter mit perfidia_lstb_
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de402
protocol_error) 3 = Datenlieferung wurde noch nicht verarbeitet - bitte fordern Sie das Protokoll nochmal zu einen spä-teren Zeitpunkt an. 4 = Zu diesem Transferticket liegen keine Daten vor. 5 = Anfrage abgewiesen, der PublicKey der Datenlieferung und der Protokollanforderung stimmen nicht überein. 6 = Datenlieferung konnte gar nicht verarbeitet werden - Datenteil konnte nicht entschlüsselt werden. 7 = Es sind Fehler aufgetreten. Datenblock wurde nur teilweise verarbeitet. (weiter mit perfidia_lstb_protocol_error)
• pnErrorCount (OUT) Falls der StatusCode 1 oder 2 ist, wird ErrorCount auf die Anzahl der aufgetretenden Fehler gesetzt.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Die Fehlerinformationen zu den einzelnen Lohnsteuerbescheinigungen lassen sich mit der Funktion perfi-dia_lstb_protocol_error abfragen.
v3.90.161 PERFIDIA Toolkit Reference
403© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_lstb_protocol_status_v2
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_status_v2!
Liefert den Protokollstatus bei gegebener Dateinummer und Empfänger.
long perfidia_lstb_protocol_status_v2 ( long lDatNum, const char *szEmpfaenger, long *plStatusCode, short *pnErrorCount, long *plVerarbeiteteNds, long *plNichtVerarbeitetNds );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_LSTB_EMPFAENGER (70302) Empfänger ungültig.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDatNum (IN) Dateinummer (000001-999999), von der ein Status abgefragt werden soll.
• szEmpfaenger (IN) “SH” = Schleswig-Holstein “HH” = Hamburg “ND” = Niedersachsen “HB” = Bremen “NW” = Nordrhein-Westfalen “HE” = Hessen “RP” = Rheinland-Pfalz “BW” = Baden-Wuerttemberg “BY” = Bayern “SL” = Saarland “BE” = Berlin “BB” = Brandenburg “MV” = Mecklenburg-Vorpommern “SN” = Sachsen “ST” = Sachsen-Anhalt “TH” = Thüringen
• plStatusCode (OUT) -1 = Noch nie ein Protokoll angefordert.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de404
0 = Komplette Datenlieferung ist OK. 1 oder 2 = Es sind Fehler aufgetreten. Datenblock wurde gar nicht verarbeitet. (weiter mit perfidia_lstb_protocol_error) 3 = Datenlieferung wurde noch nicht verarbeitet - bitte fordern Sie das Protokoll nochmal zu einen spä-teren Zeitpunkt an. 4 = Zu diesem Transferticket liegen keine Daten vor. 5 = Anfrage abgewiesen, der PublicKey der Datenlieferung und der Protokollanforderung stimmen nicht überein. 6 = Datenlieferung konnte gar nicht verarbeitet werden - Datenteil konnte nicht entschlüsselt werden. 7 = Es sind Fehler aufgetreten. Datenblock wurde nur teilweise verarbeitet. (weiter mit perfidia_lstb_protocol_error)
• pnErrorCount (OUT) Falls der StatusCode 1 oder 2 ist, wird ErrorCount auf die Anzahl der aufgetretenden Fehler gesetzt.
• plVerarbeiteteNds (OUT) Anzahl der verarbeiteten Datensätze.
• plNichtVerarbeiteteNds (OUT) Anzahl der nicht verarbeiteten Datensätze.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Die Fehlerinformationen zu den einzelnen Lohnsteuerbescheinigungen lassen sich mit der Funktion perfi-dia_lstb_protocol_error abfragen.
v3.90.161 PERFIDIA Toolkit Reference
405© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_lstb_protocol_error
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_block_error!
Liefert Fehlerinformationen über einzelne Lohnsteuerbescheinigungen.
long perfidia_lstb_protocol_error ( long lDatNum, const char *szEmpfaenger, short nErrorNum, long *plLfdNr, long *plFehlerCode, char *szFehlerTextBuffer, short nFehlerTextBufferSize, char *szOrdnungsmerkmalBuffer, short nOrdnungsmerkmalBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_LSTB_EMPFAENGER (70302) Empfänger ungültig.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da ein Buffer zu klein ist.
Parameter
• lDatNum (IN) Dateinummer (000001-999999), der fehlerhaften Datenlieferung.
• szEmpfaenger (IN) Empfaenger, der fehlerhaften Datenlieferung. “SH” = Schleswig-Holstein “HH” = Hamburg “ND” = Niedersachsen “HB” = Bremen “NW” = Nordrhein-Westfalen “HE” = Hessen “RP” = Rheinland-Pfalz “BW” = Baden-Wuerttemberg “BY” = Bayern “SL” = Saarland “BE” = Berlin “BB” = Brandenburg
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de406
“MV” = Mecklenburg-Vorpommern “SN” = Sachsen “ST” = Sachsen-Anhalt “TH” = Thüringen
• nErrorNum (IN) Fortlaufende Nummer von 1 bis einschließlich ErrorCount. (ErrorCount siehe perfidia_lstb_protocol_status)
• plLfdNr (OUT) Laufende Nummer aus der Elster Protokollantwort.
• plFehlerCode (OUT) FehlerCode aus der Elster Protokollantwort.
• szFehlerTextBuffer (OUT) FehlerText aus der Elster Protokollantwort. Dieser Buffer sollte eine Länge von 2049 Zeichen haben.
• nFehlerTextBufferSize (IN) Größe des FehlerText-Buffers.
• szOrdnungsmerkmalBuffer (OUT) Ordnungsmerkmal aus der Elster Protokollantwort. Dieser Buffer sollte eine Länge von 21 Zeichen haben.
• nOrdnungsmerkmalBufferSize (IN) Größe des Ordnungsmerkmal-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Wenn bei dem Funktionsaufruf von perfidia_lstb_protocol_status der zurückgegebene Status 1 oder 2 ist, gibt der ErrorCount die Anzahl der Fehler an. Die Informationen zu den einzelnen Fehlern lassen sich dann mit dieser Funktion (perfidia_lstb_protocol_error) abfragen.
v3.90.161 PERFIDIA Toolkit Reference
407© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_lstb_transfer_error
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_transfer_error!
Liefert die Fehlerinformationen, falls bei der Übertragung von Lohnsteuerbescheinigungen oder bei einer Pro-tokollanforderung ein Fehler in der Clearingstelle auftritt.
long perfidia_lstb_transfer_error ( long lDatNum, long *plReturnCode, char *szReturnTextBuffer, short nReturnTextBufferSize, const char *szStackCodeBuffer, short nStackCodeBufferSize, char *szStackTextBuffer, short nStackTextBufferSize, char *szTransferTicketBuffer, short nTransferTicketBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe eines Buffers ist zu klein.
Parameter
• lDatNum (IN) Dateinummer, bei der ein Fehler in der Clearingstelle aufgetreten ist.
• plReturnCode (OUT) ReturnCode der Clearingstelle.
• szReturnTextBuffer (OUT) ReturnText der Clearingstelle. Der ReturnText-Buffer sollte eine Länge von 2049 Zeichen haben.
• nReturnTextBufferSize (IN) Größe des ReturnText-Buffers.
• szStackCodeBuffer (OUT) StackCode der Clearingstelle. Der StackCode-Buffer sollte eine Länge von 513 Zeichen haben.
• nStackCodeBufferSize (IN) Größe des StackCode-Buffers.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de408
• szStackTextBuffer (OUT) StackText der Clearingstelle. Der StackText-Buffer sollte eine Länge von 2049 Zeichen haben.
• nStackTextBufferSize (IN) Größe des StackText-Buffers.
• szTransferTicketBuffer (OUT) Der TransferTicket-Buffer sollte eine Größe von 65 Zeichen haben.
• nTransferTicketBufferSize (IN) Größe des TransferTicket-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
409© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_lstb_delete
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_delete!
Löscht alle Protokolleinträge zu einer bestimmten Dateinummer aus den PERFIDIA-Log-Dateien, so dass die Dateinummer erneut zum Versenden benutzt werden kann. Das erfolgreiche Löschen wird protokolliert. (siehe perfidia_elster_protocol_open)
long perfidia_lstb_delete ( long lDatNum );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDatNum (IN) Dateinummer (000001-999999)
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de410
perfidia_lstb_transfer_ticket
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_transfer_ticket!
Liefert das Transfer-Ticket zu einer übertragenen Datenlieferung.
long perfidia_lstb_transfer_ticket ( long lDatNum, char *szTransferTicketBuffer, short nTransferTicketBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da der TransferTicket-Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe des TransferTicket-Buffers ist zu klein.
Parameter
• lDatNum (IN) Dateinummer (000001-999999).
• szTransferTicketBuffer (OUT) Der TransferTicket-Buffer sollte eine Größe von 65 Zeichen haben.
• nTransferTicketBufferSize (IN) Größe des TransferTicket-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
411© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_lstb_transfer_ticket_v2
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_transfer_ticket!
Liefert das Transfer-Ticket zu einer übertragenen Datenlieferung.
long perfidia_lstb_transfer_ticket_v2 ( long lDatNum, char *szTransferTicketBuffer, short nTransferTicketBufferSize, long *plTestmerker, char *szSendDateBuffer, short nSendDateBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da der TransferTicket-Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe des TransferTicket-Buffers ist zu klein.
Parameter
• lDatNum (IN) Dateinummer (000001-999999).
• szTransferTicketBuffer (OUT) Der TransferTicket-Buffer sollte eine Größe von 65 Zeichen haben.
• nTransferTicketBufferSize (IN) Größe des TransferTicket-Buffers.
• plTestmerker (OUT) Testmerker der Datenlieferung. Hier darf ein NULL-Pointer übergeben werden.
• szSendDateBuffer (OUT) Der SendDate-Buffer sollte eine Größe von 15 Zeichen haben.
• nSendDateBufferSize (IN) Größe des SendDate-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de412
perfidia_lstb_auth_info
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_auth_info!
Liefert Informationen über das Authentifizierungsverfahren zu einer übertragenen Datenlieferung.
long perfidia_lstb_auth_info ( long lDatNum, short *pnAuthType, char *szTokenLabelBuffer, short nTokenLabelBufferSize, char *szCertCommonNameBuffer, short nCertCommonNameBufferSize, long *plCertSernr );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da der TransferTicket-Buffer zu klein ist.
Parameter
• lDatNum (IN) Dateinummer (000001-999999).
• pnAuthType (OUT) 0 = keine 1 = ElsterBasis (Software-Zertifikat) 2 = ElsterSpezial (ELSTER Stick) 3 = ElsterPlus (Signaturkarte)
• szTokenLabelBuffer (OUT) Der TokenLabel-Buffer sollte eine Größe von 33 Zeichen haben.
• nTransferTicketBufferSize (IN) Größe des TokenLabel-Buffers.
• szCertCommonNameBuffer (OUT) Der CertCommonName-Buffer sollte eine Größe von 129 Zeichen haben.
• nCertCommonNameBufferSize (IN) Größe des CertCommonName-Buffers.
• plCertSernr (OUT) Seriennummer des bei der Authentifizierung verwendeten Zertifikats.
v3.90.161 PERFIDIA Toolkit Reference
413© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de414
perfidia_lstb_highest_datnum
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_highest_datnum!
Liefert die höchste benutzte Dateinummer.
long perfidia_lstb_highest_datnum ( long *plDatNum );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• plDatNum (OUT) Dateinummer (000001-999999)
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
415© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_lstb_print
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_print!
Druckt Lohnsteuerbescheinigungen, wenn erfolgreich eine Protokollanforderung empfangen worden ist.
long perfidia_lstb_print ( long lDatNum, const char *szEmpfaenger, const char *szOrdnungsmerkmal, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_LSTB_EMPFAENGER (70302) Empfänger ungültig.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_PRINT_NO_PRINTER (81001) Keinen Drucker gefunden.
• PE_PRINT_WINSPOOL (81002) Fehler beim Speichern des Druckauftrags in der Druckerwarteschlage.
• PE_PRINT_PAGE (81003) Fehler beim Erstellen des Druckauftrags.
• PE_PRINT_USER_ABORT (81004) Druck durch Benutzer abgebrochen.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei (lb??????.dat) kann im Ordner ‘ofd/sent’ nicht gefunden werden.
Parameter
• lDatNum (IN) Dateinummer der Datenlieferung, aus der Lohnsteuerbescheinigungen gedruckt werden sollen.
• szEmpfaenger (IN) “SH” = Schleswig-Holstein “HH” = Hamburg “ND” = Niedersachsen “HB” = Bremen “NW” = Nordrhein-Westfalen
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de416
“HE” = Hessen “RP” = Rheinland-Pfalz “BW” = Baden-Wuerttemberg “BY” = Bayern “SL” = Saarland “BE” = Berlin “BB” = Brandenburg “MV” = Mecklenburg-Vorpommern “SN” = Sachsen “ST” = Sachsen-Anhalt “TH” = Thüringen “” oder NULL-Pointer (Falls kein Ordnungsmerkmal angegeben ist, werden alle Lohnsteuerbescheini-gungen gedruckt.)
• szOrdnungsmerkmal (IN) Druckt die Lohnsteuerbescheinigung mit dem angegebenen Ordnungsmerkmal. Hierbei kann bei sz-Empfaenger ein NULL-Pointer oder “” angegeben werden.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows
v3.90.161 PERFIDIA Toolkit Reference
417© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_lstb_print_v2
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_print!
Druckt Lohnsteuerbescheinigungen.
long perfidia_lstb_print_v2 ( const char *szDatFile const char *szEmpfaenger, const char *szOrdnungsmerkmal, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_LSTB_EMPFAENGER (70302) Empfänger ungültig.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_PRINT_NO_PRINTER (81001) Keinen Drucker gefunden.
• PE_PRINT_WINSPOOL (81002) Fehler beim Speichern des Druckauftrags in der Druckerwarteschlage.
• PE_PRINT_PAGE (81003) Fehler beim Erstellen des Druckauftrags.
• PE_PRINT_USER_ABORT (81004) Druck durch Benutzer abgebrochen.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann nicht gefunden werden.
Parameter
• szDatFile (IN) Datendatei nummer der Datenlieferung, aus der Lohnsteuerbescheinigungen gedruckt werden sollen.
• szEmpfaenger (IN) “SH” = Schleswig-Holstein “HH” = Hamburg “ND” = Niedersachsen “HB” = Bremen
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de418
“NW” = Nordrhein-Westfalen “HE” = Hessen “RP” = Rheinland-Pfalz “BW” = Baden-Wuerttemberg “BY” = Bayern “SL” = Saarland “BE” = Berlin “BB” = Brandenburg “MV” = Mecklenburg-Vorpommern “SN” = Sachsen “ST” = Sachsen-Anhalt “TH” = Thüringen “” oder NULL-Pointer (Falls kein Ordnungsmerkmal angegeben ist, werden alle Lohnsteuerbescheini-gungen gedruckt.)
• szOrdnungsmerkmal (IN) Druckt die Lohnsteuerbescheinigung mit dem angegebenen Ordnungsmerkmal. Hierbei kann bei sz-Empfaenger ein NULL-Pointer oder “” angegeben werden.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows
v3.90.161 PERFIDIA Toolkit Reference
419© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_lstb_pdf
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_pdf!
Druckt Lohnsteuerbescheinigungen in eine PDF-Datei.
long perfidia_lstb_pdf ( const char *szPdfFile, short nOverwrite, const char *szDatFile, const char *szEmpfaenger, const char *szOrdnungsmerkmal, );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_LSTB_EMPFAENGER (70302) Empfänger ungültig.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann nicht gefunden werden.
• PE_FILE_EXISTS (80808) Die PDF-Datei existiert bereits.
• PE_FILE_CREATE (80801) Fehler beim Erstellen der PDF-Datei.
• PE_FILE_WRITE (80806) Fehler beim Schreiben der PDF-Datei.
Parameter
• szPdfFile (IN) Dateiname der PDF-Datei.
• nOverwrite (IN) 0 = vorhandene PDF-Datei nie überschreiben 1 = vorhandene PDF-Datei immer überschreiben
• szDatFile (IN) Name der Datendatei.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de420
• szEmpfaenger (IN) “SH” = Schleswig-Holstein “HH” = Hamburg “ND” = Niedersachsen “HB” = Bremen “NW” = Nordrhein-Westfalen “HE” = Hessen “RP” = Rheinland-Pfalz “BW” = Baden-Wuerttemberg “BY” = Bayern “SL” = Saarland “BE” = Berlin “BB” = Brandenburg “MV” = Mecklenburg-Vorpommern “SN” = Sachsen “ST” = Sachsen-Anhalt “TH” = Thüringen “” oder NULL-Pointer (Falls kein Ordnungsmerkmal angegeben ist, werden alle Lohnsteuerbescheini-gungen gedruckt.)
• szOrdnungsmerkmal (IN) Druckt die Lohnsteuerbescheinigung mit dem angegebenen Ordnungsmerkmal. Hierbei kann bei sz-Empfaenger ein NULL-Pointer oder “” angegeben werden.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
421© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_lstb_print_selection
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_print_selection!
Druckt Lohnsteuerbescheinigungen, wenn erfolgreich eine Protokollanforderung empfangen worden ist.
long perfidia_lstb_print_selection ( const char *szDatFile, const char *szSelection, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_PRINT_NO_PRINTER (81001) Keinen Drucker gefunden.
• PE_PRINT_WINSPOOL (81002) Fehler beim Speichern des Druckauftrags in der Druckerwarteschlage.
• PE_PRINT_PAGE (81003) Fehler beim Erstellen des Druckauftrags.
• PE_PRINT_USER_ABORT (81004) Druck durch Benutzer abgebrochen.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei (lb??????.dat) kann im Ordner ‘ofd/sent’ nicht gefunden werden.
Parameter
• lDatNum (IN) Dateinummer der Datenlieferung, aus der Lohnsteuerbescheinigungen gedruckt werden sollen.
• szSelection (IN) In dieser Zeichenkette wird angegeben, welcheLohnsteuerbescheinigungen gedruckt werden sollen. Hierbei werden die Positionen der LStB-Sätze durch Komma getrennt hintereinander geschrieben. Die Positionen der LStB-Sätze entsprechen der Reihenfolge aus der Datendatei (lb??????.dat) und begin-nen mit 1.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de422
Beispiel: Es sollen die 2., 7., 9. und 12. Lohnsteuerbescheinigung gedruckt werden. Ergebnis: 2,7,9,12
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows
v3.90.161 PERFIDIA Toolkit Reference
423© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_lstb_print_selection_v2
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_print_selection_v2!
Druckt Lohnsteuerbescheinigungen, wenn erfolgreich eine Protokollanforderung empfangen worden ist.
long perfidia_lstb_print_selection_v2 ( const char *szDatFile, const char *szSelection, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_PRINT_NO_PRINTER (81001) Keinen Drucker gefunden.
• PE_PRINT_WINSPOOL (81002) Fehler beim Speichern des Druckauftrags in der Druckerwarteschlage.
• PE_PRINT_PAGE (81003) Fehler beim Erstellen des Druckauftrags.
• PE_PRINT_USER_ABORT (81004) Druck durch Benutzer abgebrochen.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann nicht gefunden werden.
Parameter
• plDatFile (IN) Name der Datendatei.
• szSelection (IN) In dieser Zeichenkette wird angegeben, welcheLohnsteuerbescheinigungen gedruckt werden sollen. Hierbei werden die Positionen der LStB-Sätze durch Komma getrennt hintereinander geschrieben. Die Positionen der LStB-Sätze entsprechen der Reihenfolge aus der Datendatei (lb??????.dat) und begin-nen mit 1.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de424
Beispiel: Es sollen die 2., 7., 9. und 12. Lohnsteuerbescheinigung gedruckt werden. Ergebnis: 2,7,9,12
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows
v3.90.161 PERFIDIA Toolkit Reference
425© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_lstb_pdf_selection
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_pdf_selection!
Druckt Lohnsteuerbescheinigungen in eine PDF-Datei.
long perfidia_lstb_pdf_selection ( const char *szPdfFile, short nOverwrite, const char *szDatFile, const char *szSelection, );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann nicht gefunden werden.
• PE_FILE_EXISTS (80808) Die PDF-Datei existiert bereits.
• PE_FILE_CREATE (80801) Fehler beim Erstellen der PDF-Datei.
• PE_FILE_WRITE (80806) Fehler beim Schreiben der PDF-Datei.
Parameter
• szPdfFile (IN) Dateiname der PDF-Datei.
• nOverwrite (IN) 0 = vorhandene PDF-Datei nie überschreiben 1 = vorhandene PDF-Datei immer überschreiben
• plDatFile (IN) Name der Datendatei.
• szSelection (IN) In dieser Zeichenkette wird angegeben, welcheLohnsteuerbescheinigungen gedruckt werden sollen.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de426
Hierbei werden die Positionen der LStB-Sätze durch Komma getrennt hintereinander geschrieben. Die Positionen der LStB-Sätze entsprechen der Reihenfolge aus der Datendatei (lb??????.dat) und begin-nen mit 1.
Beispiel: Es sollen die 2., 7., 9. und 12. Lohnsteuerbescheinigung gedruckt werden. Ergebnis: 2,7,9,12
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
427© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_lstb_print_hdc_prepare
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_print_hdc_prepare!
Mit den Funktionen perfidia_lstb_print_hdc_* können Lohnsteuerbescheinigungen auf einem Device-Kontext (DC-Object) gezeichnet werden. Dies kann zum einen zur Vorschau aber auch zum individuellen Druck ge-nutzt werden.
Die Funktion perfidia_lstb_print_hdc_prepare bzw. perfidia_lstb_print_hdc_prepare_selection bereitet die Ausgabe vor, mit der Funktion perfidia_lstb_print_hdc_draw werden die einzelnen Seiten gezeichnet und die Funktion perfidia_lstb_print_hdc_cleanup gibt die verwendeten Resourcen wieder frei.
long perfidia_lstb_print_hdc_prepare ( const char *szDatFile, const char *szEmpfaenger, const char *szOrdnungsmerkmal, short *pnPageCount );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NULL_POINTER (80136) Ungültiger NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_FILE_NOFILE (80802) Datendatei nicht gefunden.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann nicht gefunden werden.
Parameter
• szDatFile (IN) Name der Datendatei.
• szEmpfaenger (IN) “SH” = Schleswig-Holstein “HH” = Hamburg “ND” = Niedersachsen “HB” = Bremen “NW” = Nordrhein-Westfalen
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de428
“HE” = Hessen “RP” = Rheinland-Pfalz “BW” = Baden-Wuerttemberg “BY” = Bayern “SL” = Saarland “BE” = Berlin “BB” = Brandenburg “MV” = Mecklenburg-Vorpommern “SN” = Sachsen “ST” = Sachsen-Anhalt “TH” = Thüringen “” oder NULL-Pointer (Falls kein Ordnungsmerkmal angegeben ist, werden alle Lohnsteuerbescheini-gungen gedruckt.)
• szOrdnungsmerkmal (IN) Druckt die Lohnsteuerbescheinigung mit dem angegebenen Ordnungsmerkmal. Hierbei kann bei sz-Empfaenger ein NULL-Pointer oder “” angegeben werden.
• pnPageCount (OUT) Gibt die Anzahl der Seiten zurück.
Betriebssysteme
Microsoft Windows
v3.90.161 PERFIDIA Toolkit Reference
429© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_lstb_print_hdc_prepare_selection
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_hdc_prepare_selection!
Mit den Funktionen perfidia_lstb_print_hdc_* können Lohnsteuerbescheinigungen auf einem Device-Kontext (DC-Object) gezeichnet werden. Dies kann zum einen zur Vorschau aber auch zum individuellen Druck ge-nutzt werden.
Die Funktion perfidia_lstb_print_hdc_prepare bzw. perfidia_lstb_print_hdc_prepare_selection bereitet die Ausgabe vor, mit der Funktion perfidia_lstb_print_hdc_draw werden die einzelnen Seiten gezeichnet und die Funktion perfidia_lstb_print_hdc_cleanup gibt die verwendeten Resourcen wieder frei.
long perfidia_lstb_print_hdc_prepare_selection ( const char *szDatFile, const char *szSelection, short *pnPageCount );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NULL_POINTER (80136) Ungültiger NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_FILE_NOFILE (80802) Datendatei nicht gefunden.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann nicht gefunden werden.
Parameter
• szDatFile (IN) Name der Datendatei.
• szSelection (IN) In dieser Zeichenkette wird angegeben, welche Lohnsteuerbescheinigungen gedruckt werden sollen. Hierbei werden die Positionen der LStB-Sätze durch Komma getrennt hintereinander geschrieben. Die Positionen der LStB-Sätze entsprechen der Reihenfolge aus der Datendatei (lb??????.dat) und begin-nen mit 1.
Beispiel: Es sollen die 2., 7., 9. und 12. Lohnsteuerbescheinigung gedruckt werden. Ergebnis: 2,7,9,12
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de430
• pnPageCount (OUT) Gibt die Anzahl der Seiten zurück.
Betriebssysteme
Microsoft Windows
v3.90.161 PERFIDIA Toolkit Reference
431© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_lstb_print_hdc_cleanup
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_print_hdc_cleanup!
Gibt die verwendeten Resourcen wieder frei. Nähere Information unter der Funktion perfidia_lstb_print_hdc_prepare.
void perfidia_lstb_print_hdc_cleanup ();
Rückgabewerte
keine
Parameter
keine
Betriebssysteme
Microsoft Windows
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de432
perfidia_lstb_print_hdc_draw
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_print_hdc_draw!
Mit den Funktionen perfidia_lstb_print_hdc_* können Lohnsteuerbescheinigungen auf einem Device-Kontext (DC-Object) gezeichnet werden. Dies kann zum einen zur Vorschau aber auch zum individuellen Druck ge-nutzt werden.
Die Funktion perfidia_lstb_print_hdc_prepare bzw. perfidia_lstb_print_hdc_prepare_selection bereitet die Ausgabe vor, mit der Funktion perfidia_lstb_print_hdc_draw werden die einzelnen Seiten gezeichnet und die Funktion perfidia_lstb_print_hdc_cleanup gibt die verwendeten Resourcen wieder frei.
long perfidia_lstb_print_hdc_draw ( HDC hDC, short nPage, long lLeftMargin, long lTopMargin, double dScaleFactor );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Ungültiger NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• hDC (IN) Handle auf einen Device-Kontext (DC-Object).
• nPage (IN) Seite (1 bis nPageCount), die gezeichnet werden soll.
• lLeftMargin (IN) Linker Rand in der Einheit HIMETRICS.
• lTopMargin (IN) Oberer Rand in der Einheit HIMETRICS.
• dScaleFactor (IN) Skalierungsfaktor (Standard: 1.0).
Betriebssysteme
Microsoft Windows
v3.90.161 PERFIDIA Toolkit Reference
433© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_lsta_check
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_check!
Prüft die in der Send-Queue gespeicherten Lohnsteueranmeldungen (ASCII-Format).
long perfidia_lsta_check ( long lDatnum, long *plFilesFound, long *plFilesOK );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_EMPTY_QUEUE (80134) Die Send-Queue ist leer.
• PE_SCANSENDQ (80133) Fehler beim Scannen der Send-Queue.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_DATNUM_USED (80135) Dateinummer bereits benutzt.
• Fehlercodes von 1000 bis 3999 Diese stehen für Fehler im Dateiformat. (siehe Datensatzbeschreibung)
Parameter
• lDatnum (IN) Nummer der Datei, die geprüft werden soll. Wenn 0 angegeben ist, werden alle Dateien in der Send-Queue geprüft.
• plFilesFound (OUT) Anzahl der in der Send-Queue gefundenen Dateien
• plFilesOK (OUT) Anzahl der erfolgreich geprüften Dateien.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Bei einem Fehler im Dateiformat (Fehlercode 1000 bis 3999) läßt sich mit der Funktion perfidia_get_last_er-ror_v2 herausfinden, in welcher Datei und an welcher Stelle der Fehler aufgetreten ist.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de434
perfidia_lsta_send
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_send!
Versendet alle in der Send-Queue gespeicherten Lohnsteueranmeldungen.
long perfidia_lsta_send ( const char *szElsterPassword, long *plFilesFound, long *plFilesSent, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PASSWORD (80106) Ungültiges Passwort.
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_EMPTY_QUEUE (80134) Die Send-Queue ist leer.
• PE_SCANSENDQ (80133) Fehler beim Scannen der Send-Queue.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_WRITE (80806) Fehler beim Schreiben der Datei.
• PE_DATNUM_USED (80135) Dateinummer bereits benutzt.
• PE_LSTB_XML1 (70402) XML-Fehler 1 beim Erstellen der Daten.
• PE_LSTB_XML2 (70403) XML-Fehler 2 beim Erstellen der Daten.
• PE_LSTB_XML3 (70404) XML-Fehler 3 beim Erstellen der Daten.
• PE_LSTB_XML4 (70405) XML-Fehler 4 beim Erstellen der Daten.
• PE_LSTB_XML5 (70406) XML-Fehler 5 beim Erstellen der Daten.
• PE_LSTB_XML6 (70407) XML-Fehler 6 beim Erstellen der Daten.
v3.90.161 PERFIDIA Toolkit Reference
435© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• PE_LSTB_XML7 (70408) XML-Fehler 7 beim Erstellen der Daten.
• PE_LSTB_XML8 (70409) XML-Fehler 8 beim Erstellen der Daten.
• PE_LSTB_XML9 (70410) XML-Fehler 9 beim Erstellen der Daten.
• PE_LSTB_XML10 (70411) XML-Fehler 10 beim Erstellen der Daten.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_ISAM_WRITE (80704) Schreibfehler in ISAM-Datei.
• PE_ELSTER_CERT (70301) Fehler beim Lesen des Zertifikats.
• PE_ELSTER_PARSE_PROT (70302) Fehler beim Parsen der Protokollantwort.
• PE_ELSTER_XML_NOT_VALID (70303) Die XML-Antwort der Clearingstelle ist in einem ungültigen Format.
• PE_ELSTER_UNKNOWN_PROC (70304) Unbekanntes Verfahren: Antwort kann nicht ausgewertet werden.
• PE_ELSTER_TRANSFER (70319) In der Clearingstelle der OFD ist ein Fehler aufgetreten. Nähere Informationen mit der Funktion perfi-dia_lsta_transfer_error.
• PE_PIN_INCORRECT (81111) Die PIN ist nicht korrekt.
• PE_PIN_INVALID (81112) Die PIN enthält ungültige Zeichen.
• PE_PIN_EXPIRED (81113) Die PIN ist abgelaufen.
• PE_PIN_LOCKED (81114) Die PIN ist gesperrt.
• PE_USER_PIN_NOT_INITIALIZED (81115) Die PIN ist nicht initialisiert.3
• Fehlercodes von 1000 bis 3999 Diese stehen für Fehler im Dateiformat. (siehe Datensatzbeschreibung)
Parameter
• szElsterPassword (IN) Das Elster-Passwort.
• plFilesFound (OUT) Anzahl der in der Send-Queue gefundenen Dateien.
• plFilesSent (OUT) Anzahl der erfolgreich versendeten Dateien.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de436
Anmerkungen
Bei den Fehlercodes 1000 bis 3999 läßt sich mit der Funktion perfidia_get_last_error_v2 herausfinden, in welcher Datei und an welcher Stelle der Fehler aufgetreten ist.
Beim Fehlercode PE_ELSTER_TRANSFER (70319) läßt sich mit der Funktion perfidia_get_last_error_v2 herausfinden, bei welcher Datei der Fehler aufgetreten ist.
Diese Funktion erzeugt einen Progress.
v3.90.161 PERFIDIA Toolkit Reference
437© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_lsta_status
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_status!
Liefert den Status bei gegebener Dateinummer und Datensatz-Nummer.
long perfidia_lsta_status ( long lDatNum, short nRecordNum, long *plStatusCode, short *pnErrorCount );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDatNum (IN) Dateinummer (000001-999999), von der ein Status abgefragt werden soll.
• nRecordNum (IN) Datensatznummer (0001-9999), von der ein Status abgefragt werden soll.
• plStatusCode (OUT) 0 = Datenlieferung ist OK. 1 = Es sind Fehler aufgetreten. (weiter mit perfidia_lsta_error)
• pnErrorCount (OUT) Falls der StatusCode 1 oder 2 ist, wird ErrorCount auf die Anzahl der aufgetretenden Fehler gesetzt.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Die Fehlerinformationen zu den einzelnen Lohnsteueranmeldungen lassen sich mit der Funktion perfidia_lsta_error abfragen.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de438
perfidia_lsta_error
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_block_error!
Liefert Fehlerinformationen über eine Lohnsteueranmeldung.
long perfidia_lsta_error ( long lDatNum, short nRecordNum, short nErrorNum, long *plFehlerCode, const char *szFehlerTextBuffer, short nFehlerTextBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da ein Buffer zu klein ist.
Parameter
• lDatNum (IN) Dateinummer (000001-999999), der fehlerhaften Datenlieferung.
• nRecordNum (IN) Datensatznummer (0001-9999), der fehlerhaften Datenlieferung.
• nErrorNum (IN) Fortlaufende Nummer von 1 bis einschließlich ErrorCount. (ErrorCount siehe perfidia_lsta_status)
• plFehlerCode (OUT) FehlerCode aus der Elster Protokollantwort.
• szFehlerTextBuffer (OUT) FehlerText aus der Elster Protokollantwort. Dieser Buffer sollte eine Länge von 2049 Zeichen haben.
• nFehlerTextBufferSize (IN) Größe des FehlerText-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
439© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Anmerkungen
Wenn bei dem Funktionsaufruf von perfidia_lsta_status der zurückgegebene Status 1 ist, gibt der ErrorCount die Anzahl der Fehler an. Die Informationen zu den einzelnen Fehlern lassen sich dann mit dieser Funktion (perfidia_lsta_error) abfragen.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de440
perfidia_lsta_transfer_error
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_transfer_error!
Liefert die Fehlerinformationen, falls bei der Übertragung der Lohnsteueranmeldung ein Fehler in der Clea-ringstelle auftritt.
long perfidia_lsta_transfer_error ( long lDatNum, long *plReturnCode, char *szReturnTextBuffer, short nReturnTextBufferSize, char *szStackCodeBuffer, short nStackCodeBufferSize, char *szStackTextBuffer, short nStackTextBufferSize, char *szTransferTicketBuffer, short nTransferTicketBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe eines Buffers ist zu klein.
Parameter
• lDatNum (IN) Dateinummer (000001-999999), bei der ein Fehler in der Clearingstelle aufgetreten ist.
• plReturnCode (OUT) ReturnCode der Clearingstelle.
• szReturnTextBuffer (OUT) ReturnText der Clearingstelle. Der ReturnText-Buffer sollte eine Länge von 2049 Zeichen haben.
• nReturnTextBufferSize (IN) Größe des ReturnText-Buffers.
• szStackCodeBuffer (OUT) StackCode der Clearingstelle. Der StackCode-Buffer sollte eine Länge von 513 Zeichen haben.
• nStackCodeBufferSize (IN) Größe des StackCode-Buffers.
v3.90.161 PERFIDIA Toolkit Reference
441© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• szStackTextBuffer (OUT) StackText der Clearingstelle. Der StackText-Buffer sollte eine Länge von 2049 Zeichen haben.
• nStackTextBufferSize (IN) Größe des StackText-Buffers.
• szTransferTicketBuffer (OUT) Der TransferTicket-Buffer sollte eine Größe von 65 Zeichen haben.
• nTransferTicketBufferSize (IN) Größe des TransferTicket-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de442
perfidia_lsta_delete
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_delete!
Löscht alle Protokolleinträge zu einer bestimmten Dateinummer aus den PERFIDIA-Log-Dateien, so dass die Dateinummer erneut zum Versenden benutzt werden kann. Das erfolgreiche Löschen wird protokolliert. (siehe perfidia_elster_protocol_open)
long perfidia_lsta_delete ( long lDatNum );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDatNum (IN) Dateinummer (000001-999999)
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
443© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_lsta_highest_datnum
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_highest_datnum!
Liefert die höchste benutzte Dateinummer.
long perfidia_lsta_highest_datnum ( long *plDatNum );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• plDatNum (OUT) Dateinummer (000001-999999)
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de444
perfidia_lsta_transfer_ticket
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_transfer_ticket!
Liefert das Transfer-Ticket zu einer übertragenen Datenlieferung.
long perfidia_lsta_transfer_ticket ( long lDatNum, char *szTransferTicketBuffer, short nTransferTicketBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da der TransferTicket-Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe des TransferTicket-Buffers ist zu klein.
Parameter
• lDatNum (IN) Dateinummer (000001-999999).
• szTransferTicketBuffer (OUT) Der TransferTicket-Buffer sollte eine Größe von 65 Zeichen haben.
• nTransferTicketBufferSize (IN) Größe des TransferTicket-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
445© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_lsta_transfer_ticket_v2
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_transfer_ticket!
Liefert das Transfer-Ticket zu einer übertragenen Datenlieferung.
long perfidia_lsta_transfer_ticket_v2 ( long lDatNum, char *szTransferTicketBuffer, short nTransferTicketBufferSize, long *plTestmerker char *szSendDateBuffer, short nSendDateBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da der TransferTicket-Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe des TransferTicket-Buffers ist zu klein.
Parameter
• lDatNum (IN) Dateinummer (000001-999999).
• szTransferTicketBuffer (OUT) Der TransferTicket-Buffer sollte eine Größe von 65 Zeichen haben.
• nTransferTicketBufferSize (IN) Größe des TransferTicket-Buffers.
• plTestmerker (OUT) Testmerker der Datenlieferung. Hier darf ein NULL-Pointer übergeben werden.
• szSendDateBuffer (OUT) Der SendDate-Buffer sollte eine Größe von 15 Zeichen haben.
• nSendDateBufferSize (IN) Größe des SendDate-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de446
perfidia_lsta_auth_info
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_auth_info!
Liefert Informationen über das Authentifizierungsverfahren zu einer übertragenen Datenlieferung.
long perfidia_lsta_auth_info ( long lDatNum, short *pnAuthType, char *szTokenLabelBuffer, short nTokenLabelBufferSize, char *szCertCommonNameBuffer, short nCertCommonNameBufferSize, long *plCertSernr );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da der TransferTicket-Buffer zu klein ist.
Parameter
• lDatNum (IN) Dateinummer (000001-999999).
• pnAuthType (OUT) 0 = keine 1 = ElsterBasis (Software-Zertifikat) 2 = ElsterSpezial (ELSTER Stick) 3 = ElsterPlus (Signaturkarte)
• szTokenLabelBuffer (OUT) Der TokenLabel-Buffer sollte eine Größe von 33 Zeichen haben.
• nTransferTicketBufferSize (IN) Größe des TokenLabel-Buffers.
• szCertCommonNameBuffer (OUT) Der CertCommonName-Buffer sollte eine Größe von 129 Zeichen haben.
• nCertCommonNameBufferSize (IN) Größe des CertCommonName-Buffers.
• plCertSernr (OUT) Seriennummer des bei der Authentifizierung verwendeten Zertifikats.
v3.90.161 PERFIDIA Toolkit Reference
447© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de448
perfidia_lsta_print
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_print!
Druckt Lohnsteueranmeldungen, wenn der Versand erfolgreich war.
long perfidia_lsta_print ( long lDatNum, short nRecordNumFrom, short nRecordNumTo, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_PRINT_NO_PRINTER (81001) Keinen Drucker gefunden.
• PE_PRINT_WINSPOOL (81002) Fehler beim Speichern des Druckauftrags in der Druckerwarteschlage.
• PE_PRINT_PAGE (81003) Fehler beim Erstellen des Druckauftrags.
• PE_PRINT_USER_ABORT (81004) Druck durch Benutzer abgebrochen.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei (la??????.dat) kann im Ordner ‘ofd/sent’ nicht gefunden werden.
Parameter
• lDatNum (IN) Dateinummer der Datenlieferung, aus der Lohnsteueranmeldung gedruckt werden sollen.
• nRecordNumFrom (IN) Datensatznummer (0001-9999), bei der der Druck beginnen soll.
• nRecordNumFrom (IN) Datensatznummer (0001-9999), bei der der Druck enden soll.
• hwndParent (IN) Dieser Window-Handle muss gültig sein.
v3.90.161 PERFIDIA Toolkit Reference
449© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Betriebssysteme
Microsoft Windows
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de450
perfidia_lsta_print_v2
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_print!
Druckt Lohnsteueranmeldungen.
long perfidia_lsta_print_v2 ( const char *szDatFile, short nRecordNumFrom, short nRecordNumTo, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_PRINT_NO_PRINTER (81001) Keinen Drucker gefunden.
• PE_PRINT_WINSPOOL (81002) Fehler beim Speichern des Druckauftrags in der Druckerwarteschlage.
• PE_PRINT_PAGE (81003) Fehler beim Erstellen des Druckauftrags.
• PE_PRINT_USER_ABORT (81004) Druck durch Benutzer abgebrochen.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_EXISTS (80808) Die Datendatei (la??????.dat) kann im Ordner ‘ofd/sent’ nicht gefunden werden.
Parameter
• lDatFile (IN) Name der Datendatei.
• nRecordNumFrom (IN) Datensatznummer (0001-9999), bei der der Druck beginnen soll.
• nRecordNumFrom (IN) Datensatznummer (0001-9999), bei der der Druck enden soll.
• hwndParent (IN) Dieser Window-Handle muss gültig sein.
v3.90.161 PERFIDIA Toolkit Reference
451© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Betriebssysteme
Microsoft Windows
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de452
perfidia_lsta_pdf
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_pdf!
Druckt Lohnsteueranmeldungen in eine PDF-Datei.
long perfidia_lsta_pdf ( const char *szPdfFile, short nOverwrite, const char *szDatFile, short nRecordNumFrom, short nRecordNumTo, );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann nicht gefunden werden.
• PE_FILE_EXISTS (80808) Die PDF-Datei existiert bereits.
• PE_FILE_CREATE (80801) Fehler beim Erstellen der PDF-Datei.
• PE_FILE_WRITE (80806) Fehler beim Schreiben der PDF-Datei.
Parameter
• szPdfFile (IN) Dateiname der PDF-Datei.
• nOverwrite (IN) 0 = vorhandene PDF-Datei nie überschreiben 1 = vorhandene PDF-Datei immer überschreiben
• szDatFile (IN) Name der Datendatei.
• nRecordNumFrom (IN) Datensatznummer (0001-9999), bei der der Druck beginnen soll.
v3.90.161 PERFIDIA Toolkit Reference
453© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• nRecordNumFrom (IN) Datensatznummer (0001-9999), bei der der Druck enden soll.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de454
perfidia_lsta_print_hdc_prepare
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_print_hdc_prepare!
Mit den Funktionen perfidia_lsta_print_hdc_* können Lohnsteueranmeldungen auf einem Device-Kontext (Hdc-Object) gezeichnet werden. Dies kann zum einen zur Vorschau aber auch zum individuellen Druck ge-nutzt werden.
Die Funktion perfidia_lsta_print_hdc_prepare bereitet die Ausgabe vor, mit der Funktion perfidia_lsta_print_hdc_draw werden die einzelnen Seiten gezeichnet und die Funktion perfidia_lsta_print_hdc_cleanup gibt die verwendeten Resourcen wieder frei.
long perfidia_lsta_print_hdc_prepare ( const char *szDatFile, short nRecordNumFrom, short nRecordNumTo, short *pnPageCount );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NULL_POINTER (80136) Ungültiger NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_FILE_NOFILE (80802) Datendatei nicht gefunden.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
Parameter
• szDatFile (IN) Name der Datendatei.
• nRecordNumFrom (IN) Datensatznummer (0001-9999), bei der die Ausgabe beginnen soll.
• nRecordNumTo (IN) Datensatznummer (0001-9999), bei der die Ausgabe enden soll.
• pnPageCount (OUT) Gibt die Anzahl der Seiten zurück.
v3.90.161 PERFIDIA Toolkit Reference
455© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Betriebssysteme
Microsoft Windows
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de456
perfidia_lsta_print_hdc_cleanup
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_hdc_cleanup!
Gibt die verwendeten Resourcen wieder frei. Nähere Information unter der Funktion perfidia_lsta_print_hdc_prepare.
void perfidia_lsta_print_hdc_cleanup ();
Rückgabewerte
keine
Parameter
keine
Betriebssysteme
Microsoft Windows
v3.90.161 PERFIDIA Toolkit Reference
457© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_lsta_print_hdc_draw
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_hdc_draw!
Mit den Funktionen perfidia_lsta_print_hdc_* können Lohnsteueranmeldungen auf einem Device-Kontext (DC-Object) gezeichnet werden. Dies kann zum einen zur Vorschau aber auch zum individuellen Druck ge-nutzt werden.
Die Funktion perfidia_lsta_print_hdc_prepare bereitet die Ausgabe vor, mit der Funktion perfidia_lsta_print_hdc_draw werden die einzelnen Seiten gezeichnet und die Funktion perfidia_lsta_print_hdc_cleanup gibt die verwendeten Resourcen wieder frei.
long perfidia_lsta_print_hdc_draw ( HDC hDC, short nPage, long lLeftMargin, long lTopMargin, double dScaleFactor );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Ungültiger NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• hDC (IN) Handle auf einen Device-Kontext (DC-Object).
• nPage (IN) Seite (1 bis nPageCount), die gezeichnet werden soll.
• lLeftMargin (IN) Linker Rand in der Einheit HIMETRICS.
• lTopMargin (IN) Oberer Rand in der Einheit HIMETRICS.
• dScaleFactor (IN) Skalierungsfaktor (Standard: 1.0).
Betriebssysteme
Microsoft Windows
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de458
perfidia_usta_check
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_check!
Prüft die in der Send-Queue gespeicherten Umsatzsteuer-Voranmeldungen (ASCII-Format).
long perfidia_usta_check ( long lDatnum, long *plFilesFound, long *plFilesOK );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_EMPTY_QUEUE (80134) Die Send-Queue ist leer.
• PE_SCANSENDQ (80133) Fehler beim Scannen der Send-Queue.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei
• PE_DATNUM_USED (80135) Dateinummer bereits benutzt.
• Fehlercodes von 1000 bis 3999 Diese stehen für Fehler im Dateiformat. (siehe Datensatzbeschreibung)
Parameter
• lDatnum (IN) Nummer der Datei, die geprüft werden soll. Wenn 0 angegeben ist, werden alle Dateien in der Send-Queue geprüft.
• plFilesFound (OUT) Anzahl der in der Send-Queue gefundenen Dateien.
• plFilesOK (OUT) Anzahl der erfolgreich geprüften Dateien.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Bei einem Fehler im Dateiformat (Fehlercode 1000 bis 3999) läßt sich mit der Funktion perfidia_get_last_er-ror_v2 herausfinden, in welcher Datei und an welcher Stelle der Fehler aufgetreten ist.
v3.90.161 PERFIDIA Toolkit Reference
459© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_usta_send
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_send!
Versendet alle in der Send-Queue gespeicherten Umsatzsteuervoranmeldungen, Dauerfristverlängerungen und Umsatzsteuersondervorauszahlungen.
long perfidia_usta_send ( const char *szElsterPassword, long *plFilesFound, long *plFilesSent, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_PASSWORD (80106) Ungültiges Passwort.
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_EMPTY_QUEUE (80134) Die Send-Queue ist leer.
• PE_SCANSENDQ (80133) Fehler beim Scannen der Send-Queue.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_WRITE (80806) Fehler beim Schreiben der Datei.
• PE_DATNUM_USED (80135) Dateinummer bereits benutzt.
• PE_LSTB_XML1 (70402) XML-Fehler 1 beim Erstellen der Daten.
• PE_LSTB_XML2 (70403) XML-Fehler 2 beim Erstellen der Daten.
• PE_LSTB_XML3 (70404) XML-Fehler 3 beim Erstellen der Daten.
• PE_LSTB_XML4 (70405) XML-Fehler 4 beim Erstellen der Daten.
• PE_LSTB_XML5 (70406) XML-Fehler 5 beim Erstellen der Daten.
• PE_LSTB_XML6 (70407) XML-Fehler 6 beim Erstellen der Daten.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de460
• PE_LSTB_XML7 (70408) XML-Fehler 7 beim Erstellen der Daten.
• PE_LSTB_XML8 (70409) XML-Fehler 8 beim Erstellen der Daten.
• PE_LSTB_XML9 (70410) XML-Fehler 9 beim Erstellen der Daten.
• PE_LSTB_XML10 (70411) XML-Fehler 10 beim Erstellen der Daten.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_ISAM_WRITE (80704) Schreibfehler in ISAM-Datei.
• PE_ELSTER_CERT (70301) Fehler beim Lesen des Zertifikats.
• PE_ELSTER_PARSE_PROT (70302) Fehler beim Parsen der Protokollantwort.
• PE_ELSTER_XML_NOT_VALID (70303) Die XML-Antwort der Clearingstelle ist in einem ungültigen Format.
• PE_ELSTER_UNKNOWN_PROC (70304) Unbekanntes Verfahren: Antwort kann nicht ausgewertet werden.
• PE_ELSTER_TRANSFER (70319) In der Clearingstelle der OFD ist ein Fehler aufgetreten. Nähere Informationen mit der Funktion perfi-dia_usta_transfer_error.
• PE_PIN_INCORRECT (81111) Die PIN ist nicht korrekt.
• PE_PIN_INVALID (81112) Die PIN enthält ungültige Zeichen.
• PE_PIN_EXPIRED (81113) Die PIN ist abgelaufen.
• PE_PIN_LOCKED (81114) Die PIN ist gesperrt.
• PE_USER_PIN_NOT_INITIALIZED (81115) Die PIN ist nicht initialisiert.
• Fehlercodes von 1000 bis 3999 Diese stehen für Fehler im Dateiformat. (siehe Datensatzbeschreibung)
Parameter
• szElsterPassword (IN) Das Elster-Passwort.
• plFilesFound (OUT) Anzahl der in der Send-Queue gefundenen Dateien.
• plFilesSent (OUT) Anzahl der erfolgreich versendeten Dateien.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
461© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Anmerkungen
Bei den Fehlercodes 1000 bis 3999 läßt sich mit der Funktion perfidia_get_last_error_v2 herausfinden, in welcher Datei und an welcher Stelle der Fehler aufgetreten ist.
Beim Fehlercode PE_ELSTER_TRANSFER (70319) läßt sich mit der Funktion perfidia_get_last_error_v2 herausfinden, bei welcher Datei der Fehler aufgetreten ist.
Diese Funktion erzeugt einen Progress.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de462
perfidia_usta_status
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_status!
Liefert den Status bei gegebener Dateinummer und Datensatz-Nummer.
long perfidia_usta_status ( long lDatNum, short nRecordNum, long *plStatusCode, short *pnErrorCount );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDatNum (IN) Dateinummer (000001-999999), von der ein Status abgefragt werden soll.
• nRecordNum (IN) Datensatznummer (0001-9999), von der ein Status abgefragt werden soll.
• plStatusCode (OUT) 0 = Datenlieferung ist OK. 1 = Es sind Fehler aufgetreten. (weiter mit perfidia_usta_error)
• pnErrorCount (OUT) Falls der StatusCode 1 oder 2 ist, wird ErrorCount auf die Anzahl der aufgetretenden Fehler gesetzt.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Die Fehlerinformationen zu den einzelnen Datensätzen lassen sich mit der Funktion perfidia_usta_error abfra-gen.
v3.90.161 PERFIDIA Toolkit Reference
463© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_usta_error
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_block_error!
Liefert Fehlerinformationen über eine Umsatzsteuervoranmeldung, Dauerfristverlängerung oder Umsatzsteu-ersondervorauszahlung.
long perfidia_usta_error ( long lDatNum, short nRecordNum, short nErrorNum, long *plFehlerCode, char *szFehlerTextBuffer, short nFehlerTextBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da ein Buffer zu klein ist.
Parameter
• lDatNum (IN) Dateinummer (000001-999999), der fehlerhaften Datenlieferung.
• nRecordNum (IN) Datensatznummer (0001-9999), der fehlerhaften Datenlieferung.
• nErrorNum (IN) Fortlaufende Nummer von 1 bis einschließlich ErrorCount. (ErrorCount siehe perfidia_usta_status)
• plFehlerCode (OUT) FehlerCode aus der Elster Protokollantwort.
• szFehlerTextBuffer (OUT) FehlerText aus der Elster Protokollantwort. Dieser Buffer sollte eine Länge von 2049 Zeichen haben.
• nFehlerTextBufferSize (IN) Größe des FehlerText-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de464
Anmerkungen
Wenn bei dem Funktionsaufruf von perfidia_usta_status der zurückgegebene Status 1 ist, gibt der ErrorCount die Anzahl der Fehler an. Die Informationen zu den einzelnen Fehlern lassen sich dann mit dieser Funktion (perfidia_usta_error) abfragen.
v3.90.161 PERFIDIA Toolkit Reference
465© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_usta_transfer_error
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_transfer_error!
Liefert die Fehlerinformationen, falls bei der Übertragung der Umsatzsteuervoranmeldung, Dauerfristverlänge-rung oder Umsatzsteuersondervorauszahlung ein Fehler in der Clearingstelle auftritt.
long perfidia_usta_transfer_error ( long lDatNum, long *plReturnCode, char *szReturnTextBuffer, short nReturnTextBufferSize, char *szStackCodeBuffer, short nStackCodeBufferSize, char *szStackTextBuffer, short nStackTextBufferSize, char *szTransferTicketBuffer, short nTransferTicketBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe eines Buffers ist zu klein.
Parameter
• lDatNum (IN) Dateinummer (000001-999999), bei der ein Fehler in der Clearingstelle aufgetreten ist.
• plReturnCode (OUT) ReturnCode der Clearingstelle.
• szReturnTextBuffer (OUT) ReturnText der Clearingstelle. Der ReturnText-Buffer sollte eine Länge von 2049 Zeichen haben.
• nReturnTextBufferSize (IN) Größe des ReturnText-Buffers.
• szStackCodeBuffer (OUT) StackCode der Clearingstelle. Der StackCode-Buffer sollte eine Länge von 513 Zeichen haben.
• nStackCodeBufferSize (IN) Größe des StackCode-Buffers.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de466
• szStackTextBuffer (OUT) StackText der Clearingstelle. Der StackText-Buffer sollte eine Länge von 2049 Zeichen haben.
• nStackTextBufferSize (IN) Größe des StackText-Buffers.
• szTransferTicketBuffer (OUT) Der TransferTicket-Buffer sollte eine Größe von 65 Zeichen haben.
• nTransferTicketBufferSize (IN) Größe des TransferTicket-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
467© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_usta_delete
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_delete!
Löscht alle Protokolleinträge zu einer bestimmten Dateinummer aus den PERFIDIA-Log-Dateien, so dass die Dateinummer erneut zum Versenden benutzt werden kann. Das erfolgreiche Löschen wird protokolliert. (siehe perfidia_elster_protocol_open)
long perfidia_usta_delete ( long lDatNum );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDatNum (IN) Dateinummer (000001-999999)
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de468
perfidia_usta_highest_datnum
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_highest_datnum!
Liefert die höchste benutzte Dateinummer.
long perfidia_usta_highest_datnum ( long *plDatNum );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• plDatNum (OUT) Dateinummer (000001-999999)
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
469© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_usta_transfer_ticket
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_transfer_ticket!
Liefert das Transfer-Ticket zu einer übertragenen Datenlieferung.
long perfidia_usta_transfer_ticket ( long lDatNum, char *szTransferTicketBuffer, short nTransferTicketBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da der TransferTicket-Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe des TransferTicket-Buffers ist zu klein.
Parameter
• lDatNum (IN) Dateinummer (000001-999999).
• szTransferTicketBuffer (OUT) Der TransferTicket-Buffer sollte eine Größe von 65 Zeichen haben.
• nTransferTicketBufferSize (IN) Größe des TransferTicket-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de470
perfidia_usta_transfer_ticket_v2
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_transfer_ticket!
Liefert das Transfer-Ticket zu einer übertragenen Datenlieferung.
long perfidia_usta_transfer_ticket_v2 ( long lDatNum, char *szTransferTicketBuffer, short nTransferTicketBufferSize, long *plTestmerker char *szSendDateBuffer, short nSendDateBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da der TransferTicket-Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe des TransferTicket-Buffers ist zu klein.
Parameter
• lDatNum (IN) Dateinummer (000001-999999).
• szTransferTicketBuffer (OUT) Der TransferTicket-Buffer sollte eine Größe von 65 Zeichen haben.
• nTransferTicketBufferSize (IN) Größe des TransferTicket-Buffers.
• plTestmerker (OUT) Testmerker der Datenlieferung. Hier darf ein NULL-Pointer übergeben werden.
• szSendDateBuffer (OUT) Der SendDate-Buffer sollte eine Größe von 15 Zeichen haben.
• nSendDateBufferSize (IN) Größe des SendDate-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
471© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_usta_auth_info
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_auth_info!
Liefert Informationen über das Authentifizierungsverfahren zu einer übertragenen Datenlieferung.
long perfidia_usta_auth_info ( long lDatNum, short *pnAuthType, char *szTokenLabelBuffer, short nTokenLabelBufferSize, char *szCertCommonNameBuffer, short nCertCommonNameBufferSize, long *plCertSernr );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da der TransferTicket-Buffer zu klein ist.
Parameter
• lDatNum (IN) Dateinummer (000001-999999).
• pnAuthType (OUT) 0 = keine 1 = ElsterBasis (Software-Zertifikat) 2 = ElsterSpezial (ELSTER Stick) 3 = ElsterPlus (Signaturkarte)
• szTokenLabelBuffer (OUT) Der TokenLabel-Buffer sollte eine Größe von 33 Zeichen haben.
• nTransferTicketBufferSize (IN) Größe des TokenLabel-Buffers.
• szCertCommonNameBuffer (OUT) Der CertCommonName-Buffer sollte eine Größe von 129 Zeichen haben.
• nCertCommonNameBufferSize (IN) Größe des CertCommonName-Buffers.
• plCertSernr (OUT) Seriennummer des bei der Authentifizierung verwendeten Zertifikats.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de472
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
473© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_usta_print
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_print!
Druckt Umsatzsteuervoranmeldungen, wenn der Versand erfolgreich war.
long perfidia_usta_print ( long lDatNum, short nRecordNumFrom, short nRecordNumTo, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_PRINT_NO_PRINTER (81001) Keinen Drucker gefunden.
• PE_PRINT_WINSPOOL (81002) Fehler beim Speichern des Druckauftrags in der Druckerwarteschlage.
• PE_PRINT_PAGE (81003) Fehler beim Erstellen des Druckauftrags.
• PE_PRINT_USER_ABORT (81004) Druck durch Benutzer abgebrochen.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei (ua??????.dat) kann im Ordner ‘ofd/sent’ nicht gefunden werden.
Parameter
• lDatNum (IN) Dateinummer der Datenlieferung, aus der Umsatzsteuervoranmeldung gedruckt werden sollen.
• nRecordNumFrom (IN) Datensatznummer (0001-9999), bei der der Druck beginnen soll.
• nRecordNumFrom (IN) Datensatznummer (0001-9999), bei der der Druck enden soll.
• hwndParent (IN) Dieser Window-Handle muss gültig sein.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de474
Betriebssysteme
Microsoft Windows
v3.90.161 PERFIDIA Toolkit Reference
475© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_usta_print_v2
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_print!
Druckt Umsatzsteuervoranmeldungen.
long perfidia_usta_print ( long lDatNum, short nRecordNumFrom, short nRecordNumTo, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_PRINT_NO_PRINTER (81001) Keinen Drucker gefunden.
• PE_PRINT_WINSPOOL (81002) Fehler beim Speichern des Druckauftrags in der Druckerwarteschlage.
• PE_PRINT_PAGE (81003) Fehler beim Erstellen des Druckauftrags.
• PE_PRINT_USER_ABORT (81004) Druck durch Benutzer abgebrochen.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann nicht gefunden werden.
Parameter
• lDatNum (IN) Dateinummer der Datenlieferung, aus der die Umsatzsteuervoranmeldung gedruckt werden sollen.
• nRecordNumFrom (IN) Datensatznummer (0001-9999), bei der der Druck beginnen soll.
• nRecordNumTo (IN) Datensatznummer (0001-9999), bei der der Druck enden soll.
• hwndParent (IN) Dieser Window-Handle muss gültig sein.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de476
Betriebssysteme
Microsoft Windows
v3.90.161 PERFIDIA Toolkit Reference
477© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_usta_pdf
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_pdf!
Druckt Umsatzsteuervoranmeldungen in eine PDF-Datei.
long perfidia_usta_pdf ( const char *szPdfFile, short nOverwrite, const char *szDatFile, short nRecordNumFrom, short nRecordNumTo, );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_FILE_NOFILE (80802) Die Datendatei kann nicht gefunden werden.
• PE_FILE_EXISTS (80808) Die PDF-Datei existiert bereits.
• PE_FILE_CREATE (80801) Fehler beim Erstellen der PDF-Datei.
• PE_FILE_WRITE (80806) Fehler beim Schreiben der PDF-Datei.
Parameter
• szPdfFile (IN) Dateiname der PDF-Datei.
• nOverwrite (IN) 0 = vorhandene PDF-Datei nie überschreiben 1 = vorhandene PDF-Datei immer überschreiben
• szDatFile (IN) Name der Datendatei.
• nRecordNumFrom (IN) Datensatznummer (0001-9999), bei der der Druck beginnen soll.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de478
• nRecordNumFrom (IN) Datensatznummer (0001-9999), bei der der Druck enden soll.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
479© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_usta_print_hdc_prepare
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_hdc_prepare!
Mit den Funktionen perfidia_usta_print_hdc_* können Umsatzsteuervoranmeldungen auf einem Device-Kon-text (DC-Object) gezeichnet werden. Dies kann zum einen zur Vorschau aber auch zum individuellen Druck genutzt werden.
Die Funktion perfidia_usta_print_hdc_prepare bereitet die Ausgabe vor, mit der Funktion perfidia_usta_print_hdc_draw werden die einzelnen Seiten gezeichnet und die Funktion perfidia_usta_print_hdc_cleanup gibt die verwendeten Resourcen wieder frei.
long perfidia_usta_print_hdc_prepare ( const char *szDatFile, short nRecordNumFrom, short nRecordNumTo, short *pnPageCount );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NULL_POINTER (80136) Ungültiger NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_FILE_NOFILE (80802) Datendatei nicht gefunden.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
Parameter
• szDatFile (IN) Name der Datendatei.
• nRecordNumFrom (IN) Datensatznummer (0001-9999), bei der die Ausgabe beginnen soll.
• nRecordNumTo (IN) Datensatznummer (0001-9999), bei der die Ausgabe enden soll.
• pnPageCount (OUT) Gibt die Anzahl der Seiten zurück.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de480
Betriebssysteme
Microsoft Windows
v3.90.161 PERFIDIA Toolkit Reference
481© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_usta_print_hdc_cleanup
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_hdc_cleanup!
Gibt die verwendeten Resourcen wieder frei. Nähere Information unter der Funktion perfidia_usta_print_hdc_prepare.
void perfidia_usta_print_hdc_cleanup ();
Rückgabewerte
keine
Parameter
keine
Betriebssysteme
Microsoft Windows
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de482
perfidia_usta_print_hdc_draw
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_hdc_draw!
Mit den Funktionen perfidia_usta_print_hdc_* können Umsatzsteuervoranmeldungen auf einem Device-Kon-text (DC-Object) gezeichnet werden. Dies kann zum einen zur Vorschau aber auch zum individuellen Druck genutzt werden.
Die Funktion perfidia_usta_print_hdc_prepare bereitet die Ausgabe vor, mit der Funktion perfidia_usta_print_hdc_draw werden die einzelnen Seiten gezeichnet und die Funktion perfidia_usta_print_hdc_cleanup gibt die verwendeten Resourcen wieder frei.
long perfidia_usta_print_hdc_draw ( HDC hDC, short nPage, long lLeftMargin, long lTopMargin, double dScaleFactor );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Ungültiger NULL-Pointer.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• hDC (IN) Handle auf einen Device-Kontext (DC-Object).
• nPage (IN) Seite (1 bis nPageCount), die gezeichnet werden soll.
• lLeftMargin (IN) Linker Rand in der Einheit HIMETRICS.
• lTopMargin (IN) Oberer Rand in der Einheit HIMETRICS.
• dScaleFactor (IN) Skalierungsfaktor (Standard: 1.0).
Betriebssysteme
Microsoft Windows
v3.90.161 PERFIDIA Toolkit Reference
483© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_protocol_open
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_protocol_open_v2!
Öffnet die Protokolldatei für Elster.
long perfidia_elster_protocol_open ( short nYear, short nMonth, short nDay, short nAction, short nCompletion );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
Parameter
• nYear (IN) Jahr, ab dem Protokolleinträge gelesen werden.
• nMonth (IN) Monat (1-12), ab dem Protokolleinträge gelesen werden.
• nDay (IN) Tag (1-31), ab dem Protokolleinträge gelesen werden.
• nAction (IN) 0 = alle Protokolleinträge 1 = Zertifikat erstellen 2 = Passwort ändern 10 = Lohnsteuerbescheinigungen versenden 11 = Protokollanforderungen für Lohnsteuerbescheinigungen 12 = LStB-Protokolleinträge gelöscht 20 = Lohnsteueranmeldungen versenden 21 = LStA-Protokolleinträge gelöscht 30 = Umsatzsteuervoranmeldungen versenden 31 = UStVA-Protokolleinträge gelöscht 110 = Lohnsteuerbescheinigungen über direkte XML-Kommunikation versenden 111 = Protokollanforderungen für Lohnsteuerbescheinigungen über direkte XML-Kommunikation 120 = Lohnsteueranmeldungen über direkte XML-Kommunikation versenden 130 = Umsatzsteuervoranmeldungen über direkte XML-Kommunikation versenden
• nCompletion (IN) 0 = alle Protokolleinträge 1 = nur Protokolleinträge mit ErrorCode ungleich 0 2 = nur Protokolleinträge mit ErrorCode gleich 0
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de484
Anmerkungen
Nach dem Lesen der Protokolleinträge mit der Funktion perfidia_elster_protocol_next muß die Datei mit der Funktion perfidia_elster_protocol_close geschlossen werden.
v3.90.161 PERFIDIA Toolkit Reference
485© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_protocol_next
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_protocol_next_v2!
Nach einem erfolgreichen Aufruf der Funktion perfidia_elster_protocol_open liefert diese Funktion solange den nächsten Protokolleintrag, bis sie mit PE_NO_DATA zurückkommt.
long perfidia_elster_protocol_next ( char *szDateTimeBuffer, short nDateTimeBufferSize, short *pnAction, long *plErrorCode, long *plDatNum, char *szFilenameBuffer, short nFilenameBufferSize, char *szIPAddressBuffer, short nIPAddressBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe eines Buffers ist zu klein.
Parameter
• szDateTimeBuffer (OUT) DateTime-Buffer sollte eine Größe von 15 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMD-Dhhmmss.
• nDateTimeBufferSize (IN) Größe des DateTime-Buffers.
• pnAction (OUT) 10 = Datenversand 11 = Datenempfang 12 = Quittung 13 = Datenbank-Einträge der Send- und Antwortdaten gelöscht 14 = Datenbank-Einträge der Antwortdaten gelöscht Wenn der Parameter ‚plDataType‘ den Wert 0 hat, hat der Parameter ‚pnAction‘ folgende Bedeutung: 1 = Zertifikat erstellt 3 = Passwortänderung
• plErrorCode (OUT) 0 = kein Fehler, sonst ErrorCode
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de486
• plDatNum (OUT) Dateinummer, wenn Action gleich 10, 11, 30 oder 40.
• szFilenameBuffer (OUT) Dateiname, wenn Action gleich 10, 11, 30, 40, 110 oder 111. Der Filename-Buffer sollte eine Größe von 65 Zeichen haben.
• nFilenameBufferSize (IN) Größe des Filename-Buffers.
• szIPAddressBuffer (OUT) IP-Adresse der Elster-Clearingstelle, wenn Action gleich 10, 11, 30, 40, 110 oder 111. Der IPAddress-Buffer sollte eine Größe von 65 Zeichen haben.
• nIPAddressBufferSize (IN) Größe des IPAddress-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
487© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_recv_next
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_recv_next_v2!
Nach einem erfolgreichen Aufruf der Funktion perfidia_elster_recv_open_statuscode liefert diese Funktion solange den nächsten Protokolleintrag, bis sie mit PE_NO_DATA zurückkommt.
long perfidia_elster_recv_next ( char *szDateTimeBuffer, short nDateTimeBufferSize, long *plDataType, short *pnTestmerker, long *plHiDatNumSend, unsigned long *pulLowDatNumSend, short *pnStatusCode, long *plDatNumRecv, short *pnNutzdatenBlockCount, short *pnElsterInfoCount, long *plTotalErrorCount );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe eines Buffers ist zu klein.
Parameter
• szDateTimeBuffer (OUT) DateTime-Buffer sollte eine Größe von 15 Zeichen haben. Die Rückgabe ist in dem Format JJJJMMD-Dhhmmss.
• nDateTimeBufferSize (IN) Größe des DateTime-Buffers.
• plDataType (OUT) 0x0001 (1) = Lohnsteuerbescheinigungen [?LSTB0_*.*] 0x0002 (2) = Lohnsteueranmeldungen [?LSTA0_*.*] 0x0004 (4) = Umsatzsteuervoranmeldungen [?USTA0_*.*] 0x0008 (8) = ELO2-Anmeldungen [?ELAN0_*.*] 0x0010 (16) = ELO2-Abmeldungen [?ELAB0_*.*] 0x0020 (32) = ELO2-Ummeldungen [?ELUM0_*.*] 0x0040 (64) = ELO2-Anfrage [?ELAF0_*.*]
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de488
• pnTestmerker (OUT) 0 = Echtdaten 1 = Testdaten
• plHiDatNumSend (OUT) Dateinummer, wenn vorhanden.
• pulLowDatNumSend (OUT) Dateinummer, wenn vorhanden.
• pnStatusCode (OUT) 0 = keine Fehler, nicht quittiert 1 = Datenfehler, nicht quittiert 2 = Übertragungsfehler, nicht quittiert 10 = keine Fehler, quittiert 11 = Datenfehler, quittiert 12 = Übertragungsfehler, quittiert
• plDatNumRecv (OUT) Dateinummer, wenn vorhanden.
• pnNutzdatenBlockCount (OUT) Anzahl der enthaltenen Nutzdatenblöcke.
• pElsterInfoCount(OUT) Anzahl der enthaltenen ELSTER-Info-Tags, sofern vorhanden Diese können mit der Funktione perfi-dia_elster_info_v2 ausgelesen werden.
• plTotalErrorCount (OUT) Anzahl der enthaltenen Fehler.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
489© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_elster_info
Verwenden Sie in Neuentwicklungen die Funktion perfidia_elster_info_v2!
Mit dieser Funktion läßt sich der Inhalt des Tags ‚ElsterInfo‘ aus dem zurückgelieferten Transfer- bzw. Nutzda-ten-Header ermitteln.
long perfidia_elster_info ( short nDataType, long lDatNum, short nInfoNum, char *szInfoBuffer, short nInfoBufferSize, short *pnHeader, long *plReserved );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe eines Buffers ist zu klein.
Parameter
• nDataType (IN) 1 = LStB 2 = LStA 3 = UStVA
• lDatNum (IN) Dateinummer, für die der Info-Text ermittelt werden soll.
• nInfoNum (IN) Bei einer Datenlieferung können mehrere ‚ElsterInfo‘-Tags geliefert werden. Jeder Tags wird einer auf-steigenden Nummer (InfoNum) beginnend mit 1 zugeordnet.
• szInfoBuffer (OUT) Der Info-Buffer sollte eine Größe von 2049 Zeichen haben.
• nInfoBufferSize (IN) Größe des Info-Buffers.
• pnHeader (OUT) Gibt den Header an, in dem der ElsterInfo-Tag mitgeliefert wurde. 0=TransferHeader, 1=NutzdatenHeader
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de490
• plReserved (OUT) Bei diesem Parameter muss ein NULL-Pointer übergeben werden.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
491© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_statis_lve_check
Verwenden Sie in Neuentwicklungen die Funktion perfidia_statis_check!
Prüft die in der Send-Queue gespeicherten LVE-Dateien (ASCII-Format).
long perfidia_statis_lve_check( long lDatnum, long *plFilesFound, long *plFilesOK );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_EMPTY_QUEUE (80134) Die Send-Queue ist leer.
• PE_SCANSENDQ (80133) Fehler beim Scannen der Send-Queue.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_DATNUM_USED (80135) Dateinummer bereits benutzt.
• Fehlercodes von 1000 bis 3999 Diese stehen für Fehler im Dateiformat. (siehe Datensatzbeschreibung)
Parameter
• lDatnum (IN) Nummer der Datei, die geprüft werden soll. Wenn 0 angegeben ist, werden alle Dateien in der Send-Queue geprüft.
• plFilesFound (OUT) Anzahl der in der Send-Queue gefundenen Dateien.
• plFilesOK (OUT) Anzahl der erfolgreich geprüften Dateien.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Bei einem Fehler im Dateiformat (Fehlercode 1000 bis 3999) läßt sich mit der Funktion perfidia_get_last_er-ror_v2 herausfinden, in welcher Datei und an welcher Stelle der Fehler aufgetreten ist.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de492
perfidia_statis_lve_send
Verwenden Sie in Neuentwicklungen die Funktion perfidia_statis_send!
Versendet alle in der Send-Queue gespeicherten LVE-Dateien.
long perfidia_statis_lve_send ( long *lDatNum, const char *szStatisUser, const char *szStatisPassword, long *plFilesFound, long *plFilesSent HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_LOGIN (80141) Ungültiger Benutzername und/oder ungültiges Passwort.
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_EMPTY_QUEUE (80134) Die Send-Queue ist leer.
• PE_SCANSENDQ (80133) Fehler beim Scannen der Send-Queue.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80803) Fehler beim Lesen der Datei.
• PE_FILE_WRITE (80806) Fehler beim Schreiben der Datei.
• PE_DATNUM_USED (80135) Dateinummer bereits benutzt.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_ISAM_WRITE (80704) Schreibfehler in ISAM-Datei.
• PE_STATIS_TRANSFER (71010) In der Clearingstelle ist ein Fehler aufgetreten. Nähere Informationen mit der Funktion perfidia_sta-tis_lve_transfer_error.
• PE_STATIS_XML1 (71001) XML-Fehler 1 beim Erstellen der Daten.
v3.90.161 PERFIDIA Toolkit Reference
493© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• PE_STATIS_XML2 (71002) XML-Fehler 2 beim Erstellen der Daten.
• PE_STATIS_XML3 (71003) XML-Fehler 3 beim Erstellen der Daten.
• PE_STATIS_XML4 (71004) XML-Fehler 4 beim Erstellen der Daten.
• PE_STATIS_XML5 (71005) XML-Fehler beim Erstellen der Daten.
• PE_STATIS_XML6 (71006) XML-Fehler 6 beim Erstellen der Daten.
• PE_STATIS_XML7 (71007) XML-Fehler 7 beim Erstellen der Daten.
• PE_STATIS_XML (71008) XML-Fehler 8 beim Erstellen der Daten.
• PE_STATIS_XML (71009) XML-Fehler 9 beim Erstellen der Daten.
• Fehlercodes von 1000 bis 3999 Diese stehen für Fehler im Dateiformat. (siehe Datensatzbeschreibung)
Parameter
• lDatnum (IN) Nummer der Datei, die versendet werden soll. Wenn 0 angegeben ist, werden alle Dateien in der Send-Queue versendet.
• szStatisUser (IN) Der von den Statistischen Ämtern zugewiesene Benutzername.
• szStatisPassword (IN) Das von den Statistischen Ämtern zugewiesene Passwort.
• plFilesFound (OUT) Anzahl der in der Send-Queue gefundenen Dateien.
• plFilesSent (OUT) Anzahl der erfolgreich versendeten Dateien.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Bei den Fehlercodes 1000 bis 3999 läßt sich mit der Funktion perfidia_get_last_error_v2 herausfinden, in welcher Datei und an welcher Stelle der Fehler aufgetreten ist.
Beim Fehlercode PE_STATIS_TRANSFER (71010) läßt sich mit der Funktion perfidia_get_last_error heraus-finden, bei welcher Datei der Fehler aufgetreten ist. (Format: DATEINAME).
Diese Funktion erzeugt einen Progress.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de494
perfidia_statis_lve_protocol_receive
Verwenden Sie in Neuentwicklungen die Funktion perfidia_statis_protocol_receive!
Erfragt bei der Statistik den Protokollstatus für eine bzw. mehrere Datenlieferungen.
long perfidia_statis_lve_protocol_receive ( long lDatNum, const char *szStatisUser, const char *szStatisPassword, long *plFilesFound, long *plFilesReceived, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_LOGIN (80141) Ungültiger Benutzername und/oder ungültiges Passwort.
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NO_DATA (80129) - Zur angegebenen Dateinummer existiert kein Eintrag in der Transferdatei. - Für die angegebene Dateinummer haben Sie bereits ein Antwortprotokoll erhalten. - Für die angegebene Dateinummer kann noch kein Antwortprotokoll abgeholt werden, da seit dem Versand der Daten noch keine 24 Stunden vergangen sind.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80803) Fehler beim Lesen der Datei.
• PE_FILE_WRITE (80806) Fehler beim Schreiben der Datei.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_ISAM_WRITE (80704) Schreibfehler in ISAM-Datei.
• PE_STATIS_TRANSFER (71010) In der Clearingstelle ist ein Fehler aufgetreten. Nähere Informationen mit der Funktion perfidia_sta-tis_lve_transfer_error.
• PE_STATIS_PARSE_PROT (71011) Fehler beim Parsen der Protokollantwort.
• PE_STATIS_XML_NOT_VALID (71012) Die XML-Antwort der Clearingstelle ist in einem ungültigen Format.
• PE_STATIS_UNKNOWN_PROC (71013) Unbekanntes Verfahren: Antwort kann nicht ausgewertet werden.
v3.90.161 PERFIDIA Toolkit Reference
495© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• PE_STATIS_XML1 (71001) XML-Fehler 1 beim Erstellen der Daten.
• PE_STATIS_XML2 (71002) XML-Fehler 2 beim Erstellen der Daten.
• PE_STATIS_XML3 (71003) XML-Fehler 3 beim Erstellen der Daten.
• PE_STATIS_XML4 (71004) XML-Fehler 4 beim Erstellen der Daten.
• PE_STATIS_XML5 (71005) XML-Fehler beim Erstellen der Daten.
• PE_STATIS_XML6 (71006) XML-Fehler 6 beim Erstellen der Daten.
• PE_STATIS_XML7 (71007) XML-Fehler 7 beim Erstellen der Daten.
• PE_STATIS_XML (71008) XML-Fehler 8 beim Erstellen der Daten.
• PE_STATIS_XML (71009) XML-Fehler 9 beim Erstellen der Daten.
Parameter
• lDatNum (IN) Wenn lDatNum gleich 0 ist, wird für alle Datenlieferungen, die noch keinen entgültigen Status haben, der aktuelle Status nachgefragt. Ansonsten nur für die angegebene Dateinummer.
• szStatisUser (IN) Der von den Statistischen Ämtern zugewiesene Benutzername.
• szStatisPassword (IN) Das von den Statistischen Ämtern zugewiesene Passwort.
• plFilesFound (OUT) Anzahl der gefundenen Dateien.
• plFilesReceived (OUT) Anzahl der erfolgreich empfangenen Dateien.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Beim Fehlercode PE_STATIS_TRANSFER (71010) läßt sich mit der Funktion perfidia_get_last_error heraus-finden, bei welcher Datei der Fehler aufgetreten ist. (Format: DATEINAME).
Diese Funktion erzeugt einen Progress.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de496
perfidia_statis_lve_status
Liefert den Status einer LVE-Datenlieferung.
long perfidia_statis_lve_status ( long lDatNum, long *plStatusCode, short *pnErrorCount, short *pnPruefStatusSyntax, short *pnPruefStatusSemantik, short *pnPruefStatusAutorisierung, short *pnPruefStatusDaten, short *pnPruefStatusDokument );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDatNum (IN) Dateinummer (00001-99999), von der ein Status abgefragt werden soll.
• plStatusCode (OUT) 0 = noch kein Protokoll angefordert 1 = Datenlieferung noch nicht verarbeitet 2 = Datenlieferung wurde akzeptiert 3 = Datenlieferung wurde abgewiesen 4 = Datenlieferung wurde nicht geprüft 5 = Prüfprotokoll ist nicht mehr verfügbar
• pnErrorCount (OUT) Falls der StatusCode 3 ist, wird ErrorCount auf die Anzahl der aufgetretenden Fehler gesetzt.
• pnPruefStatusSyntax (OUT) pnPruefStatusSemantik (OUT) pnPruefStatusAutorisierung (OUT) pnPruefStatusDaten (OUT) pnPruefStatusDokument (OUT) 0 = fehlerfrei 1 = ungeprüft 2 = fehlerhaft Wenn die Informationen nicht benötigt werden, dürfen bei diesen Parametern NULL-Pointer übergeben werden.
v3.90.161 PERFIDIA Toolkit Reference
497© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Die Fehlerinformationen lassen sich mit der Funktion perfidia_statis_lve_error abfragen.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de498
perfidia_statis_lve_error
Liefert Fehlerinformationen über einen LVE-Datenlieferung.
long perfidia_statis_lve_error ( long lDatNum, short nErrorNum, short *pnRecordNum, char *szMerkmalBuffer, short nMerkmalBufferSize, char *szSchluesselBuffer, short nSchluesselBufferSize, char *szTextBuffer, short nTextBufferSize, char *szPositionFormatBuffer, short nPositionFormatBufferSize, char *szPositionBuffer, short nPositionBufferSize, char *szGewichtBuffer, short nGewichtBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da ein Buffer zu klein ist.
Parameter
• lDatNum (IN) Dateinummer (00001-99999), der fehlerhaften Datenlieferung.
• nErrorNum (IN) Fortlaufende Nummer von 1 bis einschließlich ErrorCount. (ErrorCount siehe perfidia_statis_lve_status)
• pnRecordNum (OUT) Datensatznummer (0001-9999), der fehlerhaften Datenlieferung.
• szMerkmalBuffer (OUT) Der Name eines Merkmals, bei dem der Fehler aufgetreten ist. Dieser Buffer sollte eine Länge von 65 Zeichen haben.
• nMerkmalBufferSize (IN) Größe des Merkmal-Buffers.
• szSchluesselBuffer (OUT) Der Buffer des Fehlerschlüssels sollte eine Länge von 65 Zeichen haben.
v3.90.161 PERFIDIA Toolkit Reference
499© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• nSchluesselBufferSize (IN) Größe des Schluessel-Buffers.
• szTextBuffer (OUT) Der Buffer des Fehlertextes sollte eine Länge von 513 Zeichen haben.
• nTextBufferSize (IN) Größe des Text-Buffers.
• szPositionFormatBuffer (OUT) Format der Position der fehlerverursachenden Stelle (XPath-Ausdruck, Byte-, Zeichen- oder Satz-Off-set). Dieser Buffer sollte eine Länge von 33 Zeichen haben.
• nPositionFormatBufferSize (IN) Größe des PositionFormat-Buffers.
• szPositionBuffer (OUT) Position der fehlerverursachenden Stelle. Dieser Buffer sollte eine Länge von 129 Zeichen haben.
• nPositionBufferSize (IN) Größe des Position-Buffers.
• szGewichtBuffer (OUT) Der Buffer des Fehlergewichts sollte eine Länge von 65 Zeichen haben.
• nGewichtBufferSize (IN) Größe des Gewicht-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Wenn bei dem Funktionsaufruf von perfidia_statis_lve_status der zurückgegebene Status 3 ist, gibt der Er-rorCount die Anzahl der Fehler an. Die Informationen zu den einzelnen Fehlern lassen sich dann mit dieser Funktion (perfidia_statis_lve_error) abfragen.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de500
perfidia_statis_lve_transfer_error
Liefert die Fehlerinformationen, falls bei der Übertragung der LVE-Datei ein Fehler in der Clearingstelle auftritt.
long perfidia_statis_lve_transfer_error ( long lDatNum, long *plXStatus, char *szErrorBuffer, short nErrorBufferSize, );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe eines Buffers ist zu klein.
Parameter
• lDatNum (IN) Dateinummer (00001-99999), bei der ein Fehler in der Clearingstelle aufgetreten ist.
• plXStatus (OUT) X-Status von der Clearingstelle.
• szErrorBuffer (OUT) Error-Buffer von der Clearingstelle. Der Error-Buffer sollte eine Länge von 513 Zeichen haben.
• nErrorBufferSize (IN) Größe des Error-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
501© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_statis_lve_delete
Löscht alle Protokolleinträge zu einer bestimmten Dateinummer aus den PERFIDIA-Log-Dateien, so dass die Dateinummer erneut zum Versenden benutzt werden kann. Das erfolgreiche Löschen wird protokolliert. (siehe perfidia_statis_protocol_open)
long perfidia_statis_lve_delete ( long lDatNum );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDatNum (IN) Dateinummer (00001-99999)
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de502
perfidia_statis_lve_highest_datnum
Liefert die höchste benutzte Dateinummer.
long perfidia_statis_lve_highest_datnum ( long *plDatNum );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• plDatNum (OUT) Dateinummer (00001-99999)
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
503© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_statis_lve_transfer_ticket
Liefert das Transfer-Ticket zu einer übertragenen Datenlieferung.
long perfidia_statis_lve_transfer_ticket ( long lDatNum, char *szTransferTicketBuffer, short nTransferTicketBufferSize, long *plTestmerker );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da der TransferTicket-Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe des TransferTicket-Buffers ist zu klein.
Parameter
• lDatNum (IN) Dateinummer (00001-99999).
• szTransferTicketBuffer (OUT) Der TransferTicket-Buffer sollte eine Größe von 65 Zeichen haben.
• nTransferTicketBufferSize (IN) Größe des TransferTicket-Buffers.
• plTestmerker (OUT) Liefert den Testmerker der Datenlieferung. Hier darf ein NULL-Pointer übergeben werden.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de504
perfidia_statis_lve_transfer_ticket_v2
Liefert das Transfer-Ticket zu einer übertragenen Datenlieferung.
long perfidia_statis_lve_transfer_ticket_v2 ( long lDatNum, char *szTransferTicketBuffer, short nTransferTicketBufferSize, long *plTestmerker char *szSendDateBuffer, short nSendDateBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da der TransferTicket-Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe des TransferTicket-Buffers ist zu klein.
Parameter
• lDatNum (IN) Dateinummer (00001-99999).
• szTransferTicketBuffer (OUT) Der TransferTicket-Buffer sollte eine Größe von 65 Zeichen haben.
• nTransferTicketBufferSize (IN) Größe des TransferTicket-Buffers.
• plTestmerker (OUT) Testmerker der Datenlieferung. Hier darf ein NULL-Pointer übergeben werden.
• szSendDateBuffer (OUT) Der SendDate-Buffer sollte eine Größe von 15 Zeichen haben.
• nSendDateBufferSize (IN) Größe des SendDate-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
505© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_statis_bjv_check
Prüft die in der Send-Queue gespeicherten BJV-Dateien (ASCII-Format).
long perfidia_statis_bjv_check( long lDatnum, long *plFilesFound, long *plFilesOK );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_EMPTY_QUEUE (80134) Die Send-Queue ist leer.
• PE_SCANSENDQ (80133) Fehler beim Scannen der Send-Queue.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_DATNUM_USED (80135) Dateinummer bereits benutzt.
• Fehlercodes von 1000 bis 3999 Diese stehen für Fehler im Dateiformat. (siehe Datensatzbeschreibung)
Parameter
• lDatnum (IN) Nummer der Datei, die geprüft werden soll. Wenn 0 angegeben ist, werden alle Dateien in der Send-Queue geprüft.
• plFilesFound (OUT) Anzahl der in der Send-Queue gefundenen Dateien.
• plFilesOK (OUT) Anzahl der erfolgreich geprüften Dateien.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Bei einem Fehler im Dateiformat (Fehlercode 1000 bis 3999) läßt sich mit der Funktion perfidia_get_last_er-ror_v2 herausfinden, in welcher Datei und an welcher Stelle der Fehler aufgetreten ist.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de506
perfidia_statis_bjv_send
Versendet alle in der Send-Queue gespeicherten BJV-Dateien.
long perfidia_statis_bjv_send ( long *lDatNum, const char *szStatisUser, const char *szStatisPassword, long *plFilesFound, long *plFilesSent HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_LOGIN (80141) Ungültiger Benutzername und/oder ungültiges Passwort.
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_EMPTY_QUEUE (80134) Die Send-Queue ist leer.
• PE_SCANSENDQ (80133) Fehler beim Scannen der Send-Queue.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80803) Fehler beim Lesen der Datei.
• PE_FILE_WRITE (80806) Fehler beim Schreiben der Datei.
• PE_DATNUM_USED (80135) Dateinummer bereits benutzt.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_ISAM_WRITE (80704) Schreibfehler in ISAM-Datei.
• PE_STATIS_TRANSFER (71010) In der Clearingstelle ist ein Fehler aufgetreten. Nähere Informationen mit der Funktion perfidia_sta-tis_bjv_transfer_error.
• PE_STATIS_XML1 (71001) XML-Fehler 1 beim Erstellen der Daten.
• PE_STATIS_XML2 (71002) XML-Fehler 2 beim Erstellen der Daten.
v3.90.161 PERFIDIA Toolkit Reference
507© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• PE_STATIS_XML3 (71003) XML-Fehler 3 beim Erstellen der Daten.
• PE_STATIS_XML4 (71004) XML-Fehler 4 beim Erstellen der Daten.
• PE_STATIS_XML5 (71005) XML-Fehler beim Erstellen der Daten.
• PE_STATIS_XML6 (71006) XML-Fehler 6 beim Erstellen der Daten.
• PE_STATIS_XML7 (71007) XML-Fehler 7 beim Erstellen der Daten.
• PE_STATIS_XML (71008) XML-Fehler 8 beim Erstellen der Daten.
• PE_STATIS_XML (71009) XML-Fehler 9 beim Erstellen der Daten.
• Fehlercodes von 1000 bis 3999 Diese stehen für Fehler im Dateiformat. (siehe Datensatzbeschreibung)
Parameter
• lDatnum (IN) Nummer der Datei, die versendet werden soll. Wenn 0 angegeben ist, werden alle Dateien in der Send-Queue versendet.
• szStatisUser (IN) Der von den Statistischen Ämtern zugewiesene Benutzername.
• szStatisPassword (IN) Das von den Statistischen Ämtern zugewiesene Passwort.
• plFilesFound (OUT) Anzahl der in der Send-Queue gefundenen Dateien.
• plFilesSent (OUT) Anzahl der erfolgreich versendeten Dateien.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Bei den Fehlercodes 1000 bis 3999 läßt sich mit der Funktion perfidia_get_last_error_v2 herausfinden, in welcher Datei und an welcher Stelle der Fehler aufgetreten ist.
Beim Fehlercode PE_STATIS_TRANSFER (71010) läßt sich mit der Funktion perfidia_get_last_error heraus-finden, bei welcher Datei der Fehler aufgetreten ist. (Format: DATEINAME).
Diese Funktion erzeugt einen Progress.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de508
perfidia_statis_bjv_protocol_receive
Erfragt bei der Statistik den Protokollstatus für eine bzw. mehrere Datenlieferungen.
long perfidia_statis_bjv_protocol_receive ( long lDatNum, const char *szStatisUser, const char *szStatisPassword, long *plFilesFound, long *plFilesReceived, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_LOGIN (80141) Ungültiger Benutzername und/oder ungültiges Passwort.
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NO_DATA (80129) - Zur angegebenen Dateinummer existiert kein Eintrag in der Transferdatei. - Für die angegebene Dateinummer haben Sie bereits ein Antwortprotokoll erhalten. - Für die angegebene Dateinummer kann noch kein Antwortprotokoll abgeholt werden, da seit dem Versand der Daten noch keine 24 Stunden vergangen sind.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80803) Fehler beim Lesen der Datei.
• PE_FILE_WRITE (80806) Fehler beim Schreiben der Datei.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_ISAM_WRITE (80704) Schreibfehler in ISAM-Datei.
• PE_STATIS_TRANSFER (71010) In der Clearingstelle ist ein Fehler aufgetreten. Nähere Informationen mit der Funktion perfidia_sta-tis_bjv_transfer_error.
• PE_STATIS_PARSE_PROT (71011) Fehler beim Parsen der Protokollantwort.
• PE_STATIS_XML_NOT_VALID (71012) Die XML-Antwort der Clearingstelle ist in einem ungültigen Format.
• PE_STATIS_UNKNOWN_PROC (71013) Unbekanntes Verfahren: Antwort kann nicht ausgewertet werden.
• PE_STATIS_XML1 (71001) XML-Fehler 1 beim Erstellen der Daten.
v3.90.161 PERFIDIA Toolkit Reference
509© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• PE_STATIS_XML2 (71002) XML-Fehler 2 beim Erstellen der Daten.
• PE_STATIS_XML3 (71003) XML-Fehler 3 beim Erstellen der Daten.
• PE_STATIS_XML4 (71004) XML-Fehler 4 beim Erstellen der Daten.
• PE_STATIS_XML5 (71005) XML-Fehler beim Erstellen der Daten.
• PE_STATIS_XML6 (71006) XML-Fehler 6 beim Erstellen der Daten.
• PE_STATIS_XML7 (71007) XML-Fehler 7 beim Erstellen der Daten.
• PE_STATIS_XML (71008) XML-Fehler 8 beim Erstellen der Daten.
• PE_STATIS_XML (71009) XML-Fehler 9 beim Erstellen der Daten.
Parameter
• lDatNum (IN) Wenn lDatNum gleich 0 ist, wird für alle Datenlieferungen, die noch keinen entgültigen Status haben, der aktuelle Status nachgefragt. Ansonsten nur für die angegebene Dateinummer.
• szStatisUser (IN) Der von den Statistischen Ämtern zugewiesene Benutzername.
• szStatisPassword (IN) Das von den Statistischen Ämtern zugewiesene Passwort.
• plFilesFound (OUT) Anzahl der gefundenen Dateien.
• plFilesReceived (OUT) Anzahl der erfolgreich empfangenen Dateien.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Beim Fehlercode PE_STATIS_TRANSFER (71010) läßt sich mit der Funktion perfidia_get_last_error heraus-finden, bei welcher Datei der Fehler aufgetreten ist. (Format: DATEINAME).
Diese Funktion erzeugt einen Progress.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de510
perfidia_statis_bjv_status
Liefert den Status einer BJV-Datenlieferung.
long perfidia_statis_bjv_status ( long lDatNum, long *plStatusCode, short *pnErrorCount, short *pnPruefStatusSyntax, short *pnPruefStatusSemantik, short *pnPruefStatusAutorisierung, short *pnPruefStatusDaten, short *pnPruefStatusDokument );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDatNum (IN) Dateinummer (00001-99999), von der ein Status abgefragt werden soll.
• plStatusCode (OUT) 0 = noch kein Protokoll angefordert 1 = Datenlieferung noch nicht verarbeitet 2 = Datenlieferung wurde akzeptiert 3 = Datenlieferung wurde abgewiesen 4 = Datenlieferung wurde nicht geprüft 5 = Prüfprotokoll ist nicht mehr verfügbar
• pnErrorCount (OUT) Falls der StatusCode 3 ist, wird ErrorCount auf die Anzahl der aufgetretenden Fehler gesetzt.
• pnPruefStatusSyntax (OUT) pnPruefStatusSemantik (OUT) pnPruefStatusAutorisierung (OUT) pnPruefStatusDaten (OUT) pnPruefStatusDokument (OUT) 0 = fehlerfrei 1 = ungeprüft 2 = fehlerhaft Wenn die Informationen nicht benötigt werden, dürfen bei diesen Parametern NULL-Pointer übergeben werden.
v3.90.161 PERFIDIA Toolkit Reference
511© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Die Fehlerinformationen lassen sich mit der Funktion perfidia_statis_bjv_error abfragen.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de512
perfidia_statis_bjv_error
Liefert Fehlerinformationen über einen BJV-Datenlieferung.
long perfidia_statis_bjv_error ( long lDatNum, short nErrorNum, short *pnRecordNum, char *szMerkmalBuffer, short nMerkmalBufferSize, char *szSchluesselBuffer, short nSchluesselBufferSize, char *szTextBuffer, short nTextBufferSize, char *szPositionFormatBuffer, short nPositionFormatBufferSize, char *szPositionBuffer, short nPositionBufferSize, char *szGewichtBuffer, short nGewichtBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da ein Buffer zu klein ist.
Parameter
• lDatNum (IN) Dateinummer (00001-99999), der fehlerhaften Datenlieferung.
• nErrorNum (IN) Fortlaufende Nummer von 1 bis einschließlich ErrorCount. (ErrorCount siehe perfidia_statis_bjv_status)
• pnRecordNum (OUT) Datensatznummer (0001-9999), der fehlerhaften Datenlieferung.
• szMerkmalBuffer (OUT) Der Name eines Merkmals, bei dem der Fehler aufgetreten ist. Dieser Buffer sollte eine Länge von 65 Zeichen haben.
• nMerkmalBufferSize (IN) Größe des Merkmal-Buffers.
• szSchluesselBuffer (OUT) Der Buffer des Fehlerschlüssels sollte eine Länge von 65 Zeichen haben.
v3.90.161 PERFIDIA Toolkit Reference
513© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• nSchluesselBufferSize (IN) Größe des Schluessel-Buffers.
• szTextBuffer (OUT) Der Buffer des Fehlertextes sollte eine Länge von 513 Zeichen haben.
• nTextBufferSize (IN) Größe des Text-Buffers.
• szPositionFormatBuffer (OUT) Format der Position der fehlerverursachenden Stelle (XPath-Ausdruck, Byte-, Zeichen- oder Satz-Off-set). Dieser Buffer sollte eine Länge von 33 Zeichen haben.
• nPositionFormatBufferSize (IN) Größe des PositionFormat-Buffers.
• szPositionBuffer (OUT) Position der fehlerverursachenden Stelle. Dieser Buffer sollte eine Länge von 129 Zeichen haben.
• nPositionBufferSize (IN) Größe des Position-Buffers.
• szGewichtBuffer (OUT) Der Buffer des Fehlergewichts sollte eine Länge von 65 Zeichen haben.
• nGewichtBufferSize (IN) Größe des Gewicht-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Wenn bei dem Funktionsaufruf von perfidia_statis_bjv_status der zurückgegebene Status 3 ist, gibt der Er-rorCount die Anzahl der Fehler an. Die Informationen zu den einzelnen Fehlern lassen sich dann mit dieser Funktion (perfidia_statis_bjv_error) abfragen.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de514
perfidia_statis_bjv_transfer_error
Liefert die Fehlerinformationen, falls bei der Übertragung der BJV-Datei ein Fehler in der Clearingstelle auftritt.
long perfidia_statis_bjv_transfer_error ( long lDatNum, long *plXStatus, char *szErrorBuffer, short nErrorBufferSize, );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe eines Buffers ist zu klein.
Parameter
• lDatNum (IN) Dateinummer (00001-99999), bei der ein Fehler in der Clearingstelle aufgetreten ist.
• plXStatus (OUT) X-Status von der Clearingstelle.
• szErrorBuffer (OUT) Error-Buffer von der Clearingstelle. Der Error-Buffer sollte eine Länge von 513 Zeichen haben.
• nErrorBufferSize (IN) Größe des Error-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
515© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_statis_bjv_delete
Löscht alle Protokolleinträge zu einer bestimmten Dateinummer aus den PERFIDIA-Log-Dateien, so dass die Dateinummer erneut zum Versenden benutzt werden kann. Das erfolgreiche Löschen wird protokolliert. (siehe perfidia_statis_protocol_open)
long perfidia_statis_bjv_delete ( long lDatNum );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDatNum (IN) Dateinummer (00001-99999)
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de516
perfidia_statis_bjv_highest_datnum
Liefert die höchste benutzte Dateinummer.
long perfidia_statis_bjv_highest_datnum ( long *plDatNum );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• plDatNum (OUT) Dateinummer (00001-99999)
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
517© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_statis_bjv_transfer_ticket
Liefert das Transfer-Ticket zu einer übertragenen Datenlieferung.
long perfidia_statis_bjv_transfer_ticket ( long lDatNum, char *szTransferTicketBuffer, short nTransferTicketBufferSize, long *plTestmerker );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da der TransferTicket-Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe des TransferTicket-Buffers ist zu klein.
Parameter
• lDatNum (IN) Dateinummer (00001-99999).
• szTransferTicketBuffer (OUT) Der TransferTicket-Buffer sollte eine Größe von 65 Zeichen haben.
• nTransferTicketBufferSize (IN) Größe des TransferTicket-Buffers.
• plTestmerker (OUT) Liefert den Testmerker der Datenlieferung. Hier darf ein NULL-Pointer übergeben werden.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de518
perfidia_statis_bjv_transfer_ticket_v2
Liefert das Transfer-Ticket zu einer übertragenen Datenlieferung.
long perfidia_statis_bjv_transfer_ticket_v2 ( long lDatNum, char *szTransferTicketBuffer, short nTransferTicketBufferSize, long *plTestmerker char *szSendDateBuffer, short nSendDateBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da der TransferTicket-Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe des TransferTicket-Buffers ist zu klein.
Parameter
• lDatNum (IN) Dateinummer (00001-99999).
• szTransferTicketBuffer (OUT) Der TransferTicket-Buffer sollte eine Größe von 65 Zeichen haben.
• nTransferTicketBufferSize (IN) Größe des TransferTicket-Buffers.
• plTestmerker (OUT) Testmerker der Datenlieferung. Hier darf ein NULL-Pointer übergeben werden.
• szSendDateBuffer (OUT) Der SendDate-Buffer sollte eine Größe von 15 Zeichen haben.
• nSendDateBufferSize (IN) Größe des SendDate-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
519© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_statis_vse_check
Prüft die in der Send-Queue gespeicherten VSE-Dateien (ASCII-Format).
long perfidia_statis_vse_check( long lDatnum, long *plFilesFound, long *plFilesOK );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_EMPTY_QUEUE (80134) Die Send-Queue ist leer.
• PE_SCANSENDQ (80133) Fehler beim Scannen der Send-Queue.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80805) Fehler beim Lesen der Datei.
• PE_DATNUM_USED (80135) Dateinummer bereits benutzt.
• Fehlercodes von 1000 bis 3999 Diese stehen für Fehler im Dateiformat. (siehe Datensatzbeschreibung)
Parameter
• lDatnum (IN) Nummer der Datei, die geprüft werden soll. Wenn 0 angegeben ist, werden alle Dateien in der Send-Queue geprüft.
• plFilesFound (OUT) Anzahl der in der Send-Queue gefundenen Dateien.
• plFilesOK (OUT) Anzahl der erfolgreich geprüften Dateien.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Bei einem Fehler im Dateiformat (Fehlercode 1000 bis 3999) läßt sich mit der Funktion perfidia_get_last_er-ror_v2 herausfinden, in welcher Datei und an welcher Stelle der Fehler aufgetreten ist.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de520
perfidia_statis_vse_send
Versendet alle in der Send-Queue gespeicherten VSE-Dateien.
long perfidia_statis_vse_send ( long *lDatNum, const char *szStatisUser, const char *szStatisPassword, long *plFilesFound, long *plFilesSent HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_LOGIN (80141) Ungültiger Benutzername und/oder ungültiges Passwort.
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_EMPTY_QUEUE (80134) Die Send-Queue ist leer.
• PE_SCANSENDQ (80133) Fehler beim Scannen der Send-Queue.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80803) Fehler beim Lesen der Datei.
• PE_FILE_WRITE (80806) Fehler beim Schreiben der Datei.
• PE_DATNUM_USED (80135) Dateinummer bereits benutzt.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_ISAM_WRITE (80704) Schreibfehler in ISAM-Datei.
• PE_STATIS_TRANSFER (71010) In der Clearingstelle ist ein Fehler aufgetreten. Nähere Informationen mit der Funktion perfidia_sta-tis_vse_transfer_error.
• PE_STATIS_XML1 (71001) XML-Fehler 1 beim Erstellen der Daten.
• PE_STATIS_XML2 (71002) XML-Fehler 2 beim Erstellen der Daten.
v3.90.161 PERFIDIA Toolkit Reference
521© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• PE_STATIS_XML3 (71003) XML-Fehler 3 beim Erstellen der Daten.
• PE_STATIS_XML4 (71004) XML-Fehler 4 beim Erstellen der Daten.
• PE_STATIS_XML5 (71005) XML-Fehler beim Erstellen der Daten.
• PE_STATIS_XML6 (71006) XML-Fehler 6 beim Erstellen der Daten.
• PE_STATIS_XML7 (71007) XML-Fehler 7 beim Erstellen der Daten.
• PE_STATIS_XML (71008) XML-Fehler 8 beim Erstellen der Daten.
• PE_STATIS_XML (71009) XML-Fehler 9 beim Erstellen der Daten.
• Fehlercodes von 1000 bis 3999 Diese stehen für Fehler im Dateiformat. (siehe Datensatzbeschreibung)
Parameter
• lDatnum (IN) Nummer der Datei, die versendet werden soll. Wenn 0 angegeben ist, werden alle Dateien in der Send-Queue versendet.
• szStatisUser (IN) Der von den Statistischen Ämtern zugewiesene Benutzername.
• szStatisPassword (IN) Das von den Statistischen Ämtern zugewiesene Passwort.
• plFilesFound (OUT) Anzahl der in der Send-Queue gefundenen Dateien.
• plFilesSent (OUT) Anzahl der erfolgreich versendeten Dateien.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Bei den Fehlercodes 1000 bis 3999 läßt sich mit der Funktion perfidia_get_last_error_v2 herausfinden, in welcher Datei und an welcher Stelle der Fehler aufgetreten ist.
Beim Fehlercode PE_STATIS_TRANSFER (71010) läßt sich mit der Funktion perfidia_get_last_error heraus-finden, bei welcher Datei der Fehler aufgetreten ist. (Format: DATEINAME).
Diese Funktion erzeugt einen Progress.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de522
perfidia_statis_vse_protocol_receive
Erfragt bei der Statistik den Protokollstatus für eine bzw. mehrere Datenlieferungen.
long perfidia_statis_vse_protocol_receive ( long lDatNum, const char *szStatisUser, const char *szStatisPassword, long *plFilesFound, long *plFilesReceived, HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_LOGIN (80141) Ungültiger Benutzername und/oder ungültiges Passwort.
• PE_LICENSECODE (80105) Ungültige Lizenz.
• PE_OUT_OF_MEM (80101) Nicht genügend Arbeitsspeicher.
• PE_NO_DATA (80129) - Zur angegebenen Dateinummer existiert kein Eintrag in der Transferdatei. - Für die angegebene Dateinummer haben Sie bereits ein Antwortprotokoll erhalten. - Für die angegebene Dateinummer kann noch kein Antwortprotokoll abgeholt werden, da seit dem Versand der Daten noch keine 24 Stunden vergangen sind.
• PE_FILE_OPEN (80803) Fehler beim Öffen der Datei.
• PE_FILE_READ (80803) Fehler beim Lesen der Datei.
• PE_FILE_WRITE (80806) Fehler beim Schreiben der Datei.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_ISAM_WRITE (80704) Schreibfehler in ISAM-Datei.
• PE_STATIS_TRANSFER (71010) In der Clearingstelle ist ein Fehler aufgetreten. Nähere Informationen mit der Funktion perfidia_sta-tis_vse_transfer_error.
• PE_STATIS_PARSE_PROT (71011) Fehler beim Parsen der Protokollantwort.
• PE_STATIS_XML_NOT_VALID (71012) Die XML-Antwort der Clearingstelle ist in einem ungültigen Format.
• PE_STATIS_UNKNOWN_PROC (71013) Unbekanntes Verfahren: Antwort kann nicht ausgewertet werden.
• PE_STATIS_XML1 (71001) XML-Fehler 1 beim Erstellen der Daten.
v3.90.161 PERFIDIA Toolkit Reference
523© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• PE_STATIS_XML2 (71002) XML-Fehler 2 beim Erstellen der Daten.
• PE_STATIS_XML3 (71003) XML-Fehler 3 beim Erstellen der Daten.
• PE_STATIS_XML4 (71004) XML-Fehler 4 beim Erstellen der Daten.
• PE_STATIS_XML5 (71005) XML-Fehler beim Erstellen der Daten.
• PE_STATIS_XML6 (71006) XML-Fehler 6 beim Erstellen der Daten.
• PE_STATIS_XML7 (71007) XML-Fehler 7 beim Erstellen der Daten.
• PE_STATIS_XML (71008) XML-Fehler 8 beim Erstellen der Daten.
• PE_STATIS_XML (71009) XML-Fehler 9 beim Erstellen der Daten.
Parameter
• lDatNum (IN) Wenn lDatNum gleich 0 ist, wird für alle Datenlieferungen, die noch keinen entgültigen Status haben, der aktuelle Status nachgefragt. Ansonsten nur für die angegebene Dateinummer.
• szStatisUser (IN) Der von den Statistischen Ämtern zugewiesene Benutzername.
• szStatisPassword (IN) Das von den Statistischen Ämtern zugewiesene Passwort.
• plFilesFound (OUT) Anzahl der gefundenen Dateien.
• plFilesReceived (OUT) Anzahl der erfolgreich empfangenen Dateien.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Beim Fehlercode PE_STATIS_TRANSFER (71010) läßt sich mit der Funktion perfidia_get_last_error heraus-finden, bei welcher Datei der Fehler aufgetreten ist. (Format: DATEINAME).
Diese Funktion erzeugt einen Progress.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de524
perfidia_statis_vse_status
Liefert den Status einer VSE-Datenlieferung.
long perfidia_statis_vse_status ( long lDatNum, long *plStatusCode, short *pnErrorCount, short *pnPruefStatusSyntax, short *pnPruefStatusSemantik, short *pnPruefStatusAutorisierung, short *pnPruefStatusDaten, short *pnPruefStatusDokument );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDatNum (IN) Dateinummer (00001-99999), von der ein Status abgefragt werden soll.
• plStatusCode (OUT) 0 = noch kein Protokoll angefordert 1 = Datenlieferung noch nicht verarbeitet 2 = Datenlieferung wurde akzeptiert 3 = Datenlieferung wurde abgewiesen 4 = Datenlieferung wurde nicht geprüft 5 = Prüfprotokoll ist nicht mehr verfügbar
• pnErrorCount (OUT) Falls der StatusCode 3 ist, wird ErrorCount auf die Anzahl der aufgetretenden Fehler gesetzt.
• pnPruefStatusSyntax (OUT) pnPruefStatusSemantik (OUT) pnPruefStatusAutorisierung (OUT) pnPruefStatusDaten (OUT) pnPruefStatusDokument (OUT) 0 = fehlerfrei 1 = ungeprüft 2 = fehlerhaft Wenn die Informationen nicht benötigt werden, dürfen bei diesen Parametern NULL-Pointer übergeben werden.
v3.90.161 PERFIDIA Toolkit Reference
525© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Die Fehlerinformationen lassen sich mit der Funktion perfidia_statis_vse_error abfragen.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de526
perfidia_statis_vse_error
Liefert Fehlerinformationen über einen VSE-Datenlieferung.
long perfidia_statis_vse_error ( long lDatNum, short nErrorNum, short *pnRecordNum, char *szMerkmalBuffer, short nMerkmalBufferSize, char *szSchluesselBuffer, short nSchluesselBufferSize, char *szTextBuffer, short nTextBufferSize, char *szPositionFormatBuffer, short nPositionFormatBufferSize, char *szPositionBuffer, short nPositionBufferSize, char *szGewichtBuffer, short nGewichtBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da ein Buffer zu klein ist.
Parameter
• lDatNum (IN) Dateinummer (00001-99999), der fehlerhaften Datenlieferung.
• nErrorNum (IN) Fortlaufende Nummer von 1 bis einschließlich ErrorCount. (ErrorCount siehe perfidia_statis_vse_sta-tus)
• pnRecordNum (OUT) Datensatznummer (0001-9999), der fehlerhaften Datenlieferung.
• szMerkmalBuffer (OUT) Der Name eines Merkmals, bei dem der Fehler aufgetreten ist. Dieser Buffer sollte eine Länge von 65 Zeichen haben.
• nMerkmalBufferSize (IN) Größe des Merkmal-Buffers.
v3.90.161 PERFIDIA Toolkit Reference
527© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• szSchluesselBuffer (OUT) Der Buffer des Fehlerschlüssels sollte eine Länge von 65 Zeichen haben.
• nSchluesselBufferSize (IN) Größe des Schluessel-Buffers.
• szTextBuffer (OUT) Der Buffer des Fehlertextes sollte eine Länge von 513 Zeichen haben.
• nTextBufferSize (IN) Größe des Text-Buffers.
• szPositionFormatBuffer (OUT) Format der Position der fehlerverursachenden Stelle (XPath-Ausdruck, Byte-, Zeichen- oder Satz-Off-set). Dieser Buffer sollte eine Länge von 33 Zeichen haben.
• nPositionFormatBufferSize (IN) Größe des PositionFormat-Buffers.
• szPositionBuffer (OUT) Position der fehlerverursachenden Stelle. Dieser Buffer sollte eine Länge von 129 Zeichen haben.
• nPositionBufferSize (IN) Größe des Position-Buffers.
• szGewichtBuffer (OUT) Der Buffer des Fehlergewichts sollte eine Länge von 65 Zeichen haben.
• nGewichtBufferSize (IN) Größe des Gewicht-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
Anmerkungen
Wenn bei dem Funktionsaufruf von perfidia_statis_vse_status der zurückgegebene Status 3 ist, gibt der ErrorCount die Anzahl der Fehler an. Die Informationen zu den einzelnen Fehlern lassen sich dann mit dieser Funktion (perfidia_statis_vse_error) abfragen.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de528
perfidia_statis_vse_transfer_error
Liefert die Fehlerinformationen, falls bei der Übertragung der VSE-Datei ein Fehler in der Clearingstelle auf-tritt.
long perfidia_statis_vse_transfer_error ( long lDatNum, long *plXStatus, char *szErrorBuffer, short nErrorBufferSize, );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe eines Buffers ist zu klein.
Parameter
• lDatNum (IN) Dateinummer (00001-99999), bei der ein Fehler in der Clearingstelle aufgetreten ist.
• plXStatus (OUT) X-Status von der Clearingstelle.
• szErrorBuffer (OUT) Error-Buffer von der Clearingstelle. Der Error-Buffer sollte eine Länge von 513 Zeichen haben.
• nErrorBufferSize (IN) Größe des Error-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
529© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_statis_vse_delete
Löscht alle Protokolleinträge zu einer bestimmten Dateinummer aus den PERFIDIA-Log-Dateien, so dass die Dateinummer erneut zum Versenden benutzt werden kann. Das erfolgreiche Löschen wird protokolliert. (siehe perfidia_statis_protocol_open)
long perfidia_statis_vse_delete ( long lDatNum );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• lDatNum (IN) Dateinummer (00001-99999)
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de530
perfidia_statis_vse_highest_datnum
Liefert die höchste benutzte Dateinummer.
long perfidia_statis_vse_highest_datnum ( long *plDatNum );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
Parameter
• plDatNum (OUT) Dateinummer (00001-99999)
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
531© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_statis_vse_transfer_ticket
Liefert das Transfer-Ticket zu einer übertragenen Datenlieferung.
long perfidia_statis_vse_transfer_ticket ( long lDatNum, char *szTransferTicketBuffer, short nTransferTicketBufferSize, long *plTestmerker char *szSendDateBuffer, short nSendDateBufferSize );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_ISAM_OPEN (80702) Öffnen der ISAM-Datei fehlgeschlagen.
• PE_ISAM_READ (80703) Lesefehler in ISAM-Datei.
• PE_NO_DATA (80129) Keine Daten gefunden.
• PE_TEXT_TRUNC (80112) Text wurde abgeschnitten, da der TransferTicket-Buffer zu klein ist.
• PE_BUFSIZE (80110) Größe des TransferTicket-Buffers ist zu klein.
Parameter
• lDatNum (IN) Dateinummer (00001-99999).
• szTransferTicketBuffer (OUT) Der TransferTicket-Buffer sollte eine Größe von 65 Zeichen haben.
• nTransferTicketBufferSize (IN) Größe des TransferTicket-Buffers.
• plTestmerker (OUT) Testmerker der Datenlieferung. Hier darf ein NULL-Pointer übergeben werden.
• szSendDateBuffer (OUT) Der SendDate-Buffer sollte eine Größe von 15 Zeichen haben.
• nSendDateBufferSize (IN) Größe des SendDate-Buffers.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de532
perfidia_test_email_connect
Verwenden Sie in Neuentwicklungen die Funktion perfidia_test_email_connect_v2!
Überprüft die Verbindung zum Emailserver per SMTP-Client ohne eine Email zu versenden.
long perfidia_test_email_connect ( const char *szEmailServer, short nSmtpPort, const char *szUser, const char *szPassword );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_SMTP_DATASEND (80301) Fehler bei der Datenübertragen an den Emailserver. Eventuell ist die Netzwerkverbindung unterbro-chen worden.
• PE_SMTP_DATARECV (80302) Fehler beim Datenempfang vom Emailserver. Eventuell ist die Netzwerkverbindung unterbrochen wor-den.
• PE_SMTP_STARTSTRING (80305) Der Emailserver antwortet nicht korrekt.
• PE_SMTP_UNKNOWNHOST (80310) Falsche IP-Adresse oder Hostname.
• PE_SMTP_SOCKETFAILED (80311) Fehler beim Anfordern eines Sockets.
• PE_SMTP_CONNECTFAILED (80312) Fehler beim Verbindungsaufbau zum Emailserver.
• PE_SMTP_AUTHLOGIN_START (80313) Abbruch beim Loginversuch über SMTP_AUTH_LOGIN.
• PE_SMTP_AUTHLOGIN_USER (80314) Benutzername vom Emailserver nicht akzeptiert.
• PE_SMTP_AUTHLOGIN_PASS (80315) Benutzername und/oder Passwort vom Emailserver nicht akzeptiert.
• PE_SMTP_AUTHPLAIN_START (80316) Abbruch beim Loginversuch über SMTP_AUTH_PLAIN.
• PE_SMTP_AUTHPLAIN_USERPASS (80317) Benutzername und/oder Passwort vom Emailserver nicht akzeptiert.
Parameter
• szEmailServer (IN) IP-Adresse oder Hostname des Emailservers.
• nSmtpPort (IN) Der SMTP-Port des Emailservers. Dies ist fast immer Port 25.
v3.90.161 PERFIDIA Toolkit Reference
533© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• szUser (IN) Benutzername beim Emailserver. Dies ist nur nötig, wenn beim Emailserver SMTP-Auth aktiviert ist.
• szPassword (IN) Passwort beim Emailserver. Dies ist nur nötig, wenn beim Emailserver SMTP-Auth aktiviert ist.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de534
perfidia_test_email_send
Verwenden Sie in Neuentwicklungen die Funktion perfidia_test_email_send_v2!
Hiermit läßt sich die Funktionalität des SMTP-Clients testen.
long perfidia_test_email_send ( const char *szSenderEmail, const char *szRecipientEmail, const char *szEmailServer, short nSmtpPort, const char *szUser, const char *szPassword );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_SMTP_DATASEND (80301) Fehler bei der Datenübertragen an den Emailserver. Eventuell ist die Netzwerkverbindung unterbro-chen worden.
• PE_SMTP_DATARECV (80302) Fehler beim Datenempfang vom Emailserver. Eventuell ist die Netzwerkverbindung unterbrochen wor-den.
• PE_SMTP_READ_ATTACHMENTS (80304) Fehler beim Lesen der Email-Anlagen.
• PE_SMTP_STARTSTRING (80305) Der Emailserver antwortet nicht korrekt.
• PE_SMTP_MAILFROM (80306) Fehler in der Email-Adresse des Absenders.
• PE_SMTP_RCPTTO (80307) Fehler in der Email-Adresse des Empfängers.
• PE_SMTP_DATASTART (80308) Fehler beim Start der Emailübertragung.
• PE_SMTP_QUEUEMAIL (80309) Email konnte nicht in die Versand-Queue des Emailservers gestellt werden.
• PE_SMTP_UNKNOWNHOST (80310) Falsche IP-Adresse oder Hostname.
• PE_SMTP_SOCKETFAILED (80311) Fehler beim Anfordern eines Sockets.
• PE_SMTP_CONNECTFAILED (80312) Fehler beim Verbindungsaufbau zum Emailserver.
• PE_SMTP_AUTHLOGIN_START (80313) Abbruch beim Loginversuch über SMTP_AUTH_LOGIN.
• PE_SMTP_AUTHLOGIN_USER (80314) Benutzername vom Emailserver nicht akzeptiert.
• PE_SMTP_AUTHLOGIN_PASS (80315) Benutzername und/oder Passwort vom Emailserver nicht akzeptiert.
v3.90.161 PERFIDIA Toolkit Reference
535© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
• PE_SMTP_AUTHPLAIN_START (80316) Abbruch beim Loginversuch über SMTP_AUTH_PLAIN.
• PE_SMTP_AUTHPLAIN_USERPASS (80317) Benutzername und/oder Passwort vom Emailserver nicht akzeptiert.
Parameter
• szSenderEmail (IN) Email-Adresse des Absenders.
• szRecipientEmail (IN) Email-Adresse des Empfängers.
• szEmailServer (IN) IP-Adresse oder Hostname des Emailservers.
• nSmtpPort (IN) Der SMTP-Port des Emailservers. Dies ist fast immer Port 25.
• szUser (IN) Benutzername beim Emailserver. Dies ist nur nötig, wenn beim Emailserver SMTP-Auth aktiviert ist.
• szPassword (IN) Passwort beim Emailserver. Dies ist nur nötig, wenn beim Emailserver SMTP-Auth aktiviert ist.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de536
perfidia_test_email_send_mapi
Verwenden Sie in Neuentwicklungen die Funktion perfidia_test_email_send_v2!
Hiermit läßt sich die Funktionalität der MAPI-Schnittstelle testen.
long perfidia_test_email_send_mapi ( const char *szRecipientEmail, short nAutoMail, HWND hwndParent (;
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NULL_POINTER (80136) Unerlaubter NULL-Pointer.
• PE_NO_MAPI (80108) Es ist kein MAPI-fähiges Email-Programm installiert.
• PE_MAPI_ERROR (80131) Fehler beim Email-Versenden.
Parameter
• szRecipientEmail (IN) Email-Adresse des Empfängers der Testmail.
• nAutoMail (IN) 0 = Die Emails werden zum Versenden angezeigt. 1 = Die Emails werden automatisch im Postausgang gespeichert.
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows
Anmerkungen
Bei der MAPI-Schnittstelle ist insbesondere darauf zu achten, daß die Anlagen nicht im Microsoft TNEF-For-mat gespeichert sind, da die Annahmestellen dieses Format nicht verarbeiten können.
v3.90.161 PERFIDIA Toolkit Reference
537© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
perfidia_test_internet
Verwenden Sie in Neuentwicklungen die Funktion perfidia_test_internet_v3!
Diese Funktion testet, ob eine Verbindung zum Internet besteht.
long perfidia_test_internet ();
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NO_INET (80107) Die Verbindung zum Internet konnte nicht hergestellt werden.
• PE_HTTP_OPEN (80501) Fehler beim Initialisieren der Internetverbindung. (1)
• PE_HTTP_CONNECT (80502) Fehler beim Initialisieren der Internetverbindung. (2)
• PE_HTTP_OPENREQUEST (80503) Fehler beim Initialisieren der Internetverbindung. (3)
• PE_HTTP_SENDREQUEST (80504) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_SENDREQUESTEX (80505) Fehler beim Verbindungsaufbau zum Server.
• PE_HTTP_WRITEFILE (80506) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_ENDREQUEST (80507) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_QUERYINFO (80508) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_READFILE (80509) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_PROXY_AUTH (80510) Proxy-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_AUTH (80511) Server-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_ERROR (80512) Interner Fehler beim Server.
Parameter
keine
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de538
perfidia_test_internet_v2
Verwenden Sie in Neuentwicklungen die Funktion perfidia_test_internet_v3!
Diese Funktion testet, ob eine Verbindung zum Internet besteht. Im Gegensatz zu der Funktion perfidia_test_internet wird hier ein Progress-Dialog angezeigt und es besteht die Möglichkeit zum Abbrechen.
long perfidia_test_internet_v2 ( HWND hwndParent );
Rückgabewerte
• PE_NO_ERROR (0) Funktion wurde erfolgreich ausgeführt.
• PE_NOT_INITIALIZED (80102) Die PERFIDIA-DLL ist nicht initialisiert.
• PE_NO_INET (80107) Die Verbindung zum Internet konnte nicht hergestellt werden.
• PE_HTTP_OPEN (80501) Fehler beim Initialisieren der Internetverbindung. (1)
• PE_HTTP_CONNECT (80502) Fehler beim Initialisieren der Internetverbindung. (2)
• PE_HTTP_OPENREQUEST (80503) Fehler beim Initialisieren der Internetverbindung. (3)
• PE_HTTP_SENDREQUEST (80504) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_SENDREQUESTEX (80505) Fehler beim Verbindungsaufbau zum Server.
• PE_HTTP_WRITEFILE (80506) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_ENDREQUEST (80507) Übertragungsfehler beim Senden der Daten zum Server.
• PE_HTTP_QUERYINFO (80508) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_READFILE (80509) Übertragungsfehler beim Empfangen der Daten vom Server.
• PE_HTTP_PROXY_AUTH (80510) Proxy-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_AUTH (80511) Server-Authentifizierung fehlgeschlagen.
• PE_HTTP_SERVER_ERROR (80512) Interner Fehler beim Server.
Parameter
• hwndParent (IN) Dieser Window-Handle sollte möglichst nicht NULL sein.
Betriebssysteme
Microsoft Windows, Linux, macOS und FreeBSD
v3.90.161 PERFIDIA Toolkit Reference
539© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
PERFIDIA Fehlercodes
Liste aller Fehlercodes von PERFIDIA mit einer allgemeinen Fehlerbeschreibung.
Fehlercode Allgemeine Beschreibung70101 Die gefundene PERFIDIA-DLL ist zu alt. [Nur Windows]70101 Das gefundene PERFIDIA-SharedObject ist zu alt. [Nur Linux/Mac]70102 Es wurde keine passende WinSock DLL gefunden. [Nur Windows]70103 Das Zertifikat der OFD konnte nicht gelesen werden.70110 Kein Zugriff auf PERFIDIA-Datenverzeichnis.70111 Kein Zugriff auf ein Unterverzeichnis.70140 Das PERFIDIA-Datenverzeichnis ist nicht vorhanden.70141 Ein Unterverzeichnis kann nicht angelegt werden.70201 Fehler beim Einlesen der Zertifizierungsantwort.70202 Es gibt keinen Schlüssel, der auf eine Zertifizierungsantwort wartet.70203 Beim Einlesen der Annahmestellen-Zertifikate ist ein Fehler aufgetreten.70204 Fehler bei der Initialisierung von SVEmail.70205 Die Warteschlange ist leer.70206 Fehler beim Verarbeiten der SV-Dateien.70301 Fehler beim Lesen des Elster-Zertifikats.70302 Fehler beim Parsen der Protokollantwort.70303 Die XML-Antwort der Clearingstelle ist in einem ungültigen Format.70304 Unbekanntes Verfahren: Antwort kann nicht ausgewertet werden.70305 Ungültige Steuernummer! [Steuernummer ist nicht 13 Stellen lang]70306 Ungültige Steuernummer! [Steuernummer enthält nicht nur Ziffern]70307 Ungültige Steuernummer! [5. Stelle der Steuernummer ist nicht 0]70308 Ungültige Steuernummer! [ungültige Bundesfinanzamtsnummer]70309 Ungültige Steuernummer! [ungültiger Bezirk 0]70310 Ungültige Steuernummer! [ungültiger Bezirk (Bezirk < 100)]70311 Ungültige Steuernummer! [ungültige Finanzamtsnummer]70312 Ungültige Steuernummer! [ungültiges Bundesland]70313 Ungültige Steuernummer! [ungültige Prüfziffer]70314 Ungültige Steuernummer!70315 Ungültige Steuernummer!70316 Ungültige Steuernummer!70317 Fehler beim Lesen der XML-Datei70318 Fehler beim Schreiben der XML-Datei70319 Bei der Übertragung ist ein Fehler in der Clearingstelle der OFD aufgetreten.70320 Lohnsteuerbescheinigungen ab 2009 können nur noch authenfiziert übertragen werden.70401 LStB-Empfänger ungültig.70402 LStB-XML-Fehler 1 beim Erstellen der Daten.70403 LStB-XML-Fehler 2 beim Erstellen der Daten.70404 LStB-XML-Fehler 3 beim Erstellen der Daten.70405 LStB-XML-Fehler 4 beim Erstellen der Daten.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de540
Fehlercode Allgemeine Beschreibung70406 LStB-XML-Fehler 5 beim Erstellen der Daten.70407 LStB-XML-Fehler 6 beim Erstellen der Daten.70408 LStB-XML-Fehler 7 beim Erstellen der Daten.70409 LStB-XML-Fehler 8 beim Erstellen der Daten.70410 LStB-XML-Fehler 9 beim Erstellen der Daten.70411 LStB-XML-Fehler 10 beim Erstellen der Daten.70502 LStA-XML-Fehler 1 beim Erstellen der Daten.70503 LStA-XML-Fehler 2 beim Erstellen der Daten.70504 LStA-XML-Fehler 3 beim Erstellen der Daten.70505 LStA-XML-Fehler 4 beim Erstellen der Daten.70506 LStA-XML-Fehler 5 beim Erstellen der Daten.70507 LStA-XML-Fehler 6 beim Erstellen der Daten.70508 LStA-XML-Fehler 7 beim Erstellen der Daten.70509 LStA-XML-Fehler 8 beim Erstellen der Daten.70510 LStA-XML-Fehler 9 beim Erstellen der Daten.70511 LStA-XML-Fehler 10 beim Erstellen der Daten.70602 UStA-XML-Fehler 1 beim Erstellen der Daten.70603 UStA-XML-Fehler 2 beim Erstellen der Daten.70604 UStA-XML-Fehler 3 beim Erstellen der Daten.70605 UStA-XML-Fehler 4 beim Erstellen der Daten.70606 UStA-XML-Fehler 5 beim Erstellen der Daten.70607 UStA-XML-Fehler 6 beim Erstellen der Daten.70608 UStA-XML-Fehler 7 beim Erstellen der Daten.70609 UStA-XML-Fehler 8 beim Erstellen der Daten.70610 UStA-XML-Fehler 9 beim Erstellen der Daten.70611 UStA-XML-Fehler 10 beim Erstellen der Daten.71001 Statis-XML-Fehler 1 beim Erstellen der Daten.71002 Statis-XML-Fehler 2 beim Erstellen der Daten.71003 Statis-XML-Fehler 3 beim Erstellen der Daten.71004 Statis-XML-Fehler 4 beim Erstellen der Daten.71005 Statis-XML-Fehler 5 beim Erstellen der Daten.71006 Statis-XML-Fehler 6 beim Erstellen der Daten.71007 Statis-XML-Fehler 7 beim Erstellen der Daten.71008 Statis-XML-Fehler 8 beim Erstellen der Daten.71009 Statis-XML-Fehler 9 beim Erstellen der Daten.71010 Bei der Übertragung ist ein Fehler in der Clearingstelle des Statistischen Bundesamtes
aufgetreten.71011 Fehler beim Parsen der Protokollantwort.71012 Die XML-Antwort der Clearingstelle ist in einem ungültigen Format.71013 Unbekanntes Verfahren: Antwort kann nicht ausgewertet werden.80101 Nicht genügend Arbeitsspeicher.80102 Die PERFIDIA Bibliothek ist nicht initialisiert.80104 Ungültige Betriebsnummer.
v3.90.161 PERFIDIA Toolkit Reference
541© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Fehlercode Allgemeine Beschreibung80105 Ungültige Lizenz.80106 Ungültiges Passwort.80107 Die Verbindung zum Internet konnte nicht hergestellt werden.80108 Es ist kein MAPI-fähiges Email-Programm installiert. [Nur Windows]80109 Ungültige Annahmestellen-Nummer.80110 Größe eines Buffers ist zu klein.80111 Größe eines Parameters zu lang oder zu kurz.80112 Text wurde abgeschnitten, da mindestens ein Buffer zu klein ist.80113 Entweder existiert kein gültiger Schlüssel oder die Schlüsselinformationen können nicht
gelesen werden.80114 Der Wert eines Parameters ist ungültig.80115 Funktion ist in dieser Perfidia-Version nicht implementiert.80116 Schlüsseldatei kann nicht gelesen werden.80117 Interner Fehler in Info-Datei.80118 Fehler beim Schreiben der Schlüsseldatei.80119 Es ist ein Fehler beim Generieren des Zertifikats aufgetreten.80120 Es existiert bereits ein gültiger Schlüssel.80121 Es existiert kein gültiger Schlüssel.80123 Es existiert kein gültiger Schlüssel.80124 Der existierende Schlüssel ist nicht mehr gültig.80125 Privater Schlüssel steht nicht zur Verfügung.80126 Öffentlicher Schlüssel steht nicht zur Verfügung.80127 Kein gültiges Zertifikat für angegebenen Empfänger gefunden.80128 Die Verschlüsselung ist fehlgeschlagen.80129 Keine Daten gefunden.80130 Die Entschlüsselung ist fehlgeschlagen.80131 Fehler beim Email-Versenden über die MAPI-Schnittstelle. [Nur Windows]80132 Kein Zugriff auf Empfänger-Schlüssel.80133 Fehler beim Scannen der Send-Queue.80134 Die Warteschlange ist leer.80135 Dateinummer bereits benutzt.80136 Unerlaubter NULL-Pointer.80137 Fehler beim Erstellen eines Threads.80138 Ungültiger Variablenname.80139 Die Funktion wurde durch den Benutzer abgebrochen.80140 Funktion oder Typ nicht unterstützt.80141 Ungültiger Benutzername und/oder ungültiges Passwort.80142 Ungültige Prüfsumme.80143 Ungültiges Format.80144 Ungültiger Vektorname.80145 Serverkommunikation fehlerhaft.80146 Server hat Kommunikation abgebrochen.80147 Es besteht keine Verbindung.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de542
Fehlercode Allgemeine Beschreibung80148 Die Verbindung ist unterbrochen worden.80149 Fehler beim Verbindungsaufbau.80150 Fehler beim Datensenden.80151 Fehler beim Datenempfangen.80152 Zeitüberschreitung80153 Funktion fehlgeschlagen80154 Unbekannter Fehler.80155 Ungültiger Zeiger.80156 Die Benutzer/Passwort-Kombination ist ungültig.80157 Fehler beim Lesen des öffentlichen Schlüssels.80158 Ungültiger HMAC.80159 Ungültige PIN80160 Das Laden eines Moduls ist fehlgeschlagen.80161 In einem Modul kann eine Funktion nicht gefunden werden.80162 Der Zertifikat ist ‚self-signed‘.80163 Der Server ist momentan überlastet.80164 Das Modul wird gerade von einer anderen Instanz verwendet.80165 Zu viele Anfragen. Vorgang zu einem späteren Zeitpunkt wiederholden.80166 Der angeforderte Dienst steht derzeit nicht zur Verfügung.80167 Eine neuere PERFIDIA Version wird benötigt.80168 Der Versand der Daten ist momentan nicht möglich, da die Server gewartet werden.80169 Im Windows-Zertifikatsspeicher fehlt ein benötigtes PCA- oder CA-Zertifikat.80301 Fehler bei der Datenübertragen an den Emailserver. Eventuell ist die Netzwerkverbin-
dung unterbrochen worden.80302 Fehler beim Datenempfang vom Emailserver. Eventuell ist die Netzwerkverbindung
unterbrochen worden.80303 Keine Email-Anlagen gefunden.80304 Fehler beim Lesen der Email-Anlagen.80305 Der Emailserver antwortet nicht korrekt.80306 Fehler in der Email-Adresse des Absenders.80307 Fehler in der Email-Adresse des Empfängers.80308 Fehler beim Start der Emailübertragung.80309 Email konnte nicht in die Versand-Queue des Emailservers gestellt werden.80310 Falsche IP-Adresse oder Hostname.80311 Fehler beim Anfordern eines Sockets.80312 Fehler beim Verbindungsaufbau zum Emailserver.80313 Abbruch beim Loginversuch über SMTP_AUTH_LOGIN.80314 Benutzername vom Emailserver nicht akzeptiert.80315 Benutzername und/oder Passwort vom Emailserver nicht akzeptiert.80316 Abbruch beim Loginversuch über SMTP_AUTH_PLAIN.80317 Benutzername und/oder Passwort vom Emailserver nicht akzeptiert.80401 Lesefehler beim Komprimieren.80402 Schreibfehler beim Komprimieren.
v3.90.161 PERFIDIA Toolkit Reference
543© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Fehlercode Allgemeine Beschreibung80403 Lesefehler beim Entkomprimieren.80404 Lesefehler beim Entkomprimieren.80405 Schreibfehler beim Entkomprimieren.80406 Beim Komprimieren ist das Schließen einer Datei fehlgeschlagen.80407 Beim Komprimieren ist das Schließen einer Datei fehlgeschlagen.80408 Beim Komprimieren ist das Öffnen einer Datei fehlgeschlagen.80409 Beim Komprimieren ist das Öffnen einer Datei fehlgeschlagen.80410 Beim Entkomprimieren ist das Öffnen einer Datei fehlgeschlagen.80411 Beim Entkomprimieren ist das Öffnen einer Datei fehlgeschlagen.80501 Fehler beim Initialisieren der Internetverbindung. (1) [Nur Windows]80502 Fehler beim Initialisieren der Internetverbindung. (2) [Nur Windows]80503 Fehler beim Initialisieren der Internetverbindung. (3) [Nur Windows]80504 Übertragungsfehler beim Senden der Daten zum Server. [Nur Windows]80505 Fehler beim Verbindungsaufbau zum Server. [Nur Windows]80506 Übertragungsfehler beim Senden der Daten zum Server. [Nur Windows]80507 Übertragungsfehler beim Senden der Daten zum Server. [Nur Windows]80508 Übertragungsfehler beim Empfangen der Daten vom Server. [Nur Windows]80509 Übertragungsfehler beim Empfangen der Daten vom Server. [Nur Windows]80510 Proxy-Authentifizierung fehlgeschlagen. [Nur Windows]80511 Server-Authentifizierung fehlgeschlagen. [Nur Windows]80512 Interner Fehler beim Server. [Nur Windows]80513 Fehler bei der Authentifizierung mit dem Client-Zertifikat beim Server. [Nur Windows]80551 Die gefundene cURL Version ist zu alt. Es wird v7.12.3 oder höher benötigt. [Nur Linux/
Mac]80552 Die gefundene cURL Bibliothek unterstützt kein SSL. [Nur Linux/Mac]80553 Die Initialisierung von cURL ist fehlgeschlagen. [Nur Linux/Mac]80554 Die Adresse zum Proxy-Server konnte nicht aufgelöst werden. [Nur Linux/Mac]80555 Die Adresse zum Host-Server konnte nicht aufgelöst werden. [Nur Linux/Mac]80556 Es konnte keine Verbindung zum Host-Server hergestellt werden. [Nur Linux/Mac]80557 Übertragungsfehler beim Senden der Daten. [Nur Linux/Mac]80558 Übertragungsfehler beim Empfangen der Daten. [Nur Linux/Mac]80559 Aufgrund einer Zeitüberschreitung wurde die Übertragung abgebrochen. [Nur Linux/
Mac]80560 Es konnten keine Daten empfangen werden. [Nur Linux/Mac]80561 Die Authentifizierung beim Server ist fehlgeschlagen. [Nur Linux/Mac]80562 Bei der Übertragung ist ein unerwarteter Fehler aufgetreten. [Nur Linux/Mac]80601 Lesefehler in XML-Datei.80602 Schreibfehler in XML-Datei.80603 Die XML-Datei hat kein gültiges Format.80604 Die XML-Datei enthält keine Daten.80605 XML-Daten nicht gefunden.80606 Der XML-Datenzeiger ist ungültig.80701 Erstellen der ISAM-Datei fehlgeschlagen.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de544
Fehlercode Allgemeine Beschreibung80702 Öffnen der ISAM-Datei fehlgeschlagen.80703 Lesefehler in ISAM-Datei.80704 Schreibfehler in ISAM-Datei80705 Erstellen der ISAM-Datei fehlgeschlagen.80706 Fehler in ISAM-Indexdatei.80707 Fehler beim Löschen eines ISAM-Datensatzes.
80708 Eintrag existiert bereits in ISAM-Datei.80709 ISAM-Datei existiert nicht.80710 Erstellen eines ISAM-Index ist fehlgeschlagen.80711 ISAM-Datei repariert.80801 Fehler beim Erstellen der Datei.80802 Datei existiert nicht.80803 Fehler beim Öffnen der Datei.80804 Fehler beim Schließen der Datei.80805 Fehler beim Lesen der Datei.80806 Fehler beim Schreiben der Datei.80807 Es ist keine Datei geöffnet.80808 Die Datei existiert bereits.80809 Datei kann nicht umbenannt werden.80810 Ungültige Dateigröße.80811 Fehler beim Positionieren in der Datei.80812 Der Dateiname ist zu lang.80813 Ungültiger Dateiname.80814 Fehler beim Kopieren einer Datei.80815 Fehler beim Lesen des Dateistatus.80816 Das Ende der Datei wurde erreicht.80817 Auf eine Datei oder ein Verzeichnis bestehen nicht genügend Zugriffsrechte.80818 Fehler beim Löschen einer Datei.80901 Fehler beim Datenentschlüsseln: DER-Format-Fehler.80902 Fehler beim Datenentschlüsseln: Falscher oder unbekannter Algorithmus.80903 Fehler beim Datenentschlüsseln: Zu wenig Arbeitsspeicher.80904 Fehler beim Datenentschlüsseln: kein passendes Empfängerzertifikat gefunden.81001 Keinen Drucker gefunden. [Nur Windows]81002 Fehler beim Speichern des Druckauftrags in der Druckerwarteschlage. [Nur Windows]81003 Fehler beim Erstellen des Druckauftrags. [Nur Windows]81004 Druck durch Benutzer abgebrochen. [Nur Windows]81101 Fehlerhafte Kommunikation über die PKCS#11-Schnittstelle.81102 Die PKCS#11-Bibliothek konnte nicht geladen werden.81103 Der Funktionsaufruf wird nicht unterstützt.81104 Die PKCS#11-Bibliothek ist nicht initialisiert.81105 PKCS#11-Objekt nicht gefunden.81106 Kommunikationsfehler mit dem Device-Slot oder Token.81107 Der Token hat nicht genügend Arbeitsspeicher.
v3.90.161 PERFIDIA Toolkit Reference
545© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de
Fehlercode Allgemeine Beschreibung81108 Der Token wurde während der Benutzung entfernt.81109 Der Token ist nicht mehr verfügbar.81110 Der Token konnte nicht gefunden werden.81111 Die PIN ist nicht korrekt.81112 Die PIN enthält ungültige Zeichen.81113 Die PIN ist abgelaufen.81114 Die PIN ist gesperrt.81115 Die PIN ist nicht initialisiert.
PERFIDIA Toolkit Reference v3.90.161
© Copyright 2004-2020 UBM Drecker GmbH • www.perfidia.de546
Lizenzen eingebauter Open-Source-Komponenten
zlib
Copyright (C) 1995-2013 Jean-loup Gailly and Mark Adler
This software is provided ‚as-is‘, without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.
Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.
HARU Free PDF Library
Copyright (C) 1999-2006 Takeshi Kanno
This software is provided ‚as-is‘, without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
3. This notice may not be removed or altered from any source distribution.