Работа с NextCloud

20.04.22

Интеграция - Облачные сервисы, хостинг

Работа с облаком NextCloud из 1С.

Скачать исходный код

Наименование Файл Версия Размер
Работа с NextCloud:
.epf 8,22Kb
43
.epf 8,22Kb 43 Скачать

Данная обработка показывает основные возможности работы с файлами и каталогами из 1С с NextCloud. За основу взято расширение протокола HTTP - WebDav. Все сделано средствами 1С, без подключения внешних библиотек и т.п. Основные возможности обработки можно посмотреть на скриншотах.

Данная обработка представлена именно для демонстрации взаимодействия 1С и NextCloud.

Обработки разрабатывались и тестировались на платформе 1С:Предприятие 8.3 (8.3.18.1741).

работа с файлами nextcloud next cloud облаком облачное хранение файлов.

См. также

Интеграция 1С с облаком S3 (Amazon, Yandex Object Storage, Ceph Object Gateway S3, MinIO и др.)

Облачные сервисы, хостинг 8.3.14 Конфигурации 1cv8 Россия Платные (руб)

Готовое решение по интеграции 1С с облаком S3 (Amazon, Yandex Object Storage, Ceph Object Gateway S3, MinIO и любое совместимое объектное хранилище). Решение даёт возможность осуществлять как основные операции (получить список, закачать, скачать, удалить и т.д.), так и расширенные (работа с бакетами, генерация ссылок, работа с правами и т.д.) с объектным хранилищем S3 прямо из 1С.

31200 руб.

27.04.2021    18606    24    70    

39

В облако на работу: Все варианты авторизации ОС сервером 1С на базе РЕД ОС 8 в домене windows. Рецепты от Капитана

Облачные сервисы, хостинг Linux Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В публикации рассматриваются все варианты авторизации ОС сервером 1С на базе РЕД ОС 8 в домене windows. Как случаи, когда сервер 1С авторизирует веб и обычных клиентов 1С в active directory, так и когда сам сервер является клиентом, например при HTTP запросах выполняемых сервером 1С.

18.03.2024    561    capitan    0    

9

Готовое облако или выделенный сервер? Экономика владения 1С

Облачные сервисы, хостинг Бесплатно (free)

Если вы работаете с 1С, то, скорее всего, используете для этого собственный сервер. Это решение дает больше гибкости: железо всегда под рукой, в любой момент можно поменять конфигурацию или установить дополнительное ПО. Например, чтобы организовать бухгалтеру удаленный рабочий стол. Но насколько этот вариант экономически выгоден для компании? Мы сравнили три варианта развертывания 1С: на собственном сервере, на арендованном в Selectel и в готовом облаке. Какие есть преимущества и недостатки у каждого варианта и что выгоднее — разбираем в статье.

13.03.2024    608    doctor_it    6    

0

Три пингвина под окном… Точки над Ё. Обзор рабочих мест пользователя 1С, собранных на отечественных дистрибутивах linux

Облачные сервисы, хостинг Linux Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Прошлая публикация "Три пингвина под окном… Обзор рабочих мест пользователя 1С, собранных на отечественных дистрибутивах linux" набрала более 20К просмотров. В моем случае это абсолютный рекорд. Как и обещал в ней, рассказываю, как установить неподдерживаемый дистрибутив ОС у облачного провайдера.

25.02.2024    2261    capitan    0    

6

Бесплатный митап “1С в облаке: возможности и риски, решения и кейсы”

Облачные сервисы, хостинг Мероприятия Бесплатно (free)

На митапе говорили о переносе 1С в облако: какие решения есть на рынке, их достоинства и недостатки. На примере реальных кейсов узнали особенности перехода, сроки, бюджеты, риски и возможности. В программе митапа 5 докладов и круглый стол.

06.02.2024    2891    0    Infostart    0    

18

Из 1С в S3 и обратно. Работа с объектным хранилищем

