X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FSEPA%2FXML.pm;h=a4cf5f5adaa9586190e63bd7e3e1907dfd5220f2;hb=7718459cd0be728a57d7ca75dd8077316df7d730;hp=f939453fe8f9f8a936a9cd7c2b42ddf9d97d9a1c;hpb=66e2fdcc4f89a4f13c77f6e44f2969fd46aa7aba;p=kivitendo-erp.git diff --git a/SL/SEPA/XML.pm b/SL/SEPA/XML.pm index f939453fe..a4cf5f5ad 100644 --- a/SL/SEPA/XML.pm +++ b/SL/SEPA/XML.pm @@ -67,10 +67,15 @@ sub _replace_special_chars { 'Ü' => 'Ue', 'ß' => 'ss', '&' => '+', + '`' => '\'', ); map { $text =~ s/$_/$special_chars{$_}/g; } keys %special_chars; + # for all other non ascii chars 'OLÉ S.L.' and 'Årdberg AB'! + use Text::Unidecode qw(unidecode); + $text = unidecode($text); + return $text; } @@ -138,7 +143,7 @@ sub to_xml { my $is_coll = $self->{collection}; my $cd_src = $is_coll ? 'Cdtr' : 'Dbtr'; my $cd_dst = $is_coll ? 'Dbtr' : 'Cdtr'; - my $pain_id = $is_coll ? 'pain.008.002.02' : 'pain.001.002.03'; + my $pain_id = $is_coll ? 'pain.008.001.02' : 'pain.001.001.03'; my $pain_elmt = $is_coll ? 'CstmrDrctDbtInitn' : 'CstmrCdtTrfInitn'; my @pii_base = (strftime('PII%Y%m%d%H%M%S', @now), rand(1000000000)); @@ -224,7 +229,7 @@ sub to_xml { $xml->startTag('MndtRltdInf'); $xml->dataElement('MndtId', $self->_restricted_identification_sepa2($transaction->get('mandator_id'))); - $xml->dataElement('DtOfSgntr', $transaction->get('reference_date', 2010-12-02)); + $xml->dataElement('DtOfSgntr', $self->_restricted_identification_sepa2($transaction->get('date_of_signature'))); $xml->endTag('MndtRltdInf'); $xml->startTag('CdtrSchmeId');