Italian grafico e sql

Nikeddy

Active Member
Licensed User
sto utilizzando, per impararmi questa libreria:
Button3_Click
Panel4.Visible=False
Panel3.Visible= False
Panel2.Visible= False
Panel1.Visible= False

Panel6.Visible= True
mbc1.LegendShapeSize = 7.0 'this line of code needs to be before mbc1.setTheLegendPositionAndForm("BELOW_CHART_CENTER", "CIRCLE")
mbc1.setTheLegendPositionAndForm("BELOW_CHART_CENTER", "CIRCLE") 'pass strings from the above comments

mbc1.TheLegendColor = Colors.yellow
mbc1.TheLegendTextSize = 20.0
mbc1.LegendTitle = ""

mbc1.ChartDescription = "TITLE : Some Arbitrary Data"
mbc1.ChartDescriptionColor = 0XFFFFA500 'ORANGE
mbc1.ChartDescriptionTextSize = 17

mbc1.ValueTextColor = Colors.Black
mbc1.ValueTextSize = 10.0

'the following 3 arrays must have the same number of entries/elements
mbc1.BarColors = Array As Int(Colors.Blue, Colors.Yellow, Colors.Green, Colors.Red, Colors.Magenta, Colors.Cyan, Colors.Blue, Colors.Yellow, Colors.Green, Colors.Red, Colors.Magenta, Colors.Cyan)
mbc1.LegendText = Array As String("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec")
mbc1.ChartData = Array As Float(52.3, 16.7, 46.0, 40.5, 101.6, 40.9, 15.7, 25.9, 35.6, 25.3, 67.5, 75.2) 'values - it will be converted to %

mbc1.DoubleTapToZoomEnabled = True
mbc1.DrawBarShadow = False
mbc1.GridBackgroundColor = Colors.white
mbc1.ValueTextColor = 0XFFFFA500
mbc1.DrawBorders = True
mbc1.DrawGridBackground = True
mbc1.DrawHighlightArrow = True
mbc1.DrawValueAboveBar = True
mbc1.PinchZoom = True
mbc1.ScaleEnabled = True
mbc1.BorderColor = Colors.Yellow
mbc1.BorderWidth = 3.0

mbc1.BarData = 12 'this number must be the same as the number of elements in the above arrays
End Sub


vorrei sapere, come posso, al posto del chartdata avere dei numeri a caso, inserire i numeri estratti e raggruppati tramite una query sql.

grazie!
 

LucaMs

Expert
Licensed User
Longtime User
[Quanto pubblichi codice dovresti inserirlo tra i tag Code:
esempio:

[ Code]
' tuo codice sorgente
[ /Code]

senza lo spazio iniziale, che io ho dovuto mettere.
Per farlo automaticamente, usa:
upload_2018-4-16_15-48-35.png

]
 

LucaMs

Expert
Licensed User
Longtime User
vorrei sapere, come posso, al posto del chartdata avere dei numeri a caso, inserire i numeri estratti e raggruppati tramite una query sql.
Non so di quale libreria tu stia parlando ma, guardando il codice, devi riempire ChartData con dei valori. Vuoi avere dei numeri a caso? Crea una List e riempila con dei numeri casuali (usando la funzione RND).
"raggruppati tramite una query sql" per me non ha significato; vuoi generali, visualizzarli e poi inserirli in un db?
 

Nikeddy

Active Member
Licensed User
ottimo.


immaginiamo un db cosi strutturato

Id - data - Incasso

in modo poi di avere una lista composta:

gennaio 2018 : 30
febbraio 2018 : 10
marzo 2018 : 5


per creare la list e poi passarlo al chartdata?
 

LucaMs

Expert
Licensed User
Longtime User
Dipende dal DB che stai usando (non è che hai già chiesto questo? In questi giorni ho letto una domanda simile, su come ricavare il nome del mese da una data, da un DB - non ricordo se SQLite o MySQL).
 

Nikeddy

Active Member
Licensed User
oddio, fantastico.

quindi per raggrupparli per mese (e il mese poi vanno su mbc1.LegendText = Array As String) utilizzo group ?

mbc1.ChartData = Array As Float qui invece faccio un sum ?
 

Nikeddy

Active Member
Licensed User
no aspetta, non ho capito.

le query le faccio dalla app direttamente, php lo uso solamente per connettermi al db.

per creare la list, come posso fare?

Id - data - Incasso

in modo poi di avere una lista composta:

gennaio 2018 : 30
febbraio 2018 : 10
marzo 2018 : 5
 

LucaMs

Expert
Licensed User
Longtime User
Ok. Non è il massimo, soprattutto per questioni di sicurezza; ho dato un'occhiata al volo e mi sembra che invii un file php contenente una query, che viene poi ovviamente eseguita sul server remoto e ti vengono restituiti i risultati.

Ripeto, per questioni di sicurezza non va affatto bene, le pagine php dovresti crearle prima e metterle sul server.

Vedo di smanettare un po' con quel tool online per verificare la query e te la scrivo.
 
Top