1 выбрать файлы файл не выбран еще
у меня есть кнопка "Выбрать файл" следующим образом (я использую Jade, но он должен быть таким же, как Html5):
в браузере это показывает кнопку с текстом рядом с ним "нет выбранного файла". Я хотел бы изменить текст "Нет выбранного файла" на что-то другое, например "нет выбранного видео" или "выберите видео, пожалуйста". Я следовал первым предложениям здесь:
Я не хочу видеть "нет выбранного файла" для поля ввода файла
но это не изменило текст:
может кто-нибудь помочь мне выяснить, где проблема?
Я уверен, что вы не можете изменить метки по умолчанию на кнопках, они жестко закодированы в браузерах (каждый браузер отображает заголовки кнопок по-своему). Проверьте это кнопка стиль статьи
скрыть ввод с помощью css, добавить метку и назначить ее кнопке ввода. метка будет кликабельной, и при нажатии на нее запустится диалоговое окно файла.
затем стиль метки в виде кнопки, если вы хотите.
- скрыть ввод и добавить кнопку "файлы"
- затем вызовите кнопку "файлы" и попросите его связать fileupload (я использую JQuery в этом примере)
но если вы попытаетесь удалить эту подсказку
это не будет работать. Вот мой маленький трюк, чтобы работать с этим, попробуйте название с пробелом. Это сработает.:)
попробуйте это просто трюк
как это работает
Это очень просто. элемент Label использует тег " for " для ссылки на элемент формы по идентификатору. В этом случае мы использовали "img" В качестве опорного ключа между ними. Как только это будет сделано, всякий раз, когда вы нажимаете на метку, он автоматически запускает событие щелчка элемента формы, которое является событием щелчка элемента файла в нашем случае. Затем мы делаем элемент файла невидимым с помощью display:none и not видимость: скрытый, чтобы он не создавал пустое пространство.
наслаждайтесь кодирования
Добавим новую форму с кнопкой, нажав на которую будет открываться окно выбора файла. Дальнейшая обработка файла в данном примере не рассматривается. Рекомендуется тренироваться на копии базы или пустой конфигурации. Пример создан на конфигурации 1С:CRM 3.0.
Сначала подготовим конфигуратор.
Заходим в конфигуратор 1С. Если конфигурация не открыта, открываем ее и снимаем с поддержки. В меню "Конфигурация" нажимаем "Открыть конфигурацию". Далее в меню "Конфигурация" нажимаем "Поддержка" и выбираем "Настройка поддержки". В окне нажимаем кнопку "Включить возможность изменения" и устанавливаем переключатели как на картинке. Нажимаем "Ок".
Теперь создадим простую обработку.
Находим в левой таблице объектов объект "Обработки", нажимаем на ней правой кнопкой мыши и выбираем "Добавить". Далее потребуется заполнить Имя обработки, указать, в какой подсистеме 1С хотите вызвать обработку, и добавить новую форму в разделе "Формы".
После создания формы появится окно как представлено ниже.
Теперь создадим команду формы "Загрузить" нажав на плюс в верхнем правом окне. Обязательно укажите свойство "Действие". Это будет название процедуры 1С.
Далее добавляем на форму кнопку "Загрузить", нажав на плюс в левом верхнем окне. Обязательно укажите свойство "ИмяКоманды". Здесь укажем название команды, которую создали на предыдущем шаге "Загрузить". В результате на форме появится кнопка "Загрузить".
Далее напишем небольшой код.
Внизу окна нажимаем на закладку "Модуль". У нас здесь уже есть пустая процедура. Добавляем в нее код.
ДиалогВыбора = новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие); ДиалогВыбора.Заголовок = "Выберите файл";
Если ДиалогВыбора.Выбрать() Тогда
В результате получится так как на рисунке ниже.
И в конце остается проверить в пользовательском режиме. Для этого нажимаем "Начать отладку" или F5. Конфигуратор спросит обновить ли конфигурацию базы данных. Отвечаем "Да" и у нас открывается 1С (режим пользователя). Далее находим подсистему, куда добавили обработку (в нашем случае это "Маркетинг") и проверяем.
На простейшем примере было показано как написать код, прикрепить его на форму и вызвать в пользовательском режиме 1С.
В группах и на форумах встречаются советы с кодом из типовой - устаревшего стандартного диалога выбора файла (пример №2). Как же всё-таки корректно выполнить программную обработку выбора пользователя пути к файлу для УФ? Делайте правильно - используйте асинхронные методы (пример №1).
&НаКлиенте
Процедура ПутьКФайлуНачалоВыбора ( Элемент , ДанныеВыбора , СтандартнаяОбработка )
// Свойство КнопкаВыбора элемента формы установим в значение Да
// и будем обрабатывать событие НачалоВыбора этого элемента
СтандартнаяОбработка = Ложь; // Отказываемся от стандартной обработки процедуры
// Создаем диалог выбора файла и указываем для чего он будет использоваться
Диалог = Новый ДиалогВыбораФайла ( РежимДиалогаВыбораФайла . Открытие ); // или ВыборКаталога или Сохранение
Диалог . Фильтр = "Документ PDF (*.pdf)|*.pdf" ; // Строка с файловыми фильтрами
Диалог . Заголовок = "Выберите документ PDF" ; // Текст заголовка окна выбора
// Создаем объект ОписаниеОповещения, который будет передан в метод Показать
ОповещениеЗавершения = Новый ОписаниеОповещения ( "ПриВыбореФайла" , ЭтотОбъект );
// Также можно задать и третий параметр - Диалог. Тогда в процедуре ПриВыбореФайла из параметра ДополнительныеПараметры
// можно получить каталог (в котором хранится выбранный файл), и фильтр (которому соответствует файл)
// Пример: ОповещениеЗавершения = Новый ОписаниеОповещения("ПриВыбореФайла", ЭтотОбъект, Диалог);
Диалог . Показать ( ОповещениеЗавершения ); // Открываем окно выбора файла
// Эта процедура будет вызвана после закрытия окна выбора файла:
&НаКлиенте
Процедура ПриВыбореФайла ( ВыбФайлы , ДополнительныеПараметры ) Экспорт
Если ВыбФайлы <> Неопределено Тогда
ПутьКФайлу = ВыбФайлы [ 0 ];
КонецЕсли;
&НаКлиенте
Функция ПриВыбореФайла ()
Режим = РежимДиалогаВыбораФайла . Открытие ; //(ВыборКаталога, Открытие, Сохранение)
ДиалогОткрытияФайла = Новый ДиалогВыбораФайла ( Режим );
ДиалогОткрытияФайла . ПолноеИмяФайла = "" ;
Текст = "ru = ""Текст""; en = ""Text""" ;
//Текст = "ru = ""Таблица""; en = ""Excel""";
//Текст = "ru = ""Документ PDF""; en = ""Adobe Acrobat PDF""";
Фильтр = НСтр ( Текст )+ "(*.txt)|*.txt" ; // Строка с файловыми фильтрами
//Фильтр = НСтр(Текст)+"(*.xlsx)|*.xlsx| (*.xls)|*.xls (*.xlsb)|*.xlsb|";
//Фильтр = НСтр(Текст)+"(*.pdf)|*.pdf";
ДиалогОткрытияФайла . Фильтр = Фильтр ;
ДиалогОткрытияФайла . МножественныйВыбор = Истина; // Ложь - Если нужен один фай
ДиалогОткрытияФайла . Заголовок = "Выберите файлы" ; // "Выберите файл"
Если ДиалогОткрытияФайла . Выбрать () Тогда
Текст = "ru = ""; Размер = ""; en = ""; Size = """ ;
// МножественныйВыбор = Истина:
МассивФайлов = ДиалогОткрытияФайла . ВыбранныеФайлы ;
Для Каждого ИмяФайла Из МассивФайлов Цикл
ВыбФайл = Новый Файл ( ИмяФайла );
Сообщить ( ИмяФайла + НСтр ( Текст )+ ВыбФайл . Размер ());
КонецЦикла;
// МножественныйВыбор = Ложь:
// ПутьКФайлу = ДиалогОткрытияФайла.ПолноеИмяФайла;
// Сообщить(ПутьКФайлу+ДиалогОткрытияФайла.Размер());
Иначе
Текст = "ru = ""Файл(ы) не выбран!""; en = ""File(s) not selected!""" ;
Предупреждение ( НСтр ( Текст ));
КонецЕсли;
1C: Enterprise Development Tools 50
И вот случилось долгожданное: Вышел 1C: Enterprise Development Tools - это среда для разработки конфигурации в IDE Eclipse. С сайта 1С: « 1C:Enterprise Development Tools » – это инструмент нового поколения для разработчиков бизнес-приложений систем PostgreSQL: установка, настройка, обслуживание 11
PostgreSQL напрямую "из коробки" применяться для использования с 1С Предприятем не может. Необходима именно адаптированная версия от 1С, превращающая PostgreSQL в блокировочник, причем нужно понимать, что блокировки будут накладываться на всю таблиц Автоматическая архивация баз 1С с использованием Cobian Backup и VBS скриптов 8
Клиент попросил настроить автоматическую архивацию баз 1С раз в три дня и выгрузку архивов на Dropbox и на FTP Сервер. Кроме 1С нужно архивировать папку с рабочими документами. Хочет - так хочет, делаем: Первым делом настроим автоматическую архивац Ввод по строке - поиск по первым символам или в любом месте наименования 6
При разработке конфигурации, для упрощении ввода документов потребовалось настроить ввод номенклатуры по совпадению любой части наименования! В 1С 8.3 по умолчанию настройки справочника номенклатуры такие: При такой настройке, механизм поиска в Веб браузер в 1С используя поле HTML документа 3
Настраивал клиенту CRM, он захотел - чтобы панель управления сайтом была в 1С. Хочет - делаем: Обработка Веб браузер проста, состоит из поля HTML документа и 20 строчек кода: Код команд: НаКлиенте Процедура Команда1(Команда) Объект.HTML = Посмотреть все результаты поиска похожих
Запись в файл
Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания - попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>
Теперь, когда мы выбрали и открыли файл, можно с ним работать, т.е. прочитать его содержимое или записать в него что-нибудь.
Рассмотрим пример:
Запись текста из 1С в файл
Заметим, что при записи текстового файла можно установить кодировку.
Удаление
Перемещение
Чтение файла в 1С
Часто бывает необходимо прочитать текст файла построчно, например, для анализа каждой строки. Для этого используем объект ЧтениеТекста.
Копирование файла
Здесь все очень просто
Диалог выбора файла
В указанных выше примерах есть одно неудобство. Путь к файлу прописан жестко в коде. Чтобы выбрать файл интерактивно, существует объект ДиалогВыбораФайла, о котором речь пойдет ниже.
Объект ДиалогВыбораФайла служит для открытия файла (файлов), сохранения файла или выбора каталога в диалоге специального вида.
Например, выберем и откроем некоторый файл с расширением txt:
Задаем режим диалога выбора. Доступны три варианта: ВыборКаталога, Открытие, Сохранение
Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):
Еще в этой же категории
Обработка файлов в папке и запись дополнительной информации в них 4
Частенько при загрузке данных в 1С сталкиваешься с необходимостью дополнительной обработки загружаемых файлов. Возможно это добавление какой-либо информации или наоборот удаление, а может изменение. Ниже приведен код, который обрабатывает файлы в Функции для работы с ZIP-архивами 0
В работе часто приходится сжимать выгруженные данные в zip архив, отправлять по почте, и потом автоматически разархивировать полученный zip файл: // Распаковывает файл архива ZIP в указанный каталог; Извлекает все файлы архива // // Параметры: / Посмотреть все в категории Работа с Файлами и Каталогами
В 1С 8.3 (8.2) для работы с файлами существует два объекта: Файл и ДиалогВыбораФайла.
Рассмотрим каждый по отдельности.
Объект 1С — файл
Объект Файл служит для управления параметрами файлов.
Сразу стоит заметить, что данный объект не предназначен для чтения и записи из файлов.
Например, прочитаем параметры некоторого файла, находящегося на диске C:
В результате мы получим следующую информацию (если файл найден):
Параметры файла:
Полное имя файла: C:\Работа с файлами\статья.txt
Имя: статья.txt
Имя без расширения: статья
Расширение: .txt
Путь без имени: C:\Работа с файлами\
Размер: 899
Это файл: Да
Изменен: 18.05.2015 16:21:28
Только чтение: Нет
Невидимость: Нет
Еще в этой же категории
Обработка файлов в папке и запись дополнительной информации в них 4
Частенько при загрузке данных в 1С сталкиваешься с необходимостью дополнительной обработки загружаемых файлов. Возможно это добавление какой-либо информации или наоборот удаление, а может изменение. Ниже приведен код, который обрабатывает файлы в Функции для работы с ZIP-архивами 0
В работе часто приходится сжимать выгруженные данные в zip архив, отправлять по почте, и потом автоматически разархивировать полученный zip файл: // Распаковывает файл архива ZIP в указанный каталог; Извлекает все файлы архива // // Параметры: / Посмотреть все в категории Работа с Файлами и Каталогами
В 1С 8.3 (8.2) для работы с файлами существует два объекта: Файл и ДиалогВыбораФайла.
Рассмотрим каждый по отдельности.
Читайте также: