Kategorie szkoleń | Egzaminy | Kontakt
  • 5
  • 0
  • 1

Dzień dobry, otrzymuję plik xml z kolumną z 18 cyfrowymi unikatowymi numerami, których trzy ostatnie cyfry excel zamienia na zera. Czy jest jakiś sposób na przekonwertowanie tych numerów, lub czy jest program w którym mogę otworzyć plik aby widzieć unikatowe numery? Formatowanie na tekst nie działa.

Izabela_Pik
  • Zapytał
  • @ Izabela_Pik | 29.09.2020
    • 0
    • 0
    • 0

Odpowiedzi (5)

  • 0

Nie otwieraj tego pliku bezpośrednio excelem, tylko zaimportuj go do arkusza przez Dane -> Pobierz dane -> Z pliku -> Z pliku XML.

Mirosław_Janiak
  • Odpowiedział
  • @ Mirosław_Janiak | 29.09.2020
    • 1
    • 7
    • 1
Komentarze
udało się uzyskać prawidłowy numer, ale po zaimportowaniu widzę tylko jeden wiersz z danymi, podczas gdy ten sam numer miałam w dwóch wierszach, jednak nie we wszystkich kolumnach były wartości. Dlaczego nie przekształca jeden do jednego wszystkich danych?
Skomentował : @ Izabela_Pik ,30.09.2020
  • 0
  • 0
  • 0
Na excelu trochę się znam, ale na wróżeniu już nie bardzo... Załącz ten plik xml, to postaram się pomóc.
Skomentował : @ Mirosław_Janiak ,30.09.2020
  • 1
  • 7
  • 1
  • 0

Załączyłam plik. Potrzebuję przekształcić 1:1, żeby było tyle samo wierszy co w pierwotnym pliku. Teraz jak przekształcam to np: w pierwotnym pliku wiersz 2 i 3 dot. tego samego numeru PPE (kol.E), a po przekształceniu w edytorze ten numer PPE mam tylko w jednym wierszu. Importuje z pliku XML.

Spróbowałam importować ze skoroszytu (zapisałam w pliku xlsx) i z tabeli  i przekonwertowało dobrze wszystko  1:1, ale wracam do punktu wyjscia bo po przeksztalceniu kol 5 (PPE) na tekst, pojawiają się nieprawidłowe numery, np w pierwszym wierszu 590310600001020416 (skąd taki numer??), a prawidowy numer to 590310600001020436.

 

Załączniki

  • xml

    ROZR_ENED_SZEC_202009300001.xm... ( 19K )
Izabela_Pik
  • Odpowiedział
  • @ Izabela_Pik | 01.10.2020
    • 0
    • 0
    • 0
Komentarze
Na której wersji excela pracujesz?
Skomentował : @ Mirosław_Janiak ,01.10.2020
  • 1
  • 7
  • 1
  • 1

W edytorze (zakładam, że mówisz o dodatku Power Query) otrzymujesz jeden wiersz, ponieważ pozostałe dane są w hierarchii pliku xml podpięte pod niego, czyli widzisz je jako wpis "Table" - dodatkowy obiekt (tablica) z wszystkimi przypisanymi rekordami. Żeby się do nich dostać, musisz kliknąć na ikonę dwóch strzałek w przeciwnych kierunkach przy nazwie kolumny.

Sprawdź taką kwerendę (w edytorze PQ kliknij Narzędzia główne -> Edytor zaawansowany i przeklej tam poniższy kod; w pierwszym kroku popraw oczywiście ścieżkę do swojego pliku).

