38function is_empty($var, $allow_false =
false, $allow_ws =
false)
40 if (!isset($var) || is_null($var) || ($allow_ws ==
false && trim($var) ==
"" && !is_bool($var)) || ($allow_false ===
false && is_bool($var) && $var ===
false) || (is_array($var) && empty($var))) {
59 $head[$h][0] = DOL_URL_ROOT.
'/accountancy/admin/card.php?id='.$object->id;
60 $head[$h][1] = $langs->trans(
"AccountAccounting");
61 $head[$h][2] =
'card';
83 $account = rtrim($account,
"0");
98 if ($account < 0 ||
is_empty($account)) {
102 if (!empty($conf->global->ACCOUNTING_MANAGE_ZERO)) {
109 $i = strlen($account);
137 if ($accounta < 0 ||
is_empty($accounta)) {
141 if (!empty($conf->global->ACCOUNTING_MANAGE_ZERO)) {
148 $i = strlen($accounta);
183function journalHead($nom, $variante, $period, $periodlink, $description, $builddate, $exportlink =
'', $moreparam = array(), $calcmode =
'', $varlink =
'')
187 print
"\n\n<!-- start banner journal -->\n";
190 $varlink =
'?'.$varlink;
195 $head[$h][0] = $_SERVER[
"PHP_SELF"].$varlink;
196 $head[$h][1] = $langs->trans(
"Journalization");
197 $head[$h][2] =
'journal';
199 print
'<form method="POST" action="'.$_SERVER[
"PHP_SELF"].$varlink.
'">';
200 print
'<input type="hidden" name="token" value="'.newToken().
'">';
204 foreach ($moreparam as $key => $value) {
205 print
'<input type="hidden" name="'.$key.
'" value="'.$value.
'">';
207 print
'<table class="border centpercent tableforfield">';
211 print
'<td class="titlefieldcreate">'.$langs->trans(
"Name").
'</td>';
212 print
'<td colspan="3">';
220 print
'<td>'.$langs->trans(
"CalculationMode").
'</td>';
222 print
'<td colspan="3">';
228 print
'</td><td colspan="2">'.$variante;
236 print
'<td>'.$langs->trans(
"ReportPeriod").
'</td>';
238 print
'<td colspan="3">';
246 print
'</td><td colspan="2">'.$periodlink;
253 print
'<td>'.$langs->trans(
"ReportDescription").
'</td>';
254 print
'<td colspan="3">'.$description.
'</td>';
261 print
'<div class="center"><input type="submit" class="button" name="submit" value="'.$langs->trans(
"Refresh").
'"></div>';
265 print
"\n<!-- end banner journal -->\n\n";
283 $periodbydefaultontransfer = (empty($conf->global->ACCOUNTING_DEFAULT_PERIOD_ON_TRANSFER) ? 0 : $conf->global->ACCOUNTING_DEFAULT_PERIOD_ON_TRANSFER);
284 if ($periodbydefaultontransfer == 2) {
285 $sql =
"SELECT date_start, date_end FROM ".MAIN_DB_PREFIX.
"accounting_fiscalyear";
286 $sql .=
" WHERE date_start < '".$db->idate(
dol_now()).
"' AND date_end > '".$db->idate(
dol_now()).
"'";
287 $sql .= $db->plimit(1);
288 $res = $db->query($sql);
289 if ($res->num_rows > 0) {
290 $obj = $db->fetch_object($res);
292 $date_start = $db->jdate($obj->date_start);
293 $date_end = $db->jdate($obj->date_end);
298 $year_start = $year_start - 1;
300 $year_end = $year_start + 1;
301 $month_end = $month_start - 1;
302 if ($month_end < 1) {
306 $date_start =
dol_mktime(0, 0, 0, $month_start, 1, $year_start);
309 } elseif ($periodbydefaultontransfer == 1) {
312 $pastmonthyear = $year_current;
313 if ($pastmonth == 0) {
320 $pastmonthyear = $year_current;
321 if ($pastmonth == 0) {
328 'date_start' => $date_start,
329 'date_end' => $date_end,
330 'pastmonthyear' => $pastmonthyear,
331 'pastmonth' => $pastmonth
347 if ($from_time ===
null) {
350 $from_db_time = $db->idate($from_time);
352 $sql =
"SELECT date_start, date_end FROM ".$db->prefix().
"accounting_fiscalyear";
353 $sql .=
" WHERE date_start <= '".$db->escape($from_db_time).
"' AND date_end >= '".$db->escape($from_db_time).
"'";
354 $sql .= $db->order(
'date_start',
'DESC');
355 $sql .= $db->plimit(1);
356 $res = $db->query($sql);
357 if ($db->num_rows($res) > 0) {
358 $obj = $db->fetch_object($res);
360 $date_start = $db->jdate($obj->date_start);
361 $date_end = $db->jdate($obj->date_end);
364 $conf_fiscal_month_start = (int) $conf->global->SOCIETE_FISCAL_MONTH_START;
365 if ($conf_fiscal_month_start >= 1 && $conf_fiscal_month_start <= 12) {
366 $month_start = $conf_fiscal_month_start;
368 $year_start = $now_arr[
'year'];
369 if ($conf_fiscal_month_start > $now_arr[
'mon']) {
370 $year_start = $year_start - 1;
372 $year_end = $year_start + 1;
373 $month_end = $month_start - 1;
374 if ($month_end < 1) {
378 $date_start =
dol_mktime(0, 0, 0, $month_start, 1, $year_start);
383 'date_start' => $date_start,
384 'date_end' => $date_end,
length_accountg($account)
Return General accounting account with defined length (used for product and miscellaneous)
getCurrentPeriodOfFiscalYear($db, $conf, $from_time=null)
Get current period of fiscal year.
accounting_prepare_head(AccountingAccount $object)
Prepare array with list of tabs.
is_empty($var, $allow_false=false, $allow_ws=false)
Check if a value is empty with some options.
getDefaultDatesForTransfer()
Return Default dates for transfer based on periodicity option in accountancy setup.
journalHead($nom, $variante, $period, $periodlink, $description, $builddate, $exportlink='', $moreparam=array(), $calcmode='', $varlink='')
Show header of a page used to transfer/dispatch data in accounting.
clean_account($account)
Return accounting account without zero on the right.
length_accounta($accounta)
Return Auxiliary accounting account of thirdparties with defined length.
Class to manage accounting accounts.
dol_get_last_day($year, $month=12, $gm=false)
Return GMT time for last day of a month or year.
dol_mktime($hour, $minute, $second, $month, $day, $year, $gm='auto', $check=1)
Return a timestamp date built from detailed informations (by default a local PHP server timestamp) Re...
dol_get_fiche_head($links=array(), $active='', $title='', $notab=0, $picto='', $pictoisfullpath=0, $morehtmlright='', $morecss='', $limittoshow=0, $moretabssuffix='', $dragdropfile=0)
Show tabs of a record.
dol_get_fiche_end($notab=0)
Return tab footer of a card.
dol_print_date($time, $format='', $tzoutput='auto', $outputlangs='', $encodetooutput=false)
Output date in a string format according to outputlangs (or langs if not defined).
dol_now($mode='auto')
Return date for now.
getDolGlobalInt($key, $default=0)
Return dolibarr global constant int value.
complete_head_from_modules($conf, $langs, $object, &$head, &$h, $type, $mode='add', $filterorigmodule='')
Complete or removed entries into a head array (used to build tabs).
dol_getdate($timestamp, $fast=false, $forcetimezone='')
Return an array with locale date info.