public static function getAllCommerceProductCategories(CNabuCommerce $nb_commerce)
    {
        $nb_commerce_id = nb_getMixedValue($nb_commerce, 'nb_commerce_id');
        if (is_numeric($nb_commerce_id)) {
            $retval = forward_static_call(
            array(get_called_class(), 'buildObjectListFromSQL'),
                'nb_commerce_product_category_id',
                'select * '
                . 'from nb_commerce_product_category '
               . 'where nb_commerce_id=%commerce_id$d',
                array(
                    'commerce_id' => $nb_commerce_id
                ),
                $nb_commerce
            );
        } else {
            $retval = new CNabuCommerceProductCategoryList();
        }
        
        return $retval;
    }