Einführung einer ID-Spalte in acc_trans
[kivitendo-erp.git] / templates / webpages / acctranscorrections / assistant_for_wrong_taxkeys_de.html
1 [% USE HTML %][% USE LxERP %]
2 <body>
3
4  <p><div class="listtop">[% title %]</div></p>
5
6  <p>
7   Die folgende Buchung enthält falsche Steuerschlüssel:
8   <a href="[% problem.link %]">
9    [%- IF problem.data.module == 'ar' %]
10    Debitorenbuchung
11    [%- ELSIF problem.data.module == 'ap' %]
12    Kreditorenbuchung
13    [%- ELSE %]
14    Dialogbuchung
15    [%- END %]
16    [% HTML.escape(problem.data.reference) %]
17   </a>
18  </p>
19
20  <p>
21   Dies kann aus zwei Gründen geschehen sein:
22
23   Zum Einen gab es einen Bug in Lx-Office, der dazu führte, dass bei Buchungen mit verschiedenen Steuerschlüssel auf ein Konto teilweise falsche Steuerschlüssel gespeichert wurden.
24
25   Zum Anderen war es möglich, die Steuern unabhängig vom ausgewählten Steuerschlüssel selber einzugeben.
26
27   Solche Einträge sind aber nicht DATEV-exportiertbar und müssen ebenfalls korrigiert werden.
28  </p>
29
30  <p>
31   Nachfolgend wird angezeigt, wie die Buchung momentan aussieht.
32
33   Sie haben die Möglichkeit, die Buchung zu korrigieren, indem Sie in den Drop-Down-Boxen die richtigen Steuerschlüssel auswählen und anschließend auf den Button "Buchung korrigieren" drücken.
34
35   Auch nach einer Korrektur kann es mit dieser Buchung noch weitere Probleme geben (z.B. nicht zum Steuerschlüssel passende Steuern), weshalb ein erneutes Ausführen der Hauptbuchanalyse empfohlen wird.
36  </p>
37
38  <p>
39   Alternativ können Sie die Buchung auch mit löschen lassen und sie anschließend neu eingeben.
40
41   Drücken Sie dafür auf den Button "Buchung löschen".
42  </p>
43
44  <p>Aktuell sieht die Buchung wie folgt aus:</p>
45
46  <form method="post" action="acctranscorrections.pl" name="Form">
47   <p>
48    <table>
49     <tr>
50      <th class="listheading">Konto</th>
51      <th class="listheading">Soll</th>
52      <th class="listheading">Haben</th>
53      <th class="listheading">Gespeicherte Steuern</th>
54      <th class="listheading">Gespeicherter Steuerschlüssel</th>
55      <th class="listheading">Erwartete Steuern</th>
56      <th class="listheading"></th>
57      <th class="listheading">Richtiger Steuerschlüssel</th>
58     </tr>
59
60     [%- SET curr_row = 0 %]
61     [%- IF (problem.data.module == 'ar') || ((problem.data.module == 'gl') && (problem.acc_trans.credit.entries.first.acc_trans_id < problem.acc_trans.debit.entries.first.acc_trans_id)) %]
62      [%- SET order = [ 'credit', 'debit' ] %]
63      [%- SET other_side = 'debit' %]
64     [%- ELSE %]
65      [%- SET order = [ 'debit', 'credit' ] %]
66      [%- SET other_side = 'credit' %]
67     [%- END %]
68
69
70     [%- IF problem.acc_trans.credit.entries.size > problem.acc_trans.debit.entries.size %]
71     [%- ELSE %]
72     [%- END %]
73
74
75     [%- FOREACH idx = order %]
76      [%- FOREACH row = problem.acc_trans.$idx.entries %]
77       [%- SET curr_row = curr_row + 1 %]
78       <tr class="listrow[% curr_row % 2 %]">
79        <td>[% HTML.escape(row.accno) %]--[% HTML.escape(row.chartdescription) %]</td>
80        <td align="right">
81         [%- IF idx == 'debit' %]
82          [% LxERP.format_amount(row.display_amount, 2) %]
83         [%- END %]
84        </td>
85        <td align="right">
86         [%- IF idx == 'credit' %]
87          [% LxERP.format_amount(row.display_amount, 2) %]
88         [%- END %]
89        </td>
90        <td align="right">[% IF row.actual_tax %][% LxERP.format_amount(row.display_actual_tax, 2) %][% END %]</td>
91        <td>[% IF (problem.data.module == 'gl') || (idx != other_side) %][% HTML.escape(row.taxdescription) %][% END %]</td>
92        <td align="right">[% IF row.expected_tax %][% LxERP.format_amount(row.display_expected_tax, 2) %][% END %]</td>
93        <td align="center" valign="center"><img src="image/[% IF row.taxkey_error %]error[% ELSE %]ok[% END %].png"></td>
94
95        <td>
96         [%- IF row.taxkey_error %]
97          <input type="hidden" name="fixes[+].acc_trans_id" value="[% HTML.escape(row.acc_trans_id) %]">
98          <input type="hidden" name="fixes[].tax_entry_acc_trans_id" value="[% HTML.escape(row.tax_entry_acc_trans_id) %]">
99          <select name="fixes[].taxkey" style="width: 250px" onchange="enable_fix_button_maybe()">
100           <option value="">---bitte auswählen---</option>
101           [%- FOREACH taxkey = row.correct_taxkeys %]
102            <option value="[% HTML.escape(taxkey.taxkey) %]">[% HTML.escape(taxkey.description) %]</option>
103           [%- END %]
104         [%- ELSE %]
105         &nbsp;
106         [%- END %]
107       </tr>
108      [%- END %]
109     [%- END %]
110
111    </table>
112   </p>
113   <hr>
114
115   <p>
116    <input type="hidden" name="callback" value="[% HTML.escape(callback) %]">
117
118    <input type="hidden" name="action" value="dispatcher">
119    <input type="hidden" name="trans_id" value="[% HTML.escape(problem.data.trans_id) %]">
120    <input type="hidden" name="module" value="[% HTML.escape(problem.data.module) %]">
121    <input type="hidden" name="reference" value="[% HTML.escape(problem.data.reference) %]">
122    <input type="submit" class="submit" id="fix_transaction_button" name="action_fix_wrong_taxkeys" value="Buchung korrigieren" disabled>
123    <input type="submit" class="submit" name="action_delete_transaction" value="Buchung löschen">
124    <input type="button" class="submit" onclick="history.back()" value="Zurück">
125   </p>
126  </form>
127
128  <script type="text/javascript" src="js/jquery.js"></script>
129  <script type="text/javascript">
130   <!--
131     function enable_fix_button_maybe() {
132       var all_set = true;
133       $("[@name='fixes[].taxkey']").each(function () {
134         var val = $(this).attr('value');
135         if (val == '')
136           all_set = false;
137       });
138
139       $("#fix_transaction_button").attr('disabled', !all_set);
140     }
141     -->
142  </script>
143
144 </body>
145 </html>