Доступ из 1С 7.7 к файлу Excel из Dropbox

25.02.19

Интеграция - Загрузка и выгрузка в Excel

Рассматривается технология организации доступа из 1С версии 7.7 к данным из файла Excel, расположенного в Dropbox. Тестировалось на релизе платформы 7.70.027, конфигурация "Моя бухгалтерия" от Хьюмен Системс.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Доступ из 1С 7.7 к файлу Excel расположенному в Dropbox:
.ert 103,00Kb
1
1 Скачать (2 SM) Купить за 2 150 руб.

Предыстория:
Клиент попросил реализовать в конфигурации 1С 7.7 расчет цен в накладной по ценам из файла Excel. Ничего сложного вроде, однако в процессе возникли нюансы..
   Файл Excel , из которого необходимо тянуть цены для расчета, расположен в Dropbox. Ну тоже вроде не проблема вроде - формируем в Dropbox прямую ссылку при помощи команды в самом Dropbox "Поделиться" - получаем прямую ссылку, скачиваем файл Excel на локальный диск и читаем его. Для скачивания файла с Dropbox используем компоненту v7plus.dll. Однако тут возникает неприятный нюанс - компонента v7plus.dll не умеет работать с https ссылками, а адрес прямой ссылка на файл Dropbox как раз в формате https (https://www.dropbox.com/s/XXXXXXXXX.xlsx?dl=0)
    Уже отчаявшись, наткнулся на возможность использования объекта Windows "WinHttp.WinHttpRequest.5.1", однако непосредственного примера скачивания файла по https ссылке не нашел. В итоге нашел решение, которым и хочу поделиться:
Для скачивания файла по ссылке https используется следующий код:

     // Определяем имя локального файла для сохранения
     ИмяФ =  КаталогВременныхФайлов() + "prices.xls";

     // Указываем нужную ссылку на файл
     СсылкаНаФайлDropbox = "тут произвольная ссылка на нужный файл, http или https"
    
    WinHttp = Создатьобъект("WinHttp.WinHttpRequest.5.1");
    WinHttp.Open("GET", СсылкаНаФайлDropbox, 0);
    WinHttp.Send();

    Если WinHttp.Status = 200 Тогда
        Scr = СоздатьОбъект("MSScriptControl.ScriptControl");
        Scr.Language = "vbscript";
        ТекстМодуля = "
        |Sub SaveToFile(ByRef FileName, ByRef WinHttp)
        |    Set Stream = CreateObject(""ADODB.Stream"")
        |    Stream.Type = 1
        |    Stream.Mode = 3
        |    Stream.Open
        |    Stream.Write WinHttp.responseBody
        |    Stream.SaveToFile FileName, 2
        |    Stream.Close
        |End Sub";

        Scr.AddCode(ТекстМодуля);
        Scr.Run("SaveToFile",ИмяФ, WinHttp);
    Иначе  
        Сообщить("Ошибка!");
        Возврат;
    КонецЕсли;


    Вроде все хорошо, однако возникает еще один момент - файл с Dropbox не скачивается, идут какие-то данные HTML. После недолгих поисков выясняется, что для того чтобы получить ссылку именно на файл Dropbox, а не на страницу, где предлагается просмотреть файл или скачать ,нужно всего-навсего поменять в ссылке последний символ с "0" на "1" - т.е. вместо ссылки https://www.dropbox.com/s/XXXXXXXXX.xlsx?dl=0 используем https://www.dropbox.com/s/XXXXXXXXX.xlsx?dl=1

 Ура, все получилось! Скачиваем файл с DropBox ну а дальше уже его читаем и делаем все что нужно))). В нашем случае, был реализован расчет цен в накладной на отгрузку по ценам из файла Excel без изменения конфигурации базы (1С 7.7 Моя бухгалтерия от Хьюмен Системс).

Прилагается обработка, которая скачивает файл по ссылке ( не забываем для ссылок на файлы DropBox поменять в ссылке "0" в конце на "1") и выводит значение из ячейки R1C1 (первая колонка, первая строка).

7.7 Excel Dropbox Беларусь РБ Хьюмен Системс

См. также

Банковские операции Загрузка и выгрузка в Excel Бухгалтер Пользователь Платформа 1С v7.7 Конфигурации 1cv7 Россия Бухгалтерский учет Платные (руб)

Решение предоставляет комплексную загрузку банковской выписки из CSV, XLS, TXT файла в 1С 7.7 любой конфигурации. Позволяет создавать документы выбранного вида, например "Строка выписки банка (приход/расход)", или многострочный табличный документ, например Выписка, для каждой операции из загружаемого файла банковской выписки. Загружает реквизиты документа, а также создаёт контрагентов и другие необходимые элементы справочников.

