Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
PQ. Функция Content.Uri. Возможно ли получить ее определение?
 
Здравствуйте.
Вопрос, собственно, в сабже
Ноги растут отсюда
Код
let
    FromFile = Web.Contents("file:///J:/Laragon/www/ferre.xml"),
    FromWeb = ()=>Value.Metadata(Web.Contents("http://localhost/ferre.xml"))[Content.Uri],
    Check1 = (Web.Page(FromFile){0}[Data]                                                   /*так грузится только xml*/),
    Check2 = (Web.Page(Value.RemoveMetadata(FromFile) meta [Content.Uri=FromWeb()]){0}[Data]/*так грузится html,сформированный xslt,*/
                                                                                 /*но по ссылке из FromWeb, бинарник из */
                                                                                 /*FromFile игнорируется*/)
in
    Check2
Power Query. Путь к текущей книге, выбор папок из диалогового окна, ввод значений через InputBox
 
Всем доброго времени суток.
Пока не спится, чтоб чем-то себя занять, написал наброски 3х функций
Вдруг кому-нибудь пригодятся :)
Для работы должен быть включен параметр "Использование элементов управления ActiveX, не помеченных как безопасные для использования" в параметрах безопасности IE

Код
let
    InputBox = (Prompt,optional Caption as nullable text,optional Default as nullable any,optional Type as nullable number)=>
        Web.Page("<script>
            try {
                var xlapp = GetObject('','Excel.Application');
                var ret=xlapp.InputBox('"&Prompt&"','"&(if Caption=null then "null" else Text.From(Caption))&"','"&
                    (if Default=null then "null" else Text.From(Default))&"',null,null,null,null,"&
                    (if Type=null then "null" else Text.From(Type))&")
            } catch (e){
                var err=(e.message)
            } 
            document.write('<table><tr><th>ret</th></tr><tr><td>'+(typeof err!=='undefined'?err:ret)+'</td></tr></table>')
        </script>"){0}[Data][ret]{0},
    SelectFolder = (InitialFileName,Title) => 
        Web.Page("<script>
            try{
                var dlg=GetObject('','Excel.Application').FileDialog(4);
                dlg.title='"&Title&"';
                dlg.InitialFileName='"&Text.Replace(InitialFileName,"\","\\")&"';
                var ret=(dlg.show()==-1?dlg.selecteditems.item(1):'')
            } catch (e){
                var err=(e.message)
            } 
            document.write('<table><tr><th>ret</th></tr><tr><td>'+(typeof err!=='undefined'?err:ret)+'</td></tr></table>')
        </script>"){0}[Data][ret]{0},
    ThisWBPath  = Web.Page("<script>
            try{
                var xlapp = GetObject('','Excel.Application');
                var ret=xlapp.activeworkbook.fullname
            } catch (e){
                var err=(e.message)
            }
            document.write('<table><tr><th>ret</th></tr><tr><td>'+(typeof err!=='undefined'?err:ret)+'</td></tr></table>')
        </script>"){0}[Data][ret]{0},
    Path = if try Number.From(InputBox("Введите значение параметра X","Запрос1 - Ввод параметра X",0,1))>0 otherwise false then SelectFolder("C:\","Выберите папку") else ThisWBPath
in
    Path
Изменено: Андрей Лящук - 4 окт 2019 04:30:14
Страницы: 1
Наверх