[RISOLTO] Nuovo modulo in 2.3.1

Sezione dedicata lla pubblicazione di tutorial per la versione di base di OpenSTAManager.
Rispondi
angelo
Messaggi: 31
Iscritto il: 18 gen 2016 17:58

[RISOLTO] Nuovo modulo in 2.3.1

Messaggio da angelo »

Buonasera,
partendo dalla versione 2.3.1(qualche mese fa) sto implementando diverse modifiche. Fino ad ora ho solo personalizzato alcuni moduli già presenti come fatture di acquisto e vendita.
Ora vorrei realizzare la gestione di una semplice tabella per cui ho creato la tabella nel db come di seguito:
CREATE TABLE IF NOT EXISTS `bioalleva_box` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`idallevamento` int(11) NOT NULL,
`codice` varchar(25) NOT NULL,
`superficie` decimal(14,4) NOT NULL,
PRIMARY KEY (`id`),
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

Poi ho creato in zz_modules e zz_views i relativi record e abilitato tramite le Viste i gruppi utenti.

Quando eseguo la voce a menu il sistema mi da il seguente warning:
DataTables warning: table id=main_61 - Invalid JSON response. For more information about this error, please see http://datatables.net/tn/1

e dopo un refresh il seguente errore:
SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''bioalleva_box' WHERE 1=1 HAVING 2=2) AS `count`' at line 1

Premetto che al momento mi interessa avere solo la vista elenco con dati inseriti a mano nel DB. Non ancora creato le action, add, edit ecc.

Ho letto un altro post simile ma in quel caso la soluzione è stata aggiornare alla versione 2.4 che non posso fare.

Spero in un vostro aiuto.

Grazie
Ultima modifica di angelo il 18 lug 2018 08:04, modificato 1 volta in totale.

Avatar utente
fabiop82
Messaggi: 896
Iscritto il: 27 mar 2012 19:27
Località: Padova
Contatta:

Re: Nuovo modulo in 2.3.1

Messaggio da fabiop82 »

ciao Angelo
puoi postare la query completa che causa questo errore?
nella cartella logs trovi appunto un file di log con gli errori e le relative query

il discorso dell'aggiornamento lo puoi procrastinare per carità, ma prima o dopo lo dovrai affrontare ;) poi magari sei fortunato ed al tuo cliente non interessano novità come la fatturazione elettronica, solo per farti un esempio di una nuova funzionalità che sarà presente nella prossima release...

io personalmente penso di avere ancora un ultimo cliente con la versione 1.1.8 che non era nemmeno responsive e ormai compie 7/8 anni :lol:
programmatore freelance - Padova
STAFF OpenSTAManager
http://www.fpsoftware.net

angelo
Messaggi: 31
Iscritto il: 18 gen 2016 17:58

Re: Nuovo modulo in 2.3.1

Messaggio da angelo »

Ciao Fabio,
di seguito il messaggio di errore e relativa query presi dal file log.

[2018-07-17 17:07:33] Logs.ERROR: Uncaught Exception PDOException: "SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''bioalleva_box' WHERE 1=1 HAVING 2=2) AS `count`' at line 1 - SELECT COUNT(*) as `tot` FROM (SELECT id AS 'Id', codice AS 'Codice', superficie AS 'Superficie' FROM 'bioalleva_box' WHERE 1=1 HAVING 2=2) AS `count`" at C:\xampp56\htdocs\bioalleva2\src\Database.php line 761
{"url":"/bioalleva2/ajax_dataload.php?id_module=52&id_plugin=&id_parent=&draw=1&columns%5B0%5D%5Bdata%5D=0&columns%5B0%5D%5Bname%5D=&columns%5B0%5D%5Bsearchable%5D=false&columns%5B0%5D%5Borderable%5D=false&columns%5B0%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B0%5D%5Bsearch%5D%5Bregex%5D=false&columns%5B1%5D%5Bdata%5D=1&columns%5B1%5D%5Bname%5D=&columns%5B1%5D%5Bsearchable%5D=true&columns%5B1%5D%5Borderable%5D=true&columns%5B1%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B1%5D%5Bsearch%5D%5Bregex%5D=false&columns%5B2%5D%5Bdata%5D=2&columns%5B2%5D%5Bname%5D=&columns%5B2%5D%5Bsearchable%5D=true&columns%5B2%5D%5Borderable%5D=true&columns%5B2%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B2%5D%5Bsearch%5D%5Bregex%5D=false&columns%5B3%5D%5Bdata%5D=3&columns%5B3%5D%5Bname%5D=&columns%5B3%5D%5Bsearchable%5D=true&columns%5B3%5D%5Borderable%5D=true&columns%5B3%5D%5Bsearch%5D%5Bvalue%5D=&columns%5B3%5D%5Bsearch%5D%5Bregex%5D=false&start=0&length=153&search%5Bvalue%5D=&search%5Bregex%5D=false&_=1531840050466","ip":"::1","http_method":"GET","server":"localhost","referrer":"http://localhost/bioalleva2/controller. ... ":"b73d906"}


Grazie

Avatar utente
fabiop82
Messaggi: 896
Iscritto il: 27 mar 2012 19:27
Località: Padova
Contatta:

Re: Nuovo modulo in 2.3.1

Messaggio da fabiop82 »

perdona la domanda banale, ma se esegui questa query tramite phpMyAdmin nel database in questione, funziona?

Codice: Seleziona tutto

SELECT COUNT(*) as `tot` FROM (SELECT id AS 'Id', codice AS 'Codice', superficie AS 'Superficie' FROM 'bioalleva_box' WHERE 1=1 HAVING 2=2) AS `count`
sinceramente è un metodo un pò strano per avere il numero di righe :?

ma poi questa non dovrebbe essere la query che genera la tabella del modulo?

mi sarei aspettato una query come questa:

Codice: Seleziona tutto

SELECT |select| FROM `bioalleva_box` WHERE 1=1 HAVING 2=2 ORDER BY `codice`
programmatore freelance - Padova
STAFF OpenSTAManager
http://www.fpsoftware.net

angelo
Messaggi: 31
Iscritto il: 18 gen 2016 17:58

Re: Nuovo modulo in 2.3.1

Messaggio da angelo »

Buongiorno Fabio,
stamattina neanche un minuto e il problema è stato risolto.
La query inserita in zz_modules è esattamente quella che tu hai indicato e che avevo già preso come esempio da un altro modulo, solo che il nome tabella, a causa dell'età che avanza, l'ho racchiuso tra apici ('') e non virgolette (``). Questo generava l'errore di sintassi.

Grazie per il tuo prezioso supporto.

ps. Conto di contattarti di persona per una consulenza, ovviamente retribuita, al fine di capire se e come il mio progetto, nonostante le diverse modifiche, possa essere aggiornato con le nuove relelase.

Rispondi