come bypassare tale condizione (pardon la mia ignoranza ... forse aggingere nella query qualche istruzione ? ) .
grazie Maria60
Codice: Seleziona tutto
let
//individua selezione
// DataFinaleCheck = Excel.CurrentWorkbook(){[Name="data.fine"]}[Content][Column1]{0},//QUESTA LEGGE -1 GG
DataFinaleCheck = Excel.CurrentWorkbook(){[Name="data.fine"]}[Content][Column1]{0}+#duration(1,0,0,0),//QUESTA LEGGE GG OK
Selezione = Excel.CurrentWorkbook(){[Name="Selettore"]}[Content][Column1]{0},
//individuo data finale
DataFinale = if DataFinaleCheck is null
then
Date.From(DateTimeZone.LocalNow())
else
Date.From(DataFinaleCheck),
//individuo data iniziale
NumeroGiorni = Excel.CurrentWorkbook(){[Name="NumeroGiorni"]}[Content][Column1]{0},
// DataInizialeCheck = Excel.CurrentWorkbook(){[Name="DataIniziale"]}[Content][Column1]{0}+#duration(1,0,0,0),
DataInizialeCheck = Excel.CurrentWorkbook(){[Name="DataIniziale"]}[Content][Column1]{0},
DataIniziale = if Selezione = "DataIniziale"
then
Date.From(DataInizialeCheck)
else
Date.From(DataFinale - #duration(NumeroGiorni,0,0,0)),
//individua durata in giorni
Durata = Number.From(DataFinale - DataIniziale),
//creo lista date
ListaDate = List.Dates(DataIniziale, Durata + 1, #duration(1,0,0,0)),
#"Conversione in tabella" = Table.FromList(ListaDate, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
#"Modificato tipo" = Table.TransformColumnTypes(#"Conversione in tabella",{{"Column1", type date}}),
#"Rinominate colonne" = Table.RenameColumns(#"Modificato tipo",{{"Column1", "Data"}}),
Anno = Table.AddColumn(#"Rinominate colonne", "Anno", each Date.Year([Data]), type text),
Mese = Table.AddColumn(Anno, "Mese", each
if Date.Month([Data]) < 10 then "0" & Number.ToText(Date.Month([Data])) else Date.Month([Data]), type text),
Giorno = Table.AddColumn(Mese, "Giorno", each
if Date.Day([Data]) < 10 then "0" & Number.ToText(Date.Day([Data])) else Date.Day([Data]), type text),
ModificaFormato = Table.TransformColumnTypes(Giorno,{{"Anno", type text},{"Mese", type text},{"Giorno", type text}}),
Codice = Table.AddColumn(ModificaFormato, "Codice", each [Anno] & [Mese] & [Giorno]),
#"Rimosse altre colonne" = Table.SelectColumns(Codice,{"Data", "Codice"}),
#"Modificato tipo1" = Table.TransformColumnTypes(#"Rimosse altre colonne",{{"Codice", type text}}),
Link = Table.AddColumn(#"Modificato tipo1", "Link",each "http://cemec.arpacampania.it/meteoambientecampania/prodotti/meteo/arpac_dati_centraline_" & [Codice] & "_meteo.csv "),
#"Funzione personalizzata richiamata" = Table.AddColumn(Link, "Tabelle", each EstrazioneDati([Link])),
#"Tabella Tabelle espansa" = Table.ExpandTableColumn(#"Funzione personalizzata richiamata", "Tabelle", {"Column1", "Column2", "Column3", "Column4", "Column5", "Column6"}, {"Tabelle.Column1", "Tabelle.Column2", "Tabelle.Column3", "Tabelle.Column4", "Tabelle.Column5", "Tabelle.Column6"}),
#"Rinominate colonne1" = Table.RenameColumns(#"Tabella Tabelle espansa",{{"Tabelle.Column1", "Stazione"}, {"Tabelle.Column2", "Descrizione"}, {"Tabelle.Column3", "Sensore"}, {"Tabelle.Column4", "Um"}, {"Tabelle.Column5", "Data_Ora"}, {"Tabelle.Column6", "Valore"}}),
#"Filtrate righe" = Table.SelectRows(#"Rinominate colonne1", each ([Valore] <> "valore")),
#"Sostituito valore" = Table.ReplaceValue(#"Filtrate righe",".",",",Replacer.ReplaceText,{"Valore"}),
#"Modificato tipo2" = Table.TransformColumnTypes(#"Sostituito valore",{{"Valore", type number}}),
#"Filtrate righe1" = Table.SelectRows(#"Modificato tipo2", each ([Sensore] = "RadSG" or [Sensore] = "Temperatura aria")),
#"Rimosse altre colonne1" = Table.SelectColumns(#"Filtrate righe1",{"Descrizione", "Sensore", "Data_Ora", "Valore"}),
#"Riordinate colonne" = Table.ReorderColumns(#"Rimosse altre colonne1",{"Descrizione", "Data_Ora", "Sensore", "Valore"}),
#"Colonna trasformata tramite Pivot" = Table.Pivot(#"Riordinate colonne", List.Distinct(#"Riordinate colonne"[Sensore]), "Sensore", "Valore"),
#"Sostituito valore1" = Table.ReplaceValue(#"Colonna trasformata tramite Pivot","+01","",Replacer.ReplaceText,{"Data_Ora"}),
#"Duplicata colonna" = Table.DuplicateColumn(#"Sostituito valore1", "Data_Ora", "Data_Ora - Copia"),
#"Testo troncato" = Table.TransformColumns(#"Duplicata colonna",{{"Data_Ora - Copia", Text.Trim, type text}}),
#"Suddividi colonna in base alla posizione" = Table.SplitColumn(#"Testo troncato", "Data_Ora - Copia", Splitter.SplitTextByPositions({0, 10}, false), {"Data_Ora - Copia.1", "Data_Ora - Copia.2"}),
#"Modificato tipo3" = Table.TransformColumnTypes(#"Suddividi colonna in base alla posizione",{{"Data_Ora - Copia.1", type date}, {"Data_Ora - Copia.2", type time}}),
#"Rinominate colonne2" = Table.RenameColumns(#"Modificato tipo3",{{"Data_Ora - Copia.1", "datas"}}),
#"Rinominate colonne3" = Table.RenameColumns(#"Rinominate colonne2",{{"Data_Ora - Copia.2", "ora"}}),
#"Rinominate colonne4" = Table.RenameColumns(#"Rinominate colonne3",{{"Data_Ora", "data+ora"}}),
#"Rinominate colonne5" = Table.RenameColumns(#"Rinominate colonne4",{{"Descrizione", "stazione meteo"}, {"Temperatura aria", "temp"}}),
#"Rinominate colonne6" = Table.RenameColumns(#"Rinominate colonne5",{{"RadSG", "radsol"}}),
#"Sostituito valore2" = Table.ReplaceValue(#"Rinominate colonne6",null,0,Replacer.ReplaceValue,{"radsol"}),
#"Aggiunta colonna personalizzata" = Table.AddColumn(#"Sostituito valore2", "ind", each null),
#"Aggiunta colonna personalizzata15" = Table.AddColumn(#"Aggiunta colonna personalizzata", "Test", each Text.From([datas]) & " " & Text.From([ora])),
#"Modificato tipo4" = Table.TransformColumnTypes(#"Aggiunta colonna personalizzata15",{{"Test", type text}}),
#"Rimosse colonne" = Table.RemoveColumns(#"Modificato tipo4",{"data+ora"}),
#"Rinominate colonne7" = Table.RenameColumns(#"Rimosse colonne",{{"Test", "data+ora"}}),
#"Sostituito valore3" = Table.ReplaceValue(#"Rinominate colonne7","Portici Parco Reggia","PORTICI",Replacer.ReplaceText,{"stazione meteo"}),
#"Sostituito valore4" = Table.ReplaceValue(#"Sostituito valore3","Napoli NA01 Oss. Astronomico","OSSERVATORIO",Replacer.ReplaceText,{"stazione meteo"}),
#"Sostituito valore5" = Table.ReplaceValue(#"Sostituito valore4","Pomigliano D’Arco Area ASI","POMIGLIANO",Replacer.ReplaceText,{"stazione meteo"}),
ValoredaFiltrare = Excel.CurrentWorkbook(){[Name="STAZIONE"]}[Content]{0},
Filtro = Table.SelectRows(#"Sostituito valore5", each ([stazione meteo] = ValoredaFiltrare[Column1])),
#"Modificato tipo5" = Table.TransformColumnTypes(Filtro,{{"data+ora", type datetime}}),
#"Errori sostituiti" = Table.ReplaceErrorValues(#"Modificato tipo5", {{"temp", 0}}),
#"Errori sostituiti1" = Table.ReplaceErrorValues(#"Errori sostituiti", {{"radsol", 0}}),
#"Riordinate colonne5" = Table.ReorderColumns(#"Errori sostituiti1",{"ind", "datas", "ora", "data+ora", "stazione meteo", "temp", "radsol"})
in
#"Riordinate colonne5"