{
display_error($msg, true);
end_page();
- exit;
- }
+ exit;
+ }
}
function db_has_currency_rates($currency, $date_, $msg=false)
{
$date = date2sql($date_);
-
+
if (is_company_currency($currency))
return 1;
$ret = check_empty_result("SELECT COUNT(*) FROM ".TB_PREF."exchange_rates WHERE curr_code = '$currency' && date_ <= '$date'");
if ($ret == 0 && $msg)
display_error(sprintf(_("Cannot retrieve exchange rate for currency %s as of %s. Please add exchange rate manually on Exchange Rates page."),
$currency, $date_), true);
- return $ret;
+ return $ret;
}
function db_has_sales_types()
}
}
-function db_has_movement_types()
-{
- return check_empty_result("SELECT COUNT(*) FROM ".TB_PREF."movement_types");
-}
-
-function check_db_has_movement_types($msg)
-{
- global $path_to_root;
- if (!db_has_movement_types())
- {
- display_error($msg, true);
- end_page();
- exit;
- }
-}
-
function db_customer_has_branches($customer_id)
{
return check_empty_result("SELECT COUNT(*) FROM ".TB_PREF."cust_branch "
{
display_error($msg, true);
end_page();
- exit;
- }
+ exit;
+ }
}
function db_has_sales_areas()
function db_has_stock_items()
{
- return check_empty_result("SELECT COUNT(*) FROM ".TB_PREF."stock_master");
+
+ return check_empty_result("SELECT COUNT(*) FROM ".TB_PREF."stock_master WHERE mb_flag!='F'");
}
function check_db_has_stock_items($msg)
}
}
+function check_db_has_fixed_asset_classes($msg)
+{
+ global $path_to_root;
+ if (!db_has_fixed_asset_classes())
+ {
+ display_error($msg, true);
+ end_page();
+ exit;
+ }
+}
+
+function db_has_fixed_asset_classes()
+{
+ return check_empty_result("SELECT COUNT(*) FROM ".TB_PREF."stock_fa_class");
+}
+
+function db_has_depreciable_fixed_assets()
+{
+ $year = get_current_fiscalyear();
+ $begin = date2sql(add_months(sql2date($year['begin']), -1));
+ $end = date2sql(add_months(sql2date($year['end']), -1));
+
+ return check_empty_result("SELECT COUNT(*) FROM ".TB_PREF."stock_master
+ WHERE mb_flag='F'
+ AND material_cost > 0
+ AND stock_id IN ( SELECT stock_id FROM ".TB_PREF."stock_moves WHERE type=".ST_SUPPRECEIVE." AND qty!=0 )
+ AND stock_id NOT IN ( SELECT stock_id FROM ".TB_PREF."stock_moves WHERE (type=".ST_CUSTDELIVERY." OR type=".ST_INVADJUST.") AND qty!=0 )
+ AND depreciation_date <= '".$end."'
+ AND depreciation_date >='".$begin."'");
+}
+
+function check_db_has_depreciable_fixed_assets($msg)
+{
+ global $path_to_root;
+
+ if (!db_has_depreciable_fixed_assets())
+ {
+ display_error($msg, true);
+ end_page();
+ exit;
+ }
+}
+
+function db_has_fixed_assets()
+{
+ return check_empty_result("SELECT COUNT(*) FROM ".TB_PREF."stock_master WHERE mb_flag='F'");
+}
+
+function check_db_has_fixed_assets($msg)
+{
+ global $path_to_root;
+
+ if (!db_has_fixed_assets())
+ {
+ display_error($msg, true);
+ end_page();
+ exit;
+ }
+}
+
+function db_has_purchasable_fixed_assets()
+{
+ return check_empty_result("SELECT COUNT(*) FROM ".TB_PREF."stock_master
+ WHERE mb_flag='F'
+ AND !inactive
+ AND stock_id NOT IN
+ ( SELECT stock_id FROM ".TB_PREF."stock_moves WHERE type=".ST_SUPPRECEIVE." AND qty!=0 )");
+}
+
+function check_db_has_purchasable_fixed_assets($msg)
+{
+ global $path_to_root;
+
+ if (!db_has_purchasable_fixed_assets())
+ {
+ display_error($msg, true);
+ end_page();
+ exit;
+ }
+}
+
+function db_has_disposable_fixed_assets()
+{
+ return check_empty_result("SELECT COUNT(*) FROM ".TB_PREF."stock_master
+ WHERE mb_flag='F'
+ AND !inactive
+ AND stock_id IN
+ ( SELECT stock_id FROM ".TB_PREF."stock_moves WHERE type=".ST_SUPPRECEIVE." AND qty!=0 )
+ AND stock_id NOT IN
+ ( SELECT stock_id FROM ".TB_PREF."stock_moves WHERE (type=".ST_CUSTDELIVERY." OR type=".ST_INVADJUST.") AND qty!=0 )");
+}
+
+function check_db_has_disposable_fixed_assets($msg)
+{
+ global $path_to_root;
+
+ if (!db_has_disposable_fixed_assets())
+ {
+ display_error($msg, true);
+ end_page();
+ exit;
+ }
+}
+
function db_has_stock_categories()
{
- return check_empty_result("SELECT COUNT(*) FROM ".TB_PREF."stock_category");
+ return check_empty_result("SELECT COUNT(*) FROM ".TB_PREF."stock_category WHERE dflt_mb_flag!='F'");
+}
+
+function check_db_has_fixed_asset_categories($msg)
+{
+ global $path_to_root;
+ if (!db_has_fixed_asset_categories())
+ {
+ display_error($msg, true);
+ end_page();
+ exit;
+ }
+}
+
+function db_has_fixed_asset_categories()
+{
+ return check_empty_result("SELECT COUNT(*) FROM ".TB_PREF."stock_category WHERE dflt_mb_flag='F'");
}
function check_db_has_stock_categories($msg)
{
display_error($msg, true);
end_page();
- exit;
- }
+ exit;
+ }
}
function db_has_workcentres()
function db_has_locations()
{
- return check_empty_result("SELECT COUNT(*) FROM ".TB_PREF."locations");
+ return check_empty_result("SELECT COUNT(*) FROM ".TB_PREF."locations WHERE fixed_asset=0");
}
function check_db_has_locations($msg)
$result = db_query($sql, "could not do check empty query");
$myrow = db_fetch_row($result);
- return $myrow[0] > 0;
+ return is_array($myrow) ? $myrow[0] > 0 : false;
}
//
// Integer input check
}
}
+function check_db_has_template_orders($msg)
+{
+ $sql = "SELECT sorder.order_no
+ FROM ".TB_PREF."sales_orders as sorder,"
+ .TB_PREF."sales_order_details as line
+ WHERE sorder.order_no = line.order_no AND sorder.type = 1
+ GROUP BY line.order_no";
+
+ if (!check_empty_result($sql))
+ {
+ display_error($msg, true);
+ end_page();
+ exit;
+ }
+}
+
function check_deferred_income_act($msg)
{
global $path_to_root;
check_is_closed($trans_type, $trans_no, $msg);
}
+function check_reference($reference, $trans_type, $trans_no=0, $context=null, $line=null)
+{
+ global $Refs;
+
+ if (!$Refs->is_valid($reference, $trans_type, $context, $line))
+ {
+ display_error(_("The entered reference is invalid.")); return false;
+ }
+ elseif (!$Refs->is_new_reference($reference, $trans_type, $trans_no))
+ {
+ display_error( _("The entered reference is already in use.")); return false;
+ }
+ return true;
+}
+
+function check_sys_pref($name, $msg, $empty = '')
+{
+ global $path_to_root;
+
+ if (get_company_pref($name) === $empty)
+ {
+ display_error(menu_link("/admin/gl_setup.php", $msg), true);
+ display_footer_exit();
+ }
+}