Prestashop - 从数据库导出发票

时间:2018-06-07 09:53:45

标签: database csv pdf prestashop invoice

从2017年开始,我需要帮助将.csv与所有的deliveryrede状态发票一起导出。我的PS崩溃了,我的会计需要它。

我想导出.csv,然后在全新安装中导入并导出.pdf

1 个答案:

答案 0 :(得分:1)

这是您可以在phpMyAdmin中使用的SQL查询,并将结果导出为CSV:

-- Orders > filter by Status: 5, Date: 2017-01-01 - 2017-12-31
SELECT
    SQL_CALC_FOUND_ROWS         a.`id_order`,
    `reference`,
    `total_paid_tax_incl`,
    `payment`,
    a.`date_add` AS `date_add`    ,
    a.id_currency,
    a.id_order AS id_pdf,
    CONCAT(
LEFT(c.`firstname`,
1),
'. ',
c.`lastname`) AS `customer`,
osl.`name` AS `osname`,
os.`color`,
IF((SELECT
    so.id_order FROM
        `ps_orders` so 
    WHERE
        so.id_customer = a.id_customer 
        AND so.id_order < a.id_order LIMIT 1) > 0,
    0,
    1) as new,
    country_lang.name as cname,
    IF(a.valid,
    1,
    0) badge_success    
FROM
    `ps_orders` a            
LEFT JOIN
    `ps_customer` c 
        ON (
            c.`id_customer` = a.`id_customer`
        )   
LEFT JOIN
    `ps_address` address 
        ON address.id_address = a.id_address_delivery   
LEFT JOIN
    `ps_country` country 
        ON address.id_country = country.id_country   
LEFT JOIN
    `ps_country_lang` country_lang 
        ON (
            country.`id_country` = country_lang.`id_country` 
            AND country_lang.`id_lang` = 1
        )   
LEFT JOIN
    `ps_order_state` os 
        ON (
            os.`id_order_state` = a.`current_state`
        )   
LEFT JOIN
    `ps_order_state_lang` osl 
        ON (
            os.`id_order_state` = osl.`id_order_state` 
            AND osl.`id_lang` = 1
        )      
WHERE
    1   
    AND os.`id_order_state` = 5  
    AND a.`date_add` >= '2017-01-01 0:0:0' 
    AND a.`date_add` <= '2017-12-31 23:59:59'         
ORDER BY
    a.`id_order` DESC

它是在Prestashop后台使用SQL管理器功能生成的。