31require
'../../main.inc.php';
32require_once DOL_DOCUMENT_ROOT .
'/compta/tva/class/tva.class.php';
33require_once DOL_DOCUMENT_ROOT .
'/compta/tva/class/tva.class.php';
34require_once DOL_DOCUMENT_ROOT .
'/compta/tva/class/paymentvat.class.php';
35require_once DOL_DOCUMENT_ROOT .
'/compta/bank/class/account.class.php';
36require_once DOL_DOCUMENT_ROOT .
'/salaries/class/paymentsalary.class.php';
37require_once DOL_DOCUMENT_ROOT .
'/core/lib/date.lib.php';
40$langs->loadLangs(array(
'compta',
'bills'));
42$mode =
GETPOST(
"mode",
'alpha');
44$filtre =
GETPOST(
"filtre",
'alpha');
45$optioncss =
GETPOST(
'optioncss',
'alpha');
46if (!$year && $mode !=
'tvaonly') {
47 $year = date(
"Y", time());
50$limit =
GETPOST(
'limit',
'int') ?
GETPOST(
'limit',
'int') : $conf->liste_limit;
51$sortfield =
GETPOST(
'sortfield',
'aZ09comma');
52$sortorder =
GETPOST(
'sortorder',
'aZ09comma');
53$page = GETPOSTISSET(
'pageplusone') ? (
GETPOST(
'pageplusone') - 1) :
GETPOST(
"page",
'int');
54if (empty($page) || $page == -1) {
57$offset = $limit * $page;
61 $sortfield =
"ptva.datep";
67$object =
new Tva($db);
71 $socid = $user->socid;
81$tva_static =
new Tva($db);
87llxHeader(
'', $langs->trans(
"VATExpensesArea"));
89$title = $langs->trans(
"VATPayments");
92if (!empty($contextpage) && $contextpage != $_SERVER[
"PHP_SELF"]) {
93 $param .=
'&contextpage=' . $contextpage;
95if ($limit > 0 && $limit != $conf->liste_limit) {
96 $param .=
'&limit=' . $limit;
99 $param .=
'&sortfield=' . $sortfield;
102 $param .=
'&sortorder=' . $sortorder;
108 $param .=
'&year=' . $year;
111$sql =
"SELECT tva.rowid, tva.label as label, b.fk_account, ptva.fk_bank";
112$sql .=
", tva.datev";
113$sql .=
", tva.amount as total,";
114$sql .=
" ptva.rowid as pid, ptva.datep, ptva.amount as totalpaid, ptva.num_paiement as num_payment,";
115$sql .=
" pct.code as payment_code";
116$sql .=
" FROM " . MAIN_DB_PREFIX .
"tva as tva,";
117$sql .=
" " . MAIN_DB_PREFIX .
"payment_vat as ptva";
118$sql .=
" INNER JOIN " . MAIN_DB_PREFIX .
"bank as b ON (b.rowid = ptva.fk_bank)";
119$sql .=
" INNER JOIN " . MAIN_DB_PREFIX .
"bank_account as bank ON (bank.rowid = b.fk_account)";
120$sql .=
" LEFT JOIN " . MAIN_DB_PREFIX .
"c_paiement as pct ON ptva.fk_typepaiement = pct.id";
121$sql .=
" WHERE ptva.fk_tva = tva.rowid";
122$sql .=
" AND tva.entity = " . $conf->entity;
131if (preg_match(
'/^cs\./', $sortfield)
132 || preg_match(
'/^tva\./', $sortfield)
133 || preg_match(
'/^ptva\./', $sortfield)
134 || preg_match(
'/^pct\./', $sortfield)
135 || preg_match(
'/^bank\./', $sortfield)) {
136 $sql .= $db->order($sortfield, $sortorder);
141dol_syslog(
"compta/tva/payments.php: select payment", LOG_DEBUG);
142$resql = $db->query($sql);
144 $num = $db->num_rows($resql);
149print_barre_liste($title, $page, $_SERVER[
"PHP_SELF"], $param, $sortfield, $sortorder, $center, $num, $num,
'title_accountancy', 0,
'',
'', $limit);
151if (isModEnabled(
'tax') && $user->hasRight(
'tax',
'charges',
'lire')) {
152 print
'<form method="POST" action="' . $_SERVER[
"PHP_SELF"] .
'">';
153 if ($optioncss !=
'') {
154 print
'<input type="hidden" name="optioncss" value="' . $optioncss .
'">';
156 print
'<input type="hidden" name="token" value="' . newToken() .
'">';
157 print
'<input type="hidden" name="formfilteraction" id="formfilteraction" value="list">';
158 print
'<input type="hidden" name="sortfield" value="' . $sortfield .
'">';
159 print
'<input type="hidden" name="sortorder" value="' . $sortorder .
'">';
160 print
'<input type="hidden" name="page" value="' . $page .
'">';
161 print
'<input type="hidden" name="mode" value="' . $mode .
'">';
163 print
'<div class="div-table-responsive">';
164 print
'<table class="noborder centpercent">';
165 print
'<tr class="liste_titre">';
166 print_liste_field_titre(
"RefPayment", $_SERVER[
"PHP_SELF"],
"ptva.rowid",
"", $param,
'', $sortfield, $sortorder);
167 print_liste_field_titre(
"VATDeclaration", $_SERVER[
"PHP_SELF"],
"tva.rowid",
"", $param,
'', $sortfield, $sortorder);
169 print_liste_field_titre(
"PeriodEndDate", $_SERVER[
"PHP_SELF"],
"tva.datev",
"", $param,
'', $sortfield, $sortorder,
'nowraponall');
170 print_liste_field_titre(
"DatePayment", $_SERVER[
"PHP_SELF"],
"ptva.datep",
"", $param,
'align="center"', $sortfield, $sortorder);
171 print_liste_field_titre(
"PaymentMode", $_SERVER[
"PHP_SELF"],
"pct.code",
"", $param,
'', $sortfield, $sortorder);
172 print_liste_field_titre(
"Numero", $_SERVER[
"PHP_SELF"],
"ptva.num_paiement",
"", $param,
'', $sortfield, $sortorder,
'',
'ChequeOrTransferNumber');
173 if (isModEnabled(
"banque")) {
174 print_liste_field_titre(
"BankTransactionLine", $_SERVER[
"PHP_SELF"],
"ptva.fk_bank",
"", $param,
'', $sortfield, $sortorder);
175 print_liste_field_titre(
"BankAccount", $_SERVER[
"PHP_SELF"],
"bank.ref",
"", $param,
'', $sortfield, $sortorder);
178 print_liste_field_titre(
"ExpectedToPay", $_SERVER[
"PHP_SELF"],
"tva.amount",
"", $param,
'class="right"', $sortfield, $sortorder);
179 print_liste_field_titre(
"PayedByThisPayment", $_SERVER[
"PHP_SELF"],
"ptva.amount",
"", $param,
'class="right"', $sortfield, $sortorder);
182 $sql =
"SELECT tva.rowid, tva.label as label, b.fk_account, ptva.fk_bank";
183 $sql .=
", tva.datev";
184 $sql .=
", tva.amount as total,";
185 $sql .=
" ptva.rowid as pid, ptva.datep, ptva.amount as totalpaid, ptva.num_paiement as num_payment,";
186 $sql .=
" pct.code as payment_code";
187 $sql .=
" FROM " . MAIN_DB_PREFIX .
"tva as tva,";
188 $sql .=
" " . MAIN_DB_PREFIX .
"payment_vat as ptva";
189 $sql .=
" INNER JOIN " . MAIN_DB_PREFIX .
"bank as b ON (b.rowid = ptva.fk_bank)";
190 $sql .=
" INNER JOIN " . MAIN_DB_PREFIX .
"bank_account as bank ON (bank.rowid = b.fk_account)";
191 $sql .=
" LEFT JOIN " . MAIN_DB_PREFIX .
"c_paiement as pct ON ptva.fk_typepaiement = pct.id";
192 $sql .=
" WHERE ptva.fk_tva = tva.rowid";
193 $sql .=
" AND tva.entity = " . $conf->entity;
202 if (preg_match(
'/^cs\./', $sortfield)
203 || preg_match(
'/^tva\./', $sortfield)
204 || preg_match(
'/^ptva\./', $sortfield)
205 || preg_match(
'/^pct\./', $sortfield)
206 || preg_match(
'/^bank\./', $sortfield)) {
207 $sql .= $db->order($sortfield, $sortorder);
211 $num = $db->num_rows($resql);
217 while ($i < min($num, $limit)) {
218 $obj = $db->fetch_object($resql);
220 $tva->id = $obj->rowid;
221 $tva->ref = $obj->rowid;
222 $tva->label = $obj->label;
224 $payment_vat_static->id = $obj->pid;
225 $payment_vat_static->ref = $obj->pid;
227 print
'<tr class="oddeven">';
230 print
'<td>' . $payment_vat_static->getNomUrl(1) .
"</td>\n";
234 print $tva->getNomUrl(1,
'20');
241 $date = $db->jdate($obj->datev);
242 print
'<td class="center nowraponall">' .
dol_print_date($date,
'day') .
'</td>';
245 $datep = $db->jdate($obj->datep);
246 print
'<td class="center nowraponalls">' .
dol_print_date($datep,
'day') .
'</td>';
249 $labelpaymenttype =
'';
250 if ($obj->payment_code) {
251 $labelpaymenttype = $langs->trans(
"PaymentTypeShort" . $obj->payment_code) .
' ';
254 print
'<td class="tdoverflowmax100" title="' .
dol_escape_htmltag($labelpaymenttype) .
'">';
261 if (isModEnabled(
"banque")) {
264 $accountlinestatic->id = $obj->fk_bank;
265 print $accountlinestatic->getNomUrl(1);
271 $account->fetch($obj->fk_account);
272 print $account->getNomUrl(1);
277 print
'<td class="right"><span class="amount">' .
price($obj->total) .
'</span></td>';
280 print
'<td class="right"><span class="amount">';
281 if ($obj->totalpaid) {
282 print
price($obj->totalpaid);
284 print
'</span></td>';
287 $total = $total + $obj->total;
288 $totalpaid = $totalpaid + $obj->totalpaid;
293 print
'<tr class="liste_total"><td colspan="3" class="liste_total">' . $langs->trans(
"Total") .
'</td>';
294 print
'<td class="liste_total right"></td>';
295 print
'<td class="center liste_total"> </td>';
296 print
'<td class="center liste_total"> </td>';
297 if (isModEnabled(
"banque")) {
298 print
'<td class="center liste_total"> </td>';
299 print
'<td class="center liste_total"> </td>';
301 print
'<td class="center liste_total"> </td>';
302 print
'<td class="center liste_total"> </td>';
303 print
'<td class="liste_total right">' .
price($totalpaid) .
"</td>";
if(!defined('NOREQUIRESOC')) if(!defined( 'NOREQUIRETRAN')) if(!defined('NOTOKENRENEWAL')) if(!defined( 'NOREQUIREMENU')) if(!defined('NOREQUIREHTML')) if(!defined( 'NOREQUIREAJAX')) llxHeader()
Empty header.
Class to manage bank accounts.
Class to manage bank transaction lines.
Class to manage payments of salaries.
Class to manage payments of social contributions.
Put here description of your class.
dol_get_first_day($year, $month=1, $gm=false)
Return GMT time for first day of a month or year.
dol_get_last_day($year, $month=12, $gm=false)
Return GMT time for last day of a month or year.
price($amount, $form=0, $outlangs='', $trunc=1, $rounding=-1, $forcerounding=-1, $currency_code='')
Function to format a value into an amount for visual output Function used into PDF and HTML pages.
dol_print_date($time, $format='', $tzoutput='auto', $outputlangs='', $encodetooutput=false)
Output date in a string format according to outputlangs (or langs if not defined).
print_liste_field_titre($name, $file="", $field="", $begin="", $moreparam="", $moreattrib="", $sortfield="", $sortorder="", $prefix="", $tooltip="", $forcenowrapcolumntitle=0)
Show title line of an array.
GETPOST($paramname, $check='alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
setEventMessages($mesg, $mesgs, $style='mesgs', $messagekey='', $noduplicate=0)
Set event messages in dol_events session object.
print_barre_liste($titre, $page, $file, $options='', $sortfield='', $sortorder='', $morehtmlcenter='', $num=-1, $totalnboflines='', $picto='generic', $pictoisfullpath=0, $morehtmlright='', $morecss='', $limit=-1, $hideselectlimit=0, $hidenavigation=0, $pagenavastextinput=0, $morehtmlrightbeforearrow='')
Print a title with navigation controls for pagination.
dol_syslog($message, $level=LOG_INFO, $ident=0, $suffixinfilename='', $restricttologhandler='', $logcontext=null)
Write log message into outputs.
dol_escape_htmltag($stringtoescape, $keepb=0, $keepn=0, $noescapetags='', $escapeonlyhtmltags=0, $cleanalsojavascript=0)
Returns text escaped for inclusion in HTML alt or title or value tags, or into values of HTML input f...
restrictedArea(User $user, $features, $object=0, $tableandshare='', $feature2='', $dbt_keyfield='fk_soc', $dbt_select='rowid', $isdraft=0, $mode=0)
Check permissions of a user to show a page and an object.