Laskujen tulostus ei onnistu

Started by Eero L, 18.10.22 - klo:13:26

Previous topic - Next topic

Eero L

Asensin päivitetyn laskutusohjelman uudelle koneelle. Siirsin tietokannan varmuuskopiosta uuteen laskutukseen. Nyt mikään laskutulostus, kuitti tai lähetyslistan tulostus ei onnistu. Laskut näkyvät normaalisti.
Saan virheilmoituksen:

Fatal error: Uncaught mysqli_sql_exception: Table 'test.mlinvoice_invoice_type' doesn't exist in C:\xampp\htdocs\mlinvoice\sqlfuncs.php:1192 Stack trace: #0 C:\xampp\htdocs\mlinvoice\sqlfuncs.php(1192): mysqli_stmt_prepare(Object(mysqli_stmt), 'SELECT * FROM m...') #1 C:\xampp\htdocs\mlinvoice\sqlfuncs.php(963): dbParamQuery('SELECT * FROM m...', Array) #2 C:\xampp\htdocs\mlinvoice\invoice_printer_base.php(420): getInvoiceType(NULL) #3 C:\xampp\htdocs\mlinvoice\invoice.php(175): InvoicePrinterBase->init('855', 'invoice', 'lasku_%d.pdf', false, '1', true) #4 {main} thrown in C:\xampp\htdocs\mlinvoice\sqlfuncs.php on line 1192

Miten tuon saan korjattua?

Ere Maijala

Onko mahdollista, ettei varmuuskopiosta tullut kaikkia tauluja, vaan mlinvoice_state-taulu olisi suoraan uudesta versiosta? Silloin osa tietokannan muutoksista on jäänyt tekemättä. Eli pääsetkö vielä tarkistamaan varmuuskopiosta, mitä taulussa mlinvoice_state on data-sarakkeessa id:llä 'version'? Tai onko tietoa, mistä MLInvoice-versiosta päivitys tehtiin? Tuon taulun saat kyllä tehtyä mysql:ssä seuraavalla komennolla, mutta hyvä olisi selvittää kunnolla siltä varalta, että muitakin muutoksia puuttuu:

CREATE TABLE mlinvoice_invoice_type (
    id int(11) NOT NULL auto_increment,
    deleted tinyint NOT NULL default 0,
    identifier varchar(255) default NULL,
    name varchar(255) default NULL,
    order_no int(11) default NULL,
    PRIMARY KEY (id)
) ENGINE=INNODB CHARACTER SET utf8 COLLATE utf8_swedish_ci;