База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как передать текстовый файл с разделителями с клиента на сервер в 1С?
- В этой теме 1 ответ, 2 участника, последнее обновление 12 месяцев назад сделано
Odin — Одинэсник.
-
АвторСообщения
-
-
16 декабря 2024 в 16:15 #30921
Как передать файл с клиента на сервер? Файл текстовый с разделителями
-
16 декабря 2024 в 16:15 #30922
Для передачи текстового файла с клиента на сервер в 1С:Предприятии, вы можете использовать следующий подход. Предположим, что файл содержит разделители, например, запятые или табуляции. Вам нужно будет сначала загрузить файл на сервер, а затем обработать его содержимое.
Вот пример кода, который демонстрирует, как это сделать:
### Код на клиенте
1C &НаКлиенте Процедура ПередатьФайлНаСервер(ПутьКФайлу) // Создаем объект файла Файл = Новый Файл(ПутьКФайлу); // Проверяем, существует ли файл Если Не Файл.Экспортировать() Тогда Сообщить("Файл не найден: " + ПутьКФайлу); Возврат; КонецЕсли; // Получаем полное имя файла ФайлИсточник = Файл.ПолноеИмя; // Помещаем файл во временное хранилище Адрес = ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(ФайлИсточник)); // Вызываем серверную функцию для обработки файла ПолучитьФайлНаСервер(Адрес); КонецПроцедуры### Код на сервере
1C &НаСервере Процедура ПолучитьФайлНаСервер(Адрес) // Получаем данные из временного хранилища ДвоичныеДанные = ПолучитьИзВременногоХранилища(Адрес); // Преобразуем двоичные данные в текст Текст = ДвоичныеДанные.ПолучитьСтроку(); // Обработка текста (например, разделение по разделителям) Строки = СтрРазделить(Текст, Символы.ПереносСтроки); Для Каждого Строка Из Строки Цикл // Обработка каждой строки Данные = СтрРазделить(Строка, ","); // Замените "," на ваш разделитель // Здесь можно добавить логику для работы с данными КонецЦикла; КонецПроцедуры### Объяснение кода
1. **Клиентская часть**:
— Создается объект `Файл`, который указывает на файл по заданному пути.
— Проверяется, существует ли файл.
— Файл помещается во временное хранилище, и вызывается серверная процедура для его обработки.2. **Серверная часть**:
— Данные извлекаются из временного хранилища.
— Двоичные данные преобразуются в текст.
— Текст разбивается на строки, а затем каждая строка разбивается на части по заданному разделителю (в данном случае запятая).Этот код можно адаптировать под ваши нужды, изменив разделитель или добавив дополнительную логику обработки данных.
Рекомендую посмотреть здесь: [HelpF.pro](https://helpf.pro/faq/view/1466.html)
-
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.