Облачные сервисы, хостинг Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В данной статье демонстрируется работа с объектным хранилищем 1С с использованием подписанных (pre-signed) ссылок. Загрузка, скачивание и удаление реализованы на "чистом" языке 1С без внешних компонент и сервисов. В качестве провайдера хранилища S3 будем использовать Яндекс.Облако

06.02.2024    4454    Sedaiko    13    

64

В облаке, как дома: Устраиваемся поудобнее. Рабочее место пользователя 1С на базе РЕД ОС (HTTPS и архивирование)

Linux Облачные сервисы, хостинг Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

На прошедшем вебинаре "В облаке, как дома: Как настроить рабочее место пользователя 1С на базе РЕД ОС" мы договорились, что продолжением будет установка соединения по HTTPS и архивирование. Это финальные штрихи в настройке рабочего места. Вот и оно (продолжение) или они (штрихи), прошу под кат...

29.01.2024    790    capitan    5    

6

Непрерывный сбор данных из торговых точек для визуализации в Yandex DataLens

Облачные сервисы, хостинг Платформа 1С v8.3 Конфигурации 1cv8 Россия Управленческий учет Бесплатно (free)

В данной статье рассматривается пример непрерывного сбора данных о продажах со множества торговых точек и последующей визуализации через Yandex DataLens в режиме реального времени.

05.01.2024    2094    Sedaiko    23    

51
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. kirillkr 29 20.04.22 22:45 Сейчас в теме
Просто вызываем стандартные процедуры работы с файловой системой указывая путь к каталогу WebDav
СоздатьКаталог
КопироватьФайлы
УдалитьФайлы
2. AntonH851 86 12.08.22 12:19 Сейчас в теме
(1) А логин и пароль для авторизации как передать? можно пример?
3. s_evgen 37 12.08.22 12:41 Сейчас в теме
(2) Авторизация в API делается через токен. Вот тут описано как сделать токен: http://prostiezvonki.ru/kb/pbx/api/api-beeline
Потом уже используя API подключаетесь через этот токен, логин и пароль не нужен.
4. kirillkr 29 12.08.22 17:32 Сейчас в теме
(2) необходимо перед адресом вставить login:password@address
5. kirillkr 29 13.08.22 01:32 Сейчас в теме
(2)Нашел пример.

Функция ПолучитьСтрокуПодключенияОблако(Знач ИмяПользователя, Знач Пароль, Знач ПутьККаталогу = "") Экспорт
	
	ОблакоСтрокаПодключения = "https://%user%:%password%@nextcloud.address/remote.php/dav/files/%user%/";
	
	СтрокаПодключения = ОблакоСтрокаПодключения + ПутьККаталогу;
	
	СтрокаПодключения = СтрЗаменить(СтрокаПодключения, "%user%", СокрЛП(ИмяПользователя));
	СтрокаПодключения = СтрЗаменить(СтрокаПодключения, "%password%", Пароль);
	
	Если Прав(СтрокаПодключения, 1) <> "/" Тогда 
		СтрокаПодключения = СтрокаПодключения + "/";
	КонецЕсли;
	
	Возврат СтрокаПодключения;
	
КонецФункции

Показать
AntonH851; +1 Ответить
6. AntonH851 86 16.08.22 14:21 Сейчас в теме
(5) У меня почему то, если после files передавать имя пользователя, то не работает, а вот если ID WebDav то все ок, причем, я пробую использовать пакет https://github.com/BDDSM/nextcloud-lib и он у меня на работает по той же причине, хотя по документации должно быть все правильно
https://docs.nextcloud.com/server/14/developer_manual/client_apis/WebDAV/basic.html
Может конечно я чего то не понимаю
7. kirillkr 29 16.08.22 18:17 Сейчас в теме
(6) попробуйте создать пароль приложения https://<nextcloud>/settings/user/security и использовать логин пользователя и пароль приложения
8. DMA82 19.07.23 15:14 Сейчас в теме
А как расшарить файл, нет ли у вас примера?
9. s_evgen 37 19.07.23 17:53 Сейчас в теме
(8) Добрый день.
На данный момент не делал, но если будет выложу сюда информацию.
10. DMA82 21.07.23 14:42 Сейчас в теме
Сделал шару таким образом:

&НаКлиенте
Процедура РасшаритьФайл(Команда)
	Соединение = новый HTTPСоединение(АдресСервера, 443, ИмяПользователя, Пароль,,,Новый ЗащищенноеСоединениеOpenSSL);
    ФайлЗапроса = ПолучитьИмяВременногоФайла();
    ТекстовыйФайл = Новый ТекстовыйДокумент;
	Текст = "&path="+ПутьКФайлу; 		//путь и имя файла в некстклауде
	Текст = Текст + "&shareType=3";  	//0 = user; 1 = group; 3 = public link; 4 = email; 6 = federated cloud share; 7 = circle; 10 = Talk conversation
	Текст = Текст + "&permissions=1";   //1 = read; 2 = update; 4 = create; 8 = delete; 16 = share; 31 = all (default: 31, for public shares: 1)
	ДатаИстечения = ДобавитьМесяц(НачалоДня(ТекущаяДата()),6); //шара на 6 месяцев
	Текст = Текст + "&expireDate="+Формат(ДатаИстечения,"ДФ=yyyy-MM-dd");
    ТекстовыйФайл.УстановитьТекст(Текст);
    ТекстовыйФайл.Записать(ФайлЗапроса, КодировкаТекста.UTF8);
    ФайлРезультата = ПолучитьИмяВременногоФайла();
    ЗаголовокHTTP = Новый Соответствие();
	ЗаголовокHTTP.Вставить("Content-Type", "application/x-www-form-urlencoded");
	ЗаголовокHTTP.Вставить("OCS-APIRequest","true");
    Ответ = Соединение.ОтправитьДляОбработки(ФайлЗапроса, "ocs/v1.php/apps/files_sharing/api/v1/shares", ФайлРезультата, ЗаголовокHTTP);
	Сообщить(Ответ.КодСостояния);
	ОтветТекст = Новый ТекстовыйДокумент();
    ОтветТекст.Прочитать(ФайлРезультата, КодировкаТекста.UTF8);
    ТекстОтвета = ОтветТекст.ПолучитьТекст();
	Сообщить(ТекстОтвета);
    УдалитьФайлы(ФайлЗапроса);
	//получение ссылки
	Парсер = Новый ЧтениеXML;
    Парсер.ОткрытьФайл(ФайлРезультата);
    Построитель = Новый ПостроительDOM;
    Документ = Построитель.Прочитать(Парсер);
	Статус = "";
	Для Каждого metaData Из Документ.ЭлементДокумента.ДочерниеУзлы Цикл
		Если metaData.ИмяУзла = "meta" тогда
			Для Каждого Элемент из metaData.ДочерниеУзлы Цикл
				Если Элемент.ИмяУзла = "status" тогда
					Статус = Элемент.ТекстовоеСодержимое;
				КонецЕсли;
			КонецЦикла;
		ИначеЕсли metaData.ИмяУзла = "data" тогда
			Для Каждого Элемент из metaData.ДочерниеУзлы Цикл
				Если Элемент.ИмяУзла = "url" тогда
					ВебСсылка = Элемент.ТекстовоеСодержимое;
				КонецЕсли;
			КонецЦикла;
		КонецЕслИ;
	КонецЦикла;
    Парсер.Закрыть();
	Сообщить("Статус:"+Статус);
	Сообщить(ВебСсылка);
 	УдалитьФайлы(ФайлРезультата);
КонецПроцедуры
Показать
11. Alex_CheST 2 22.11.23 16:49 Сейчас в теме
День добрый. Поделитесь плиз кусочком кода. Как можно из 1с выгрузить файлик на клауд. Саму папку подключил. Но надо сделать именно через апи. Потому что каждому пользователю не подключишь эту папку чтобы использовать как локальную. Нужен от имени серверного пользователя 1с чтобы заработало.
gusen_it; +1 Ответить
Оставьте свое сообщение