let
    Źródło = Xml.Tables(File.Contents("C:\dane\ROZR_ENED_SZEC.xml")),
    Table1 = Źródło{1}[Table],
    #"Rozwinięty element Rozliczenie" = Table.ExpandTableColumn(Table1, "Rozliczenie", {"DaneRozliczenia", "Umowa"}, {"DaneRozliczenia", "Umowa"}),
    #"Rozwinięty element Umowa" = Table.ExpandTableColumn(#"Rozwinięty element Rozliczenie", "Umowa", {"T", "OR"}, {"T", "OR"}),
    #"Rozwinięty element DaneRozliczenia" = Table.ExpandTableColumn(#"Rozwinięty element Umowa", "DaneRozliczenia", {"DCPR", "DCKR", "DaneOdczytowe", "DaneRozliczeniowe"}, {"DCPR", "DCKR", "DaneOdczytowe", "DaneRozliczeniowe"}),
    #"Rozwinięty element DaneOdczytowe" = Table.ExpandTableColumn(#"Rozwinięty element DaneRozliczenia", "DaneOdczytowe", {"DCPO", "DCKO", "NL", "M", "WCPO", "WCKO", "ER", "SER", "OBIS", "SR"}, {"DCPO", "DCKO", "NL", "M", "WCPO", "WCKO", "ER", "SER", "OBIS", "SR"}),
    #"Rozwinięty element DaneRozliczeniowe" = Table.ExpandTableColumn(#"Rozwinięty element DaneOdczytowe", "DaneRozliczeniowe", {"RFO", "RFI", "RFJ"}, {"RFO", "RFI", "RFJ"}),
    #"Dodano kolumnę niestandardową" = Table.AddColumn(#"Rozwinięty element DaneRozliczeniowe", "Niestandardowe", each Text.End([OBIS], 1)=Text.End([RFO], 1)),
    #"Przefiltrowano wiersze" = Table.SelectRows(#"Dodano kolumnę niestandardową", each ([Niestandardowe] = true)),
    #"Usunięto kolumny" = Table.RemoveColumns(#"Przefiltrowano wiersze",{"Niestandardowe"}),
    #"Zamieniono wartość" = Table.ReplaceValue(#"Usunięto kolumny",".",",",Replacer.ReplaceText,{"M", "WCPO", "WCKO", "ER", "SER"}),
    #"Zmieniono typ" = Table.TransformColumnTypes(#"Zamieniono wartość",{{"M", type number}, {"WCPO", type number}, {"WCKO", type number}, {"ER", type number}, {"SER", type number}, {"DCPR", type datetime}, {"DCKR", type datetime}, {"DCPO", type datetime}, {"DCKO", type datetime}, {"DD", type datetime}})
in
    #"Zmieniono typ"

Na kroku Rozwinięty element DaneRozliczeniowe dochodzi do zwielokrotnienia wierszy. Z tego co zauważyłem, dane powinny być prawdopodobnie powiązane po sufiksie wpisów w kolumnach OBIS i RFO. (czyli OBIS=1.8.0 ma odpowiednik RFO=SIEC0, OBIS=1.8.1 -> RFO=SIEC1 itd.), w kolejnym kroku zrobiłem więc porównanie ostatnich znaków z tych kolumn i usunąłem niedopasowania. Jeżeli zdarza się tu numeracja dwucyfrowa lub większa, trzeba by trochę zmodyfikować ten fragment.

Mirosław_Janiak
  • Odpowiedział
  • @ Mirosław_Janiak | 01.10.2020
    • 1
    • 7
    • 1
Komentarze
Udało się ,bardzo dziękuję za pomoc.
Skomentował : @ Izabela_Pik ,05.10.2020
  • 0
  • 0
  • 0
  • 0

Czy mogę prosić jeszcze o kod który mogę wkleić do edytora w przypadku pliku w którym jest jeszcze kolumna KOR (prawda/fałsz)? Załączam plik

Załączniki

  • xml

    KROZR_ENED_SZEC_202010100001.x... ( 70K )
Izabela_Pik
  • Odpowiedział
  • @ Izabela_Pik | 15.10.2020
    • 0
    • 0
    • 0
Komentarze
Dodaj nazwę tej kolumny na kroku "Rozwinięty element Rozliczenie":

#"Rozwinięty element Rozliczenie" = Table.ExpandTableColumn(Table1, "Rozliczenie", {"DaneRozliczenia", "Umowa", "Attribute:KOR"}, {"DaneRozliczenia", "Umowa", "Attribute:KOR"}),
Skomentował : @ Mirosław_Janiak ,15.10.2020
  • 1
  • 7
  • 1
  • 0

Dzień dobry,

po nowym roku dostaje plik z rozbita datą na okres do 31.12 i od 01.01, dane są w dwóch wierszach. Poprzednia kwerenda którą używałam nie przekształca wszystkich danych, czy mogę prosić o pomoc i kod dla tego typu pliku? Potrzebuje przekształcić wiersze 1:1 z okresem do 31.12 i od 01.01 i z  wartoscia z kolumny L (RFI). Załączam plik

Załączniki

  • xml

    ROZR_ENED_SZEC_202101200001.xm... ( 19K )
Izabela_Pik
  • Odpowiedział
  • @ Izabela_Pik | 20.01.2021
    • 0
    • 0
    • 0