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