Entra Registrati
Supporto PowerQuery
di Lord Beric
creato il 10 marzo 2021


Lord Beric
Custode dei Corvi Messaggeri
Guardiani della Notte
25171 messaggi
Lord Beric
Custode dei Corvi Messaggeri



Guardiani della Notte

25171 messaggi
Inviato il 10 marzo 2021 13:13 Autore

C'è qualcuno che si è imbattuto, per lavoro o per altro, in questo strumento ormai agganciato stabilmente a Office?

 

Se si, avrei bisogno di un supporto per una situazione un po' particolare.

 

Lo scenario è il seguente:

  • io ho URL che mi accetta solo certi parametri in input e mi restituisce come output un json
  • per uno dei parametri in questione ho bisogno di interrogare diversi valori (poco meno di 250); se faccio le interrogazioni tutte in un colpo solo il sito destinatario mi blocca perché gli consumo troppe risorse tutte assieme
  • sto usando PowerQuery su Excel

 

La mia idea è quindi la seguente: per quanto sia dispendioso, vorrei predisporre le 250 chiamate in altrettante query indipendenti, poi ne faccio l'accodamento (tanto il formato di output è sempre lo stesso) e sulla tabella così unita faccio tutte le elaborazioni del caso.

 

Il problema è che ovviamente quando andrei a fare il refresh della tabella finale questa mi scatenerebbe tutte le 250 query che ci stanno sotto, riportandomi al problema originario.

Pertanto le cose che vorrei fare sono due:

  1. Gestire un automatismo che mi faccia partire le singole query in maniera automatica e distaccata temporalmente (es: una ogni 5 secondi in modo che ogni 20 minuti ho il db completamente rinnovato). Questo credo si possa fare con una macro.
  2. Fare in modo che la tabella finale, se aggiornata, si limiti a prendere l'output delle query precedenti senza scatenarne a cascata il refresh, in modo che non mi parta la mega-estrazione.

 

Idee su come potrei implementare questa soluzione?

Alternativamente, vi vengono in mente altre idee per affrontare un problema di questo tipo?


Canale%20Telegram.jpg

Chat%20Telegram.jpg

Facebook.jpg

Wikipedia.jpg

Wikipedia.jpg

Lord dei Pan di Stelle - Lord Comandante dei Peluche

The best fantasy is written in the language of dreams. It is alive as dreams are alive, more real than real... for a moment at least... that long magic moment before we wake.
Fantasy is silver and scarlet, indigo and azure, obsidian veined with gold and lapis lazuli. Reality is plywood and plastic, done up in mud brown and olive drab.
Fantasy tastes of habaneros and honey, cinnamon and cloves, rare red meat and wines as sweet as summer. Reality is beans and tofu, and ashes at the end.
Reality is the strip malls of Burbank, the smokestacks of Cleveland, a parking garage in Newark. Fantasy is the towers of Minas Tirith, the ancient stones of Gormenghast, the halls of Camelot.
Fantasy flies on the wings of Icarus, reality on Southwest Airlines.
Why do our dreams become so much smaller when they finally come true?
We read fantasy to find the colors again, I think. To taste strong spices and hear the songs the sirens sang. There is something old and true in fantasy that speaks to something deep within us, to the child who dreamt that one day he would hunt the forests of the night, and feast beneath the hollow hills, and find a love to last forever somewhere south of Oz and north of Shangri-La.
They can keep their heaven. When I die, I'd sooner go to Middle-earth.

 

[George R. R. Martin]

M
Manifredde
Confratello
Utente
5410 messaggi
Manifredde
Confratello

M

Utente
5410 messaggi
Inviato il 13 marzo 2021 12:18

Ciao Lord Beric, non so nulla nè di Excel nè tantomeno di PowerQuery ma dalla descrizione che fai quello a cui stai cercando di accedere non è altro che un rest service. Probabilmente non ti sto dicendo nulla che già non sapevi, ma nel caso non fosse così potresti forse trovare qualche idea cercando in quella direzione.

Ad esempio, ho trovato (ma non letto, quindi non so dire quanto ti possa essere utile):

https://www.howtoexcel.org/power-query/how-to-access-a-json-api-with-power-query/

 

Inoltre, se ben capisco lo scheduling delle chiamate sai come affrontarlo, ma non sai come evitare che excel performi nuovamente tutte le richieste ad ogni refresh. Non conosco la situazione esatta, ma pensavo a questi approcci:

-fare 2 fogli, uno con le formule/codice per le richieste e uno con i risultati finali. Il primo foglio esegue le richieste una sola volta e riempie il secondo, che è quello su cui poi si fa il lookup.

-Inizializzare un flag quando si è fatta la query. Se questo flag è "1" la macro restituisce il valore attuale, altrimenti fa la query.

 

Nulla di chè, lo so, ma purtroppo uso Excel solo nel modo più banale possibile.


Messaggi
2
Creato
3 anni fa
Ultima Risposta
3 anni fa

MIGLIOR CONTRIBUTO IN QUESTA DISCUSSIONE
Lord Beric
1 messaggi
M
Manifredde
1 messaggi