Grafici - gestire e aggiungere dati

Raccoglitore di domande e risposte relative a ScriptCase, il generatore di codice php per lo sviluppo rapido di applicazioni.
Regole del forum
Nel forum è vietato fare pubblicità senza avere l'autorizzazione dello staf di Netspecial.
Rispondi
tizter
Messaggi: 11
Iscritto il: 23 dic 2019, 10:46

Grafici - gestire e aggiungere dati

Messaggio da tizter » 28 feb 2022, 17:18

Ciao a tutti,

devo realizzare dei grafici e prima di visualizzarli dovrei modificare e in alcuni casi aggiungere dei dati/record.

Esempi:
1 - devo visualizzare un grafico con gli incassi degli ultimi 30 giorni, nel caso in cui in un giorno non ci sono incassi, comunque quel giorno dev'essere visibile con incasso uguale a zero.

2 - modificare l'incasso di un giorno in base alla configurazione del cliente.

Il punto 1 è gestito in una store procedure, ma ho l'errore:

Error while accessing the database
[Microsoft][ODBC Driver 11 for SQL Server][SQL Server]Incorrect syntax near '6722c0e6-787f-4ce1-9fb9-70b1c53a6df4'.
select count(*), sum(Totals) from (spXYZ '6722c0e6-787f-4ce1-9fb9-70b1c53a6df4', '29a9183e-9b49-451a-b4c6-73cf1f8243d5') nm_sel_esp

Allora sto cercando di capire se è possibile lavorare/manipolare i dati dopo la query. Sul Builder la chiamata alla store procedure funziona.


Grazie.

Fabio
Messaggi: 440
Iscritto il: 20 feb 2014, 11:43

Re: Grafici - gestire e aggiungere dati

Messaggio da Fabio » 28 feb 2022, 18:17

Per il punto 1 penso si possa lavorare anche direttamente sulla query, per mostrare "0" quando non ci sono valori.
Il punto 2 non l'ho capito.

Vincenzo
Messaggi: 130
Iscritto il: 11 apr 2014, 11:06

Re: Grafici - gestire e aggiungere dati

Messaggio da Vincenzo » 28 feb 2022, 20:12

Per il punto 2, visto che usi SQL Server, io ho usato senza che SC desse problemi, stored procedure che restituiscono recordset, a cui puoi passare parametri, mantenendo poi "semplice" la query che usi nelle app, quindi

Codice: Seleziona tutto

select campo1, campo2, campo3 from mia_SP( '[param1]' , '[param2]' )

tizter
Messaggi: 11
Iscritto il: 23 dic 2019, 10:46

Re: Grafici - gestire e aggiungere dati

Messaggio da tizter » 01 mar 2022, 10:47

Ciao Fabio e Vincenzo.

[Fabio]
Nel punto 2 intendo: se è possibile, dopo aver eseguito la store procedure, modificare (aggiungere righe o modificare un campo) il recordset ritornato prima che sia usato per creare il grafico.


[Vincenzo]
Se la store procedure la uso per un App di tipo:
A - Griglia, la griglia viene visualizzata correttamente, ma sul grafico ho l'errore riportato;
B - Grafico ho l'errore riportato.

Diciamo che per la costruzione dei grafici ci sono problemi.

Grazie.

rino
Messaggi: 624
Iscritto il: 18 giu 2015, 15:42
Località: Pinerolo
Contatta:

Re: Grafici - gestire e aggiungere dati

Messaggio da rino » 01 mar 2022, 11:24

Fabio ha scritto: 28 feb 2022, 18:17 Per il punto 1 penso si possa lavorare anche direttamente sulla query, per mostrare "0" quando non ci sono valori.
Il punto 2 non l'ho capito.
count(0) permette di emettere 0 invece di null (count(*) )
Rino Lo Turco
Consulente Informatico; Analista e Sviluppatore; ex IT Manager; Cons. Direzionale di Organizzazione; Consulente Tecnico legale; Esperto protezione dati personali; Internet Service Provider
felice utente e fruitore di ScriptCase

tizter
Messaggi: 11
Iscritto il: 23 dic 2019, 10:46

Re: Grafici - gestire e aggiungere dati

Messaggio da tizter » 01 mar 2022, 12:44

Ciao rino,

non ho capito.

la parte "select count(*), sum(Totals) from..." la mette SC.

Se invece, per Count(0), intendi quando la data non è presente non so come fare la select.

La storeprocedure che ho fatto è un po articola;
1 - creo una tabella momentanea;
2 - faccio 30 insert cosi d'avere comunque gli ultimi 30 giorni con totals = 0;
3 - faccio la query sulla tabella reale e inserisco sulla tabella temporanea;
4 - faccio la query finale sulla tabella temporanea;

Altra cosa: Sulle griglie o i grafici è possibile utilizzare una store procedura, la quale ritorna 3 recordset, e decidere quale usare?

Grazie.

rino
Messaggi: 624
Iscritto il: 18 giu 2015, 15:42
Località: Pinerolo
Contatta:

Re: Grafici - gestire e aggiungere dati

Messaggio da rino » 02 mar 2022, 15:32

Se invece di * metti 0 il risultato in caso di nulla sarà 0 e non null.
inoltre sc restuitirà sempre un record
non so dove sc mette l asterisco, io le query le faccio a mano o attraverso uno strumento specialistico per gestire banche dati compresa la documentazione.

ovviamente io uso mariadb ,non so se nel linguaggio SQL di MS ci siano limitazioni , in Oracle no.

per il punto 1 ( analisi incassi) e comunque in generale ricorda che puoi costruire query molto complesse usando anche istruzioni decisionali .
nel caso della somma , ma sicuramente ci sarebbro altre soluzioni che però si possono valutare solo leggendo i tracciati , puoi usare questa righa
IF (select count(0) from incassi where data = quellochevuoi,(select sum(incasso)from incassi where data=quellochevuoi),0) as risultato
questa riga fa più cose , ,conta e decide. ovviamente la parte della relazione puo anche essere un analisi del valore zero sulla somma, come dicevo sono scelte che si fanno solo leggendo tutto.

detto questo non capisco a cosa ti serva l inserimento di valori a seconda di altro.

l'uso delle SP è dedicato alla risoluzione di determinati problemi e non per trovare vie strane ad altro. per esempio le sui per decodificare piuttosto che per calcolare valori piuttosto che per duplicare dati .
il richiamo di una SP ha un costo che non va dimenticato ,costo notevolmente superiore all uso di IF e similari.
comunque queata è tutta teoria accademica non avendo altri dati in mano .
Rino Lo Turco
Consulente Informatico; Analista e Sviluppatore; ex IT Manager; Cons. Direzionale di Organizzazione; Consulente Tecnico legale; Esperto protezione dati personali; Internet Service Provider
felice utente e fruitore di ScriptCase

Rispondi

Chi c’è in linea

Visitano il forum: Bing [Bot] e 0 ospiti