3588 руб.

29.07.2021    22699    15    22    

16

Загрузка и выгрузка в Excel Программист Платформа 1С v7.7 Абонемент ($m)

Сводная таблица Excel из 1С - как сделать ее программно через COM соединение.

1 стартмани

30.07.2021    6679    2    atdonya    1    

2

Загрузка и выгрузка в Excel ККМ Программист Бухгалтер Пользователь Платформа 1С v7.7 1С:Комплексная 7.7 1С:Торговля и склад 7.7 Бухгалтерский учет Управленческий учет Абонемент ($m)

Выполняет выгрузку товаров (всех, только с признаком в прайсе, только из указанной папочки) с гибкой настройкой выгружаемых данных. Формируется файл в формате XLSX подходящий для прямой удаленной загрузки в кассовый аппарат АТОЛ 91Ф/92Ф и им подобных, имеющих управление через Личный кабинет АТОЛ (lk.atol.ru).

1 стартмани

31.01.2021    8350    2    &-rey    1    

4

Загрузка и выгрузка в Excel Логистика, склад и ТМЦ Программист Пользователь Платформа 1С v7.7 1С:Комплексная 7.7 Управленческий учет Абонемент ($m)

Обработки группового дополнения данных о номенклатуре. Ввод веса и объема существующих товаров вручную в форму таблицы значений и затем запись в справочник Номенклатуры и Единиц. Закачка весов и объемов существующих товаров из Эксель в справочник Номенклатуры и Единиц. Загрузка внешних кодов товаров из Эксель в справочник Номенклатуры. Редактирование внешних кодов товаров в форме списка. Дозаполнение реквизитов существующих товаров из Эксель (ключевые поля - штрихкод, наименование, внешний код).

1 стартмани

11.10.2019    12080    2    ksnik    2    

2

Оптовая торговля Загрузка и выгрузка в Excel Пользователь Платформа 1С v7.7 Конфигурации 1cv7 Оптовая торговля, дистрибуция, логистика Управленческий учет Абонемент ($m)

В данной публикации приведены примеры обработок обмена дистрибьютора с поставщиками и покупателями через Эксель. Создание товаров-новинок. Автоматическое формирование Заказа поставщику по продажам. Заполнение бланка заказа поставщику. Загрузка приходной накладной от поставщика. Загрузка любых справочников из Эксель, например товарных сертификатов. Выгрузка прайслиста в бланк заказа (создание бланка заказа). Загрузка заявки покупателя из произвольного файла Эксель. Загрузка заявки покупателя из бланка заказа.. Для работы требуется установленный MS Excel.

1 стартмани

08.09.2019    16500    10    ksnik    2    

3

Загрузка и выгрузка в Excel Перенос данных 1C Программист Пользователь Платформа 1С v7.7 Платформа 1С v8.3 Конфигурации 1cv8 Конфигурации 1cv7 1С:ERP Управление предприятием 2 Абонемент ($m)

Описание технологии загрузки любых адресов из 1С 7.7 с разложением по ФИАС в современные конфигурации 1C 8.3 на примере ERP. Предлагаемый способ просто чудо, он гарантирует результат, он очень простой и качественный! Моя обработка является синтаксическим анализатором, который подставляет в строку грязного адреса выражение "Дом №" и "Корпус", благодаря чему грязные адреса 7.7 сами очень хорошо раскладываются по значимым полям ФИАС - заполняется область, город, улица, дом, корпус.. все раскладывается само с помощью встроенного механизма современных конфигураций 1С 8.3, который написали сами сотрудники фирмы 1С!

1 стартмани

16.08.2019    19654    18    ksnik    12    

8

Загрузка и выгрузка в Excel Оптовая торговля Розничная торговля Перенос данных 1C Программист Платформа 1С v7.7 Платформа 1С v8.3 1С:Управление торговлей 10 1С:Комплексная 7.7 1С:ERP Управление предприятием 2 Управленческий учет Абонемент ($m)

Описание практического опыта переноса данных из двух устаревших учетных систем в одну современную с обобщением справочников (например номенклатуры, контрагентов, партнеров) и объединением учетных данных устаревших систем в единую новую УС применяя комбинацию стандартной загрузки из Эксель и КД2. Данная публикация является примером переноса данных из сильно устаревших и сильно переписанных конфигураций 1С:Предприятия 7.7 и 8 в современную 1С 8.3 своими силами при условии невозможности или нежелания пользоваться обновлением релизов и типовой функциональностью универсального обмена данными типовых мастеров переноса данных. Отличительной особенностью публикации является устранение зависимости от версий релиза конфигураций, отказ от обновлений устаревших конфигураций.

1 стартмани

29.07.2019    21502    16    ksnik    0    

6
Оставьте свое сообщение