Страницы: 1
RSS
Power Query не обновляет данные из файла если в нем пользователь, При консолидировании информации с нескольких файлов возникает ошибка, если пользователь находится в файле
 
Приветствую друзья!

Столкнулся с такой проблемой: Есть несколько документов в сети компании с которых нужно собирать информацию, создал запрос, консолидирую из них информацию, все работает отлично, пока файлы в "спящем" состоянии, но стоит только пользователям зайти в свои файлы, или одному из них, при обновлении запрос выдает ошибку: "DataSource.Error: Процесс не может получить доступ к файлу "\\local\Shared\отчеты\~$Иванов.xlsm", так как этот файл используется другим процессом." Вычислил на каком этапе происходит ошибка: на шаге, когда пытаюсь извлечь контент в добавленном столбце
Код
Table.AddColumn(#"Удаленные столбцы", "Пользовательская", each Excel.Workbook([Content]))


Подскажите, как можно обойти этот момент?
Полный текст запроса привожу ниже
Код
Источник = Folder.Files("\\local\Shared\отчеты"),
    #"Удаленные столбцы" = Table.RemoveColumns(Источник,{"Extension", "Date accessed", "Date modified", "Date created", "Attributes", "Folder Path"}),
    #"Добавлен пользовательский объект" = Table.AddColumn(#"Удаленные столбцы", "Пользовательская", each Excel.Workbook([Content])),
    #"Развернутый элемент Пользовательская" = Table.ExpandTableColumn(#"Добавлен пользовательский объект", "Пользовательская", {"Name", "Data", "Item", "Kind"}, {"Name.1", "Data", "Item", "Kind"}),
    #"Строки с примененным фильтром" = Table.SelectRows(#"Развернутый элемент Пользовательская", each ([Kind] = "Table") and ([Item] = "Таблица2")),
    #"Удаленные столбцы1" = Table.RemoveColumns(#"Строки с примененным фильтром",{"Content", "Name.1", "Item", "Kind"}),
    #"Развернутый элемент Data" = Table.ExpandTableColumn(#"Удаленные столбцы1", "Data", {"Дата", "ФИО Водителя", "Причина"}, {"Дата", "ФИО Водителя", "Причина"}),
    #"Измененный тип" = Table.TransformColumnTypes(#"Развернутый элемент Data",{{"Дата", type date}}),
    #"Переименованные столбцы" = Table.RenameColumns(#"Измененный тип",{{"Name", "ФИО Диспетчера"}}),
    #"Разделить столбец по разделителю" = Table.SplitColumn(#"Переименованные столбцы", "ФИО Диспетчера", Splitter.SplitTextByEachDelimiter({"."}, QuoteStyle.Csv, true), {"ФИО Диспетчера.1", "ФИО Диспетчера.2"}),
    #"Измененный тип1" = Table.TransformColumnTypes(#"Разделить столбец по разделителю",{{"ФИО Диспетчера.1", type text}, {"ФИО Диспетчера.2", type text}}),
    #"Удаленные столбцы2" = Table.RemoveColumns(#"Измененный тип1",{"ФИО Диспетчера.2"}),
    #"Переименованные столбцы1" = Table.RenameColumns(#"Удаленные столбцы2",{{"ФИО Диспетчера.1", "ФИО Диспетчера"}}),
    #"Дублированный столбец" = Table.DuplicateColumn(#"Переименованные столбцы1", "Дата", "Копия Дата"),
    #"Дублированный столбец1" = Table.DuplicateColumn(#"Дублированный столбец", "Дата", "Копия Дата.1"),
    #"Дублированный столбец2" = Table.DuplicateColumn(#"Дублированный столбец1", "Дата", "Копия Дата.2"),
    #"Переименованные столбцы2" = Table.RenameColumns(#"Дублированный столбец2",{{"Копия Дата", "Год"}, {"Копия Дата.1", "Месяц"}, {"Копия Дата.2", "День"}}),
    #"Извлеченный год" = Table.TransformColumns(#"Переименованные столбцы2",{{"Год", Date.Year, Int64.Type}}),
    #"Извлеченное название месяца" = Table.TransformColumns(#"Извлеченный год", {{"Месяц", each Date.MonthName(_), type text}}),
    #"Извлеченный день" = Table.TransformColumns(#"Извлеченное название месяца",{{"День", Date.Day, Int64.Type}})
Нужно бежать со всех ног, чтобы только оставаться на месте, а чтобы куда-то попасть, надо бежать как минимум вдвое быстрее!
 
Ну так перед этим поставьте фильтр, чтобы не брать из папки temp-овские файлы. Типа текстовый фильтр "не начинается с ~$" или там когда из папки грузишь файлы вроде в одной колонке есть свойство временный файл или нет.
 
Это потому что вы пытаетесь открыть временный файл, который появляется в папке при открытии оригинала. Если перед этим шагом зачистить мусор, то будет все гут.
Во, Степан опередил. И не спится людям по ночам ;)
Изменено: PooHkrd - 10.10.2018 22:55:22
Вот горшок пустой, он предмет простой...
 
PooHkrd, StepanWolkoff, Спасибо вам, за совет. Учту и исправлю)
Нужно бежать со всех ног, чтобы только оставаться на месте, а чтобы куда-то попасть, надо бежать как минимум вдвое быстрее!
 
Цитата
PooHkrd написал:
И не спится людям по ночам
Офф Ну, я сейчас в другом часовом поясе, так что ещё не совсем ночь была))
Страницы: 1
Наверх