utilizzo macro sc_select_order()
Inviato: 22 ott 2016, 04:37
Ho la necessità, secondo il valore di un parametro, di avere un ordine ascendente oppure discendente di una tabella
Nella grid interessata
in SQL metto questi parametri di ordinamento :
SELECT
.....
FROM
o_risultati
where ANNO_S='[a4]'
ORDER BY VALORE
nell'evento Onapplicationinit della grid inserisco il seguente codice :
if( [a6]=="X") {
sc_select_order("VALORE") = "VALORE"; // mantengo l'ordinamento ascendente originale
} else {
sc_select_order("VALORE") = "VALORE desc"; // vorrei stesso ordinamento ma discendente
}
ecco cosa accade
Se il valore di [a6] è uguale a X (cioè ordine ascendente) tutto ok
Se il valore di [a6] è diverso da X (cioè ordine discendente)
Mi appare sempre questo errore
Errore durante l'accesso alla banca dati:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'asc LIMIT 0,22' at line 1
SelectLimit(SELECT ................ from o_risultati where ANNO_S='2013' order by VALORE desc asc, 22, 0)]
In sostanza cambia l'order by ma ci aggiunge anche asc,22,0
Non so come fare poiché la macro dispone di un solo parametro cioè il valore del campo da ordinare
Probabilmente sbaglio la sintassi oppure nella macro manca un flag di .t. o .f. per indicare se asc o desc ?
qualcuno mi può aiutare oppure indicare una soluzione alternativa ?
Ringrazio anticipatamente coloro che mi aiuteranno a risolvere il problema.
Nella grid interessata
in SQL metto questi parametri di ordinamento :
SELECT
.....
FROM
o_risultati
where ANNO_S='[a4]'
ORDER BY VALORE
nell'evento Onapplicationinit della grid inserisco il seguente codice :
if( [a6]=="X") {
sc_select_order("VALORE") = "VALORE"; // mantengo l'ordinamento ascendente originale
} else {
sc_select_order("VALORE") = "VALORE desc"; // vorrei stesso ordinamento ma discendente
}
ecco cosa accade
Se il valore di [a6] è uguale a X (cioè ordine ascendente) tutto ok
Se il valore di [a6] è diverso da X (cioè ordine discendente)
Mi appare sempre questo errore
Errore durante l'accesso alla banca dati:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'asc LIMIT 0,22' at line 1
SelectLimit(SELECT ................ from o_risultati where ANNO_S='2013' order by VALORE desc asc, 22, 0)]
In sostanza cambia l'order by ma ci aggiunge anche asc,22,0
Non so come fare poiché la macro dispone di un solo parametro cioè il valore del campo da ordinare
Probabilmente sbaglio la sintassi oppure nella macro manca un flag di .t. o .f. per indicare se asc o desc ?
qualcuno mi può aiutare oppure indicare una soluzione alternativa ?
Ringrazio anticipatamente coloro che mi aiuteranno a risolvere il problema.